跳到正文
法布财经头条·· 3 天前AI 评分66

外汇回测中同根K线同时触及止损和止盈时如何处理

外汇回测同根K线碰到止损和止盈,究竟先算哪个?

AI 导读

外汇回测中,同一根K线同时触及止损和止盈时,仅凭开高低收无法判断哪一价位先出现,因此不能把止盈直接作为结算结果。示例中,1万单位欧元兑美元交易的毛损益可能是止盈的+18美元或止损的−12美元;20笔假设交易的净结果范围为−20至+100美元。文章建议保留顺序未决交易,统一报价与执行假设后进行情景测试,并检验未决结果是否足以改变策略净期望。

正文

一根外汇K线的最高价越过止盈、最低价跌破止损,不代表可以按止盈结算。开、高、低、收通常没有告诉你两个价位谁先出现;直接选择盈利的一端,是把缺失的信息变成了没有证据支持的优势。

要核对的不是哪种假设让收益曲线更漂亮,而是有多少收益依赖尚未知道的盘中顺序。先固定入场、报价和成交条件,再计算这部分不确定性,才能判断数据是否足以支持策略结论。

外汇回测同根K线碰到止损和止盈,究竟先算哪个?_1

先把仓位、报价和订单生效时刻写清

假设美元账户买入10000单位欧元兑美元,实际按卖价1.1002成交,此时买价为1.1000。入场后,全仓止损在买价1.0990、止盈在买价1.1020生效,没有重新入场。示例额外假设价格连续变化、在指定退出价精确成交、点差固定0.0002;这些只是教学条件,不是成交承诺。

初始价格风险是10000×(1.1002−1.0990)=12美元;到止盈的毛收益是10000×(1.1020−1.1002)=18美元,即1.5R。若从买价开盘1.1000量距离,会误算成风险10、收益20美元,忽略真正的入场成交价。已经按实际买卖成交价计算后,也不能再扣一遍估算点差。

现在给出一根买价K线:开1.1000、高1.1025、低1.0985、收1.1010。两个退出价都在范围内。收盘高于开盘,只能说明它是阳线,不能推出先涨后跌或先跌后涨。

同一个开高低收,可以产生两笔相反结果

假设下列各节点之间连续移动。两条路径有完全相同的开高低收,却触发不同的第一笔有效退出。

入场后的路径首先有效退出毛损益美元K线是否相同
开→高→低→收止盈1.1020+18是
开→低→高→收止损1.0990−12是
只有开高低收先后未定−12或+18完全相同

先走高的路径会先碰止盈,整笔毛赚18美元;后来再跌到低点,仓位已经不存在。先走低的路径会先止损,整笔亏12美元;随后反弹也不会自动恢复已平仓交易。若记两次全仓退出,就必须另有新仓或明确的分批规则,本例均没有。

同根K线的结果相差30美元。因为阳线就规定“开—高—低—收”,是额外添加的模拟规则,不是原数据给出的事实;规定“开—低—高—收”同样需要明确标为假设。

把不确定性传到整份回测,而不是藏在单笔里

设20笔相同数量、固定退出距离的独立假设交易,不复利加仓。其中8笔明确止盈、8笔明确止损,毛合计8×18−8×12=48美元;另外4笔都是先后未知的双触及K线。

4笔未决交易的分配已知合计美元未决4笔美元毛总额美元
全部先止损+48−480
全部先止盈+48+72+120
先后未知+48−48至+720至+120

四笔全部按先止损计算,20笔毛收益为0;全部按先止盈计算,则是120美元。另假设每个完整交易显式佣金1美元,共20美元,净结果范围为−20至+100美元;平均每笔−1至+5美元,以初始12美元风险为分母,平均净R介于−1/12与5/12。

这是固定假设下的情景范围,不是置信区间,也不是概率预测。能画出两条路径不意味着各有50%概率。跳空、成交偏离、入场状态或数量随路径变化时,真实结果也可能超出这个简化范围。

周期更细,只有真正分出先后才有帮助

更小周期可能显示,一个退出价出现在较早子K线,另一个在较晚子K线。前提是入场已经生效,时间戳、时区和报价口径相容。若两个价位仍在同一根子K线内,问题只是被缩小,没有解决。

软件生成更多模拟报价,不等于找回缺失的历史顺序。逐点曲线看起来精细,也可能只是依据较粗数据重建的路径。要区分记录的历史报价和生成的数据,并核对缺失区段,不能只凭模式名称就认为全程真实。

通常的买卖报价模型中,多仓退出看买价,空仓退出看卖价;实际测试应服从合约和订单触发规则。中间价K线不能直接替代任一边。可结合外汇止损与买卖报价的核验方法,把报价方向错误与盘中先后未知这两个问题分开排查。

不要为了消除一种偏差,引入另一种

如果入场信号用了这根K线的最终收盘,就不能回到它的开盘价建仓,否则用了当时尚不存在的信息。先修正信号时间。若仓位在K线中途才建立,入场之前的最高价或最低价也不能触发后来的订单。

对上述固定独立交易,统一先止损可作为保守压力情景,但不是历史事实。若退出会改变下一次入场、移动止损、可用保证金或下笔仓位,改一笔结果会连带改变后续状态,必须完整重放规则,不能只翻转盈亏标签。

不要删除顺序不明的交易,也不要默认它们全赢,或只保留恰好有细数据的样本。应记录未决交易占比及其在既定模型下可能贡献的损益差,避免数据可得性本身筛出漂亮绩效。

用可重复的测试决定证据是否够用

对每笔双触及交易,保留货币对、数据源、时区、K线边界、买卖报价口径、信号时间、入场假设、订单生效时间和退出价。保存原始粗K线及用于判定顺序的时间戳记录。第一笔有效触发必须发生在订单生效之后。

将本例先高、先低两条自设路径送入同一套测试逻辑,预期毛结果应分别为+18与−12美元,且每笔只有一次全仓退出。再加入入场前已经出现极值、跳过止损、缺失报价及点差变化的测试。算术通过,只能证明这个例子算对,不能证明所有成交模型真实。

最后统一数据和执行假设重跑,把仍未解决的交易单独保留,并比较其影响与报告中的总优势。如果合理的未决顺序范围已足以把净期望从正改负,就还不能说数据证明了该优势。应补证据,而不是选择最有利的路径。

来源:法布财经头条 · fastbull.com