前向观察研究固定EA如何处理测试计划冻结后到达的数据。只有版本、每次决策实际可用的信息和评估规则保持可追溯,观察才有意义。事后选出的盈利时段不是同一个实验。
区分运营准备、证据完整性与业绩评估。首篇指南中的核对确认发生了什么,本篇定义前瞻观察协议。账本干净或完成日程,都不能证明盈利能力,也不授权为实盘账户投入资金。
1. 收集结果前先写明问题
说明要评估的行为与环境:信号时机、决策复现、请求处理、执行差异,或精确定义的业绩假设。明确比较对象及回答所需证据。不要以余额上涨代替所有问题。
记录此前所有版本与筛选尝试,包括失败案例。新的前向期间不会抹去模型筛选历史。看过结果后不断调参,会使这些观察成为开发数据。过拟合指南解释了为何筛选出的漂亮回测需要更严格审视。
2. 分开处理影子、模拟与实盘证据
本指南中,影子模式指只记录决策、不发送订单的观察程序。模拟指向经纪商模拟账户发送请求,实盘指真实资金账户执行。明确记录模式,不要将前向一词当作真实成交的保证。
| 模式 | 可以记录什么 | 主要证据限制 |
|---|---|---|
| 影子观察程序 | 决策与可用输入,不发订单 | 没有观察到经纪商执行 |
| 模拟账户 | 决策、模拟请求与经纪商记录 | 不证明实盘成交或成本 |
| 实盘账户 | 真实请求、经纪商记录与账户影响 | 本金面临风险,结果仍不确定 |
虚构示例仅使用模拟模式,不建议实盘资金分配。先匹配版本、数据和时间覆盖,再比较模式,并分别保留记录。模拟与实盘指南解释执行差异;影子程序不能从Bid图推断真实成交。
3. 固定能识别实验的清单
归档EA二进制文件与构建版本,以及可获取的源码修订;记录哈希、参数值和参数文件。包括服务器、账户与模式、货币、品种映射、周期、依赖、终端构建、时钟基准、数据来源、风险政策版本、起点、结束规则和评估日程。仅靠文件名不能识别配置。
教学示例在模拟EURUSD H1运行中固定EA-A和参数I1。清单保存固定日程中预期决策的时间戳与标识。交易与风险规则保持不变,本指南不提供这些规则或交易控制器。运营安全继续遵循现有账户风险政策。
4. 保存每次决策实际可用的信息
保存决策截止点、已收盘K线标识、相关价格与特征、来源时间、接收时间和新鲜度检查,并使用有记录的时钟标准化。虚构例中F1标注09:00:00,却在09:00:08才到达,晚于09:00:05固定的快照,不能用于该决策。09:00:10的后续评估必须保留这一事实。
来源时间更早,不证明EA当时读得到该值。执行固定的缺失数据规则,必要时记录跳过。后续修正另存。使用修订历史、当时仍形成而后来完成的K线,或事后收到的数值重建决策,会引入原运行没有的信息。
5. 预先规定窗口与预期机会
观察前明确起点与结束规则、市场日历、允许时段、预期决策日程、预热排除和评估节点。说明休市、缺K线、重启及故障的处理。不能因为没有发单,就将故障从分母中删除。区分计划时点、信号、请求与已完成交易。
虚构日程有100个预期决策时点,分为连续4块,每块25个。每块结束时评估,在最后时点后完成计划观察。这些数字便于复现审计,不是推荐最低数量或统计功效计算。实际时长与证据需求取决于频率、依赖性、市场情况和问题。
6. 预先规定评估、中断与变更规则
区分来源质量条件、运营升级处理和业绩标准。结果出现前定义指标、归属、成本、现金流、持仓处理及比较容差。净值与回撤指南及成本指南提供会计背景,不提供通用合格门槛。
在本模拟例中,只有每个预期决策都有可追溯证据,才可签署业绩资料。未解决时点使签署保持无法定论。计划评估不能延误现有风险政策下的紧急措施。不要一直延长到盈利,不要在有利高点停止,也不要亏损后悄悄改阈值。
7. 检查虚构覆盖率示例
表格是互不重叠的区块,并非累计总数。可追溯决策保存当时输入与已记录结果,包括有记录的无信号或跳过;未知时点则缺乏充分证据。R2有一条决策记录缺失,最终评估时仍未解决。不能假定该时点没有信号、请求或敞口。
| 评估区块 | 预期决策数 | 可追溯决策数 | 未知时点数 | 证据覆盖率 |
|---|---|---|---|---|
| R1 | 25 | 25 | 0 | 100% |
| R2 | 25 | 24 | 1 | 96% |
| R3 | 25 | 25 | 0 | 100% |
| R4 | 25 | 25 | 0 | 100% |
全部100个决策中,99个可追溯,1个未知,覆盖率99%。后续完整区块不能补上此前缺口。依照预定完整证据条件,资料仍无法定论。计算不衡量胜率,也不表示策略失败;即便记录完整,仍需单独评估证据充分性和业绩。
可选:复算证据数量与覆盖率
预期时点:25 + 25 + 25 + 25 = 100。可追溯决策:25 + 24 + 25 + 25 = 99。未知时点:0 + 1 + 0 + 0 = 1。完整区块:25 / 25 × 100 = 100%。不完整区块:24 / 25 × 100 = 96%。整体覆盖:99 / 100 × 100 = 99%。未知比例:1 / 100 × 100 = 1%。数量检查:99 + 1 = 100。百分比仅描述证据覆盖,数字格式采用英语规范。
8. 将规则变更视为新运行
改变阈值、参数文件、品种集合、时段过滤或风险规则,即改变实验。记录原因与生效时间,保留旧运行,开启有标识的新版本。例如,不能将EA-B与I2接到EA-A与I1之后,假装没有变化。基础设施变更也需有日期的事件记录和可比性评估。
修复错误可能必要,但不会把已看过的观察变成未见验证数据。保留事件和受影响期间,在新协议下获取后续证据。报告全部版本和此前查看次数。不要覆盖糟糕运行,不要汇总不兼容结果,也不要将回溯重放包装成原始前向记录。
9. 尊重历史测试器与平台限制
历史测试与前向观察回答不同问题。原生MT4测试存在已记录限制:WebRequest()和SendNotification()等外部交互函数不会在Strategy Tester执行,也不会执行测试品种之外的交易。历史运行不能证明实盘数据与告警链路正常工作。
模型与数据假设参阅回测指南,运营链路参阅监控指南。跨品种输入可用性应与交易执行分开检查。实际接收、断线、恢复和保护证据应来自合适的观察环境,而非假设测试器行为原样迁移。
10. 在计划评估时形成有边界的结论
报告协议标识、模式、实际日期、预期与观察覆盖、事故、版本变化、未解决项,以及预定指标和限制。包括亏损与未平仓敞口,而不只展示有利平仓交易。统计评估必须考虑依赖与重复筛选;本教学例不进行显著性检验或过拟合概率计算。
- 清单、比较、窗口和评估规则是否在结果前固定?
- 每次决策是否只使用截止时实际可用的信息?
- 影子、模拟与实盘记录是否分开?
- 缺口、事故、成本、持仓及版本变化是否可见?
- 结论是否遵循原标准,而非将覆盖率当作盈利能力?
明确结论:证据不完整、完整但不足以回答问题,或按预定评估记录的结果。任何一种都不会自动将模拟EA升级为真实资金运行。后续部署或分配需单独授权决定与风险控制。保留资料供持续监控和重新验证。
11. 前向验证常见问题
前向是否意味着用真金白银交易?
不是。应说明是影子、模拟还是实盘观察。只有实盘记录真实资金账户执行,也让本金面临亏损。
示例中的100个决策足以验证EA吗?
没有这种主张。它们只是虚构覆盖率数据,不是样本量建议。决策不一定等于交易或独立观察,完整覆盖本身不证明优势。
能否改进参数并保留同一前向结果?
保留旧结果,但将变更标为新运行或版本。已用于选择参数的观察属于开发证据,不是该选择的新验证。
99%覆盖是否表示99%胜率?
不是。它表示计划决策时点中具可追溯证据的比例。本例未解决缺口会阻止预定证据签署,与交易结果无关。
12. 来源与范围
一手来源:MQL4 Strategy Tester运行与限制、MetaTrader测试器设置与输入参数、Bailey等人的The Probability of Backtest Overfitting。核查日期:2026-10-18。研究提示警惕筛选偏差,不认证本协议,也不提供示例计数。
运行名、特征时间、日程和数量均为虚构教学输入。不提供真实EA策略、实盘业绩、最小样本量、预期收益或资金投入建议。图表展示协议与证据,不是原始测试报告。固定计划提高可追溯性,不保证盈利或安全交易。