求助:如何修改Pine Script代码使指标仅在单根K线上显示
Pine Script 指标仅在触发K线显示的修改方案
问题根源
原代码里用var声明的TP_reached变量会持久化保存状态,一旦触发交叉后就一直是1,导致指标持续显示。
修改后的代码
TP = strategy.position_avg_price * (1 + min_profit) // 仅在触发交叉的K线返回TP值,其余K线返回0 close_condition = ta.crossover(high, TP) ? TP : 0 plot(close_condition, style=plot.style_cross, linewidth=6, color=color.new(color.fuchsia, 0))
修改说明
- 删掉了
var bool TP_reached = 0这个持久化变量,避免状态一直保留 - 直接用
ta.crossover(high, TP)判断当前K线是否满足触发条件:满足时返回TP值(绘制交叉),不满足时返回0(不显示交叉) - 这样交叉指标只会在触发条件的单根K线上显示,下一根K线因条件不满足自动消失
内容的提问来源于stack exchange,提问作者moremoney4989
相关产品推荐
相关产品推荐

