如何修改Pine Script脚本,实现周五至周四的周高点水平线绘制?
自定义周五至周四周期的周高点水平线脚本修改
原脚本使用Pine内置的"W"周期(默认周一至周日),要实现周五开始、周四结束的周周期,需手动定义周区间并追踪该区间内的高点,修改后的完整代码如下:
//@version=4 study("VHCPRWM (周五至周四周周期)", overlay=true, precision=1) // 输入选项:是否绘制周高点 plotWH = input(title="绘制周高点?", type=input.bool, defval=true) // 定义周周期:周五(5)开始,周四(4)结束 currentDay = dayofweek isNewWeek = currentDay == dayofweek.friday // 周五开启新周期 isWeekEnd = currentDay == dayofweek.thursday // 周四为周期最后一天 // 初始化并更新当前周的高点 var float customWeekHigh = na if isNewWeek customWeekHigh := high // 周五当天的高点作为初始值 else customWeekHigh := max(customWeekHigh, high) // 非周五时更新高点 // 绘制周高点水平线:从周五到下周四持续显示 plot(plotWH and not na(customWeekHigh) ? customWeekHigh : na, title="周五至周四周高点", color=color.new(color.blue, 0), style=plot.style_linebr, linewidth=2)
关键逻辑说明
- 周周期边界判断:利用
dayofweek函数识别周五(dayofweek.friday)和周四(dayofweek.thursday),分别作为新周期的起点和终点。 - 高点追踪机制:通过
var关键字声明的customWeekHigh变量保留跨bar的数值,周五重置为当日高点,后续每日更新为周期内的最高值。 - 绘制控制:仅在开启绘制选项且周高点有效时显示水平线,
style_linebr确保线条在周期内连续无断点。
内容的提问来源于stack exchange,提问作者Vilas
相关产品推荐
相关产品推荐

