Summary: MT5回测时提示“没有历史数据”,通常是因为未下载Tick数据。本文提供详细步骤:启用品种、下载Tick数据、设置回测日期范围,彻底解决该报错。




步骤1:识别“没有历史数据”报错
打开MT5的策略测试器。选择你的EA、交易品种和回测日期。点击“开始”。如果在“日志”选项卡中看到“没有历史数据”的提示,请按照本教程操作。截图位置:日志选项卡显示报错信息。

步骤2:打开品种管理窗口
在左侧“市场报价”窗口内右键单击,选择“品种”。或者直接按快捷键Ctrl+U。截图位置:市场报价右键菜单中高亮显示“品种”。

步骤3:启用需要回测的品种
在“品种”窗口中,找到你要回测的交易品种(例如EURUSD)。双击它,或者点击“显示品种”。该品种会移动到右侧面板。点击“确定”。截图位置:EURUSD已移动到右侧可见品种的窗口。

步骤4:下载该品种的Tick数据
打开策略测试器(按Ctrl+R)。选择同一个品种,任意一个EA(例如Moving Average)。然后点击品种下拉框旁边的“打开数据”图标(小文件夹)。或者点击三个点“…”按钮。截图位置:策略测试器中圈出数据下载按钮。

步骤5:选择日期范围并下载
会弹出一个新的“品种”窗口。选择你的品种(EURUSD)。在右侧,选择“Tick数据”(不要选分钟线)。勾选你需要回测的日期范围。点击“下载”。等待下载完成。截图位置:Tick数据下载窗口已选好日期范围。

步骤6:验证数据是否下载成功
下载完成后,在“市场报价”中右键点击该品种,选择“Tick图”。你应该能看到K线图。如果还是空白,重复步骤5并选择更大的日期范围。截图位置:Tick图上显示价格走势。

步骤7:设置正确的回测日期范围
在策略测试器中,设置“起始”和“结束”日期,确保这两个日期落在已下载的Tick数据范围内。不要使用早于或晚于已下载数据的日期。截图位置:策略测试器中的日期范围选择。

步骤8:重新运行回测
点击“开始”。“没有历史数据”的报错应该消失。日志选项卡中会显示“测试通过”或初始余额。截图位置:正在运行的成功回测及进度条。

步骤9:(可选)保存数据供离线使用
点击“文件” > “打开数据文件夹” > bases > tickdata。将.hst文件复制到备份位置。这样可以避免以后重新下载。截图位置:数据文件夹路径及tickdata文件。

参考来源: MetaQuotes帮助中心 – 基于历史数据测试 / MQL5官方文档 – 品种管理