TradingAgents/NEW_FEATURES.md

12 KiB

🎉 New Features in TradingAgents

This document highlights the major enhancements added to TradingAgents!

Overview

We've added four major features to TradingAgents:

  1. Multi-LLM Provider Support - Use Claude, GPT-4, or Gemini
  2. Paper Trading Integration - Practice with real market data
  3. Web Interface - Beautiful GUI for analysis and trading
  4. Docker Support - One-command deployment

1. 🤖 Multi-LLM Provider Support

What's New

You can now use any LLM provider for TradingAgents analysis:

  • Anthropic Claude (Recommended for deep reasoning)
  • OpenAI GPT-4 (Proven performance)
  • Google Gemini (Cost-effective alternative)

Why It Matters

  • Choose the best model for your needs
  • Save costs with appropriate models for different tasks
  • Avoid vendor lock-in - switch providers anytime
  • Use your existing subscription - Claude, OpenAI, or Google

How to Use

1. Configure Provider

Edit .env:

# Use Claude (Recommended!)
LLM_PROVIDER=anthropic
ANTHROPIC_API_KEY=your_key_here

# Or use OpenAI
LLM_PROVIDER=openai
OPENAI_API_KEY=your_key_here

# Or use Google
LLM_PROVIDER=google
GOOGLE_API_KEY=your_key_here

2. Run Example

from tradingagents.graph.trading_graph import TradingAgentsGraph
from tradingagents.default_config import DEFAULT_CONFIG

# Configure for Claude
config = DEFAULT_CONFIG.copy()
config["llm_provider"] = "anthropic"
config["deep_think_llm"] = "claude-3-5-sonnet-20241022"
config["quick_think_llm"] = "claude-3-5-sonnet-20241022"

# Run analysis
ta = TradingAgentsGraph(config=config)
final_state, signal = ta.propagate("NVDA", "2024-05-10")

print(f"Signal: {signal}")

3. Try It

python examples/use_claude.py
Provider Deep Thinking Quick Thinking Budget
Anthropic claude-3-5-sonnet-20241022 claude-3-5-sonnet-20241022 claude-3-5-haiku-20241022
OpenAI gpt-4o gpt-4o-mini gpt-4o-mini
Google gemini-1.5-pro gemini-1.5-flash gemini-1.5-flash

Files:

  • tradingagents/llm_factory.py - LLM provider factory
  • examples/use_claude.py - Claude usage example

2. 📈 Paper Trading Integration

What's New

Connect TradingAgents to real broker platforms for paper trading:

  • Alpaca - FREE paper trading with real market data
  • Easy order execution
  • Portfolio tracking
  • Real-time positions and P&L

Why It Matters

  • Practice risk-free - No real money involved
  • Test strategies - Validate before going live
  • Real market data - Actual prices and execution
  • Build confidence - Learn without financial risk

How to Use

1. Sign Up for Alpaca (FREE!)

Visit alpaca.markets and create account.

2. Get API Keys

Dashboard → Paper Trading → API Keys

3. Configure

Edit .env:

ALPACA_API_KEY=your_key_id
ALPACA_SECRET_KEY=your_secret
ALPACA_PAPER_TRADING=true

4. Start Trading

from tradingagents.brokers import AlpacaBroker
from decimal import Decimal

# Connect
broker = AlpacaBroker(paper_trading=True)
broker.connect()

# Check account
account = broker.get_account()
print(f"Buying Power: ${account.buying_power:,.2f}")

# Buy AAPL
order = broker.buy_market("AAPL", Decimal("10"))
print(f"Order ID: {order.order_id}")

# Check positions
positions = broker.get_positions()
for pos in positions:
    print(f"{pos.symbol}: {pos.quantity} shares, P&L: ${pos.unrealized_pnl}")

5. Try Examples

# Basic paper trading
python examples/paper_trading_alpaca.py

# TradingAgents + Alpaca integration
python examples/tradingagents_with_alpaca.py

