保持敬畏之心
交易是一场持久战

Pine Script(73):strategy的default_qty_value参数详解

#Pine Script入门教学

上一篇文章里,我们详细讨论了 Pine Script 中仓位管理的三种核心模式 (default_qty_type),但光有模式还不够,我们必须为这个模式注入灵魂,也就是设定一个具体的“数值”。这个关键任务,就由 default_qty_value 参数来完成。

简单来说,default_qty_type 决定了如何算,而 default_qty_value 则决定了算多少,两者结合,才构成了一个完整的仓位管理方案。default_qty_value 的具体含义,完全取决于你为 default_qty_type 选择了哪种模式。

1. 在固定数量模式下 (strategy.fixed)

default_qty_value 代表你希望每笔订单交易的固定合约数或股数。

例如,设置每笔订单交易10手合约:

//@version=6
strategy(title="我的策略", default_qty_value=10,default_qty_type=strategy.fixed)

2. 在固定现金价值模式下 (strategy.cash)

default_qty_value 代表你希望每笔订单投入的固定现金金额,单位是策略的账户货币。

例如,设置每笔订单投入价值5,000美元的仓位:

//@version=6
strategy(title="我的策略", default_qty_value=5000,default_qty_type=strategy.cash)

3. 在百分比模式下 (strategy.percent_of_equity)

default_qty_value 代表你希望每笔订单投入的百分比数值。

例如,设置每笔订单使用当前总权益的15%:

//@version=6
strategy(title="我的策略", default_qty_value=15,default_qty_type=strategy.percent_of_equity)

default_qty_value 的默认值是1,在固定数量模式下,这代表1手合约,通常没问题 。但在现金价值模式下,它代表1美元;在权益百分比模式下,它代表1%的权益 。这两种情况下的仓位都可能过小,导致无法开仓或回测结果失真,所以一旦使用了非默认的仓位模式,一定不要忘记设置一个合理的default_qty_value

default_qty_type 一样,default_qty_value 也必须是一个固定的数字,不能是动态变量 ,这意味着策略的默认下单数值在整个回测中是恒定的。这个默认下单量仅对开仓函数 strategy.entry()strategy.order() 生效 ,所有平仓函数(如 strategy.close())都是针对已有仓位进行操作,不受此参数影响

你也可以在策略设置的“属性”标签页中,手动修改“订单大小”的数值框。这个手动设置会覆盖你在代码中写入的 default_qty_value 。这在你需要快速测试不同风险水平对策略的影响时非常有用,可以省去反复修改和保存代码的麻烦。

总结

default_qty_value 是我们为策略注入具体风险偏好的关键参数。它为 default_qty_type 所选定的仓位管理模式提供了实际的数值依据。

  • 它决定了订单的多少,而 default_qty_type 决定了“如何算”
  • 它的含义会根据仓位模式的不同而改变(是合约数、现金值还是百分比)
  • 务必警惕其默认值为1可能带来的问题,尤其是在使用现金或权益百分比模式时

掌握 default_qty_typedefault_qty_value 这对组合,你就掌握了 Pine Script 策略中进行系统化仓位管理和风险控制的钥匙。

赞(0)
未经允许不得转载:图道交易 » Pine Script(73):strategy的default_qty_value参数详解
分享到

评论 抢沙发

登录

找回密码

注册