如何将Williams枢轴高低值存入数组?技术实现咨询
将Williams枢轴高点和低点的值存入数组
需求说明
当新的Williams枢轴高点/低点形成时,将对应价格值存入指定数组中。
实现代码
// 定义浮点型数组,var关键字确保数组仅初始化一次 var float[] _lowLiqValues = array.new_float() var float[] _highLiqValues = array.new_float() // 设置Williams分形周期参数,用户可自行调整 n = input.int(defval = 3, title = "分形周期") // 识别n周期的枢轴高点和低点 pivotHigh = ta.pivothigh(high, n, n) pivotLow = ta.pivotlow(low, n, n) // 当枢轴高点形成时,将对应价格存入高点数组 if pivotHigh highPVT = high[n] array.push(_highLiqValues, highPVT) // 当枢轴低点形成时,将对应价格存入低点数组 if pivotLow lowPVT = low[n] array.push(_lowLiqValues, lowPVT)
代码关键点说明
- 用
var声明数组:保证数组在脚本运行全程只初始化一次,不会随每根K线重复创建。 ta.pivothigh()/ta.pivotlow()函数:分别识别指定周期的枢轴高低点,当当前K线满足「前后n根K线中价格最高/最低」条件时,返回true。array.push()方法:将识别到的枢轴价格值追加到数组末尾,完成数据存储。
内容的提问来源于stack exchange,提问作者Dylan Schlageter
相关产品推荐
相关产品推荐

