[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[amibroker] Re: Why wont this code allow short trades???



PureBytes Links

Trading Reference Links

If I select that setting it tells me to consult the help files. I do 
not have any buy signals in this code. I want to just make the 
shorts work. Here is the whole code if you care to take a look. I 
don't get a single trade in the report. I do have this working on 
the longs and I thought it would be fairly straight forward in 
switching it to work with shorts but I am missing something???
-------------------------------------------
Short = Cross( MA( C, 10 ), MA( C, 5 ) ); 
Cover = 0 ; 

FirstProfitTarget = .05; // profit 
SecondProfitTarget = .1; // in percent 
TrailingStop = .1; // also in percent 
Icing = .03 ;

priceatshort=0;
Lowsinceshort=0;
exit = 0; 
/*--------------------------------Short code-------------------------
---------*/

for( i = 0; i < BarCount; i++ ) 
{ 
	if( priceatshort == 0 AND Short[ i ] ) 
    { 
       priceatshort = ShortPrice[ i ]; 
    } 
	if( priceatshort > 0 ) 
    { 
       Lowsinceshort= Min( Low[ i ], Lowsinceshort); 
	      //PT1
      if( exit == 0 AND Low[ i ] <= ( 1 - FirstProfitTarget * 0.01 ) 
* priceatshort) 
       { 
         exit = 1; 
		  ShortPrice[i] = ( 1 - FirstProfitTarget * 0.01 ) * 
priceatshort;  
         Short[ i ] = sigScaleOut; 
       } 

      //PT2
      if( exit == 1 AND Low[ i ] <= ( 1 - SecondProfitTarget * 
0.01 ) * priceatshort)  
       { 
         exit = 2; 
         ShortPrice[ i ] = ( 1 - SecondProfitTarget * 0.01 ) * 
priceatshort    ; 
		  Short[ i ] = sigScaleOut; 
       } 

     //PT3 Icing
	  if( exit == 2 AND Close[ i ] >= ( 1 + Icing * 0.01 ) * 
Lowsinceshort) 
       { 
        exit = 3; 
        CoverPrice[ i ] = ( 1 + Icing * 0.01 ) * Lowsinceshort ; 
       } 

      //Trail Stop Loss
      if( High[ i ] >= ( 1 + TrailingStop * 0.01 ) * Lowsinceshort ) 
       { 
         exit = 4;    
         CoverPrice[ i ] = ( 1 + TrailingStop * 0.01 ) * 
Lowsinceshort ; 
       } 

      //Reset for the next loop
      if( exit >= 3 ) 
       { 
         Short[ i ] = 0; 
         Cover[ i ] = exit + 1; // mark appropriate exit code 
         exit = 0; 
         priceatshort= 0; // reset price 
         Lowsinceshort = 0; 
       } 
    } 
} 

SetPositionSize( 50, spsPercentOfEquity ); /*Initial % of equity to 
be traded.*/
SetPositionSize( 50, spsPercentOfPosition * ( Short == 
sigScaleOut ) ); /* percentage to scale out when PT's are hit*/


--- In amibroker@xxxxxxxxxxxxxxx, "Tomasz Janeczko" <groups@xxx> 
wrote:
>
> Go to AA settings and make sure that you have selected 
Postions: "Long and short"
> 
> Best regards,
> Tomasz Janeczko
> amibroker.com
> ----- Original Message ----- 
> From: "orionsturtle" <orionsturtle@xxx>
> To: <amibroker@xxxxxxxxxxxxxxx>
> Sent: Friday, July 14, 2006 8:08 PM
> Subject: [amibroker] Why wont this code allow short trades???
> 
> 
> >I tried to make this help file code work on the short side, but 
it 
> > never even enters into a single trade. I did set the backtest 
> > positions to short. Could someone please just take a quick look 
at 
> > this small piece of code and maybe you can see why it wont trade 
> > short. I believe it is something simple but I can't seem to find 
> > it.Thank you.
> > ---------------------------
> > Short = Cross( MA( C, 10 ), MA( C, 5 ) ); 
> > Cover = 0 ; 
> > priceatshort=0;
> > Lowsinceshort=0;
> > exit = 0; 
> > 
> > for( i = 0; i < BarCount; i++ ) 
> > { 
> >   if( priceatshort == 0 AND Short[ i ] ) 
> >    { 
> >       priceatshort = ShortPrice[ i ]; 
> >    } 
> >   if( priceatshort > 0 ) 
> >    { 
> >       Lowsinceshort= Min( Low[ i ], Lowsinceshort); 
> >      //PT1
> >      if( exit == 0 AND Low[ i ] <= ( 1 - FirstProfitTarget * 
0.01 ) 
> > * priceatshort) 
> >       { 
> >         exit = 1; 
> >   ShortPrice[i] = ( 1 - FirstProfitTarget * 0.01 ) * 
> > priceatshort;  
> >         Short[ i ] = sigScaleOut; 
> >       } 
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > 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
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> >
>