Supported Features

  • Market orders
  • Limit orders
  • Stop-loss orders
  • Position tracking
  • Real-time P&L
  • Account management

Files:

  • tradingagents/brokers/base.py - Broker interface
  • tradingagents/brokers/alpaca_broker.py - Alpaca implementation
  • examples/paper_trading_alpaca.py - Basic example
  • examples/tradingagents_with_alpaca.py - Full integration

3. 🌐 Web Interface

What's New

Beautiful web-based GUI for TradingAgents:

  • Chat-based interface
  • Stock analysis
  • Order execution
  • Portfolio management
  • Real-time updates

Why It Matters

  • User-friendly - No coding required
  • Interactive - Chat with your trading assistant
  • Visual - See analysis and results
  • Accessible - Use from any browser

How to Use

1. Install Dependencies

Already included in requirements.txt:

  • chainlit

2. Configure

Edit .env (same as before - no extra setup needed!)

3. Start Web Interface

chainlit run web_app.py -w

4. Open Browser

Visit http://localhost:8000

5. Try Commands

# Analyze a stock
analyze NVDA

# Connect to paper trading
connect

# Check account
account

# View portfolio
portfolio

# Buy shares
buy NVDA 5

# Sell shares
sell NVDA 5

# Get help
help

Available Commands

Command Description Example
analyze TICKER AI analysis analyze AAPL
connect Connect broker connect
account Account status account
portfolio View positions portfolio
buy TICKER QTY Buy shares buy NVDA 10
sell TICKER QTY Sell shares sell NVDA 5
provider NAME Change LLM provider anthropic
settings View config settings
help Show help help

Screenshots

Welcome Screen:

🤖 Welcome to TradingAgents!

I'm your AI-powered trading assistant...

Analysis:

📊 Analysis Complete: NVDA

🎯 Trading Signal: BUY

Market Analysis: [Detailed analysis...]
Fundamentals: [Financial metrics...]
News Sentiment: [Recent news...]

Recommendation: BUY

Portfolio:

📈 Current Positions

NVDA
- Quantity: 10 shares
- Avg Cost: $895.50
- Current: $920.00
- P&L: $245.00 (2.73%)

Total Position Value: $9,200.00

Files:

  • web_app.py - Main web application
  • .chainlit - Chainlit configuration

4. 🐳 Docker Support

What's New

One-command deployment with Docker:

  • Pre-configured environment
  • All dependencies included
  • Persistent data storage
  • Easy scaling

Why It Matters

  • Quick setup - No dependency hell
  • Reproducible - Same environment everywhere
  • Isolated - Won't conflict with other projects
  • Production-ready - Deploy anywhere

How to Use

1. Prerequisites

Install Docker and Docker Compose

2. Configure

# Copy environment file
cp .env.example .env

# Edit with your keys
nano .env

3. Build and Run

# Build container
docker-compose build

# Start services
docker-compose up

# Access at http://localhost:8000

That's it! 🎉

Docker Commands

# Start in background
docker-compose up -d

# View logs
docker-compose logs -f

# Stop
docker-compose down

# Restart
docker-compose restart

# Run Python scripts
docker-compose run tradingagents python examples/portfolio_example.py

# Open shell
docker-compose run tradingagents bash

# Run tests
docker-compose run tradingagents pytest tests/ -v

Optional: Jupyter Notebook

# Start with Jupyter
docker-compose --profile jupyter up

# Access at http://localhost:8888

Data Persistence

Data is automatically persisted in:

./data/              # Market data cache
./eval_results/      # Analysis results
./portfolio_data/    # Portfolio state

Files:

  • Dockerfile - Container image definition
  • docker-compose.yml - Multi-service setup
  • .dockerignore - Build optimization
  • DOCKER.md - Complete Docker guide

🚀 Getting Started with New Features

Quick Start Guide

1. Clone Repository

git clone https://github.com/TauricResearch/TradingAgents.git
cd TradingAgents

