| 
 PureBytes Links 
Trading Reference Links 
 | 
Hi guy's, first post.   This group has really helped accelerate the
learning curve, please accept a big THANK YOU.   
I'm migrating from eSignal and Wealth-Lab and have a bit of
programming experience but I just can't seem to get a grip on why my
backtesting and scan results are different.   Specifically, the scan
shows all the signals, charts look great, buy/sell arrows exact,
perfect SAR calculations, etc.   But, backtesting shows a subset of
the scans Buy/Sell signals.
This script was called Danton Stops over at eSignal, but to me it's a
nice SAR system using 3 minute charts at the key reversal periods of
the day.    When time permits, could someone please take a look at the
backtesting results and possibly why they don't correlate to
chart/scan signals.   I've been using symbol XLNX to debug.
Thanks,
Jeff
////////////////////////////////////////
// Danton STOP/SAR                    //
// Written by: Jeff                   //
////////////////////////////////////////
//=================================================
//Ratio = 0.38;    //Danton Ratio
nRatio=Optimize("nRatio",0.38,0.0,0.40,0.02);    //Danton Ratio
dsar = Close;
long = 1;
SARcolor = colorBlue;
ema220=EMA(C,220);
//=================================================
for( i = 2; i < BarCount-1; i++ )
{
//=================================================
// Check for reversal
	reverse =  0;
	if ( long )
	{
		SellSig = Close[i] <= dsar[i-1];
		if(SellSig)
		{
			long = 0;   reverse = 1; 	// reverse position to Short
			Sell[i] = 1;
			SellPrice[i] = dsar[i-1];
//			Short[i] = 1;
//			ShortPrice[i] = dsar[i-1];
			dsar[i] = round( (High[i] + ( High[i-1] - Low[i-1] ) *
nRatio)*100)/100;
		}
	}
	else
	{
		BuySig = Close[i] >= dsar[i-1];
		if(BuySig)
		{
			long = 1;   reverse = 1;    //reverse position to long
			Buy[i] = 1;
			BuyPrice[i] = dsar[i-1];
//			Short[i] = 1;
//			ShortPrice[i] = dsar[i-1];
			dsar[i] = round( (Low[i] - ( High[i-1] - Low[i-1] ) *
nRatio)*100)/100;
		}
	}
//=================================================
// No reversal - Adjust Stop, if Applicable
	if ( reverse == 0 )
	{
		dsar[i] = dsar[i-1];  //Set default to last SAR
		if ( long )
		{
			RangeExpanding = Close[i] > Close[i-1] OR Low[i] < Low[i-1];
			if (RangeExpanding)
			{  
				Stop = round( (Low[i] - ( High[i-1] - Low[i-1] ) *
nRatio)*100)/100;
				if (Stop > dsar[i-1] )   dsar[i] = Stop;
			}
		}
		else
		{
			RangeExpanding = Close[i] < Close[i-1] OR High[i] > High[i-1];
			if (RangeExpanding )
			{  
				Stop = round( (High[i] + ( High[i-1] - Low[i-1] ) *
nRatio)*100)/100;
				if (Stop < dsar[i-1] )    dsar[i] = Stop;
			}
		}
	}
//=================================================
//Color the SAR's
	if ( long )
       SARcolor[ i ] = colorBlue;
	else
       SARcolor[ i ] = colorRed;
//=================================================
}
Cover=Buy;
Short=Sell;
Filter=Buy OR Sell OR Short OR Cover;
Buy=ExRem(Buy,Sell); 
Sell=ExRem(Sell,Buy); 
Short=ExRem(Short,Cover); 
Cover=ExRem(Cover,Short);
AddColumn(Buy,"Buy");
AddColumn(Sell,"sell");
AddColumn(Short,"short");
AddColumn(Cover,"cover");
Title=  Name() +" - "+Interval(2) + "  "+Date()+": Open"+WriteVal(O)+
        ", Hi"+WriteVal(H)+",  Lo"+WriteVal(L)+
        ",  Close"+WriteVal(C)+",  Danton"+WriteVal(dsar);
Plot( Close, "C", colorBlack, styleCandle );
Plot( dsar, "Stop", SARcolor, styleDots | styleNoLine | styleThick);
Plot( EMA220, "Stop", colorBlue, styleLine + styleThick);
PlotShapes(shapeDownArrow*Sell,colorRed,0,dsar+0.05,0);
PlotShapes(shapeUpArrow*Buy,colorBlue,0,dsar-0.05,0);
GraphXSpace=3;
//=================================================
------------------------ Yahoo! Groups Sponsor --------------------~--> 
Has someone you know been affected by illness or disease?
Network for Good is THE place to support health awareness efforts!
http://us.click.yahoo.com/Rcy2bD/UOnJAA/cosFAA/GHeqlB/TM
--------------------------------------------------------------------~-> 
Please note that this group is for discussion between users only.
To get support from AmiBroker please send an e-mail directly to 
SUPPORT {at} amibroker.com
For other support material please check also:
http://www.amibroker.com/support.html
 
Yahoo! Groups Links
<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/amibroker/
<*> To unsubscribe from this group, send an email to:
    amibroker-unsubscribe@xxxxxxxxxxxxxxx
<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 
 |