1

私の問題は、ティックデータを含む不規則な時系列の頻度をカウントすることです。問題は、Joshua の優れたヒントがここで終わるところから始まります

# create random bid/ask data
require(xts)
N <- 1e7
data <- 1.2945+rnorm(N)/1000
data <- cbind(data,data+runif(N)/1000)
colnames(data) <- c("bid","ask")
# create and order random times
times <- Sys.time()-N:1+rnorm(N)*100
times <- times[order(times)]
# create xts object from data and times
EURUSD <- xts(data, times)
# create quote frequency chart
plot(diff(endpoints(EURUSD,"minutes")),type='l')

My problem continues from here:
endPoints <- diff(endpoints(EURUSD,"minutes"))

endPoints にティックデータのこの頻度がある場合、これを元の EURUSD xts に戻すにはどうすればよいでしょうか? 問題は、endPoints に、EURUSD オブジェクトの列に戻すためのタイムスタンプまたは同様の情報が含まれていないことです。また、EURUSD で to.minutes を使用しようとする試みはうまくいきませんでした。

いつものように、どんなヒントにもとても感謝しています!

4

2 に答える 2

1

目的のエンドポイントでのインデックスを使用して xts オブジェクトを作成できEURUSDます。これが私がそれを行う方法です:

# calculate the desired endpoints
ep <- endpoints(EURUSD,"minutes")
# construct an xts object with a diff of the endpoints,
# using the index values of EURUSD at the endpoints, and
# merge it with the original data
Data <- merge(EURUSD, freq=xts(diff(ep), index(EURUSD)[ep]))
# back-fill NA, if desired
Data$freq <- na.locf(Data$freq, fromLast=TRUE)
于 2013-05-06T13:57:18.477 に答える