Pine Script plot函数未达预期 取消Show RSI后RSI仍显示求助
问题根因排查
你遇到的取消勾选Show RSI后RSI仍显示的问题,由两处逻辑错误导致:
- 第一处:
plotbar绘制Bar形态RSI时,没有绑定rl(Show RSI)的控制条件,无论勾选状态如何都会持续输出 - 第二处:标准RSI线的绘制条件逻辑完全写反,当前逻辑是勾选Show RSI且用Bar风格时才隐藏线,其余情况都显示,和你要的控制逻辑完全不符
修正方案
把代码中//Plot部分的内容替换为下面的代码即可:
//Plot // 仅当勾选Show RSI且选Bar风格时才绘制Bar RSI plotbar(rl and std_bar=="Bar" ? o : na, h, l, c, title="Bar RSI") // 仅当勾选Show RSI且选Std风格时才绘制标准RSI线 plot(rl and std_bar=="Std" ? RSI : na, color = color.orange, title = "RSI", linewidth = 2) // 原Stochastic绘制逻辑优化,冗余判断删除不影响功能 plot(sl ? k : na, "K", color=#0094FF) plot(sl ? d : na, "D", color=#FF6A00)
逻辑验证
调整后控制逻辑完全符合预期:
- 取消勾选
Show RSI:Bar形态RSI、标准RSI线都会隐藏,仅勾选Show Stoch RSI时才会显示Stochastic指标 - 勾选
Show RSI选Bar风格:显示Bar形态RSI,不显示橙色标准线 - 勾选
Show RSI选Std风格:显示橙色标准RSI线,不显示Bar形态
内容的提问来源于stack exchange,提问作者Dev212
相关产品推荐
相关产品推荐

