-
Notifications
You must be signed in to change notification settings - Fork 569
Expand file tree
/
Copy path.env.example
More file actions
496 lines (452 loc) · 20.2 KB
/
.env.example
File metadata and controls
496 lines (452 loc) · 20.2 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
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
# ===========================================
# AI 加密货币自动交易系统 - 环境变量配置
# ===========================================
# ============================================
# 服务器配置
# ============================================
# Web 服务器监听端口
PORT=3100
# ============================================
# 交易配置
# ============================================
# 交易循环间隔(分钟)
# 建议:根据策略选择相应的间隔时间(见下方策略配置表)
TRADING_INTERVAL_MINUTES=15
# 交易品种列表,使用逗号分隔
TRADING_SYMBOLS=BTC,ETH,SOL,BNB,DOGE,XRP,HYPE,SUI,BCH,ADA,AVAX,LTC,LINK
# 最大杠杆倍数
MAX_LEVERAGE=10
MAX_POSITIONS=5
MAX_HOLDING_HOURS=36
# ============================================
# 交易策略配置(v2.0 策略自适应系统)
# ============================================
# 策略配置快速参考表(所有参数已优化并自动适配)
#
# ┌──────────────┬────────────┬─────────────┬──────────┬──────────┬──────────┐
# │ 策略 │ 推荐间隔 │ 时间框架 │ 评分阈值 │ 止损范围 │ 交易频率 │
# ├──────────────┼────────────┼─────────────┼──────────┼──────────┼──────────┤
# │ ultra-short │ 5分钟 │ 3m+5m+15m │ 65分 │ 0.5-3% │ 日均5-10 │
# │ aggressive │ 10分钟 │ 5m+15m+30m │ 70分 │ 0.5-4% │ 日均3-8 │
# │ balanced ⭐ │ 15分钟 │ 5m+15m+1h │ 75分 │ 0.8-5% │ 日均2-5 │
# │ conservative │ 20分钟 │ 15m+30m+1h │ 80分 │ 1.5-7% │ 日均1-3 │
# │ swing-trend │ 20分钟 │ 15m+1h+4h │ 78分 │ 1.0-6% │ 日均1-2 │
# └──────────────┴────────────┴─────────────┴──────────┴──────────┴──────────┘
#
# 交易策略(ultra-short, aggressive, balanced, conservative, swing-trend)
# 系统已实现策略自适应时间框架系统,选择策略后自动匹配最优时间框架 ✅
#
# ⚡ ultra-short: 超短线策略
# - 时间框架:3分钟 + 5分钟 + 15分钟(极快响应)
# - 交易频率:极高(3-5分钟响应,日均5-10次)
# - 风险等级:中高风险,适合短线高手
# - 止损范围:0.5-3%,ATR 1.5倍
# - 推荐间隔:TRADING_INTERVAL_MINUTES=5
#
# 🔥 aggressive: 激进策略
# - 时间框架:5分钟 + 15分钟 + 30分钟(快速响应)
# - 交易频率:高(5-15分钟响应,日均3-8次)
# - 风险等级:中高风险,追求高收益
# - 止损范围:0.5-4%,ATR 1.5倍
# - 推荐间隔:TRADING_INTERVAL_MINUTES=10
#
# ⚖️ balanced: 平衡策略(默认推荐 ⭐)
# - 时间框架:5分钟 + 15分钟 + 1小时(均衡响应)
# - 交易频率:中等(5-15分钟响应,日均2-5次)
# - 风险等级:中等风险,风险收益平衡
# - 止损范围:0.8-5%,ATR 2.0倍
# - 推荐间隔:TRADING_INTERVAL_MINUTES=15
#
# 🛡️ conservative: 稳健策略
# - 时间框架:15分钟 + 30分钟 + 1小时(稳健验证)
# - 交易频率:低(15-30分钟响应,日均1-3次)
# - 风险等级:低风险,保护本金优先
# - 止损范围:1.5-7%,ATR 3.0倍
# - 推荐间隔:TRADING_INTERVAL_MINUTES=20
#
# 📈 swing-trend: 波段趋势策略
# - 时间框架:15分钟 + 1小时 + 4小时(多框架验证)
# - 交易频率:低(30-60分钟响应,日均1-2次)
# - 风险等级:中低风险,捕捉中长期趋势
# - 止损范围:1.0-6%,ATR 2.5倍
# - 推荐间隔:TRADING_INTERVAL_MINUTES=20
#
# 📚 详细文档:
# - 策略自适应时间框架:docs/市场状态判断系统-实施进度.md
# - 机会评分系统优化:docs/机会评分系统-深度评估与优化方案.md
# - 科学止损系统:docs/科学止损系统-快速入门示例.md
#
TRADING_STRATEGY=balanced
# 初始资金(USDT)
INITIAL_BALANCE=1000
ACCOUNT_STOP_LOSS_USDT=500 # 止损线
ACCOUNT_TAKE_PROFIT_USDT=2000 # 止盈线
SYNC_CONFIG_ON_STARTUP=true # 启动时同步配置
# ============================================
# 数据库配置
# ============================================
# 数据库连接 URL
# 使用本地 SQLite: file:./.voltagent/trading.db
# 使用远程 Turso: libsql://your-database.turso.io
DATABASE_URL=file:./.voltagent/trading.db
# ============================================
# 交易所选择配置
# ============================================
# 交易所名称(gate 或 binance)
# gate: Gate.io 交易所
# binance: 币安交易所
EXCHANGE_NAME=gate
# ============================================
# Gate.io API 配置
# ============================================
# Gate.io API 密钥(EXCHANGE_NAME=gate 时必需)
GATE_API_KEY=your_api_key_here
# Gate.io API 密钥(EXCHANGE_NAME=gate 时必需)
GATE_API_SECRET=your_api_secret_here
# 是否使用 Gate.io 测试网(true/false)
GATE_USE_TESTNET=true
# ============================================
# Binance API 配置
# ============================================
# Binance API 密钥(EXCHANGE_NAME=binance 时必需)
BINANCE_API_KEY=your_api_key_here
# Binance API 密钥(EXCHANGE_NAME=binance 时必需)
BINANCE_API_SECRET=your_api_secret_here
# 是否使用 Binance 测试网(true/false)
BINANCE_USE_TESTNET=true
# ============================================
# AI 模型配置
# ============================================
# OpenAI 兼容的 API 密钥(必需)
# 支持 OpenAI、OpenRouter 或其他兼容供应商
OPENAI_API_KEY=your_api_key_here
# OpenAI 兼容的 API 基础地址(可选)
# OpenRouter: https://openrouter.ai/api/v1
# OpenAI: https://api.openai.com/v1
# DeepSeek: https://api.deepseek.com/v1
# 或其他兼容 OpenAI API 的供应商地址
OPENAI_BASE_URL=https://openrouter.ai/api/v1
# AI 模型名称(可选,默认使用 deepseek/deepseek-v3.2-exp)
# 注意:不同供应商的模型名称不同
# OpenRouter: deepseek/deepseek-v3.2-exp, x-ai/grok-4-fast, 等
# OpenAI: gpt-4, gpt-3.5-turbo, 等
# DeepSeek: deepseek-chat, deepseek-coder, 等
AI_MODEL_NAME=deepseek/deepseek-v3.2-exp
#AI_MODEL_NAME=x-ai/grok-4-fast
# 使用精简版提示词以减少tokens消耗和API费用(默认启用)
# true: 使用精简版提示词,tokens减少约70%,显著降低费用
# false: 使用完整版提示词,包含详细说明和示例
USE_COMPACT_PROMPT=true
# ============================================
# 账户回撤风控配置
# ============================================
# 当账户资产相比峰值回撤达到以下百分比时的风控措施:
ACCOUNT_DRAWDOWN_WARNING_PERCENT=20 # 警告阈值:发出风险警告提醒
ACCOUNT_DRAWDOWN_NO_NEW_POSITION_PERCENT=30 # 禁止开仓阈值:停止开新仓位,只允许平仓
ACCOUNT_DRAWDOWN_FORCE_CLOSE_PERCENT=50 # 强制平仓阈值:自动平掉所有仓位,保护剩余资金
# ============================================
# 科学止损系统配置
# ============================================
#
# 每个策略的详细止损参数已在代码中预配置好!
# 你只需设置以下 3 个全局开关即可:
#
# ✅ 超短线策略 (ultra-short): ATR 1.5x,止损 0.5-3%
# ✅ 波段趋势策略 (swing-trend): ATR 2.5x,止损 1.0-6%
# ✅ 保守策略 (conservative): ATR 3.0x,止损 1.5-7%
# ✅ 平衡策略 (balanced): ATR 2.0x,止损 0.8-5%
# ✅ 激进策略 (aggressive): ATR 1.5x,止损 0.5-4%
#
# 📖 详细说明:docs/STOP_LOSS_CONFIG_SIMPLIFIED.md
# 📖 快速入门:docs/STOP_LOSS_QUICK_START.md
#
# 1️⃣ 启用科学止损系统(强烈推荐)
ENABLE_SCIENTIFIC_STOP_LOSS=true
# 2️⃣ 启用追踪止损(动态保护利润,推荐开启)
ENABLE_TRAILING_STOP_LOSS=true
# 3️⃣ 启用开仓过滤器(开仓前检查止损合理性,强烈推荐)
ENABLE_STOP_LOSS_FILTER=true
# ========================================
# 高级配置(可选,大部分情况不需要修改)
# ========================================
# 以下参数作为系统默认值/回退值
# 实际运行时,各策略会使用自己的优化参数覆盖这些值
ATR_PERIOD=14 # ATR 计算周期(默认:14)
SUPPORT_RESISTANCE_LOOKBACK=20 # 支撑/阻力位回溯周期(默认:20)
MIN_STOP_LOSS_QUALITY_SCORE=75 # 移动止损过滤器最低质量分数(默认:75)
# 条件单监控配置
PRICE_ORDER_MONITOR_ENABLED=true # 开启条件单监控(默认:true)
PRICE_ORDER_CHECK_INTERVAL=30 # 条件单默认循环检测时间(默认:30秒)
# ============================================
# 市场状态判断系统配置(v2.0 策略自适应版本)
# ============================================
# 系统已实现策略自适应时间框架,无需手动配置!
# 选择 TRADING_STRATEGY 后,系统会自动匹配最优时间框架组合
#
# 时间框架自动配置示例:
# ultra-short → 3分钟 + 5分钟 + 15分钟(极快响应,高捕获率)
# aggressive → 5分钟 + 15分钟 + 30分钟(快速响应,高频交易)
# balanced → 5分钟 + 15分钟 + 1小时(均衡响应,中频交易)
# conservative → 15分钟 + 30分钟 + 1小时(稳健验证,低频交易)
# swing-trend → 15分钟 + 1小时 + 4小时(多框架验证,波段交易)
#
# 优化效果:
# ✅ 响应速度提升:balanced 策略从15-30分钟 → 5-15分钟(+60%)
# ✅ 信号捕获率提升:ultra-short +40%,swing-trend +15%
# ✅ 假信号控制:三层时间框架验证,假信号率控制在5%以内
# ✅ 配置即所得:用户选择策略,系统自动适配时间框架
#
# 📖 详细文档:docs/市场状态判断系统-实施进度.md
# ============================================
# 机会评分系统配置
# ============================================
# 系统使用五维评分模型对开仓机会进行综合评估(0-100分)
#
# 五维评分模型:
# 1. 信号强度(25%):基于市场状态(uptrend_continuation=85分, wait=45-55分)
# 2. 趋势一致性(25%):多时间框架趋势方向一致性(0-100%)
# 3. 波动率适配(20%):当前ATR相对理想范围(0.8-1.2为理想)
# 4. 流动性评分(15%):主流币100分, 次主流80分, 其他60分
# 5. 风险收益比(15%):基于市场状态的理论R:R(1.5-3.0)
#
# 策略差异化阈值(推荐值):
# ultra-short: 65分(低阈值,高频交易,更多机会)
# aggressive: 70分(中低阈值,激进开仓)
# balanced: 75分(中等阈值,平衡质量与数量)⭐ 默认
# conservative: 80分(高阈值,严格筛选,低频高质量)
# swing-trend: 78分(中高阈值,波段质量优先)
#
# 评分阈值配置
MIN_OPPORTUNITY_SCORE=75 # 最小开仓机会评分(建议根据策略调整,见上方推荐值)
MAX_OPPORTUNITIES_TO_SHOW=3 # 最多显示机会数
# 高级配置说明(可选)
# 如需实施策略差异化权重、波动率动态评分等高级优化,
# 请参考优化方案文档,需要修改 src/services/opportunityScorer.ts 代码
#
# 📖 深度评估文档:docs/机会评分系统-深度评估与优化方案.md
# 📖 优化实施建议:
# - 第一阶段:调整 MIN_OPPORTUNITY_SCORE 根据策略类型(当前可用)
# - 第二阶段:实施策略差异化权重配置(需修改代码)
# - 第三阶段:波动率和流动性动态评分(需修改代码)
# ============================================
# 邮件告警配置(可选)
# ============================================
# 当系统出现严重问题时自动发送邮件通知
# 如果不配置,系统仅记录日志不发送邮件
# SMTP 服务器地址(如 smtp.gmail.com)
SMTP_HOST=smtp.gmail.com
# SMTP 服务器端口(587 for TLS, 465 for SSL)
SMTP_PORT=587
# SMTP 用户名(通常是邮箱地址)
SMTP_USER=your_email@gmail.com
# SMTP 密码或应用专用密码
# Gmail 需要使用应用专用密码: https://myaccount.google.com/apppasswords
SMTP_PASS=your_email_password_or_app_password
# 发件人邮箱地址
ALERT_EMAIL_FROM=your_email@gmail.com
# 收件人邮箱地址(接收告警通知)
ALERT_EMAIL_TO=alert_receiver@example.com
# ============================================
# 告警触发条件(已预配置,无需修改)
# ============================================
# 1. 不一致状态数量 > 5 且持续增长 → CRITICAL 告警
# 2. 健康检查连续失败3次 → ERROR 告警
# 3. 自动修复连续失败5次 → ERROR 告警
# 4. 交易所API连续不可用5分钟 → ERROR 告警
# ============================================
# 服务开关配置
# ============================================
# 健康检查服务(默认启用,包含持仓一致性检查、孤儿条件单清理等)
HEALTH_CHECK_ENABLED=true
HEALTH_CHECK_INTERVAL_MINUTES=5
# 自动修复服务(默认禁用,需手动启用)
AUTO_RESOLVE_ENABLED=false
RESOLVE_INTERVAL_MINUTES=10
# ============================================
# 测试模式(默认禁用)
# 需要结合集成测试使用 npx tsx --env-file=.env ./scripts/test-full-trading-flow.ts
# 集成测试后,清理测试数据 npm run db:init
# ============================================
TEST_MODE=false
# ============================================
# 📚 策略配置示例 - 快速入门
# ============================================
#
# 1️⃣ 新手/保守型用户(推荐)
# ─────────────────────────────
# TRADING_STRATEGY=conservative
# TRADING_INTERVAL_MINUTES=20
# MIN_OPPORTUNITY_SCORE=80
# MAX_LEVERAGE=5
# MAX_POSITIONS=3
#
# 预期表现:
# - 交易频率:日均1-3次,低频高质量
# - 胜率目标:55-65%
# - 盈亏比:2.0:1 以上
# - 回撤控制:单日 -3% 以内
#
# 2️⃣ 大多数用户(默认配置)⭐
# ─────────────────────────────
# TRADING_STRATEGY=balanced
# TRADING_INTERVAL_MINUTES=15
# MIN_OPPORTUNITY_SCORE=75
# MAX_LEVERAGE=8
# MAX_POSITIONS=5
#
# 预期表现:
# - 交易频率:日均2-5次,中频均衡
# - 胜率目标:50-60%
# - 盈亏比:1.8:1 以上
# - 回撤控制:单日 -5% 以内
#
# 3️⃣ 日内交易者(激进型)
# ─────────────────────────────
# TRADING_STRATEGY=aggressive
# TRADING_INTERVAL_MINUTES=10
# MIN_OPPORTUNITY_SCORE=70
# MAX_LEVERAGE=10
# MAX_POSITIONS=5
#
# 预期表现:
# - 交易频率:日均3-8次,高频激进
# - 胜率目标:48-58%
# - 盈亏比:1.5:1 以上
# - 回撤控制:单日 -8% 以内
#
# 4️⃣ 超短线高手(专业级)
# ─────────────────────────────
# TRADING_STRATEGY=ultra-short
# TRADING_INTERVAL_MINUTES=5
# MIN_OPPORTUNITY_SCORE=65
# MAX_LEVERAGE=10
# MAX_POSITIONS=5
# ENABLE_TRAILING_STOP_LOSS=true # 必须开启
#
# 预期表现:
# - 交易频率:日均5-10次,极高频
# - 胜率目标:45-55%
# - 盈亏比:1.5:1 以上
# - 回撤控制:单日 -10% 以内
#
# 5️⃣ 波段交易者(中长线)
# ─────────────────────────────
# TRADING_STRATEGY=swing-trend
# TRADING_INTERVAL_MINUTES=20
# MIN_OPPORTUNITY_SCORE=78
# MAX_LEVERAGE=6
# MAX_POSITIONS=3
# MAX_HOLDING_HOURS=72
#
# 预期表现:
# - 交易频率:日均1-2次,波段持仓
# - 胜率目标:55-65%
# - 盈亏比:2.5:1 以上
# - 回撤控制:单日 -6% 以内
#
# ============================================
# 🎯 性能监控指标
# ============================================
#
# 定期检查以下指标,确保策略表现符合预期:
#
# 1. 交易频率
# - 是否符合策略特征(ultra-short: 5-10次/日, conservative: 1-3次/日)
# - 如果偏低:可能是 MIN_OPPORTUNITY_SCORE 设置过高
# - 如果偏高:可能是市场波动剧烈或阈值过低
#
# 2. 胜率
# - 是否在预期范围内(balanced: 50-60%)
# - 如果低于下限:考虑提高 MIN_OPPORTUNITY_SCORE 或切换到保守策略
# - 如果高于上限:可能样本量不足,继续观察
#
# 3. 盈亏比 (R:R)
# - 是否达到策略目标(balanced: 1.8:1, conservative: 2.0:1)
# - 如果偏低:检查止盈止损设置,可能提前止损或止盈过晚
# - 如果偏高:保持策略,这是好现象
#
# 4. 回撤
# - 单日回撤是否在策略承受范围内
# - 如果超标:立即降低杠杆或切换到保守策略
# - 连续3天回撤:考虑暂停交易,等待市场企稳
#
# 5. 持仓时间
# - 平均持仓时间是否符合策略(ultra-short: <1h, swing-trend: 12-48h)
# - 如果过长:可能是止盈设置过高或市场缺乏趋势
# - 如果过短:可能是止损过紧或市场波动剧烈
#
# ============================================
# 📖 相关文档索引
# ============================================
#
# 核心系统文档:
# - 市场状态判断系统:docs/市场状态判断系统-实施进度.md
# - 机会评分系统:docs/机会评分系统-深度评估与优化方案.md
# - 科学止损系统:docs/科学止损系统-快速入门示例.md
# - 分批止盈系统:docs/分批止盈自动化-快速参考.md
# - 状态自适应开仓:docs/状态自适应开仓系统-快速使用指南.md
#
# 开发与测试:
# - 系统集成测试:docs/系统集成测试-完整整合方案.md
# - 交易统计功能:docs/交易统计功能-快速参考.md
# - 健康检查系统:docs/系统健康警示灯-使用说明.md
#
# 优化方案:
# - 市场状态优化:docs/市场状态判断系统-优化分析与方案.md
# - 机会评分深度评估:docs/机会评分系统-深度评估与优化方案.md
# - 止盈系统优化:docs/止盈系统优化与改进规划.md
#
# ============================================
# 💡 使用建议
# ============================================
#
# 1. 新手起步
# - 使用 conservative 策略 + 小资金(INITIAL_BALANCE=500)
# - 观察1-2周,熟悉系统运作
# - 检查监控面板,了解交易逻辑
#
# 2. 策略切换
# - 修改 TRADING_STRATEGY 和 TRADING_INTERVAL_MINUTES
# - 同时调整 MIN_OPPORTUNITY_SCORE(参考推荐值)
# - 重启服务:pm2 restart ai-auto-trading
# - 系统会自动适配时间框架和止损参数
#
# 3. 参数优化
# - 先运行默认配置,积累数据
# - 根据实盘表现微调 MIN_OPPORTUNITY_SCORE(±5分)
# - 如需深度优化,参考机会评分系统文档修改代码
#
# 4. 风险管理
# - 严格遵守账户风控设置(ACCOUNT_DRAWDOWN_*)
# - 不要频繁切换策略(至少观察3-7天)
# - 定期检查持仓一致性(健康检查系统)
# - 启用邮件告警,及时获知异常
#
# 5. 性能提升
# - 确保 API 连接稳定(WebSocket 优先)
# - 选择流动性好的币种(BTC, ETH, SOL 等)
# - 避免在重大新闻/事件期间交易
# - 市场极端波动时可暂停系统
#
# ============================================
# ⚠️ 重要提示
# ============================================
#
# 1. 本系统为自动化交易工具,存在亏损风险
# 2. 请使用您能承受损失的资金进行交易
# 3. 建议先在测试网充分测试后再使用实盘
# 4. 定期备份数据库和配置文件
# 5. 遇到问题请查看 logs/ 目录下的日志文件
# 6. 系统更新后请仔细阅读更新日志
#
# ============================================
# ============================================
# 📞 技术支持
# ============================================
#
# - 问题反馈:查看项目 README.md 中的联系方式
# - 日志查看:logs/pm2-out.log 和 logs/pm2-error.log
# - 监控面板:http://localhost:3100
# - 健康检查:访问 /api/health 端点
#
# ============================================