无法将移动平均线添加到股价时间序列图

unable to add moving average line to stock price time series plot

我需要绘制股价图表并在其上添加移动平均线。 我尝试了下面的代码来生成情节。但由于某种原因,ma 线没有显示在情节上。我很困惑。有谁知道我在代码中做错了什么?为什么ma线没有出现?

library(quantmod)
library(forecast)
library(xts)
library(zoo)
start <- as.Date('2018-01-01')
end <- as.Date('2018-02-13')
getSymbols('APPL', src='yahoo', from=start, to=end)
appl <- APPL[, 'APPL.Adjusted']

plot(appl)
sma = ma(appl, order=20)
lines(sma, col='red')

使用以下方法将 ts(通过应用 ma() 函数获得)转换为 xts 对象:

sma = xts(ma(aapl, order=20), order.by=index(appl))
lines(sma, col='red')

plot() 对象现在可以将移动平均线 (MA) 添加到图中。

请记住,ma() 会对像您这样的偶数阶 MA 进行居中调整。它通过将两个非中心 MA 应用于数据来实现这一点,一个是 20 阶,另一个是 2 阶。因此,以下等同于您计算的 MA:

ma( ma(appl, 20, centre=F), 2, centre=F)