2017-10-22 218 views
2

我目前正在学习R,我只是试图在quantmod包中使用getSymbols来获取一些价格数据。通过代码和日期合并getSymbols数据

我有一个数据框,它有澳大利亚证券交易所上一个行业的年度业绩发布的代码和日期。我想要做的是在发布当天的调整价格以及5天之前和5天之后的价格合并。

Ticker Ann_Rep_Date Ad.Price +5d.Ad.Price -5d.Ad.Price 
AGI.AX 14/10/16 
ALL.AX 22/12/16 
CWN.AX 19/09/16 
TAH.AX 4/08/16 
TAH.AX 4/08/17 
TTS.AX 17/08/17 

请注意,由于存在多个年度结果发布,因此单个股票代码可能需要多个价格。

回答

1

我设法使用tidyquant的tqget来做到这一点。它可以将我所有的价格存储在一个大的快乐数据框中,这样可以很容易地与上述数据合并。

library(tidyquant) 

prices <- c('TBH.AX','CWN.AX','SGR.AX','AQS.AX','ALL.AX', 
     'TAH.AX','JIN.AX','TTS.AX','AGI.AX') %>% 
     tq_get(get = 'stock.prices') 

Ann_Reps <- merge(prices, Ann_Reps, by.x=c('symbol','date'), 
by.y=c('ticker','Ann_Rep_Date'))