如何计算直线的斜率
How to calculate slope of the line
我正在尝试计算我根据使用 getSymbols 函数下载的几只股票的调整后收盘价创建的 50 天 EMA 线的斜率。
我的 EMA 是这样的:
getSymbols("COLUM.CO")
COLUM.CO$EMA <- EMA(COLUM.CO[,6],n=50)
这给了我一个额外的列,其中包含调整后收盘价的 50 天 EMA。现在我想包括一个额外的列,其中包含这条线的斜率。我敢肯定这是一个相当简单的答案,但我真的很感激这方面的一些帮助。提前谢谢你。
执行此操作的一个好方法是滚动最小二乘回归。 rollSFM
可以快速高效地计算序列的斜率。查看与价格 activity 时间单位(条)相关的斜率通常是有意义的,因此 x
可以简单地是等距点。
唯一棘手的部分是计算 n
的有效值,即适合斜率的 window 的长度。
library(quantmod)
getSymbols("AAPL")
AAPL$EMA <- EMA(Ad(AAPL),n=50)
# Compute slope over 50 bar lookback:
AAPL <- merge(AAPL, rollSFM(Ra = AAPL[, "EMA"],
Rb = 1:nrow(AAPL), n = 50))
标记为 beta
的列包含斜率的滚动 window 值(alpha
包含截距,r.squared
包含 R2 值)。
我正在尝试计算我根据使用 getSymbols 函数下载的几只股票的调整后收盘价创建的 50 天 EMA 线的斜率。
我的 EMA 是这样的:
getSymbols("COLUM.CO")
COLUM.CO$EMA <- EMA(COLUM.CO[,6],n=50)
这给了我一个额外的列,其中包含调整后收盘价的 50 天 EMA。现在我想包括一个额外的列,其中包含这条线的斜率。我敢肯定这是一个相当简单的答案,但我真的很感激这方面的一些帮助。提前谢谢你。
执行此操作的一个好方法是滚动最小二乘回归。 rollSFM
可以快速高效地计算序列的斜率。查看与价格 activity 时间单位(条)相关的斜率通常是有意义的,因此 x
可以简单地是等距点。
唯一棘手的部分是计算 n
的有效值,即适合斜率的 window 的长度。
library(quantmod)
getSymbols("AAPL")
AAPL$EMA <- EMA(Ad(AAPL),n=50)
# Compute slope over 50 bar lookback:
AAPL <- merge(AAPL, rollSFM(Ra = AAPL[, "EMA"],
Rb = 1:nrow(AAPL), n = 50))
标记为 beta
的列包含斜率的滚动 window 值(alpha
包含截距,r.squared
包含 R2 值)。