什么是K线放大器回测模式
您可以使用“K线放大器”选项,在策略回测中获得更真实的订单成交情况。此工具使用intrabar检查,为您提供更细致的价格变动视图,从而实现更精准的订单成交。
启用“K线放大器”模式后,经纪商模拟器将仅使用历史K线的OHLC值 ,而不是假设价格如何变动。
“K线放大器”使用的intrabar周期会随着图周期动态调整。下表列出了用于逐步增加图表周期的intrabar周期。
以下是使用止损单而不使用“K线放大器”选项的策略示例。
//@version=5
strategy("bar_magnifier_demo", overlay = true, use_bar_magnifier = false)
if bar_index == 10381
strategy.entry("Long", strategy.long, stop = 157.0)
strategy.exit("Exit", stop = 156
Java经纪商模拟器在#10,381K线上设置止损单,并在下一个K线上,一旦止损价 = 157.0 的条件满足,立即执行价格为 157.0 的订单。经纪商模拟器估算,在K线内部,价格会从“开盘价”跌至“最低价”,再跌至“最高价”(触发入场),最后跌至“平仓”。经过几个K线(当前时间周期为 11 天)后,止损价 = 156.0 的平仓条件被触发。

启用K线放大器时(参数 use_bar_magnifier = true),退场和入场价格不变; 但是,该仓位的退场发生在入场发生的同一根K线内:
//@version=5
strategy("bar_magnifier_demo", overlay = true, use_bar_magnifier = true)
if bar_index == 10381
strategy.entry("Long", strategy.long, stop = 157.0)
strategy.exit("Exit", stop = 156.0)
Java
如果我们检查同一商品的较低时间周期图(60分钟图表,根据intrabar时间周期表)并找到对应于K线10382的时间周期,我们可以看到在每小时周期上,达到157.0并触发入场,价格跌破156.0,满足stop = 156.0条件:

启用“K线放大器”后,经纪商模拟器可以在回测期间访问较低周期的价格变化,使其行为更类似于在同一时间段内对策略进行前向测试时的情况。
要切换“K线放大器”选项,请在策略的“设置/属性”窗口中切换相应的输入。

!注意:该策略无法请求超过 200,000 条较低时间周期的K线。
对于包含大量历史数据的商品(图表K线数量 × 每个图表K线的较低时间周期的K线数量 > 200,000),图表上的首笔交易可能不会受到K线放大器的影响。
从图表末尾开始,受K线放大器影响的K线数量可以使用以下公式粗略计算。
last_bar_index - (200000 / 每个图表K线的较低时间周期的K线数量)
由于较低时间周期K线的数量可能因K线而异,因此最终结果将是一个粗略的近似值。
另请参阅: