R индексирование xts с интервалом без промежутка времени для HFT (продолжение по подсказке Display time index) - PullRequest
1 голос
/ 09 июля 2011

Joshua,

Я надеюсь, что вы не находите это подходом для неспециалистов, но когда я попытался реализовать вашу подсказку, как отображать только определенный временной индекс на моем объекте xts, я всегда получаю пустые цифры.

> dput(x)
structure(c("BHP", "BHP", "BHP", "BHP", "BHP", "BHP", "N", "N", 
"N", "N", "N", "N", "44560", "44560.0313951103", "44551.6606603345", 
"44560", "44560", "44560", "39844", "1072460", "405128", "4911", 
"2782", "1632", "44570", "44573.2273632603", "44579.8960524827", 
"44577.1033732318", "44579.9904979095", "44574.9768058317", "80", 
"13054", "88410", "13785", "5262", "1509", "12", "12", "12", 
"12", "12", "12"), .indexCLASS = structure("timeDate", package = "timeDate"),
.indexTZ = "", class = c("xts", "zoo"), index = structure(c(1306922412,
1306922414, 1306922415, 1306922416, 1306922417, 1306922418), tzone = "",
tclass = structure("timeDate", package = "timeDate")), .Dim = 6:7, .Dimnames = 
list(NULL, c("SYMBOL", "EX", "BID", "BIDSIZ", "OFR", "OFRSIZ","MODE")))
> x["T10:00:14/T10:00:17"]
     SYMBOL EX BID BIDSIZ OFR OFRSIZ MODE

Так что я не получаю значений, хотя значения явно там, что я пропускаю?

Ответы [ 2 ]

1 голос
/ 09 июля 2011

Вы не говорите, как создаете объект xts, но я думаю, что это небольшая ошибка в том, как xts создает объект - он не добавляется в TZ из объекта timeDate.

Попробуйте:

 indexTZ(x) <- "GMT"

 x['20110601 10:00:14/20110601 10:00:17']
                SYMBOL EX  BID                BIDSIZ    OFR               
 2011-06-01 10:00:14 "BHP"  "N" "44560.0313951103" "1072460" "44573.2273632603"
 2011-06-01 10:00:15 "BHP"  "N" "44551.6606603345" "405128"  "44579.8960524827"
 2011-06-01 10:00:16 "BHP"  "N" "44560"            "4911"    "44577.1033732318"
 2011-06-01 10:00:17 "BHP"  "N" "44560"            "2782"    "44579.9904979095"
                OFRSIZ  MODE
 2011-06-01 10:00:14 "13054" "12"
 2011-06-01 10:00:15 "88410" "12"
 2011-06-01 10:00:16 "13785" "12"
 2011-06-01 10:00:17 "5262"  "12"

HTH Джефф

по поводу ошибки - я посмотрю и исправлю.Спасибо.

0 голосов
/ 09 июля 2011
> x[ with(as.POSIXlt(index(x)), ( sec >= 14)) & with(as.POSIXlt(index(x)), ( sec <= 16) ), ]

                    SYMBOL EX  BID                BIDSIZ    OFR               
2011-06-01 10:00:14 "BHP"  "N" "44560.0313951103" "1072460" "44573.2273632603"
2011-06-01 10:00:15 "BHP"  "N" "44551.6606603345" "405128"  "44579.8960524827"
2011-06-01 10:00:16 "BHP"  "N" "44560"            "4911"    "44577.1033732318"
                    OFRSIZ  MODE
2011-06-01 10:00:14 "13054" "12"
2011-06-01 10:00:15 "88410" "12"
2011-06-01 10:00:16 "13785" "12"

Я не мог заставить форму, описанную в? "[. Xts", работать при использовании на уровне секунд спецификации, но я вижу, что Джефф Р. прибыл на сцену и продемонстрировал, что маневр indexTZ(x) <- "GMT" ( не упоминается ни на одной из многих страниц справки, на которые я смотрел, необходимо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...