As I understand it your code would be duplicating the red line on the CXO chart. I used your code with a start date of July 1, 1999 and an end date of Dec 23, 2009 and I got a 53.9% profit over the whole period which is close to (slightly higher) than the red line on their chart as this increases from $10,000 to almost $15,000 over the same period. I used a .25% trading cost.
The results aren't exactly the same for some reason. My results show a balance drawdown from April 2001 until March 2004. The red line on the chart appears to be underwater only from July 2002 until September 2003.
--- In amibroker@xxxxxxxxx ps.com, "droskill" <droskill@xx .> wrote:
>
> I've been trying to duplicate the results in this CXO article:
>
> http://www.cxoadvisory.com/blog/internal/blog12-22-09/
>
> It's a rotational system that trades the top fund from the SPDR Select series based on a 6 month return as long as it is above the 10 month SMA.
>
> I'm not testing it monthly, but here's the daily code I've come up with:
>
> SetBacktestMode( backtestRotation al);
> SetTradeDelays( 0,0,0,0); // everything delayed 1 day
> SetOption("UsePrevB arEquityForPosSi zing", True);
> SetOption("MinShare s", 10);
> SetOption("AllowPos itionShrinking" ,True);
> SetOption("AccountM argin",100) ;
>
> Totalpositions = 1;
>
> MAFilter = C > MA(C,200);
> PositionScore = MAFilter * ROC(C,120);
> PositionSize = -100/Totalpositions ;
>
> SetOption("WorstRan kHeld", Totalpositions + 1);
> SetOption("MaxOpenP ositions" , Totalpositions );
>
> m = Month();
> newMonth = m != Ref( m, -1);
> PositionScore = IIf(PositionScore < 0, 0, PositionScore) ; // Long only
> PositionScore = IIf(newMonth, PositionScore, scoreNoRotate) ;
>
> My portfolio consists of the nine SPDRs - XLF,XLE,XLP, XLY,XLI,XLK, XLV,XLB,XLU
>
> I've been unable to duplicate anything close to their results - anybody have any idea of what, if anything, I'm doing wrong?
>