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

Re: [amibroker] Re: Are dynamic arrays possible in AB?



PureBytes Links

Trading Reference Links

sorting a single symbol over X bars is OK for speed, or for single bar
between symbols is not bad for speed.
>From what i saw of your loop code you were wanting to sort over a watchlist
of 200 symbols, for each symbol against every other symbol for every bar.
This will be very very slow


-- 
Cheers
Graham
AB-Write >< Professional AFL Writing Service
Yes, I write AFL code to your requirements
http://www.aflwriting.com


On 11/01/07, trb0428 <tombrowne34@xxxxxxxxxxx> wrote:
>
> Graham,
>
> Thanks. I find the sorting and ranking within the Osaka routines to
> be very fast. I am going to try saving a binary version of the table
> created using Osaka and then from within my indicator code recall and
> load the table into memory and index into it for just the rank of the
> ticker I have displayed in my chart therfore only needing to create
> one array instead of 200 which I think (hope?) I can do.  I think I
> should then be able to plot this without incurring a performance
> penalty.....thanks for your help.
>
> regards,
> Tom
>
> --- In amibroker@xxxxxxxxxxxxxxx, Graham <kavemanperth@xxx> wrote:
> >
> > If you need the value for every bar then you will need to run the
> ranking
> > for every bar, including creating the data files for every bar. ie
> within a
> > loop
> > There are some sort and rank AFL in a library that allow similar
> ranking
> > using staticvarget, but again these will need changing to within a
> loop to
> > get the ranked values for every bar.
> > Just remember that sorting symbols against each other will slow the
> > execution down by a very large amount, the more symbols and more
> bars
> > included will determine the boredom time you will encounter
> >
> > --
> > Cheers
> > Graham
> > AB-Write >< Professional AFL Writing Service
> > Yes, I write AFL code to your requirements
> > http://www.aflwriting.com
> >
> >
> > On 11/01/07, trb0428 <tombrowne34@xxx> wrote:
> > >
> > > Hi Graham,
> > >
> > > I am using the Osaka plugin to rank and sort a list of stocks.
> > > From this, I am trying to create an indicator which will display
> the
> > > rank of the stock for each bar. I have 200 symbols that I am
> sorting
> > > and rankng.
> > >
> > > Below is the code I am using to read from the Osaka table into a
> > > single array ( only works for one ticker). I was hoping to be
> able to
> > > create (dynamically) the 200 arrays I need to hold the rank
> numbers
> > > for each day for the 200 tickers using something within the loop
> like:
> > >
> > > myarray = "ID"+n;
> > > myarray = ID;
> > >
> > > but I know this doesn't work.
> > >
> > > Can I accomplish this with VarSet/VarGet as you suggest?
> > >
> > >
> > > for (n = 0; n<= tickers-1; n++) //n is the rows representing
> tickers
> > >     {
> > >
> > >      for( j = period-1; j <= BarCount-1; j++) // j*2+2 holds the
> rank
> > >          {
> > >              ID[j] = osTabGet( n, 2 * j + 2, mytable );
> > >
> > >           }
> > >        myarray = "ID"+n; // <-- this does not work
> > >        myarray = ID; // <-- this does not work
> > >     }
> > >
> > > Thanks,
> > > Tom
> > >
> > >
> > > --- In amibroker@xxxxxxxxxxxxxxx, Graham <kavemanperth@> wrote:
> > > >
> > > > Tom
> > > > Exactly what are you trying to achieve? What are the arrays ?
> > > > btw Varset is an array, staticvarset is a single value
> > > >
> > > >
> > > > VarSet("Close",C);
> > > > Plot(VarGet("Close"),"Close",colorBlue,styleLine);
> > > >
> > > >
> > > > --
> > > > Cheers
> > > > Graham
> > > > AB-Write >< Professional AFL Writing Service
> > > > Yes, I write AFL code to your requirements
> > > > http://www.aflwriting.com
> > > >
> > > > On 11/01/07, trb0428 <tombrowne34@> wrote:
> > > > >
> > > > > Ara,
> > > > >
> > > > > My goal is to plot the data. I do not see how I can use this
> > > > > structure to plot? Is there a way to store this element by
> element
> > > > > data into an artificial ticker symbol. I have thought of
> > > > > impplementations using ATC but cannot arrive at a solution
> this
> > > way???
> > > > > Is there any other way to store this data?
> > > > >
> > > > > Thanks for your suggestions.
> > > > >
> > > > > regards,
> > > > > Tom
> > > > >
> > > > >
> > > > > --- In amibroker@xxxxxxxxxxxxxxx, "Ara Kaloustian" <ara1@>
> wrote:
> > > > > >
> > > > > > Use VarSet() and VarGet() functions. These are non array
> > > elements,
> > > > > but you
> > > > > > can create them dynamically so you can set and read them in
> a
> > > loop
> > > > > as array
> > > > > > elements.
> > > > > >
> > > > > > for (i=1; i<10; i++)
> > > > > > {
> > > > > > //create element name
> > > > > > Array_element = "Arr_item" + i;
> > > > > > VarSet(Array_element,desired_value);
> > > > > > }
> > > > > >
> > > > > > x = VarGet("Arr_item1");
> > > > > >
> > > > > > ----- Original Message -----
> > > > > > From: "trb0428" <tombrowne34@>
> > > > > > To: <amibroker@xxxxxxxxxxxxxxx>
> > > > > > Sent: Tuesday, January 09, 2007 1:39 PM
> > > > > > Subject: [amibroker] Are dynamic arrays possible in AB?
> > > > > >
> > > > > >
> > > > > > > Hi,
> > > > > > >
> > > > > > > I have a need to create arrays dynamically. Is this
> possible?
> > > I
> > > > > have
> > > > > > > tried several ways including the following but without
> > > success:
> > > > > > >
> > > > > > >
> > > > > > > for (n = 0; n<= tickers-1; n++)
> > > > > > >    {
> > > > > > >
> > > > > > >       for( j = period-1; j <= BarCount-1; j++)
> > > > > > >          {
> > > > > > >
> > > > > > >             ID[j] = osTabGet( n, 2 * j + 2, mytable );
> > > > > > >
> > > > > > >           }
> > > > > > >        myarray = "ID"+n;
> > > > > > >        myarray = ID;
> > > > > > >    }
> > > > > > >
> > > > > > > Tom
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > 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
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > 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
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > >
> > >
> > >
> > >
> > > 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
> > >
> > >
> > >
> > >
> >
>
>
>
>
> 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
>
>
>
>

Content-Description: "AVG certification"
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.432 / Virus Database: 268.16.9/622 - Release Date: 1/10/2007 2:52 PM