This will produce a  top 5 list in a window pane...

// The top5 list

list = CategoryGetSymbols( categoryWatchlist, 2 );

g=-100;

t="";

topList="";

i1=0;

nt=5;// calibrate here the topX

for(n=1;n<=nt;n++)

{

for( i = 0; ( sym = StrExtract( list, i ) ) != "" ; i++ )

{

SetForeign(sym);

x= C;//the individual metric

t=WriteIf(x>g,sym,t);

i1=IIf(x>g,i,i1);

g=Max(g,x);

}

topList=topList + t + ",";

L0="";

for( i = 0; ( sym = StrExtract( list, i ) ) != "" ; i++ )

{

SetForeign(sym);

L0=L0+ WriteIf(i!=i1,sym+",","");

}

List=L0;

g=-100;

}

Title="The top "+WriteVal(nt,1.0)+" list for "+Date()+" is "+topList;

  ----- Original Message ----- 
  From: Herman 
  To: Mike 
  Sent: Monday, March 15, 2010 3:49 AM
  Subject: Re: [amibroker] Re: How to limit to top 5 in an Exploration


    
  You could sort the results, export the result table, read the top 5
  tickers from the exported file into a new watchlist, and run another
  exploration on that watchlist. All this can be automated in script -
  check out OLE Automation in the help.

  herman

  > You would have to limit the number of symbols in the exploration to 5 ;)

  > But seriously, I think that you're out of luck. One typical
  > approach would be to run the exploration, then select the first 5
  > and right click to select the popup menu for adding the selected
  > symbols to a new watchlist. Do whatever else you were planning on, but 
using the new watchlist.

  > Mike

  > --- In [email protected], "gelsner99" <gels...@...> wrote:
  >>
  >> For the simple AFL code below, what would I need to change so that when I 
run the Exploration it lists only the top 5? 
  >> 
  >> 
  >> Fund = Close;
  >> 
  >> Period = Param( ".....Period", 126, 63, 252, 63);
  >> 
  >> // Calculate Total Gain and Annual Gain
  >> TotalGain = ROC(fund, period);
  >> AnnGain = Nz(100 *LastValue(((TotalGain/100+1)^(252/period)) - 1));
  >> 
  >> // Exploration
  >> Filter = 1;
  >> 
  >> AddTextColumn(FullName(),"Fund Name",1.0);
  >> AddColumn( AnnGain, "AnnGain", 1.2 );
  >> 
  >> SetSortColumns(-4,);
  >>

  > ------------------------------------

  > **** IMPORTANT PLEASE READ ****
  > This group is for the discussion between users only.
  > This is *NOT* technical support channel.

  > TO GET TECHNICAL SUPPORT send an e-mail directly to 
  > SUPPORT {at} amibroker.com

  > TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
  > http://www.amibroker.com/feedback/
  > (submissions sent via other channels won't be considered)

  > For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
  > http://www.amibroker.com/devlog/

  > Yahoo! Groups Links



  

Reply via email to