R Quantmod:计算昨天的缺口,在用户提示下选择股票
我试图使用quantmod库和用户输入来计算股票的缺口 首先,我让用户输入股票,即NKE 然后我使用getSymbols创建一个数据帧NKER Quantmod:计算昨天的缺口,在用户提示下选择股票,r,quantmod,R,Quantmod,我试图使用quantmod库和用户输入来计算股票的缺口 首先,我让用户输入股票,即NKE 然后我使用getSymbols创建一个数据帧NKE S1 <- readline("Enter a symbol please: ") S2 <- getSymbols(S1,from="2018-01-01", auto.assign=TRUE) 现在我想计算差距,但不知道如何自动选择昨天的NKE.Open值和2天前的NKE.Close NKE$"NKE.GAP"=NKE$NKE.Open-
S1 <- readline("Enter a symbol please: ")
S2 <- getSymbols(S1,from="2018-01-01", auto.assign=TRUE)
现在我想计算差距,但不知道如何自动选择昨天的NKE.Open值和2天前的NKE.Close
NKE$"NKE.GAP"=NKE$NKE.Open-NKE$NKE.Close
我的两个问题是:
-如何选择不同日期的单元格来计算间距
-如何自动化该过程,例如,如果我不使用NKE NIKE,而是使用readline用户输入来计算其他股票的差距,即Armour下的UAA
如有任何评论,将不胜感激
谢谢Vince。让我们先定义输入参数:
library(quantmod)
S1 <- readline("Enter a symbol please: ")
gapLag <- 2 # select cells of different dates
编辑:创建以股票代码命名的新数据框:
assign(S1, finData)
非常感谢你的帮助。最后一个问题:有没有办法让新的dataframe名称成为股票的名称而不是finData,比如将finData重命名为S1值以获得NKE而不是finData作为名称?这将防止覆盖finData数据帧的所有时间。你知道怎么得到这个吗?再次感谢。
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
finData$GAPuser <- finData[ ,1] - lag(finData[,4], gapLag)
assign(S1, finData)