Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Read intraday data with getSymbols.csv

Tags:

r

quantmod

I installed the quantmod package and I'm trying to import a csv file with 1 minute intraday data. Here is a sample GAZP.csv file:

"D";"T";"Open";"High";"Low";"Close";"Vol"
20130902;100100;132.2000000;133.0500000;131.9200000;132.5000000;131760
20130902;100200;132.3700000;132.5700000;132.2500000;132.2900000;66090
20130902;100300;132.3600000;132.5000000;132.2600000;132.4700000;37500

I've tried:

> getSymbols('GAZP',src='csv')
Error in `colnames<-`(`*tmp*`, value = c("GAZP.Open", "GAZP.High", "GAZP.Low", : 
  length of 'dimnames' [2] not equal to array extent
> getSymbols.csv('GAZP',src='csv')
> # or
> getSymbols.csv('GAZP',env,dir="c:\\!!",extension="csv")
Error in missing(verbose) : 'missing' can only be used for arguments

How should I properly use the getSymbols.csv command to read such data?

like image 810
Vladimir Avatar asked Oct 02 '22 23:10

Vladimir


1 Answers

@Vladimir, if you are not insisting to use the "getSymbols" function from the quantmod package you can import your csv file - assuming it is in your working directory - as zoo object with the line:

GAZP=read.zoo("GAZP.csv",sep=";",header=TRUE,index.column=list(1,2),FUN = function(D,T) as.POSIXct(paste(D, T), format="%Y%m%d %H%M%S"))

and convert it to a xts object if you want.

GAZP.xts <- as.xts(GAZP)

> GAZP
                      Open   High    Low  Close    Vol
2013-09-02 10:01:00 132.20 133.05 131.92 132.50 131760
2013-09-02 10:02:00 132.37 132.57 132.25 132.29  66090
2013-09-02 10:03:00 132.36 132.50 132.26 132.47  37500
like image 129
hvollmeier Avatar answered Oct 07 '22 18:10

hvollmeier