mwavg

语法

mwavg(X, Y, window, [minPeriods])

窗口计算规则请参考:mFunctions

参数

X 是一个向量/矩阵/表/由等长向量组成的元组。其中,mmse, mslr 仅支持输入向量。

Y 是一个向量/矩阵/表/由等长向量组成的元组。其中,mmse, mslr 仅支持输入向量。

window 是大于等于 2 的正整型或 DURATION 标量。表示滑动窗口的长度。
注: 在流计算引擎中调用滑动窗口函数时,window 的上限为 102400。

minPeriods 是一个正整数。为滑动窗口中最少包含的观测值数据。

详情

在给定长度(以元素个数或时间长度衡量)的滑动窗口内,以 Y 为权重(权重会自动缩放,使其元素之和为1),计算 X 元素的加权平均。

注:mavg 以 size(weight) 长度的窗口进行滑动窗口计算不同,mwavg 的权重 Y 必须和 X 具有相同的长度。

例子

price=2.1 2.2 2.3 2.5 2.6 2.8 2.7 2.5;
volume=10 20 10 40 10 40 10 20;
mwavg(price, volume, 4);
// output
[,,,2.35,2.4125,2.61,2.65,2.6875]

mwavg(price, volume, 4, 2);
// output
[,2.166667,2.2,2.35,2.4125,2.61,2.65,2.6875]
price1 = indexedSeries(date(2020.06.05)+1..8, price)
volume1 = indexedSeries(date(2020.06.05)+1..8, volume)
mwavg(price1,volume1, 4d)
label col1
2020.06.06 2.1
2020.06.07 2.1667
2020.06.08 2.2
2020.06.09 2.35
2020.06.10 2.4125
2020.06.11 2.61
2020.06.12 2.65
2020.06.13 2.6875
mwavg(price1,volume1, 1w)
label col1
2020.06.06 2.1
2020.06.07 2.1667
2020.06.08 2.2
2020.06.09 2.35
2020.06.10 2.3788
2020.06.11 2.5077
2020.06.12 2.5214
2020.06.13 2.5467

相关函数:wavg, mavg