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

基于K线最低价加若干跳点的移动止损运行异常问题求助

问题诊断与修复方案

你提供的Pine Script止损逻辑存在4个核心错误,直接修改后即可正常运行:

  • 止损基准值x的更新逻辑完全不触发:原判断条件x < low[0]-0.04永远为假,初始x = low[1] - 0.04和low[0]-0.04在开仓时完全相等,后续也没有跟踪最新价格调整的逻辑
  • strategy.exit的trail_offset参数单位错误:你前文用的止损幅度是0.04的量级,这里写low[1]-4会导致偏移值直接偏离正常价格区间,完全无法触发止损
  • 全局执行strategy.exit逻辑错误:没有仓位时不需要触发退出指令,应该匹配持仓状态执行
  • 浮点相等判断精度风险:直接用low == low[1]在部分品种上会因为报价精度问题漏判,可以加极小阈值做容错

修复后完整代码

strategy("Same lows", overlay=false, pyramiding=9999, calc_on_every_tick=true)

// 开仓条件:当前K线最低价和上一根K线最低价相等,且年份大于2020
if math.abs(low - low[1]) < 0.0001 and year > 2020
    strategy.entry("buy", strategy.long, 2)

// 动态止损值计算:仅持仓时更新止损
var float x = na
if strategy.position_size > 0
    // 止损为近两根K线最低值下浮0.04
    x := math.min(low, low[1]) - 0.04

// 退出策略:仅持仓时触发,固定止损不需要跟踪偏移
if strategy.position_size > 0
    strategy.exit("tsl", "buy", stop=x)

修改说明

  • 新增var关键字声明止损变量x,避免每根K线重置数值
  • 仅在持有多仓的情况下更新止损值、执行退出指令,避免无效调用
  • 修复止损值计算逻辑,取最近两根K线的最低价下浮0.04作为止损基准,符合你原本的策略意图
  • 删掉了无效的trail_points和trail_offset参数,你当前需求是固定止损不需要跟踪止盈,如果后续要加跟踪止盈再调整对应参数即可
  • 给低价相等判断加了0.0001的误差容限,避免浮点精度问题漏判开仓

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 05:18:04