首页 / 交易学院 / 小布知识库 / 依据价格相关性的统计数据过滤信号:打破“市场随机”迷思
依据价格相关性的统计数据过滤信号:打破“市场随机”迷思
🔗

依据价格相关性的统计数据过滤信号:打破“市场随机”迷思

交易策略 难度 · 进阶 2013 11 分钟阅读
价格相关性信号过滤统计MQL5风控

“过去的价格不影响未来”——这是学院派最爱念的咒语,也是无数亏损系统的根源。Larry Williams 在《短线交易秘诀》里直接打破了它。本文用 MQL5 做了两组统计实验:第一组证明“前一根收阴后,下一根回补上涨的概率显著 >50%”;第二组把“星期几”当成过滤器(TDW 策略),让一个双 MA+MACD 系统只在一周特定日子开仓,效果立判高下。

一、市场真的随机吗(打破神话)

掷硬币每次都是独立 50/50,没有记忆。如果市场也这样,那“昨天的阴线”对“今天的阳线”毫无影响。作者用 MQL5 向导搭了个模拟 EA:记录每根K线收阴后,接下来 1/2/3 根K线收涨的百分比。结果一目了然——价格有明显“把损失赢回来”的倾向,前一根的走势对后一根影响相当显著。市场不是掷硬币。

// 模拟:统计“前一根收阴”后,后续K线收涨的比例
if(close[1]<open[1] && count==0) { // 上一根收阴
  open_cur=open[0]; close_cur=close[0];
  if(close_cur>open_cur) profit_trades++; else loss_trades++;
}

二、TDW 策略:按星期几过滤

既然价格行为和时间有关,那就把“星期几”当过滤器。作者让系统在一周的不同日子分别只做多/只做空,回测结束后挑表现最好的那天作为过滤器。现象背后可能是宏观日历、资金节奏,或是 A. Elder 说的“周一二是散户止损日、周四周五是机构时间”。无论原因,统计上它成立,就能用。

TDW = Trading Day of Week。它的价值不在“解释为什么”,而在“过去数据里这一天确实更赚钱”,据此过滤即可。

三、双 MA + MACD 信号系统

被过滤的主体是个简单系统:快速 EMA 上穿慢速 EMA 且 MACD 柱低于零 → 做多;快线下穿慢线且 MACD 柱高于零 → 做空。以固定 0.1 手、跟踪止损平仓。逻辑封装在 moving.mqh 的 my_expert 类里,EA 主文件只负责按星期几调用。

// 只在周五看多信号、周一看重空信号(示例)
if(PositionsTotal()<1){
  if(day_of_week==5 && expert.check_for_buy())  expert.open_buy();
  else if(day_of_week==1 && expert.check_for_sell()) expert.open_sell();
} else expert.position_modify();

四、用 MQL5 把过滤器落进 EA

落地结构:moving.mqh 管“怎么判断买卖”,EA 主文件管“今天能不能买卖”。两层分开,过滤器想换(星期几→时段→波动区间)都不用动信号核心。

五、注意事项与误区

统计过滤不是印钞机。两点务必警惕:① 样本要够长,几周的“周一效应”可能是噪声,至少拉一年以上;② 过滤器和信号要分别验证,别把“恰好同期市场单边”误当成“过滤器有效”。最稳的做法是样本内找规律、样本外再验一次。

铁律:任何统计规律都先问“样本够长吗、样本外还成立吗”。否则你过滤掉的不是假信号,是自己的本金。

六、把多种过滤器叠加使用

星期几只是最直观的一维。实战中常把 TDW 与其他统计维度叠加:比如“仅在周五(day_of_week==5) 且 当前波动低于近 20 根平均”时才放行做多信号。维度越多,样本被切得越细,每片必须仍有足够样本量,否则噪声盖过规律。稳妥做法是先单维验证、再二维组合,且组合后必须重新做样本外复核。

反例:若你同时按‘周五 + 美盘 + 低波动 + 相关性>0.6’四维过滤,一年里符合条件的K线可能只剩几十根,统计结论毫无意义。过滤是‘做减法’,不是‘叠枷锁’。

七、小结

价格相关性统计给交易者一把“过滤假信号”的刀:先用模拟打破“市场随机”的迷信,再用 TDW 这类时间维度把系统 trimmed 到高胜率区间。MQL5 的实现很轻——TimeToStruct 取星期几、my_expert 类封装信号、EA 层一句 day_of_week 判断就完成过滤。记住,统计有效的前提是样本够长且样本外复核,否则这把刀容易割到自己。

常见问题

作者用 MQL5 模拟证明:前一根收阴后,接下来 1~3 根K线收涨的比例显著超过 50%,说明价格有“回补损失”的倾向,并非掷硬币式独立。市场存在可统计的依赖结构,这也是技术分析与过滤策略能成立的前提。
TDW = Trading Day of Week。思路是把“星期几”当过滤器:回测系统在一周不同日子分别只做多/只做空,挑出历史表现最好的那天作为开仓条件。本质是“某天价格行为确实更可盈利”这一统计规律的直接应用。
在信号之外套一层统计维度判断:时间(星期几/时段)、波动区间、相关性等。MQL5 里用 TimeToStruct 取 day_of_week,在产生信号处加一句星期/时段判断即可跳过非目标时段的信号。过滤逻辑与信号核心解耦,方便替换维度。
不适合,且不能盲信。两点前提:① 统计规律必须建立在足够长样本(至少一年)上,短期“效应”多为噪声;② 要在样本外复核,确认不是恰逢单边市造成的假象。不同品种、不同周期的统计结构差异很大,需分别验证。