我想实现一个移动平均线,其长度基于n个反向平均周期长度K。因此,我需要将长度作为变量K的函数。
内置的移动平均值仅允许静态整数值作为长度。
我有一个称为cycle_difference的变量,它基于长期与短期循环长度。
time_since_zero=round(barssince(cross(zero_check,0)))
max_cycle=highest(time_since_zero,50)
cycle = ema(max_cycle,200)
cycle_long = ema(max_cycle,1000)
cycle_difference = cycle - cycle_long
我想以此为基础制定一个带有长度的移动平均线,例如
macd_length_scaled = 20 - cycle_difference
macd_wma = ema(foo,macd_length_scaled)
但是,内置的移动平均值仅允许int值表示长度。我想找到解决方法。
答案 0 :(得分:0)
pine脚本的文档提供了一个关于pine https://www.tradingview.com/pine-script-reference/v4/#fun_ema的移动平均线的示例
pine_ema(x, y) =>
alpha = 2 / (y + 1)
sum = 0.0
sum := alpha * x + (1 - alpha) * nz(sum[1])
此功能允许使用序列长度(此处为y
参数)