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

如何在Pine策略中按pips设置TP止盈SL止损 并按权益比例开仓

Pine 策略需求实现方案

上述两个需求均可以通过 Pine Script 原生语法实现,具体操作如下:

1. 40 pips 止盈止损设置

Pine 内置了品种最小报价单位的获取接口,只需要做一次通用换算即可适配所有品种的点数计算:

  • 首先定义点数换算规则,大部分交易品种1个pip对应10个最小报价单位,代码如下:
// 计算单pip对应价格波动,自动适配所有交易品种
pip_value = syminfo.mintick * 10
// 40 pips对应的价格偏移量
tp_sl_offset = 40 * pip_value
  • 开仓时绑定止盈止损即可,示例代码:
// 做多场景
if (你的做多触发条件)
    strategy.entry("多单进场", strategy.long)
    // 止盈为进场价往上偏移40pips,止损为进场价往下偏移40pips
    strategy.exit("多单离场", "多单进场", limit=close + tp_sl_offset, stop=close - tp_sl_offset)

// 做空场景
if (你的做空触发条件)
    strategy.entry("空单进场", strategy.short)
    // 止盈为进场价往下偏移40pips,止损为进场价往上偏移40pips
    strategy.exit("空单离场", "空单进场", limit=close - tp_sl_offset, stop=close + tp_sl_offset)

以上代码无需额外调整即可适配日元类报价精度特殊的品种。

2. 初始资金与仓位设置

  • 初始资金直接在策略初始化参数中指定即可,在代码开头的strategy声明中添加对应参数:
strategy(
    title="你的策略名称",
    initial_capital=1000, // 初始账户资金设置为1000美元
    default_qty_type=strategy.cash,
    overlay=true
)
  • 按当前账户90%权益开仓的逻辑,只需要在开仓前动态计算仓位即可:
// 动态计算开仓数量:当前账户权益的90%除以当前价格
position_size = strategy.equity * 0.9 / close

// 开仓时指定对应仓位即可,替换原有开仓逻辑即可
if (你的做多触发条件)
    strategy.entry("多单进场", strategy.long, qty=position_size)
if (你的做空触发条件)
    strategy.entry("空单进场", strategy.short, qty=position_size)

如果是杠杆保证金交易,可将default_qty_type调整为strategy.margin,再乘以对应杠杆比例即可适配保证金计算规则。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 05:45:03