-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Expand file tree
/
Copy path.env.docker
More file actions
365 lines (302 loc) · 11.7 KB
/
.env.docker
File metadata and controls
365 lines (302 loc) · 11.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
# TradingAgents-CN Docker环境配置
# 🐳 此文件专门用于Docker容器内的环境变量配置
# 🔐 重要:请修改 API 密钥为您的真实密钥
# ===== Docker环境标识 =====
DOCKER_CONTAINER=true
# ===== 必需的API密钥 =====
# 🇨🇳 阿里百炼 API 密钥 (推荐,国产大模型,中文优化)
# 获取地址: https://dashscope.aliyun.com/
DASHSCOPE_API_KEY=your_dashscope_api_key_here
DASHSCOPE_ENABLED=false
# 🤖 DeepSeek API 密钥 (推荐,性价比高)
# 获取地址: https://platform.deepseek.com/
DEEPSEEK_API_KEY=your_deepseek_api_key_here
DEEPSEEK_BASE_URL=https://api.deepseek.com
DEEPSEEK_ENABLED=false
# 🌐 OpenAI API 密钥 (可选,需要国外网络)
# 获取地址: https://platform.openai.com/
OPENAI_API_KEY=your_openai_api_key_here
OPENAI_ENABLED=false
# 🧠 文心一言(百度千帆)API 密钥
# 获取地址: https://cloud.baidu.com/product/wenxinworkshop
QIANFAN_API_KEY=your_qianfan_api_key_here
QIANFAN_ENABLED=false
# 🔍 Google AI API 密钥 (可选,用于Gemini模型)
# 获取地址: https://ai.google.dev/
# 注意:如果不使用 Google Gemini,请保持 GOOGLE_ENABLED=false
# 如果 API Key 无效,系统会自动降级到其他模型
GOOGLE_API_KEY=your_google_api_key_here
GOOGLE_ENABLED=false
# 🤖 Anthropic API 密钥 (可选,用于Claude模型)
# 获取地址: https://console.anthropic.com/
ANTHROPIC_API_KEY=your_anthropic_api_key_here
ANTHROPIC_ENABLED=false
# 🌐 OpenRouter API 密钥 (可选,聚合多个AI模型)
# 获取地址: https://openrouter.ai/
OPENROUTER_API_KEY=your_openrouter_api_key_here
OPENROUTER_ENABLED=false
# 🔗 AiHubMix API 密钥 (可选,聚合多个AI模型)
# 获取地址: https://aihubmix.com/
AIHUBMIX_API_KEY=your_aihubmix_api_key_here
AIHUBMIX_ENABLED=false
# 🤖 AI302 API 密钥 (可选)
AI302_API_KEY=your_ai302_api_key_here
AI302_ENABLED=false
# 🇨🇳 硅基流动 API 密钥(可选)
# 获取地址: https://www.siliconflow.cn/
SILICONFLOW_API_KEY=your_siliconflow_api_key_here
# 🔧 One API / New API(可选,自部署聚合平台)
# 获取地址:
# - One API: https://github.com/songquanpeng/one-api
# - New API: https://github.com/Calcium-Ion/new-api
ONEAPI_API_KEY=your_oneapi_api_key_here
ONEAPI_BASE_URL=http://localhost:3000/v1
# 通用OpenAI兼容提供商 API 密钥 (用于自定义端点)
CUSTOM_OPENAI_API_KEY=your-custom-openai-api-key
# 📈 Tushare API Token(推荐,专业A股数据)
# 获取地址: https://tushare.pro/weborder/#/login?reg=tacn
# 获取步骤:注册账号 -> 邮箱验证 -> 获取Token
# 注意:免费用户有调用频率限制,建议升级积分到2000积分以上,实时行情需要另外交费
TUSHARE_TOKEN=your_tushare_token_here
TUSHARE_ENABLED=false
# 📊 FinnHub API 密钥 (可选,用于获取金融数据)
# 获取地址: https://finnhub.io/
FINNHUB_API_KEY=your_finnhub_api_key_here
# ===== 代理配置 =====
# 配置需要绕过代理的域名(国内数据源)
NO_PROXY=localhost,127.0.0.1,eastmoney.com,push2.eastmoney.com,82.push2.eastmoney.com,82.push2delay.eastmoney.com,gtimg.cn,sinaimg.cn,api.tushare.pro,baostock.com
# ===== 数据源配置 =====
# 🎯 默认中国股票数据源
# 可选值: tushare, akshare, baostock
DEFAULT_CHINA_DATA_SOURCE=akshare
# Tushare权限等级配置(用于速率限制)
# 可选值: free(120次/分), basic(300次/分), standard(800次/分), premium(2000次/分), vip(5000次/分)
TUSHARE_TIER=standard
TUSHARE_RATE_LIMIT_SAFETY_MARGIN=0.8
# ===== 在线工具配置 =====
ONLINE_TOOLS_ENABLED=false
ONLINE_NEWS_ENABLED=true
REALTIME_DATA_ENABLED=true
# ===== Reddit API 配置 (可选) =====
REDDIT_CLIENT_ID=your_reddit_client_id_here
REDDIT_CLIENT_SECRET=your_reddit_client_secret_here
REDDIT_USER_AGENT=TradingAgents-CN/1.0
# ===== 数据库配置 =====
# 🔧 数据库启用开关
MONGODB_ENABLED=true
REDIS_ENABLED=true
# MongoDB配置(Docker环境使用服务名,带认证)
MONGODB_HOST=mongodb
MONGODB_PORT=27017
MONGODB_USERNAME=admin
MONGODB_PASSWORD=tradingagents123
MONGODB_DATABASE=tradingagentscn
MONGODB_AUTH_SOURCE=admin
MONGODB_URL=mongodb://admin:tradingagents123@mongodb:27017/tradingagentscn?authSource=admin
MONGO_URI=mongodb://admin:tradingagents123@mongodb:27017/tradingagentscn?authSource=admin
MONGO_DB=tradingagentscn
MONGODB_CONNECTION_STRING=mongodb://admin:tradingagents123@mongodb:27017/tradingagentscn?authSource=admin
MONGODB_DATABASE_NAME=tradingagentscn
USE_MONGODB_STORAGE=true
# Redis配置(Docker环境使用服务名,带密码)
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_PASSWORD=tradingagents123
REDIS_DB=0
REDIS_URL=redis://:tradingagents123@redis:6379/0
REDIS_MAX_CONNECTIONS=50
REDIS_RETRY_ON_TIMEOUT=true
# MongoDB连接池配置
MONGO_MAX_CONNECTIONS=100
MONGO_MIN_CONNECTIONS=10
# MongoDB超时参数(毫秒)- 用于处理大量历史数据
# connectTimeoutMS: 连接超时时间(默认30秒,原为10秒)
# socketTimeoutMS: 套接字超时时间(默认60秒,原为20秒)
# serverSelectionTimeoutMS: 服务器选择超时时间(默认5秒)
MONGO_CONNECT_TIMEOUT_MS=30000
MONGO_SOCKET_TIMEOUT_MS=60000
MONGO_SERVER_SELECTION_TIMEOUT_MS=5000
# ===== 安全配置 =====
# 🔐 JWT配置 (用于用户认证)
JWT_SECRET=docker-jwt-secret-key-change-in-production-2024
JWT_ALGORITHM=HS256
ACCESS_TOKEN_EXPIRE_MINUTES=480
REFRESH_TOKEN_EXPIRE_DAYS=30
# CSRF保护
CSRF_SECRET=docker-csrf-secret-key-change-in-production-2024
BCRYPT_ROUNDS=12
# ===== API服务配置 =====
# 🚀 API服务基础配置
HOST=0.0.0.0
PORT=8000
DEBUG=false
# 历史兼容配置(已废弃,但保留兼容性)
API_HOST=0.0.0.0
API_PORT=8000
API_DEBUG=false
# 🔗 CORS配置
ALLOWED_ORIGINS=["http://localhost:3000", "http://localhost:80", "http://localhost:8000"]
ALLOWED_HOSTS=["*"]
CORS_ORIGINS=*
# 📊 队列和并发配置
QUEUE_MAX_SIZE=10000
QUEUE_VISIBILITY_TIMEOUT=300
QUEUE_MAX_RETRIES=3
# 并发控制
DEFAULT_USER_CONCURRENT_LIMIT=3
GLOBAL_CONCURRENT_LIMIT=50
DEFAULT_DAILY_QUOTA=1000
# Worker配置
WORKER_HEARTBEAT_INTERVAL=30
# 速率限制
RATE_LIMIT_ENABLED=true
DEFAULT_RATE_LIMIT=100
# 📁 文件上传配置
MAX_UPLOAD_SIZE=10485760
UPLOAD_DIR=uploads
# 📊 监控配置
METRICS_ENABLED=true
HEALTH_CHECK_INTERVAL=60
# ===== 日志配置 =====
TRADINGAGENTS_LOG_LEVEL=INFO
TRADINGAGENTS_LOG_DIR=/app/logs
TRADINGAGENTS_LOG_FILE=/app/logs/tradingagents.log
LOG_LEVEL=INFO
LOG_FORMAT="%(asctime)s - %(name)s - %(levelname)s - %(message)s"
LOG_FILE=logs/tradingagents.log
# ===== 数据目录配置 =====
TRADINGAGENTS_DATA_DIR=/app/data
TRADINGAGENTS_CACHE_DIR=/app/data/cache
TRADINGAGENTS_SESSIONS_DIR=/app/data/sessions
TRADINGAGENTS_LOGS_DIR=/app/data/logs
TRADINGAGENTS_CONFIG_DIR=/app/data/config
TRADINGAGENTS_TEMP_DIR=/app/data/temp
TRADINGAGENTS_RESULTS_DIR=/app/data/analysis_results
# ===== Python配置 =====
# 禁用Python字节码生成 (可选,用于开发环境)
PYTHONDONTWRITEBYTECODE=1
# ===== 内存和缓存配置 =====
# 🧠 内存功能启用开关 (默认启用)
# 设置为 false 可以禁用ChromaDB内存功能,解决Windows 10兼容性问题
MEMORY_ENABLED=true
# ===== 使用统计和成本跟踪配置 =====
# 🔧 Token使用统计启用开关 (默认启用)
ENABLE_COST_TRACKING=true
# 💰 成本警告阈值 (人民币,默认100元)
COST_ALERT_THRESHOLD=100.0
# 📊 最大使用记录数量 (默认10000条)
MAX_USAGE_RECORDS=10000
# ===== 时区配置 =====
TZ=Asia/Shanghai
TIMEZONE=Asia/Shanghai
# ===== 缓存配置 =====
TA_USE_APP_CACHE=true
CACHE_TTL=3600
SCREENING_CACHE_TTL=1800
SESSION_EXPIRE_HOURS=24
# ===== 股票基础信息同步调度配置 =====
SYNC_STOCK_BASICS_ENABLED=true
SYNC_STOCK_BASICS_TIME=06:30
# ===== 实时行情入库任务配置 =====
QUOTES_INGEST_ENABLED=true
QUOTES_INGEST_INTERVAL_SECONDS=360
# 启用接口轮换机制
# - true: 轮流使用 Tushare rt_k → AKShare东方财富 → AKShare新浪财经
# - false: 按默认优先级使用(Tushare > AKShare)
QUOTES_ROTATION_ENABLED=true
# Tushare rt_k 接口每小时调用次数限制
# - 免费用户: 2 次(Tushare 官方限制,每小时2次)
# - 付费用户: 可设置更高(如 1000),根据您的权限调整
QUOTES_TUSHARE_HOURLY_LIMIT=2
# 自动检测 Tushare rt_k 接口权限
# - true: 首次运行自动检测权限,付费用户会收到高频采集建议
# - false: 不检测,按配置运行
QUOTES_AUTO_DETECT_TUSHARE_PERMISSION=true
# 休市期/启动兜底补数(填充上一笔收盘快照)
QUOTES_BACKFILL_ON_STARTUP=true
QUOTES_BACKFILL_ON_OFFHOURS=true
# ===== Tushare数据同步服务配置 =====
# Tushare统一数据同步总开关
TUSHARE_UNIFIED_ENABLED=false
# 基础信息同步
TUSHARE_BASIC_INFO_SYNC_ENABLED=false
TUSHARE_BASIC_INFO_SYNC_CRON=0 2 * * *
# 行情同步(交易时间每1分钟)
TUSHARE_QUOTES_SYNC_ENABLED=false
TUSHARE_QUOTES_SYNC_CRON=*/1 9-15 * * 1-5
# 历史数据同步(工作日16点)
TUSHARE_HISTORICAL_SYNC_ENABLED=false
TUSHARE_HISTORICAL_SYNC_CRON=0 16 * * 1-5
# 财务数据同步(周日凌晨3点)
TUSHARE_FINANCIAL_SYNC_ENABLED=false
TUSHARE_FINANCIAL_SYNC_CRON=0 3 * * 0
# 状态检查(每小时)
TUSHARE_STATUS_CHECK_ENABLED=false
TUSHARE_STATUS_CHECK_CRON=0 * * * *
# 🚀 Tushare数据初始化配置
# 首次部署时的历史数据天数 (默认1年,>=3650则同步全历史)
TUSHARE_INIT_HISTORICAL_DAYS=365
# 初始化批处理大小
TUSHARE_INIT_BATCH_SIZE=100
# 是否在应用启动时自动检查并初始化数据
TUSHARE_INIT_AUTO_START=false
# ===== AKShare数据同步服务配置 =====
# AKShare统一数据同步总开关
AKSHARE_UNIFIED_ENABLED=false
# 基础信息同步
AKSHARE_BASIC_INFO_SYNC_ENABLED=false
AKSHARE_BASIC_INFO_SYNC_CRON=0 3 * * *
# 行情同步(交易时间每30分钟,避免频率限制)
AKSHARE_QUOTES_SYNC_ENABLED=false
AKSHARE_QUOTES_SYNC_CRON=*/30 9-15 * * 1-5
# 历史数据同步(工作日17点)
AKSHARE_HISTORICAL_SYNC_ENABLED=false
AKSHARE_HISTORICAL_SYNC_CRON=0 17 * * 1-5
# 财务数据同步(周日凌晨4点)
AKSHARE_FINANCIAL_SYNC_ENABLED=false
AKSHARE_FINANCIAL_SYNC_CRON=0 4 * * 0
# 状态检查(每小时30分)
AKSHARE_STATUS_CHECK_ENABLED=false
AKSHARE_STATUS_CHECK_CRON=30 * * * *
# 🚀 AKShare数据初始化配置
# 首次部署时的历史数据天数 (默认1年)
AKSHARE_INIT_HISTORICAL_DAYS=365
# 初始化批处理大小
AKSHARE_INIT_BATCH_SIZE=100
# 是否在应用启动时自动检查并初始化数据
AKSHARE_INIT_AUTO_START=false
# ===== 分析师数据获取配置 =====
# 市场分析回溯天数(用于技术分析)
# 推荐值:60天(可覆盖MA60等所有常用技术指标)
MARKET_ANALYST_LOOKBACK_DAYS=365
# 基本面分析:固定获取10天数据,分析最近2天(无需配置)
# ===== BaoStock数据同步服务配置 =====
# BaoStock统一数据同步总开关
BAOSTOCK_UNIFIED_ENABLED=false
# 基础信息同步
BAOSTOCK_BASIC_INFO_SYNC_ENABLED=false
BAOSTOCK_BASIC_INFO_SYNC_CRON=0 4 * * *
# 日K线同步 (工作日收盘后16:00)
BAOSTOCK_DAILY_QUOTES_SYNC_ENABLED=false
BAOSTOCK_DAILY_QUOTES_SYNC_CRON=0 16 * * 1-5
# 行情同步(交易时间每15分钟)
BAOSTOCK_QUOTES_SYNC_ENABLED=false
BAOSTOCK_QUOTES_SYNC_CRON=*/15 9-15 * * 1-5
# 历史数据同步(工作日18点)
BAOSTOCK_HISTORICAL_SYNC_ENABLED=false
BAOSTOCK_HISTORICAL_SYNC_CRON=0 18 * * 1-5
# 状态检查(每小时45分)
BAOSTOCK_STATUS_CHECK_ENABLED=false
BAOSTOCK_STATUS_CHECK_CRON=45 * * * *
# 🚀 BaoStock数据初始化配置
# 首次部署时的历史数据天数 (默认1年)
BAOSTOCK_INIT_HISTORICAL_DAYS=365
# 初始化批处理大小 (BaoStock建议较小批次)
BAOSTOCK_INIT_BATCH_SIZE=50
# 是否在应用启动时自动检查并初始化数据
BAOSTOCK_INIT_AUTO_START=false
# ===== 新闻数据同步服务配置 =====
NEWS_SYNC_ENABLED=false
NEWS_SYNC_CRON=0 */2 * * *
NEWS_SYNC_HOURS_BACK=24
NEWS_SYNC_MAX_PER_SOURCE=50