Load multiple symbols using csv with quantmod

后端 未结 1 1909
暗喜
暗喜 2021-01-05 05:56

I am trying to load multiple symbols using a csv file rather than downloading from Yahoo. The original code works great and uses

load.packages(\'quantmod\')         


        
相关标签:
1条回答
  • 2021-01-05 06:37

    I would do this using the FinancialInstrument package

    require('quantmod')
    require('FinancialInstrument')
    tickers <- c("TLT", "IWM", "GLD")
    data <- new.env()
    getSymbols(tickers, src = 'yahoo', from = '1980-01-01', env = data)
    
    # Now save the data in a directory
    tmpdir <- tempdir()
    saveSymbols.common(tickers, tmpdir, env=data)
    
    #remove the data    
    rm(list=tickers, pos=data)
    ls(data) # see that there is nothing there
    # Now load the data back from disk
    getSymbols(tickers, src='FI', dir=tmpdir, env=data, split_method='common')
    ls(data)
    

    If you want to use getSymbols.csv, your data has must have the Date and 6 columns (OHLCVA)

    #write data to csv files on disk
    for (i in seq_along(tickers)) {      
      write.zoo(get(tickers[i], pos=data), file=paste0(tmpdir, "/", tickers[i], ".csv"), sep=",")
    }
    rm(list=tickers, pos=data) #remove from memory
    getSymbols(tickers, src='csv', dir=tmpdir)#, env=data)  #load from csv files
    
    0 讨论(0)
提交回复
热议问题