凌晨两点多又被手机推送吵醒,镑美那个EA在1.2650附近反复开平,我盯着屏幕发了半天呆。回测跑出来曲线漂亮得像教科书,一到实盘就完全不是那么回事,这个问题我断断续续调了快三个月了。
先说下我用的东西,MT4平台,主要跑欧美和黄金两个品种,EA是基于均线交叉加RSI过滤那套逻辑自己改的。回测用的是历史数据,点差设的1.5,杠杆1:100,模型选的是每笔tick。问题出在实盘上:同样的参数,回测里欧美那段行情能吃到40多个点,实盘经常只拿到十几个点就被平掉了,有时候方向都对不上。我试过把点差调大到2.0重跑,也换过几个不同的历史数据源,还把VPS从新加坡换到伦敦机房,延迟从80ms降到5ms,改善了一点但没根治。
最让我想不通的是黄金那边,回测里胜率能到六成多,实盘挂上去两周,有几次明明信号出来了却没进场,日志里偶尔会跳 “order send failed, error 138”,查了下是重报价的问题。我把滑点容忍度从3改到10,情况好一些,但还是会漏单。参数我前后调了十几版,均线周期从20改到34,RSI阈值也试过65和70,回测结果都还行,实盘就是差一截。
我怀疑是不是回测本身就跟实盘有本质差异,比如tick数据的精度、或者经纪商那边的执行延迟,但又不太确定具体卡在哪一环。论坛里翻了不少帖子,有人说要开真实tick回测,有人建议直接上模拟盘跑一段再对比,我还没系统试过。
想问问有经验的朋友,这种回测和实盘对不上的情况,你们一般先从哪个环节排查?是数据源、执行延迟,还是参数本身过拟合了?
先说下我用的东西,MT4平台,主要跑欧美和黄金两个品种,EA是基于均线交叉加RSI过滤那套逻辑自己改的。回测用的是历史数据,点差设的1.5,杠杆1:100,模型选的是每笔tick。问题出在实盘上:同样的参数,回测里欧美那段行情能吃到40多个点,实盘经常只拿到十几个点就被平掉了,有时候方向都对不上。我试过把点差调大到2.0重跑,也换过几个不同的历史数据源,还把VPS从新加坡换到伦敦机房,延迟从80ms降到5ms,改善了一点但没根治。
最让我想不通的是黄金那边,回测里胜率能到六成多,实盘挂上去两周,有几次明明信号出来了却没进场,日志里偶尔会跳 “order send failed, error 138”,查了下是重报价的问题。我把滑点容忍度从3改到10,情况好一些,但还是会漏单。参数我前后调了十几版,均线周期从20改到34,RSI阈值也试过65和70,回测结果都还行,实盘就是差一截。
我怀疑是不是回测本身就跟实盘有本质差异,比如tick数据的精度、或者经纪商那边的执行延迟,但又不太确定具体卡在哪一环。论坛里翻了不少帖子,有人说要开真实tick回测,有人建议直接上模拟盘跑一段再对比,我还没系统试过。
想问问有经验的朋友,这种回测和实盘对不上的情况,你们一般先从哪个环节排查?是数据源、执行延迟,还是参数本身过拟合了?
