-
Notifications
You must be signed in to change notification settings - Fork 4.9k
feat: Production-Ready Platform - Multi-LLM, Paper Trading, Web UI & Docker #281
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
jackspace
wants to merge
7
commits into
TauricResearch:main
Choose a base branch
from
jackspace:claude/setup-secure-project-01SophvzzFdssKHgb2Uk6Kus
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+40,032
β45
Open
Changes from all commits
Commits
Show all changes
7 commits
Select commit
Hold shift + click to select a range
475e7c1
feat: Add comprehensive security improvements and documentation
claude 6bc8c6d
feat: Add production-ready Portfolio Management and Backtesting Frameβ¦
claude e59e561
docs: Add comprehensive implementation summary
claude 29f8968
test: Add comprehensive test and demo scripts
claude bf25282
feat: Add multi-LLM support, paper trading, web UI, and Docker deployβ¦
claude c4db127
docs: Add comprehensive expert review reports and production-ready teβ¦
claude 16192cd
fix: Complete production-ready sprint - All critical issues resolved
claude File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,94 @@ | ||
| [project] | ||
| # Whether to enable telemetry (default: true). No personal data is collected. | ||
| enable_telemetry = false | ||
|
|
||
| # List of environment variables to be provided by each user to use the app. | ||
| user_env = [] | ||
|
|
||
| # Duration (in seconds) during which the session is saved when the connection is lost | ||
| session_timeout = 3600 | ||
|
|
||
| # Enable third parties caching (e.g LangChain cache) | ||
| cache = false | ||
|
|
||
| [features] | ||
| # Show the prompt playground | ||
| prompt_playground = false | ||
|
|
||
| # Process and display HTML in messages. This can be a security risk (see https://stackoverflow.com/questions/19603097/why-is-it-dangerous-to-render-user-generated-html-or-javascript) | ||
| unsafe_allow_html = false | ||
|
|
||
| # Process and display mathematical expressions. This can clash with "$" characters in messages. | ||
| latex = false | ||
|
|
||
| # Automatically tag threads with the current chat profile (if a chat profile is used) | ||
| auto_tag_thread = true | ||
|
|
||
| # Authorize users to upload files with messages | ||
| [features.multi_modal] | ||
| enabled = true | ||
| accept = ["*/*"] | ||
| max_files = 20 | ||
| max_size_mb = 500 | ||
|
|
||
| [UI] | ||
| # Name of the app and chatbot. | ||
| name = "TradingAgents" | ||
|
|
||
| # Description of the app and chatbot. This is used for HTML tags. | ||
| description = "AI-Powered Trading Analysis and Execution Platform" | ||
|
|
||
| # Large size content are by default collapsed for a cleaner ui | ||
| default_collapse_content = true | ||
|
|
||
| # The default value for the expand messages settings. | ||
| default_expand_messages = false | ||
|
|
||
| # Hide the chain of thought details from the user in the UI. | ||
| hide_cot = false | ||
|
|
||
| # Link to your github repo. This will add a github button in the UI's header. | ||
| github = "https://github.com/TauricResearch/TradingAgents" | ||
|
|
||
| # Specify a CSS file that can be used to customize the user interface. | ||
| # The CSS file can be served from the public directory or via an external link. | ||
| # custom_css = "/public/test.css" | ||
|
|
||
| # Specify a Javascript file that can be used to customize the user interface. | ||
| # The Javascript file can be served from the public directory. | ||
| # custom_js = "/public/test.js" | ||
|
|
||
| # Specify a custom font url. | ||
| # custom_font = "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&display=swap" | ||
|
|
||
| # Specify a custom build directory for the frontend. | ||
| # This can be used to customize the frontend code. | ||
| # Be careful: If this is a relative path, it should not start with a slash. | ||
| # custom_build = "./public/build" | ||
|
|
||
| # Override default MUI light theme. (Check theme.ts) | ||
| [UI.theme] | ||
| #layout = "wide" | ||
| #font_family = "Inter, sans-serif" | ||
| [UI.theme.light] | ||
| #background = "#FAFAFA" | ||
| #paper = "#FFFFFF" | ||
|
|
||
| [UI.theme.light.primary] | ||
| #main = "#F80061" | ||
| #dark = "#980039" | ||
| #light = "#FFE7EB" | ||
|
|
||
| # Override default MUI dark theme. (Check theme.ts) | ||
| [UI.theme.dark] | ||
| #background = "#0F1117" | ||
| #paper = "#1E1E2E" | ||
|
|
||
| [UI.theme.dark.primary] | ||
| #main = "#F80061" | ||
| #dark = "#980039" | ||
| #light = "#FFE7EB" | ||
|
|
||
|
|
||
| [meta] | ||
| generated_by = "1.0.0" | ||
Binary file not shown.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,80 @@ | ||
| # Git files | ||
| .git | ||
| .gitignore | ||
| .gitattributes | ||
|
|
||
| # Python cache | ||
| __pycache__ | ||
| *.py[cod] | ||
| *$py.class | ||
| *.so | ||
| .Python | ||
| .pytest_cache | ||
| .mypy_cache | ||
|
|
||
| # Virtual environments | ||
| venv/ | ||
| env/ | ||
| ENV/ | ||
| .venv | ||
|
|
||
| # IDE | ||
| .vscode/ | ||
| .idea/ | ||
| *.swp | ||
| *.swo | ||
| *~ | ||
|
|
||
| # Environment files (use docker-compose env_file instead) | ||
| .env | ||
| .env.local | ||
| .env.*.local | ||
|
|
||
| # Data and results (mount as volumes instead) | ||
| data/ | ||
| eval_results/ | ||
| portfolio_data/ | ||
| *.json | ||
| *.csv | ||
| *.h5 | ||
| *.pkl | ||
|
|
||
| # Documentation | ||
| *.md | ||
| docs/ | ||
|
|
||
| # Tests | ||
| tests/ | ||
| *.coverage | ||
| .coverage | ||
| htmlcov/ | ||
| .tox/ | ||
| .pytest_cache/ | ||
| .hypothesis/ | ||
|
|
||
| # OS | ||
| .DS_Store | ||
| Thumbs.db | ||
|
|
||
| # Logs | ||
| *.log | ||
| logs/ | ||
|
|
||
| # Development files | ||
| notebooks/ | ||
| examples/ | ||
| *.ipynb | ||
| scripts/ | ||
|
|
||
| # Build artifacts | ||
| dist/ | ||
| build/ | ||
| *.egg-info/ | ||
| *.egg | ||
| .eggs/ | ||
| __pypackages__/ | ||
|
|
||
| # Docker files (don't copy into image) | ||
| docker-compose*.yml | ||
| Dockerfile* | ||
| .dockerignore |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,2 +1,65 @@ | ||
| ALPHA_VANTAGE_API_KEY=alpha_vantage_api_key_placeholder | ||
| OPENAI_API_KEY=openai_api_key_placeholder | ||
| # TradingAgents Environment Configuration | ||
| # Copy this file to .env and fill in your actual values | ||
| # NEVER commit .env to version control! | ||
|
|
||
| # ============================================================================ | ||
| # LLM Provider API Keys (Choose one or multiple) | ||
| # ============================================================================ | ||
|
|
||
| # OpenAI (GPT-4, GPT-4o, o1-preview, etc.) | ||
| OPENAI_API_KEY=your_openai_api_key_here | ||
|
|
||
| # Anthropic Claude (Recommended for deep reasoning!) | ||
| # Get your key from: https://console.anthropic.com/ | ||
| ANTHROPIC_API_KEY=your_anthropic_api_key_here | ||
|
|
||
| # Google Gemini (Optional) | ||
| # GOOGLE_API_KEY=your_google_api_key_here | ||
|
|
||
| # ============================================================================ | ||
| # Data Provider API Keys | ||
| # ============================================================================ | ||
|
|
||
| # Alpha Vantage (Free tier available) | ||
| # Get your key from: https://www.alphavantage.co/support/#api-key | ||
| ALPHA_VANTAGE_API_KEY=your_alpha_vantage_api_key_here | ||
|
|
||
| # ============================================================================ | ||
| # Broker API Keys (for live/paper trading) | ||
| # ============================================================================ | ||
|
|
||
| # Alpaca (Free paper trading!) | ||
| # Get keys from: https://alpaca.markets/ | ||
| # ALPACA_API_KEY=your_alpaca_api_key_here | ||
| # ALPACA_SECRET_KEY=your_alpaca_secret_key_here | ||
| # ALPACA_PAPER_TRADING=true # Set to false for live trading | ||
|
|
||
| # Interactive Brokers (Advanced users) | ||
| # IB_ACCOUNT=your_ib_account_number | ||
| # IB_HOST=127.0.0.1 | ||
| # IB_PORT=7497 # 7497 for paper, 7496 for live | ||
|
|
||
| # ============================================================================ | ||
| # TradingAgents Configuration | ||
| # ============================================================================ | ||
|
|
||
| # Custom data and results directories (optional) | ||
| # TRADINGAGENTS_DATA_DIR=/path/to/your/data | ||
| # TRADINGAGENTS_RESULTS_DIR=/path/to/your/results | ||
|
|
||
| # Logging level (DEBUG, INFO, WARNING, ERROR, CRITICAL) | ||
| # LOG_LEVEL=INFO | ||
|
|
||
| # LLM Provider Selection (openai, anthropic, google) | ||
| # LLM_PROVIDER=anthropic | ||
|
|
||
| # Custom backend URL for OpenAI-compatible APIs (ollama, openrouter, etc.) | ||
| # OPENAI_BASE_URL=https://api.openai.com/v1 | ||
|
|
||
| # ============================================================================ | ||
| # Web Interface Configuration (optional) | ||
| # ============================================================================ | ||
|
|
||
| # Chainlit settings (for web UI) | ||
| # CHAINLIT_AUTH_SECRET=your_secret_key_here | ||
| # CHAINLIT_PORT=8000 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -9,3 +9,4 @@ eval_results/ | |
| eval_data/ | ||
| *.egg-info/ | ||
| .env | ||
| portfolio_data/ | ||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.