EA-56324 · 辅助工具
pull all ticks
该EA是一个逐笔数据下载工具,系统性地从经纪商拉取市场观察中所有品种的历史Tick数据。它使用带有持久化状态的下载管理器,支持终端重启后恢复下载,并通过自动切换图表品种/周期来遍历所有品种。
打开交互版(权益曲线、切换品种)基本信息
回测结果(H1,约 1 年)
暂未回测:这个 EA 还没能自动转换。
策略分析
该EA不执行任何交易策略,而是一个纯工具型EA,用于批量下载历史Tick数据。其核心逻辑分为两个阶段:首先通过从当前时间向历史方向以30天为步长跳跃式查询CopyTicks,找到经纪商可提供的最老Tick时间戳;然后从该最老时间戳开始,以用户指定的包大小逐批拉取所有Tick数据直到最新的K线时间。下载管理器(CDownloadManager)负责遍历市场观察中的所有品种,通过将状态保存到二进制文件实现断点续传,每次处理完一个品种后通过ChartSetSymbolPeriod切换到下一个品种继续下载。入场条件、出场条件、仓位管理和资金管理均不适用,因为该EA不进行任何交易操作。
优势
- 具有断点续传功能,通过二进制文件保存下载状态,终端重启后可恢复
- 自动遍历市场观察中所有品种,无需手动逐个操作
- 采用二分跳跃式搜索最老Tick,比线性搜索更高效
- 支持日期限制参数,避免下载过久远的数据
- 使用定时器驱动而非OnTick,确保在无行情时也能运行
劣势
- 缺少错误处理,CopyTicks返回-1时仅增加尝试次数但不记录或报告具体错误
- Sleep(44)硬编码可能导致某些经纪商触发请求频率限制
- 通过ChartSetSymbolPeriod切换品种的方式不够优雅,会触发图表重绘和指标重载
- 当oldest==LONG_MAX(未找到任何Tick)时仅弹出提示,没有重试机制
- 没有进度百分比或日志输出,用户难以判断整体下载进度
改进建议
- 添加更完善的错误处理和重试机制,包括CopyTicks失败的具体错误码记录和指数退避策略
- 使用更精确的进度报告机制,如进度百分比、预计剩余时间和详细日志输出
风险评估
总体风险: 安全
- 该EA不进行任何交易操作,无资金风险
- 大量CopyTicks请求可能触发经纪商的API频率限制或被标记为异常行为
评估得分
代码质量3.0
策略逻辑3.0
风险管理5.0
稳健性3.0
创新性3.0
文档1.0
综合3.0
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
limitDate | true | 是否启用日期限制,控制是否在到达最老时间限制时停止搜索 |
oldestLimit | D'2000.01.01' | 最老日期限制,当启用日期限制时,搜索到此日期即停止 |
tick_packets | 300000 | 每次CopyTicks请求的Tick包大小,每个Tick约60字节,需根据内存调整 |
同类 EA:辅助工具
回测是历史模拟,不代表未来收益,不构成投资建议。