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

Pine Script尾盘强制卖出信号失效问题排查求助

问题解决:交易日尾盘强制卖出信号不生效的修复

核心问题分析

你的t1布尔类型是正确的,问题出在条件判断的优先级和结构上:原代码把t1放在else if分支里,这意味着只有当买入条件(B==true and M==true)不满足时,才会判断t1。但你需要的是尾盘时段无视所有其他条件强制触发卖出,所以t1必须作为最高优先级的判断条件。

另外原代码里有两行冗余代码(单独的V5_Master_To_Sell和V5_Master_To_Buy),没有实际作用,可以删除。

修正后的代码

//@version=5
indicator("Fix Sell Signal", overlay=true)

// 假设B和M是你已定义的条件变量,这里仅做示例
B = ta.close > ta.open
M = ta.rsi(close, 14) < 70

// 尾盘时段判断:周一至周五15:57-16:00
t1 = time(timeframe.period, "1557-1600:23456")

var bool V5_Master_To_Buy = false
var bool V5_Master_To_Sell = false

// 最高优先级:尾盘强制卖出
if t1
    V5_Master_To_Sell := true
    V5_Master_To_Buy := false
// 正常买入条件
else if B and M
    V5_Master_To_Buy := true
    V5_Master_To_Sell := false
// 正常卖出条件
else
    V5_Master_To_Sell := true
    V5_Master_To_Buy := false

// 绘制买卖信号标记
plotshape(V5_Master_To_Buy and not V5_Master_To_Buy[1], title="BUY", location=location.belowbar, color=color.lime, style=shape.triangleup, textcolor=color.yellow, text="BUY")            
plotshape(V5_Master_To_Sell and not V5_Master_To_Sell[1], title="SELL", location=location.abovebar, color=color.yellow, style=shape.triangledown, textcolor=color.yellow, text="SELL")

关键修改说明

  • 把t1的判断放在最前面,确保尾盘时段直接触发卖出,覆盖所有其他条件
  • 使用var关键字初始化状态变量,避免每次bar都重置
  • 删除了无意义的冗余代码行
  • 简化了条件判断的逻辑结构,让优先级更清晰

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 18:10:47