2. Configure Environment

cp .env.example .env
nano .env

Add your API keys:

# LLM Provider (choose one)
ANTHROPIC_API_KEY=your_claude_key
# or
OPENAI_API_KEY=your_openai_key

# Data Provider
ALPHA_VANTAGE_API_KEY=your_av_key

# Paper Trading (optional)
ALPACA_API_KEY=your_alpaca_key
ALPACA_SECRET_KEY=your_alpaca_secret

3. Choose Your Method

Option A: Docker (Easiest)

docker-compose up
# Open http://localhost:8000

Option B: Local Installation

pip install -r requirements.txt
pip install -e .
chainlit run web_app.py -w
# Open http://localhost:8000

4. Try It Out

In the web interface:

analyze NVDA
connect
buy NVDA 5
portfolio

Or run Python scripts:

python examples/use_claude.py
python examples/paper_trading_alpaca.py
python examples/tradingagents_with_alpaca.py

📊 Complete Example Workflow

Here's a complete workflow using all new features:

1. Analyze Stock with Claude

from tradingagents.graph.trading_graph import TradingAgentsGraph
from tradingagents.default_config import DEFAULT_CONFIG

config = DEFAULT_CONFIG.copy()
config["llm_provider"] = "anthropic"
config["deep_think_llm"] = "claude-3-5-sonnet-20241022"

ta = TradingAgentsGraph(config=config)
final_state, signal = ta.propagate("NVDA", "2024-05-10")

2. Execute Trade on Alpaca

from tradingagents.brokers import AlpacaBroker
from decimal import Decimal

broker = AlpacaBroker(paper_trading=True)
broker.connect()

if signal == "BUY":
    order = broker.buy_market("NVDA", Decimal("5"))
    print(f"Bought NVDA: {order.order_id}")

3. Track Performance

positions = broker.get_positions()
for pos in positions:
    print(f"{pos.symbol}: ${pos.unrealized_pnl:,.2f} P&L")

4. Use Web Interface

chainlit run web_app.py -w

Then in browser:

analyze NVDA
buy NVDA 5
portfolio

5. Run in Docker

docker-compose up
# Access http://localhost:8000

🎓 Learning Resources

Documentation

  • Multi-LLM: tradingagents/llm_factory.py docstrings
  • Paper Trading: tradingagents/brokers/README.md
  • Web Interface: web_app.py comments
  • Docker: DOCKER.md

Examples

  • examples/use_claude.py - Claude integration
  • examples/paper_trading_alpaca.py - Basic paper trading
  • examples/tradingagents_with_alpaca.py - Full integration
  • examples/portfolio_example.py - Portfolio management

Tests

  • tests/portfolio/ - Portfolio tests (96% coverage)
  • tests/backtest/ - Backtesting tests
  • Run with: pytest tests/ -v

🔮 What's Next?

Future enhancements we're considering:

  • More Brokers: Interactive Brokers, TD Ameritrade
  • Advanced Charts: TradingView integration
  • Alerts: Email/SMS notifications
  • Strategies: Pre-built trading strategies
  • Backtesting UI: Visual backtesting in web interface
  • Mobile App: iOS/Android support

💬 Support

Need help?

  • Documentation: Check README files in each module
  • Examples: Run scripts in examples/ directory
  • Issues: Report bugs on GitHub
  • Questions: Use GitHub Discussions

🎉 Summary

You now have access to:

Claude Integration - Best-in-class LLM for trading analysis Paper Trading - Risk-free practice with real market data Web Interface - User-friendly GUI for everything Docker Support - One-command deployment anywhere

Get started today:

# Clone and configure
git clone https://github.com/TauricResearch/TradingAgents.git
cd TradingAgents
cp .env.example .env
# Edit .env with your keys

# Start with Docker
docker-compose up

# Or run locally
chainlit run web_app.py -w

# Open http://localhost:8000 and start trading! 🚀

Happy Trading! 📈