You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pine Script中如何用账户余额5%设置strategy.entry下单数量

Pine Script实现按账户余额5%开仓的方法

Pine Script中确实没有strategy.balance函数,但可以通过以下方式实现按账户权益的5%开仓:

核心思路

开仓数量需要用资金额度除以当前品种价格转换而来,而账户实时权益可以用strategy.equity获取,它代表账户当前的总资金(初始本金+浮动盈亏)。

具体实现代码

//@version=5
strategy("按账户权益5%开仓", overlay=true)

// 计算用于开仓的资金:账户当前权益的5%
risk_amount = strategy.equity * 0.05
// 转换为开仓数量,向下取整并确保至少满足最小交易单位(示例为1)
position_size = math.floor(risk_amount / close)
position_size := position_size < 1 ? 1 : position_size

// 示例开仓条件(可替换为你的策略逻辑)
long_signal = ta.crossover(ta.ema(close, 10), ta.ema(close, 20))

if (long_signal)
    strategy.entry("Long", strategy.long, qty=position_size)

关键说明

  • strategy.equity:实时反映账户的总权益,包括未平仓头寸的浮动盈亏,适合动态调整仓位
  • 若想固定使用初始本金的5%开仓,可替换为strategy.initial_capital * 0.05,但这种方式不会随账户盈亏调整仓位规模
  • 必须用资金额度除以当前价格转换为数量,同时要处理取整逻辑,避免出现0手或不符合品种最小交易单位的情况(比如股票最小1股、期货最小1手)

内容的提问来源于stack exchange,提问作者Wolky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 05:20:27