我有一个股票交易价格的数据集:时间 - 价格。但是数据点之间的间隔不相等 - 从 1 到 2 分钟。

在这种情况下计算移动平均线的最佳做法是什么?
如何在Matlab中制作它?

我倾向于认为,点的权重应该取决于自上一点以来的最后时间间隔。我们在 Matlab 中是否具有使用点的自定义权重计算移动平均值的功能?

最佳答案

这是我在上面的评论中提到的“幼稚”方法的一个例子:

% some data (unequally spaced in time, but monotonically non-decreasing)
t = sort(rand(50,1));
x = cumsum(rand(size(t))-0.5);

% linear interpolatation on equally-spaced intervals
tt = linspace(min(t), max(t), numel(t));
xx = interp1(t, x, tt, 'linear');

% plot two data vectors
plot(t, x, 'b.-', tt, xx, 'r.:')
legend({'original', 'equally-spaced'})

关于matlab - 具有不等间隔的时间序列的移动平均值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25044837/

10-16 07:07