An embedded and charset-unspecified text was scrubbed... Name: not available URL: <https://stat.ethz.ch/pipermail/r-sig-finance/attachments/20110914/b12468b2/attachment.pl>
quantmod - getSymbols for csv files
2 messages · Jun Sheng Tan, rex
1 day later
Jun Sheng Tan <thyreus56344612 at hotmail.com> [2011-09-14 02:28]:
I'm a newbie and currently facing the same issue as this guy http://pastebin.com/4bfURwBY Where the getSymbols is unable to detect the date on my excel .csv file , instead it listed (real-time) today's date as the date valueThe csv file I'm using is from yahoo http://chart.yahoo.com/table.csv?s=SBUX&a=0&b=01&c=2007&d=8&e=13&f=2011&g=d&q=q&y=0&z=SBUX&x=.csv Original file : Open High Low Close Volume Adj.Close2011-09-12 36.69 37.88 36.69 37.65 8122500 37.652011-09-09 38.62 38.75 37.05 37.31 10514600 37.312011-09-08 38.98 39.39 38.69 38.92 7886900 38.922011-09-07 38.19 39.37 37.96 39.18 8398900 39.182011-09-06 36.52 37.84 36.42 37.75 6135000 37.75
getSymbols('SBUX',src='csv',return='timeSeries')[1] "SBUX"> SBUXGMT SBUX.Open SBUX.High SBUX.Low SBUX.Close SBUX.Volume SBUX.Adjusted2011-09-14 36.69 37.88 36.69 37.65 8122500 37.652011-09-14 38.62 38.75 37.05 37.31 10514600 37.312011-09-14 38.98 39.39 38.69 38.92 7886900 38.922011-09-14 38.19 39.37 37.96 39.18 8398900 39.18
Does anyone know have to have the date column to list the correct date from the csv file?
~$ R R version 2.13.0 (2011-04-13) Copyright (C) 2011 The R Foundation for Statistical Computing ISBN 3-900051-07-0 Platform: x86_64-pc-linux-gnu (64-bit) [...] [Previously saved workspace restored]
library(quantmod)
Loading required package: Defaults
Loading required package: xts
Loading required package: zoo
Attaching package: 'zoo'
The following object(s) are masked from 'package:base':
as.Date
Loading required package: TTR
getSymbols('SBUX')
[1] "SBUX"
head(SBUX)
SBUX.Open SBUX.High SBUX.Low SBUX.Close SBUX.Volume SBUX.Adjusted 2007-01-03 35.60 36.20 34.64 35.25 9017300 34.39 2007-01-04 35.37 35.50 34.79 35.29 7328000 34.43 2007-01-05 35.12 35.29 34.97 35.14 6565700 34.28 2007-01-08 34.91 35.26 34.90 35.01 5807200 34.16 2007-01-09 35.00 35.39 34.70 34.86 7152500 34.01 2007-01-10 34.70 34.78 34.17 34.75 9329200 33.90
tail(index(SBUX))
[1] "2011-09-07" "2011-09-08" "2011-09-09" "2011-09-12" "2011-09-13" "2011-09-14"
As you can see from the above, there's no need for a CSV file, but if you want to read the data from a local CSV file that looks like:: ~$ less subx.csv Date,Open,High,Low,Close,Volume,Adj Close 2011-09-13,37.71,38.31,37.67,38.19,6159400,38.19 2011-09-12,36.69,37.88,36.69,37.65,8122500,37.65 2011-09-09,38.62,38.75,37.05,37.31,10514600,37.31 [...] Then, in R do:
tmp <- read.csv('subx.csv')
subx = xts(tmp[,-1],as.Date(tmp[,1],"%Y-%m-%d"))
head(subx)
Open High Low Close Volume Adj.Close 1992-06-26 21.00 22.25 20.50 21.50 112281600 0.66 1992-06-29 21.75 23.50 21.25 23.00 29504000 0.70 1992-06-30 23.50 23.75 22.00 22.25 17449600 0.68 1992-07-01 22.50 23.00 21.75 22.75 9270400 0.69 1992-07-02 23.00 23.00 22.25 22.75 7155200 0.69 1992-07-06 22.50 22.75 22.25 22.75 3056000 0.69
HTH, -rex
Q: Why do mountain climbers rope themselves together? A: To prevent the sensible ones from going home.