如何在Pine Script中设置线条及斐波那契扩展线的长度
Pine Script 缩短斐波那契扩展线显示长度的设置方法
方案1:调整内置ta.fibonacci函数的参数
默认的ta.fibonacci函数前两个入参对应线条的x轴起始位置,后两个对应x轴终止位置,只要修改这两个参数的区间大小,就能调整线条的显示长度,不需要额外配置。
示例代码:
//@version=5 indicator("短长度斐波那契扩展", overlay=true) // 自定义波段高低点,可替换为你自己的计算逻辑 swingLow = ta.lowest(low, 60) swingHigh = ta.highest(high, 60) // 定义线条显示的长度:此处设置为仅显示最近40根K线宽度的线条 lineStartBar = bar_index - 40 lineEndBar = bar_index // 绘制斐波那契扩展 ta.fibonacci(lineStartBar, swingLow, lineEndBar, swingHigh, [0, 0.382, 0.5, 0.618, 1, 1.272, 1.618])
调整规则:修改lineStartBar = bar_index - 40中的40即可调整长度,数值越小线条越短,数值越大线条越长。
方案2:手动绘制线条实现更灵活的长度控制
如果需要自定义线条的延伸方向(比如仅从波段终点向右延伸固定长度),可以用line.new函数逐个绘制每个斐波那契水平的线条:
示例代码:
//@version=5 indicator("自定义长度斐波那契扩展", overlay=true) // 计算波段高低点 pivotLow = ta.pivotlow(15, 15) pivotHigh = ta.pivothigh(15, 15) if not na(pivotLow) and not na(pivotHigh) priceRange = pivotHigh - pivotLow // 自定义需要显示的斐波那契水平 fibLevels = array.new_float([0.382, 0.5, 0.618, 1, 1.382, 1.618]) // 遍历绘制每个水平的线条,长度固定为向右延伸30根K线 for i = 0 to array.size(fibLevels) - 1 levelPrice = pivotHigh + priceRange * array.get(fibLevels, i) line.new(bar_index, levelPrice, bar_index + 30, levelPrice, color=color.new(color.blue, 0), width=1)
调整规则:修改bar_index + 30中的30即可调整线条向右延伸的长度,根据需求修改数值即可。
内容的提问来源于stack exchange,提问作者Mihai Pascal
相关产品推荐
相关产品推荐

