2011-09-23 2 views
2

매개 변수 날짜가 Op-Ex 금요일 인 경우 true를 반환해야하는 간단한 함수를 작성하려고합니다.특정 날짜가 금요일 만기 옵션 만료인지 확인 timeDate 패키지의

require(timeDate) 
require(quantmod) 

getSymbols("^GSPC", adjust=TRUE, from="1960-01-01") 
assign("SPX", GSPC, envir=.GlobalEnv) 
names(SPX) <- c("SPX.Open", "SPX.High", "SPX.Low", "SPX.Close", 
       "SPX.Volume", "SPX.Adjusted") 

dates <- last(index(SPX), n=10) 
from <- as.numeric(format(as.Date(min(dates)), "%Y")) 
to <- as.numeric(format(as.Date(max(dates)), "%Y")) 

isOpExFriday <- ifelse(
    isBizday(
    timeDate(as.Date(dates)), 
    holidayNYSE(from:to)) & (as.Date(dates) == as.Date(
     format(timeNthNdayInMonth(timeFirstDayInMonth(dates), nday=5, nth=3))) 
), TRUE, FALSE) 

이제 결과는 [1] "2011-09-16"이어야합니다. 하지만 그 대신 나는 [1] "2011-09-15"를 얻을 :

dates[isOpExFriday] 
[1] "2011-09-15" 

오전 나는 timeDate 패키지 디자인에 의해 수행되지 않았거나 timeDate에 버그가 뭔가를 기대, 뭔가 잘못하고?

+0

내 컴퓨터에서 코드가 올바르게 작동합니다. – Andrie

답변

0

시간대 문제 일 것 같습니다. 두 번째 모습에

format(dates[isOpExFriday], tz="UTC") 

당신은 아마 as.Date 내부 형식으로 호출 (형식 (...)) 호출 내부의 'TZ ='인수를 둘 필요가 : 당신이 사용하는 경우 어떤 일이 발생합니다. 형식 함수는 날짜 값을 텍스트로 "고정"합니다.

편집 : 테스트에 나는 당신이 버그라고 생각합니다. (그리고 나는이 응답으로 관리자에게 버그 리포트를 보냈다.) 다양한 시간대 스펙을 삽입하고 RmetricsOptions에 myFinCenter를 설정 한 후에도, 나는 여전히이 에러에서 유래 한 것을 얻을 수있다.

는 내가 그것을 이해 율리우스 날짜는 시간대 또는 일광 절약 시간 조정되지 않기 때문에 그것 때문에이 코드의 용의자 :

초에 CT 값은 다음 "기원"이후 두 번째에서 POSIXct에 coverted되어
ct = 24 * 3600 * (as.integer(julian.POSIXt(lt)) + 
      (nth - 1) * 7 + (nday - lt1$wday)%%7) 
class(ct) = "POSIXct" 

단순히 강요의 강요에 의해. 코드를 다음과 같이 변경하면 :

ct=as.POSIXct(ct, origin="1970-01-01") # correct results come back 

내 quantmod 및 timeDate 버전은 모두 현재 CRAN입니다. 미국 지역에서 64 비트 모드의 R 2.13.1을 사용하여 Mac을 실행 중입니다. 아직까지 최소한의 세션으로 재생하려고 시도하지 않았으므로 다른 패키지와의 충돌이나 하이재킹이 여전히있을 수 있습니다.

> sessionInfo() 
R version 2.13.1 RC (2011-07-03 r56263) 
Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit) 

locale: 
[1] en_US.UTF-8/en_US.UTF-8/C/C/en_US.UTF-8/en_US.UTF-8 

attached base packages: 
[1] grid  splines stats  graphics grDevices utils  datasets 
[8] methods base  

other attached packages: 
[1] quantmod_0.3-17 TTR_0.20-3  xts_0.8-2   
[4] Defaults_1.1-1 timeDate_2130.93 zoo_1.7-4   
[7] gplots_2.10.1  KernSmooth_2.23-6 caTools_1.12  
[10] bitops_1.0-4.1 gdata_2.8.1  gtools_2.6.2  
[13] wordnet_0.1-8  ggplot2_0.8.9  proto_0.3-9.2  
[16] reshape_0.8.4  plyr_1.6   rattle_2.6.10  
[19] RGtk2_2.20.17  rms_3.3-1   Hmisc_3.8-3  
[22] survival_2.36-9 sos_1.3-0   brew_1.0-6  
[25] lattice_0.19-30 
+0

DWin, r-metrics에 대한 문제 및 버그 보고서 솔루션을 찾아 주셔서 감사합니다. – Samo

관련 문제