[R-SIG-Finance] ROC
Joshua Ulrich
josh.m.ulrich at gmail.com
Tue Dec 21 03:55:15 CET 2010
Stephen,
On Mon, Dec 20, 2010 at 8:42 PM, Stephen Choularton
<stephen at organicfoodmarkets.com.au> wrote:
> Hi
>
> I am having a bit of a problem with ROC. I am doing some quick backtesting
> and at one point I use this:
>
> ret <- ROC(price)
> ret[1] <- 0
>
> having established the spread between two stocks earlier like this:
>
> price <- spread$Close - spread$Close.1
>
> when I have been working before this has always been positive as the first
> share has always been greater in value than the second. But just now I have
> done this with two stocks which are approximately the same value and whose
> values have crossed each other and I get a lot of NAN's
>
<snip>
>
> As you can see when the spread goes negative ROC returns 0.
>
> Is there some way of getting it to produce the right result?
>
You're trying to take the log of a negative number. What would you
consider to be the right result?
I suspect you want:
ROC(price, type="discrete")
Documentation and the source are available. Please use them to
investigate "odd" behavior.
--
Joshua Ulrich | FOSS Trading: www.fosstrading.com
> It should work out if there is as later on I go to do this:
>
> # Calculate equity curves
> eq_up <- cumprod(1+ret*sigup)
> eq_dn <- cumprod(1+ret*sigdn*-1)
> eq_all <- cumprod(1+ret*sig)
>
> so that should work appropriately on negative and positive returns
> (shouldn't it)
>
>
> --
>
>
> Stephen Choularton Ph.D., FIoD
>
> _______________________________________________
> R-SIG-Finance at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-sig-finance
> -- Subscriber-posting only. If you want to post, subscribe first.
> -- Also note that this is not the r-help list where general R questions
> should go.
>
More information about the R-SIG-Finance
mailing list