产品
为什么要真实 tick
MT4 自带的回测价格是推算出来的。真实 tick 是当时记录下来的每一次报价。这一页说明两者差在哪里,也说明 mttick 不能保证什么。
MT4 自带的价格是怎么来的
MetaTrader 4(MT4)的「每个即时价格」模式,价格是从 1 分钟 K 线按固定规则插出来的。每根 K 线只有开、高、低、收四个价,中间怎么走,由规则补出来。所以回测报告里的建模质量最高是 90%。
点差也不是记录下来的。它是一个固定数,整个回测里都不变。
MT4 自带:从 M1 K 线插出来
mttick:记录下来的每个 tick
真实 tick 改变什么
有了真实 tick,EA 看到的是价格实际走过的路。下面这些,由当时的报价决定,不再由插值规则决定:
- 同一根 K 线里,先碰到止损还是先碰到止盈。
- 挂单和剥头皮单在哪个价位成交。
- tick 的数量。一次实测里(MT4 自带 Moving Average,EURUSDm H1,2025-01-13 至 01-17),测试器处理了 258,555 个 tick,正好等于写入的真实 tick 数。
真实点差改变什么
点差决定每一次开仓和平仓的成本,所以它一变,结果就变。MT4 里点差的单位是点:五位报价的最小变动,1 pip 等于 10 点。
点差的下限设置对结果影响很大。mttick 的默认下限是 1 点,一般不要改。
下面是同一个 EA、同一周的三次回测,只有点差不同。
- 47.74固定点差 10 点10 点是 1 pip
- 48.64真实点差按记录的点差
- −192.20真实点差加倍记录的点差乘 2
数字是回测报告里的总净盈利。MT4 自带 Moving Average,EURUSDm,H1,2025-01-13 至 01-17,258,555 个 tick。单个 EA、一周数据的小样本,只说明方向。
它不改变什么
真实 tick 和真实点差,让回测用上当时的价格和点差。它们不会让回测变成实盘。
不会让回测等于实盘
回测是对历史数据的模拟,不代表未来,也不保证与实盘一致。
成交延迟和滑价默认不模拟
默认情况下,回测里的成交没有延迟,也没有滑价;要模拟,在回测设置里自己打开。打开以后也只是一个模型,不模拟重新报价、部分成交和拒单。
报价不完全相同
不同来源的报价不完全相同。我们拿 Dukascopy 和 Exness 两个来源对照过,中间价平均相差约 0.14–0.23 个 pip;点差的差别更大,黄金上尤其明显,见数据来源怎么选。你的经纪商的报价和 mttick 的数据,同样会有差别。
时区仍然会改变切分
服务器时区和夏令时的设置,决定 H4 和日线的 K 线怎么切分。
用它做压力测试
「真实」「稍严一点」「严很多」三张点差卡片,各跑一次,看你的策略在哪一档撑不住。
这看的是策略对点差有多敏感。它不预测实盘会发生什么。