回测能回答“这套规则在一段历史数据里发生过什么”,不能证明未来会复制同样收益。可靠的策略验证要防止偷看未来、过度拟合和成本遗漏,并经过样本外测试、模拟观察与小额实盘。只展示一条平滑资金曲线,证据远远不够。
开始回测前冻结规则
先写清入场、退出、止损、仓位、交易时段和费用,再运行历史数据。如果看到结果后不断修改参数,直到曲线最好,测试集就已经变成训练集,漂亮表现很可能只是对历史噪声的记忆。
规则中的“趋势明显”“形态漂亮”等主观词必须量化或由人工逐笔留痕,否则不同时间复测会得到不同答案。
数据质量决定结果上限
检查时区、夏令时、缺失报价、异常尖峰、买卖价与交易品种是否一致。用一分钟收盘价测试盘中止损,无法知道先触及止损还是目标;只用中间价则会漏掉真实点差。
不同交易商的场外报价和展期规则可能不同。历史数据来源、精度和清洗方式应保留记录,方便解释回测与实盘差异。
把全部成本写入模型
至少纳入点差、佣金、隔夜融资和合理滑点。点差不能永远使用最佳固定值,低流动性和新闻时段应采用更保守假设。长期策略若忽略隔夜费,年化结果可能被明显高估。
CFTC对网络交易系统的风险提示指出,假设业绩经常没有充分考虑买卖价差、实际成交、流动性以及系统和数据费用。这些遗漏都会人为降低盈亏平衡点。
训练集与样本外数据分开
可以用较早数据建立规则,再用未参与调参的后续数据验证。样本外表现明显崩塌,通常说明参数过度依赖某一历史阶段。滚动前推测试比一次切割更接近真实使用:每次只能使用当时已经知道的数据。
任何宏观数据也要使用当时发布值,而不是后来修订值。把修订后的经济数据放进历史决策,会产生不易察觉的前视偏差。
不要只看胜率和净利润
胜率高的策略可能偶尔出现巨大亏损;净利润相同的两套策略,回撤和持仓压力可能完全不同。至少观察交易次数、盈亏比、期望值、最大回撤、最长连续亏损、成本占毛利润比例和不同年份表现。
还要看利润是否集中在极少数交易。如果删除最好的几笔后策略失去优势,未来结果会高度依赖能否抓住少数极端行情。
做参数稳定性而非最佳化
将均线周期、止损距离或入场阈值在合理范围内轻微改变。若只有一个狭窄参数组合盈利,周围数值全部失效,可能是数据拟合;一片相邻参数区域表现大致稳定,通常更有解释力。
目标不是找到历史最高收益,而是寻找在参数误差、成交误差和市场变化下仍能运行的规则。
压力测试最坏情景
把点差扩大、滑点加重、成交延迟,并随机打乱部分交易顺序,观察最大回撤是否仍可承受。也可删去表现最好的若干交易或把费用提高一倍。策略在温和扰动下就失效,不适合直接投入资金。
回撤压力应转换成金额。投资者是否能在连续亏损期间继续遵守规则,是历史代码无法完全模拟的人性约束。
模拟交易能验证什么
模拟阶段适合检查信号是否及时、订单逻辑有无错误、平台时区是否一致,以及日常工作能否按规则完成。但模拟账户没有真实资金压力,成交条件也可能与实盘不同,所以不能把模拟收益直接当作可实现业绩。
CFTC明确提醒,假设交易未经历真实市场条件,也无法完整反映交易者承受亏损和持续执行计划的能力。
小额实盘是执行审计
进入实盘时先使用足以验证流程、但完全可承受损失的最小风险。比较请求价与成交价、实际点差、隔夜费、断线情况和提款流程。重点不是短期赚多少,而是模型假设与真实执行相差多少。
若实盘偏差持续高于回测假设,应先停止扩大资金并修正模型。不能用加仓来掩盖成本和执行缺陷。
如何识别被包装的业绩
看到策略销售页面时,应询问结果属于实盘、模拟还是历史回测,是否扣除全部费用,是否包含所有账户和亏损月份。CFTC与NFA都要求对假设业绩的固有限制作醒目披露,因为它可能受后见之明、流动性和未经历真实风险影响。
仅有收益截图、无法核对的第三方排名或精选交易,不足以证明完整业绩。固定收益和稳赚承诺更是明显警报。
建立上线与停用标准
策略上线前规定最低样本数、可接受回撤、成本上限和样本外标准;上线后规定何时降仓、暂停和重新评估。不要在发生亏损后临时发明标准,也不要因为短期盈利自动提高杠杆。
每次改动保留版本,旧版和新版分开统计。若多项规则同时改变,后续将无法判断改进是否真实。
结论:回测是筛选工具,不是收益证明
有意义的验证,应让策略经历没有参与调参的数据、真实费用、执行扰动和小额实盘。它无法消除未来不确定性,但能剔除明显依赖历史巧合或不现实成交假设的方案。
策略搭建流程见外汇交易策略规则清单,执行止损参见止损成交与滑点,资金预算可读外汇本金与回撤测算。
资料依据:CFTC网络交易系统风险提示、NFA假设业绩披露规则说明。核验日期:2026年9月8日。