MQL5中的范畴论(第18部分):自然性四边形·综合运用
(3/3)·从ATR与布林带到价格柱范围,用自然变换把指标变化映射成可交易的波动信号
「样本内亮眼、样本外翻车」
拿 EURUSD 日线跑 2022.08.01–2023.08.01,这套设置的最优运行能出一份相当好看的回测报告;但把同样参数丢到非优化期——也就是测试区间前推一年——结果直接转负,和样本内表现完全对不上。 拆开资金曲线看,样本内那点利润几乎全靠止损兜住,并不是方向判断本身在赚钱。这意味着参数只是拟合了那段行情的波动节奏。 和本系列前面用过的波动率预测思路比,这套自然性四边形(四个对象)的写法明显更吃算力,属于资源密集型做法。想让它在非优化期也站得住,得改四个对象的定义方式,否则前瞻测试大概率还是亏。 外汇与贵金属杠杆高、滑点跳空频繁,样本外失效是常态,任何回测亮眼都不能直接当实盘依据。
自然变换落地的现实边界
本文系与整个系列都未对优化设置做前瞻运行(out-of-sample),这意味着直接套用给出的 MQL5 向导类代码,大概率不会开箱即效。读者需要把自然性四边形捕捉到的波动倾向,与自己既有的进场/退出或头寸管理逻辑配对改写,才可能跑出正期望。 MQL5 向导类的价值正在此处:它把信号模块做成可插拔的平行函子,你不必重写整个 EA,只要替换或叠加 functor 就能验证自然变换差异。外汇与贵金属属高杠杆品种,任何由范畴差异推导的波动预测都只是概率倾向,实盘前务必在 MT5 策略测试器用历史数据回测。 一个可立刻验证的点:打开 MT5 的 MQL5 向导生成 EA,把本文的波动性预测模块挂为独立 signal,观察其在 XAUUSD 的 H1 上自然性四边形是否频繁失真——失真次数多,说明该范畴映射在你当前品种周期上不适用。
◍ 把工具请下神坛
把 SignalCT_16_.mqh 丢进 MQL5\include\Expert\Signal\,ct_16.mqh 放 MQL5\include\ 根目录,EA 才能在向导里把这两块信号拼起来。按官方向导流程组装时,资金管理直接选库里的无跟踪止损加固定保证金即可,不用自己造轮子。 作者这套东西明面上是 37.71 KB 的 ct_18.mqh 配 17.66 KB 的 TrailingCT_18_.mqh,但反复强调的是:它只是个能改的思路,不是圣杯。外汇和贵金属杠杆高、回撤凶,拿来跑实盘前先开 MT5 用策略测试器压一遍自己的品种参数。 真要落地,就照这个目录结构把文件铺好,向导里挂上信号类,调一调固定保证金比例。工具用完即走,别供着。