r语言 - Quantmod:计算昨天的缺口,并根据用户提示选择股票



我正在尝试使用 quantmod 库和用户输入来计算股票的差距以选择股票。

首先,我让用户输入股票,即"NKE" 然后我使用 getSymbol 创建一个数据帧 NKE

S1 <- readline("Enter a symbol please: ")
S2 <- getSymbols(S1,from="2018-01-01", auto.assign=TRUE)

现在,我在 NKE 数据帧中工作以创建名为 NKE 的新列。差距

NKE.GAP=vector(mode="numeric",length = nrow(NKE$NKE.Open))

现在我想计算 GAP,但不知道如何自动选择昨天的 NKE。开放价值和NKE。2天前关闭。

NKE$"NKE.GAP"=NKE$NKE.Open-NKE$NKE.Close

NKE股票示例

我这里的两个问题是2:

-如何选择不同日期的单元格来计算GAP?

- 如何自动化流程,例如如果不是 NKE(耐克(,我想通过使用阅读线(用户输入(计算其他股票的 GAP,即 UAA(Under Armour(

任何评论将不胜感激。

谢谢文斯。

让我们先定义输入参数:

library(quantmod)
S1 <- readline("Enter a symbol please: ")
gapLag <- 2 #  select cells of different dates

首先需要创建具有通用名称的新数据框。它允许使用不同的股票代码:

finData <- getSymbols(S1,from="2018-01-01", auto.assign=FALSE)
finData$GAP1 <- finData[ ,1] - finData[ ,4] # positions of Open and Close columns don't change

最后一列包含变量gapLag中指定的期间的间隙

finData$GAPuser <- finData[ ,1] - lag(finData[,4], gapLag)

编辑:创建一个以股票代号命名的新数据框:

assign(S1, finData)

相关内容

最新更新