R xts: gerando séries temporais de 1 minuto a partir de segundos eventos

Tenho uma sequência xts de eventos de negociação de ações que desejo processar para gerar séries temporais de 1 minuto da OHLC. Por exemplo, este conjunto de negociações:

Timestamp   Price  Size
9:30:00.123 12.32  200
9:30.00.532 12.21  100
9:30.32.352 12.22  500
9:30.45.342 12.35  200

Deve resultar no registro 9:30:00:

Timestamp Open  High  Low   Close
9:30:00   12.32 12.35 12.21 12.35

A maneira como me aproximei disso é dividir a série de operações original a cada minuto:

myminseries = do.call(rbind, lapply(split(mytrades, "minutes"), myminprocessing))

Isso produz os registros que eu quero, mas há um problema: se o estoque não tiver nenhuma negociação em um determinado minuto, eu perderei completamente esse registro de minutos. Em vez disso, o que eu quero é ter um registro de todos os 0s para o minuto de negociação que falta. Por exemplo, se não houver negociação às 9:31:00, eu deveria ter:

Timestamp  Open  High  Low   Close
9:30:00    12.32 12.35 12.21 12.35
9:31:00    0     0     0     0
9:32:00    12.40 12.42 12.38 12.42

Como posso preencher a série de 1 minuto? Ou devo usar uma abordagem completamente diferente de split ()?

questionAnswers(4)

yourAnswerToTheQuestion