[R] Math problem with xts objects

Joshua Ulrich josh.m.ulrich at gmail.com
Tue May 14 03:12:54 CEST 2013

On Mon, May 13, 2013 at 6:47 PM, Noah Silverman <noahsilverman at ucla.edu> wrote:
> Hello,
> I coming across a strange problem doing math on an xts object.
> If I have an xts object of stock prices (perhaps 5 minute bars of open, high, low,close) and want to do some math, the results fail.
> For example:
> d$close[10] - d$open[10] works perfectly
> d$close[10] - d$open[9] fails.  I just get an answer of "numeric(0)  Index: numeric(0)".
> My guess is that xts is breaking because the two items in my equation have different time stamps.  However, the actual data is correct, and the xts matrix looks correct.
Nothing is broken or strange.  xts' behavior is consistent with zoo,
ts, etc.  What's strange is expecting a time-series class to do
operations independent of time.

> Note:  It works if I do things the loooong way around.
> as.numeric(d$close[10]) - as.numeric( d$open[9] )
> But, that is horrendously slow.
> Suggestions?
Use lag.

Joshua Ulrich  |  about.me/joshuaulrich
FOSS Trading  |  www.fosstrading.com

R/Finance 2013: Applied Finance with R  | www.RinFinance.com

More information about the R-help mailing list