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

Pine脚本:盈利部分平仓、亏损全部平仓的实现方法

解决方案:分离盈利止盈与止损平仓逻辑

在Pine Script中,单个strategy.exit的qty_percent参数会同时作用于盈利和止损条件,这就是你直接添加loss后仅平仓一半的原因。要实现盈利10000 ticks平50%、亏损5000 ticks全平的需求,你可以通过以下两种方式实现:

方法一:使用两个独立的strategy.exit指令

分别为盈利止盈和止损创建独立的退出指令,给止损指令设置qty_percent=100确保全仓平仓:

// 开多单
strategy.entry("My Long Entry", strategy.long)

// 盈利10000 ticks时平仓50%
strategy.exit("Profit Exit", from_entry="My Long Entry", profit=10000, qty_percent=50)

// 亏损5000 ticks时全仓平仓
strategy.exit("Stop Loss Exit", from_entry="My Long Entry", loss=5000, qty_percent=100)

这种方式下,两个退出指令独立生效:价格触发盈利条件时仅平半仓,触发止损条件时直接平掉剩余全部仓位(包括已止盈后剩下的50%)。

方法二:结合strategy.close实现止损全平

通过条件判断价格是否达到止损阈值,直接调用strategy.close全平仓位:

// 开多单
strategy.entry("My Long Entry", strategy.long)

// 盈利10000 ticks时平仓50%
strategy.exit("Profit Exit", from_entry="My Long Entry", profit=10000, qty_percent=50)

// 计算止损价格(开仓价 - 5000 ticks)
stopPrice = strategy.entry_price("My Long Entry") - 5000 * syminfo.mintick

// 当价格跌破止损价时,全平仓位
if close <= stopPrice
    strategy.close("My Long Entry", qty_percent=100)

这种方式更灵活,你可以通过自定义条件精准控制止损触发时机,确保触发时直接平掉所有剩余仓位。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 20:17:01