$ £ ¥
¥ £ $

可用于高质量回测的 MetaTrader 历史数据导入及转换教程

MetaTrader 智能交易系统的历史数据进行回测是测试一项策略的好方法。但是,如果对您的 MT4 安装中可用的默认数据进行测试,这会导致测试质量非常差(通常低于 50%)。那么,该如何使 MT4 智能交易系统回测能达到 90% 的质量水平呢?其实,这并不难。您只需采纳本文中的简单教程,即可至少以 90% 的建模质量来测试任意一款 MetaTrader 智能交易系统。

本教程旨在提供有关 90% 与 99.9% 建模质量的准确信息,并提供一种可在您的 MT4 平台中获取高质量历史数据的简单方法。

建议用户使用单独的 MT4 安装文件以设置高质量的回测数据,并避免它被有潜在缺陷的经纪商数据覆盖。

1.下载全新的 MetaTrader 4 安装文件并将它安装在单独的文件夹中。请注意,优质的 MetaTrader 历史数据会占用大量磁盘空间,例如,预计两年数据会占用大约 1 GB 的可用空间。如要下载 MT4 安装文件,建议您选择一家 MT4 外汇经纪商,因为您不再能从 MetaQuotes 官方网站下载 MetaTrader 4。

2.运行新安装的 MetaTrader 并登录您经纪商的模拟账户。接下来,关闭所有已打开的图表。

3.前往菜单文件->打开数据文件夹。它会打开一个包含所有平台数据的文件夹。然后,关闭平台。

MT4 - 打开数据文件夹

3.在平台数据文件夹中打开历史子文件夹,删除其中所有内容(您历史文件夹中的实际内容可能与屏幕截图中的不同)

MT4 历史文件夹 删除之前的 MT4 历史数据

4.再次运行您的 MT4。通过工具->选项->图表调整 MetaTrader 选项,使图表历史中可以显示更多蜡烛图:

MT4 历史选项 将 MT4 历史烛图数量设置为最大值

5.前往 MT4 历史中心(在您的键盘上按 F2)下载您想要用于智能交易系统测试的每种货币对的一分钟历史数据。

MT4 历史中心菜单

6. 双击您选择的货币对的 M1 时间周期(它应该显示空数据):

MT4 历史中心菜单

7.点击下载 - 可能会出现一条提示消息(如果出现,点击 OK):

MT4 - 历史中心下载提醒

8.下载过程结束后,您会看到一些 M1 数据:

MT4 - 历史中心 - M1 数据

9.前往文件->打开离线文件,然后打开您刚下载过数据的 M1 图表。

MT4 - 文件->打开离线菜单 MT4 - 打开离线 M1 图表

10.有一个图表会打开。通过导航面板在脚本中找到 PeriodConverter脚本(这是 MetaQuotes 提供的默认脚本)。在图表上运行它,根据测试所需的时间周期设置周期乘数因式。此时,您会看到它被设置为 M30 转换:

MT4 - 运行周期转换脚本

11.检查终端面板中的Experts(智能交易系统)选项卡,以查看脚本是否成功完成任务:

MT4 - 检查周期转换脚本结果

12.接下来,如果我用 Every tick(每次跳动)模式在 M30 时间周期上回测某款智能交易系统,它会展示 90% 的建模质量:

MT4 - 回测报告中达到 90% 的建模质量

自从 MetaTrader 4 的 Build 940 版本发布以来,回测中可达到的最高建模质量为 90%,且无需将原因归结于自定义跳动点数据被黑客入侵。通过将第三方跳动点数据转换为 MetaTrader 自定义 .fxt 格式可实现 99.9% 的建模质量。

.fxt的生成是一个相当复杂的过程,具体步骤取决于您决定要使用的工具。建议您使用 StrategyQuant 提供的 QuantDataManager,因为它可以免费使用,允许您下载周期较长的 Dukascopy 跳动点数据,以及将下载的 .csv 跳动点数据转换为用于 MetaTrader 4 的 .fxt 及 .hst 历史数据。其他类似的工具包括由 Birt Ltd 提供的 TickstoryTick Data Suite(跳动点数据套件)

您可以在我们的 MT4 平台专门论坛中探讨这些工具以及其他有关在 MetaTrader 4 中获取用于回测的高质量历史数据的方法。

您知道吗?MetaTrader 5 本地支持对实时跳动点数据的回测。即使您的 MT5 经纪商不对您想要回测的周期及货币对提供高质量的实时跳动点数据,您可以将经纪商换为提供此类数据的经纪商。在 MetaTrader 5 中使用第三方数据提供商的意义不大。