2014-09-19 2 views
1

저는 R이있는 초보자이며 Chris Reeves에 의해
xts를 to.period와 함께 사용하여 tick에서 OHLC를 만듭니다./초 데이터.to.period가 R에서 SET_STRING_ELT의 인덱스 4/4를 설정하려고 시도 할 때 오류가 발생합니다

내 코드

Last = AAPL.Last 
Bid = AAPL.Bid 
Ask = AAPL.Ask 

colnames(Last) = c("TimeStamp","Price","Size") 
colnames(Bid) = c("TimeStamp","Price","Size") 
colnames(Ask) = c("TimeStamp","Price","Size") 

Last$TimeStamp = strptime(Last$TimeStamp, "%Y%m%d %H%M%S") 
Bid$TimeStamp = strptime(Bid$TimeStamp, "%Y%m%d %H%M%S") 
Ask$TimeStamp = strptime(Ask$TimeStamp, "%Y%m%d %H%M%S") 

require("xts") 
xtsLast = as.xts(Last$Price,order.by=Last$TimeStamp,frequency=NULL) 
xtsAsk = as.xts(Ask$Price,order.by=Ask$TimeStamp,frequency=NULL) 
xtsBid = as.xts(Bid$Price,order.by=Bid$TimeStamp,frequency=NULL) 

require("quantmod") 
chartSeries(xtsLast) 

bars = to.period(xtsLast, 
       period = "seconds", 
       k=60, 
       indexAt = "startof", 
       name = NULL, 
       OHLC = TRUE): 
require("quantmod") 
chartSeries(bars) 

반환되는 오류이다 to.period에

오류 (xtsLast 기간 = "초", K = 60, = indexAt "startof" , : SET_STRING_ELT에서 인덱스 4/4를 설정하려고 시도합니다.

나는 go go 한 답변을 봤지만 여기서 완전한 대답을 얻을 수 없으므로 여기에 묻습니다. 이것은 아주 기본적인 질문입니다.

저는 Rx64 3.1.1이 설치된 RStudio를 사용하여 Windows 7을 사용하고 있습니다. 당신이 name = NULL을 설정하지 않으면

감사합니다, H

+0

오류를 [reproduce] (http://stackoverflow.com/q/5963269/271616)하기에 충분한 정보를 제공하지 않아 귀하를 매우 어렵게 만듭니다. –

답변

0

이 작동합니다.

require(quantmod) 
base_url <- "http://www.reevesresearch.com/codes/TickDataAAPL/" 
Last <- read.table(paste0(base_url, "AAPL.Last.txt"), sep=";") 
colnames(Last) <- c("TimeStamp","Price","Size") 
Last$TimeStamp <- strptime(Last$TimeStamp, "%Y%m%d %H%M%S") 
xtsLast <- xts(Last$Price, order.by=Last$TimeStamp) 
bars <- to.minutes(xtsLast, k=1, indexAt="startof") 
+0

R-forge에서 r859로 고정되었으므로'name = NULL'을 지정하면됩니다. –

+0

감사합니다. Joshua - 장래에 더 자세하게 추가하겠습니다. 귀하의 조언은 트릭을 완료했지만, 나는 to.periods가 아닌 to.minutes를 사용하고있었습니다. to.periods에 문제가 있습니까? – AlgoTraderNew

+0

@AlgoTraderNew :'to.minutes'는'to.period'에 대한 래퍼 일 뿐이므로'to.period'에는 아무런 문제가 없습니다. –