I know you are talking about COM, but for what it is worth, the
following AFL will erase a watch list and then fill it with the
Filtered symbols. It was derived from previous posts and also
with some help from support.
Filter = 1;
WatchListNumber= CategoryFind("Test", categoryWatchlist );
if( s = Status("stocknum") == 0 )
{
List = CategoryGetSymbols (categoryWatchlist,
WatchListNumber);
for(i = 0; (Symbol = StrExtract(List, i)) != ""; i++)
{
CategoryRemoveSymbol (Symbol, categoryWatchlist,
WatchListNumber);
}
}
if( LastValue (Filter))
{
CategoryAddSymbol( "", categoryWatchlist,
WatchListNumber);
}
When used in an Exploration (ie the code it not included in an
indicator afl) it works perfectly, but if the code is included
in an indicator, the running of an Exploration only fills the WL
with the currently selected symbol.
Hope this helps
Ian
--- In [email protected], "dingo" <[EMAIL PROTECTED]> wrote:
>
> What version of AB are you using? If its 4.9x with the new
watchlist
> management. Then all of the watchlists are .tls files in the
watchlist
> folder. To delete all of the tickers in the watchlist just
create an empty
> file with the same name. Before you do this make sure AB is
not running. I
> haven't been able to make this happen with it running. Then
the next time
> you run AB that wl will be empty. You can do a lot of
"managing" of wl's by
> just working with the tls files and the index.tls file which
is the
> directory of watch lists that AB now uses.
>
> d
>
> > -----Original Message-----
> > From: [email protected]
> > [mailto:[EMAIL PROTECTED] On Behalf Of peakwk79
> > Sent: Friday, August 31, 2007 7:12 PM
> > To: [email protected]
> > Subject: [amibroker] Re: Does not refresh automatically
when
> > ticker added to Watchlist via COM?
> >
> > Thanks dingo.
> >
> > On a related note, I was trying out emptying a watchlist,
but the code
> > below deletes each ticker from the watchlist one by one:
> >
> > =============
> > For Each stock In oAB.Stocks
> > stock.WatchListBits = stock.WatchListBits And Not (wlbit)
> > Debug.Print stock.Ticker; stock.Quotations.Count
> > Next
> > =============
> >
> > The problem with the code above is that, when the watchlist
has many
> > tickers, the process is slow. Now I've gone through the
Object model
> > but can't seem to find a procedure to efficiently empty a
watchlist
> > (like how we can simply select 'erase (make empty)').
> >
> > Does anyone have a way? Thanks.
> >
> >
> > - Winston
> >
> >
> > --- In [email protected], "dingo" <dingo@> wrote:
> > >
> > > When finished with the additions, etc. Do a AB.Refreshall.
> > >
> > > d
> >
> >
> >
> > 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
> >
> >
> >
> >
>