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

[amibroker] Re: Ranking trade signals before entry day



PureBytes Links

Trading Reference Links

Perhaps this ranking function is of help to you:

function XSecRanksVarSet(List, Crit, Lookback)
{
	global PercRank;
	
	if (Crit==1) CurrInd=RSI(Lookback); else if (Crit==2) 
CurrInd=ROC(C,Lookback);
	
	for (j = 0;( Naam = StrExtract( List, j ) ) != "" ; j++ )
	{
		SetForeign(Naam, True);
		if (Crit==1) ChoiceVar=RSI(Lookback);
		else if (Crit==2) ChoiceVar=ROC(C,Lookback);
		VarSet("PeerInd"+j, Nz(ChoiceVar,LastValue(MA
(ChoiceVar,Lookback))));
		RestorePriceArrays();// to get out the influence of 
SetForeign
	}
	Rank=1;
		
	for (i=0;( Naam2 = StrExtract( List, i ) ) != "" ; i++ )
	{
		if (Name()!=Naam2)	Rank=Rank + IIf( CurrInd > 
VarGet("PeerInd"+i),1,0);
			//if (RankCrit==0) Rank=Rank + IIf( CurrInd > 
VarGet("PeerInd"+i),1,0);
			//else Rank=Rank + IIf( CurrInd < VarGet
("PeerInd"+i),1,0);
	}
	
	PercRank=Rank/i;
	
	return Rank;
}

PS

--- In amibroker@xxxxxxxxxxxxxxx, "David Smith" <david.smith5@xxx> 
wrote:
>
> Hmm.. I understand your approach I think, but it still looks to me 
like the
> ranking using ref-1 only used a previous value for rank & will only 
be
> applied to successfully entered trades only.  In terms of reseverd 
equity, I
> have a broker (I am trading CFD's by the way) who will take any 
number of
> limit orders & won't reserve capital for them, they just stop 
entering
> sucessful limit orders when the equity is used up, so I don't want 
equity
> reserved.  I have heard it can be done....there must be a way ! 
>  
> Dave
>  
> 
> -----Original Message-----
> From: amibroker@xxxxxxxxxxxxxxx [mailto:amibroker@xxxxxxxxxxxxxxx] 
On Behalf
> Of Edward Pottasch
> Sent: Thursday, 12 April 2007 8:14 PM
> To: amibroker@xxxxxxxxxxxxxxx
> Subject: Re: [amibroker] Ranking trade signals before entry day
> 
> 
> 
> 
> 
> PositionScore is not after the fact if you use e.g.
>  
> PositionScore = ref(50-RSI(15),-1);
>  
> So setting up your backtest this way the backtester will ensure by 
itself
> that you will not enter more positions then the backtester is setup 
for.
>  
> As for an entry on the limit: I wrote code for that a while back. 
The trick
> I used is to entry a "void trade" if the limit is not hit. The 
backtester
> will then set apart funds for this trade and therefor will not 
enter another
> trade. For this "void trade" the entry and exit are at the same 
point. So
> then in the backtest you will only pay commision for this trade not
> affecting the backtest very much. See attached image. The "void 
trade" is
> shown as a square. The buy limit is not hit. Still the backtester 
will use
> this trade because the entry and exit is at the same point in time.
>  
> I'll post an example later,
>  
> Ed 
>  
>  
>  
> 
> ----- Original Message ----- 
> From: David <mailto:david.smith5@...>  
> To: amibroker@xxxxxxxxx <mailto:amibroker@xxxxxxxxxxxxxxx> ps.com 
> Sent: Thursday, April 12, 2007 11:53 AM
> Subject: [amibroker] Ranking trade signals before entry day
> 
> 
> Hi, 
> 
> I have a reversal system I have coded into AB where I know at times 
it
> gives more triggers than I can have equity to enter orders in the 
next
> day. My entry is based on limit orders away from today's price so I
> don't know which ones will actually be entered before hand. I may 
get
> say 10 triggers, but only want to enter 6 orders to manage risk, of
> which all, any or none may get filled. 
> 
> I am looking for help as to how to code to rank the triggers, since
> ranking the trades using positionscore is after the fact.
> 
> eg the basic structure of the code is:
> Trigger = (ref(C,-3) - C) > 2*atr(5); // example only
> Buy = ref(Trigger,-1) and L < ref(L - 1*atr(5),-1);
> BuyPrice = min(Open, ref(L-1*atr(5),-1)); //include gaps
> 
> Any help is appreciated, 
> 
> Regards, David
>




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 NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/

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/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/amibroker/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:amibroker-digest@xxxxxxxxxxxxxxx 
    mailto:amibroker-fullfeatured@xxxxxxxxxxxxxxx

<*> 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/