无法将移动平均线添加到股价时间序列图
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)
我需要绘制股价图表并在其上添加移动平均线。 我尝试了下面的代码来生成情节。但由于某种原因,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)