Pinescript V5 枢轴线绘制异常问题求助
修复Pinescript V5枢轴线连续显示问题
问题出在你通过request.security直接调用日线的hlc3[1]和hl2[1]——在日内周期下,随着时间推进,当新的日线K线形成时,[1]会指向最新的“昨日”数据,导致当前日的枢轴线数值跳变。要实现当日所有K线沿用前一个完整交易日计算的枢轴线,保持线条平直连续,可以通过以下方式修改代码:
修复后的代码
//@version=5 indicator("固定昨日数据的枢轴线", overlay=true) // 初始化变量,存储每日固定的枢轴值 var float daily_pma = na var float daily_ph = na var float daily_pl = na // 每日开盘时(新日线生成),重新计算一次基于前一个交易日的枢轴值 if ta.newbar(timeframe.period, "D") // 取前一个完整交易日的hlc3和hl2 prev_day_hlc3 = request.security(syminfo.tickerid, "D", hlc3[1]) prev_day_hl2 = request.security(syminfo.tickerid, "D", hl2[1]) pr = prev_day_hlc3 - prev_day_hl2 daily_pma := prev_day_hlc3 daily_ph := prev_day_hlc3 + pr daily_pl := prev_day_hlc3 - pr // 绘制固定的枢轴线 plot(daily_pma, linewidth=2, color=color.new(color.orange, 0), title="PMA") plot(daily_ph, linewidth=2, color=color.new(color.red, 0), title="PH") plot(daily_pl, linewidth=2, color=color.new(color.yellow, 0), title="PL")
关键修改说明
- 使用
var关键字声明变量:确保变量不会在每个K线周期重置,只会在首次初始化或主动赋值时更新。 - 用
ta.newbar(timeframe.period, "D")判断新日线的开始:仅在每日开盘时重新计算一次枢轴值,之后整个交易日内数值保持固定。 - 明确取前一个完整交易日的
hlc3[1]和hl2[1]:避免随着日内K线推进,[1]指向的“昨日”发生变化。
内容的提问来源于stack exchange,提问作者Seungchan
相关产品推荐
相关产品推荐

