波动市场中滑点假设如何变化
回测中的“滑点假设”含义
滑点假设描述了实际成交价格相比计算中使用的参考价格可能变得更差(或偶尔更好)的程度。在模拟中,你无法知道在实时交易中确切的成交时刻,因此需要使用一条规则或估算值来确定成交价格。
一种常见的理解方式是:预计成交价 = 参考价格 +(预计执行成本)。这里的“执行成本”可能包含多种因素的影响,例如点差跨越、暂时的价格冲击,以及订单生成与实际成交之间的时间差异。
为何波动市场会改变滑点假设
波动主要通过价格跳空、延迟、流动性以及订单处理改变滑点。即使你的模拟中滑点规则保持不变,从参考时刻到实际成交之间的真实市场价格路径可能变得更加不连续。
1) “参考价格”与“成交价格”之间的价格跳空
当市场价格快速变动时,你意图交易的时刻价格可能与你实际成交的时刻价格存在显著差异。这可能导致比你隐含建模的更大价差。
实际上,这意味着在较平静时期校准的假设,在快速行情中可能低估最坏情况下的价差。
2) 延迟:延迟将“预期”执行变为“滞后”执行
延迟是指信号生成(或模型中订单提交)与实际成交事件之间的时间。在波动条件下,即使微小的延迟也可能产生重大影响,因为市场变化迅速。
如果你的回测假设成交发生在某个稳定时点(例如下一根K线开盘或固定时间),但实际成交发生得更晚,这种差异就会扩大。关键变化不在于延迟本身“变得更糟”,而在于结果对时间的敏感性增加。
3) 流动性撤出与不利成交增加
在市场压力期间,流动性可能减少:更少的参与者愿意在你预期的价格水平上交易。当流动性下降时,市场可能跳至下一个可用报价,你的订单可能以更不利的价格成交。
这至少会通过两种方式增加滑点:(a) 首次成交价格比预期更差;(b) 部分成交更可能发生,从而改变有效平均成交价格。
4) 订单处理差异:部分成交与止损单的处理方式
模拟器与交易平台在订单类型和复杂情况的处理上可能存在差异。例如,在快速行情中:
- 无法在一个价格水平成交的订单可能在多个价位分批成交。
- 止损单可能被触发,但当市场快速穿过该价位时,实际成交价格可能远偏离触发价。
- 四舍五入、最小报价单位和内部执行规则可能使实际成交价格偏离模型预测。
如果你的滑点假设忽略了这些机制,波动条件可能导致模型预测与实际成交之间的差距扩大。
无需实时数据即可验证的逻辑或示例
即使没有实时价格数据,你也可以通过受控场景来验证这一逻辑。
示例(假设敏感性测试):
- 选择一个参考价格序列和一个假设的交易时间。
- 假设成交发生在时间上延迟一个“步长”。
- 比较预期成交价与不同跳空幅度(小、中、大)下的实际成交价格。
- 观察当跳空模型变得更加不连续时,平均差异如何扩大。
这类测试有助于确认一个关键点:滑点假设不仅关乎点差,还关乎时间延迟与价格变动形态之间的假设关系。
需注意的局限性与失效模式
一个显著的局限是,当真实执行路径包含模型未体现的不连续性时,滑点假设常常失效——尤其是在波动期间。
常见的失效模式包括:
- 低估跳空:市场跳动幅度超过模型的最坏情况。
- 忽视部分成交:模型假设单次成交,而现实中可能分批执行。
- 混合时间框架:为较慢K线构建的假设可能无法反映K线内的价格变动。
- 假设流动性恒定:市场条件可能迅速变化,使固定滑点规则失效。