策略属性

每个 Pine 策略都有许多决定其行为的属性:

  1. 初始资金
  2. 基础货币
  3. 订单数量
  4. 金字塔式(递进落单)
  5. 手续费
  6. 对限价单核对价格
  7. 滑点
  8. 保证金
  9. 重新计算

它们在策略设置的“属性”标签中可用:

通过在相应的Pine脚本中编辑strategy()函数调用的参数,可以更改策略属性中指定的每个参数:

 

strategy(title, initial_capital, currency, default_qty_value, default_qty_type, pyramiding, commission_type, commission_value, backtest_fill_limits_assumption, slippage, process_orders_on_close, margin_long, margin_short, calc_on_order_fills, calc_on_every_tick)

让我们来看看“属性”菜单中的每个输入参数及其在 Pine 语言中的对应参数:  

1 - 初始资金(参数:initial_capital)表示最初可用于交易策略的资金量,以基础货币中定义的货币计。默认情况下,此值等于 100,000。您可能需要增加此值才能在某些商品上进行交易。

2 - 基础货币(参数:currency)指定用于计算的货币。出现在策略测试器标签中的结果(盈利、亏损、回撤等)以该货币表示。 可用的选择是:

默认、美元、欧元、澳元、英镑、新西兰元、加元、瑞士法郎、港元、日元、挪威克朗、瑞典克朗、新加坡元、土耳其里拉、南非兰特。如果选择默认选项,该策略将使用该商品的默认货币,并且没有货币转换。

3 - 订单数量(参数:default_qty_value、default_qty_type)。这需要一个值和一个计算模式。请注意,由于商品的最小可交易数量,计算值可能会受到限制:

  • 合约(参数:strategy.fixed) - 策略将以指定数量的合约/股票/手数进入。
  • 货币金额(参数:strategy.cash)- 策略将输入以基础货币指定的金额。
  • 权益百分比(参数:strategy.percent_of_equity)- 仓位规模将计算为交易开始时可用权益的百分比。您可以指定一个大于 100% 的值。

4 - 金字塔式(参数: pyramiding)指定在同一方向上允许的最大连续挂单数。当金字塔式被禁用时,即使满足入场条件,该策略也只能开设一个多头或空头仓位。金字塔只影响使用 strategy.entry() 函数创建的挂单。它对使用 strategy.order() 创建的订单没有影响。

5 - 手续费(参数:commission_type、commission_value)。它是为每笔交易支付的交易费用金额。必须提供值和计算模式。请注意,佣金适用于进场和出场,当使用百分比时,计算的佣金将随交易价值而变化:

  • 交易价值的百分比(参数:strategy.commission.percent) - 对每个订单征收等于指定百分比的手续费。
  • 货币 每份合约(参数:strategy.commission.cash_per_contract) - 对每份合约收取手续费。
  • 货币 每个订单(参数:strategy.commission.cash_per_order) - 对每个订单收取手续费。

6 - 对限价单核对价格(参数:backtest_fill_limits_assumption)让使用限价订单开仓的条件更加严格。默认情况下,此值为 0,即一旦达到订单中指示的价格,就会根据历史数据执行限价订单。如果该参数不为零,则限价订单只有在市场价格超过限价订单水平指定的tick数时才能在K线内建仓。

7 - 滑点(参数:slippage)指定要添加到市价单或止损单的成交价的tick值。它可以用来解释点差。

8 - 多头和空头仓位保证金(参数:margin_long、margin_short)维持仓位所需的保证金。如果没有足够的资金,就会发生追加保证金通知,强制平掉部分或全部仓位,直到有足够的资金来维持现有的仓位。

9 - 重新计算 选项指定应重新计算策略的频率。默认情况下,策略在每根K线收盘时重新计算,但使用以下选项也可以重新计算:

  • 订单成交之后(参数:calc_on_order_fills) - 允许策略在订单完成后立即执行额外的K线内订单计算。额外的计算发生在历史和实时K线上。
  • 在每个Tick上(参数:calc_on_every_tick)。默认情况下,策略仅在实时K线收盘时计算。此参数允许策略计算实时K线的每次更新,就像做研究一样。请注意,图表刷新时tick数据会丢失,因此使用此选项的策略将重新绘制。此参数不会影响策略在历史K线上的行为。另请注意,使用此功能的策略不会在历史K线上显示真实结果,因为它们不包含tick数据。

Translation results