我正在试图制定一个简单的移动平均线(SMA)。当这样做时,我会为SMA获得红色的奇怪和不连续的线条:
frame()
rm(list=ls())
#Value of securities in GOOG
GOOG=read.csv(file="GOOG.csv", head=TRUE, sep=",")
plot(x=GOOG$Close, type="l", ylab="GOOG Closing Prices",xlab="Time")
SMA=GOOG$Close
#5 Day SMA in RED
for(i in 1:84)
{
segments(x0=i,y0=mean(SMA[i:i+4]),
x1=i+1, y1=mean(SMA[i+1:i+5]),
col="red")
}
然而,当我用(SMA [i] + ... + SMA [i + 4])/ 5替换均值(SMA [i:i + 4])时(和替换均值相同(SMA [i +] 1:i + 5])),值很好,SMA图表应该是平滑连续的。
但这两个价值不一样吗?如何在保持写平均值的简写方式的同时纠正这个问题?
答案 0 :(得分:1)
尝试:
#5 Day SMA in RED
for(i in 1:84)
{
segments(x0=i,y0=mean(SMA[i:(i+4)]),
x1=i+1, y1=mean(SMA[(i+1):(i+5)]),
col="red")
}
*(添加括号)
小心你的指数。