## 概述
本指南帮助您根据交易策略、时间框架和监控的交易对数量优化刷新间隔设置。合理的配置可在信号准确性、系统性能和API速率限制之间取得平衡。
## 理解间隔参数
| 参数 | 用途 | 影响 |
|---|---|---|
| refresh_interval | 核心市场数据获取周期 | 机器人常规运行、价格更新 |
| kline_refresh_rate | K线/OHLCV数据加载 | 技术分析、形态识别 |
| signal_refresh_interval | 信号处理周期 | 机会识别、指标计算 |
| decision_making_interval | 订单执行周期 | 下单、信号广播 |
## 按交易风格推荐的配置
### 1. 超短线(Scalping)策略
最适合: 小幅价格波动快速获利、高频交易
时间框架: 1分钟、3分钟、5分钟
#### 配置
Kline:
refresh_interval: 2 # 极快的市场数据更新
kline_refresh_rate: 5 # 高频K线更新
signal_refresh_interval: 10 # 快速信号检测
decision_making_interval: 3 # 快速订单执行
交易对数量考虑:
- 1-20个交易对: 使用上述设置进行激进检测
- 21-50个交易对: 将
refresh_interval增加到3,signal_refresh_interval增加到15 - 51+个交易对: 增加到默认值或更高以避免触发速率限制
注意:
- 超短线需要最快的响应时间
- 密切监控API速率限制警告
- 为获得最佳性能,考虑减少交易对数量
- 低时间框架(1分钟、3分钟)需要频繁更新
### 2. 日内交易(Day Trading)策略
最适合: 当日持仓、捕捉日内波动
时间框架: 5分钟、15分钟、30分钟、1小时
#### 配置
Kline:
refresh_interval: 5 # 中等速度的市场数据更新
kline_refresh_rate: 15 # 平衡的K线刷新
signal_refresh_interval: 30 # 常规信号处理
decision_making_interval: 10 # 有节奏的订单执行
交易对数量考虑:
- 1-50个交易对: 使用上述设置
- 51-150个交易对: 将
kline_refresh_rate增加到20-30 - 151+个交易对: 将
signal_refresh_interval增加到45-60
注意:
- 响应速度与效率之间的平衡
- 15分钟-1小时K线不需要激进刷新频率
- 可处理比超短线更多的交易对
### 3. 波段交易(Swing Trading)策略
最适合: 多日持仓、跟随趋势
时间框架: 1小时、2小时、4小时、6小时
#### 配置
Kline:
refresh_interval: 10 # 宽松的市场数据更新
kline_refresh_rate: 60 # 每小时K线刷新足够
signal_refresh_interval: 180 # 每3分钟信号处理
decision_making_interval: 30 # 谨慎的订单执行
交易对数量考虑:
- 1-100个交易对: 使用上述设置
- 101-300个交易对: 将
kline_refresh_rate增加到120-180 - 300+个交易对(全交易所): 使用
kline_refresh_rate: 300,signal_refresh_interval: 300
注意:
- 更高时间框架需要更低频率更新
- 可高效监控大量交易对
- 注重信号质量而非速度
### 4. 长期/仓位交易(Long-Term/Position Trading)
最适合: 数周至数月持仓、跟随主要趋势
时间框架: 6小时、12小时、1天
#### 配置
Kline:
refresh_interval: 30 # 最少的市场数据更新
kline_refresh_rate: 1800 # 每30分钟刷新(日K线每天更新一次)
signal_refresh_interval: 1800 # 每30分钟信号处理
decision_making_interval: 300 # 每5分钟执行(仍保持响应性)
交易对数量考虑:
- 任意数量交易对: 上述设置适用于600+个交易对
- 日K线每24小时仅更新一次 — 无需激进刷新
- 可无性能问题同步所有交易所交易对
注意:
- 对API速率限制极度高效
- 日线框架使频繁更新变得不必要
- 适合监控整个交易所目录
- 较低的
decision_making_interval确保信号触发时及时执行
## 优化指南
### 按交易对数量
| 交易对数量 | 倍增策略 |
|---|---|
| 1-20 | 使用推荐基础值 |
| 21-50 | 间隔乘以1.5倍 |
| 51-100 | 间隔乘以2倍 |
| 101-300 | 间隔乘以3-4倍 |
| 300+ | 间隔乘以5倍以上 |
### 按时间框架逻辑
快速时间框架(1分钟、3分钟、5分钟):
- K线快速完成 → 需要高频
kline_refresh_rate - 价格快速变动 → 低
refresh_interval至关重要
中等时间框架(15分钟、30分钟、1小时):
- 平衡方式 → 中等刷新频率
- 更多分析时间 → 可处理更多交易对
慢速时间框架(4小时、6小时、12小时、1天):
- K线需数小时/天完成 → 高
kline_refresh_rate可接受 - 趋势缓慢发展 → 仅需最少
refresh_interval
### 性能 vs. 激进程度权衡
更激进(较低数值):
- ✅ 更快的信号检测
- ✅ 更好的进出场时机
- ❌ 更高的API使用量
- ❌ 增加系统负载
- ❌ 触发速率限制风险
更保守(较高数值):
- ✅ 更低的API使用量
- ✅ 更好地遵守速率限制
- ✅ 处理更多交易对
- ❌ 更慢的信号检测
- ❌ 可能错失机会
## 示例场景
### 场景1:激进超短线(10个交易对,1分钟框架)
Kline:
refresh_interval: 2
kline_refresh_rate: 5
signal_refresh_interval: 10
decision_making_interval: 3
理由: 少量交易对允许最大激进程度
### 场景2:保守日内交易者(600个交易对,15分钟框架)
Kline:
refresh_interval: 15
kline_refresh_rate: 60
signal_refresh_interval: 120
decision_making_interval: 30
理由: 大量交易对需要保守间隔以保持在限制内
### 场景3:波段交易者(100个交易对,4小时框架)
Kline:
refresh_interval: 10
kline_refresh_rate: 120
signal_refresh_interval: 300
decision_making_interval: 60
理由: 4小时K线更新缓慢,交易对数量中等
### 场景4:长期投资者(全交易所,1天框架)
Kline:
refresh_interval: 60
kline_refresh_rate: 3600
signal_refresh_interval: 3600
decision_making_interval: 600
理由: 日K线使频繁更新变得浪费
## 微调建议
- 从保守开始: 先使用较高间隔,然后在监控系统性能的同时逐步降低
- 监控速率限制: 注意交易所API返回的429错误或速率限制警告
- 负载测试: 在高波动期间验证设置,此时API使用量会激增
- 交易对优先级: 如监控大量交易对,考虑关闭自动同步,手动选择高优先级交易对
- 决策速度: 即使是慢速策略,也保持
decision_making_interval相对较低(3-10秒),确保订单及时执行 - K线逻辑: 记住:
kline_refresh_rate不会让K线更快完成 — 它仅检查更新。请将其与您时间框架的自然完成速率匹配。
## 快速参考表
| 策略 | 时间框架 | 交易对 | refresh | kline_refresh | signal_refresh | decision |
|---|---|---|---|---|---|---|
| 超短线 | 1m-5m | <20 | 2 | 5 | 10 | 3 |
| 超短线 | 1m-5m | 50+ | 3 | 10 | 20 | 5 |
| 日内 | 15m-1h | <50 | 5 | 15 | 30 | 10 |
| 日内 | 15m-1h | 150+ | 10 | 30 | 60 | 15 |
| 波段 | 1h-6h | <100 | 10 | 60 | 180 | 30 |
| 波段 | 1h-6h | 300+ | 15 | 300 | 300 | 60 |
| 长期 | 12h-1d | 任意 | 30 | 1800 | 1800 | 300 |
## 结论
最优刷新间隔取决于三个关键因素:
- 交易时间框架 — 较低时间框架需要更快更新
- 交易对数量 — 更多交易对需要更保守的设置
- 策略激进程度 — 根据需求平衡速度与API限制
从上述推荐配置开始,并根据您的具体交易所速率限制、系统资源和交易需求进行调整。