Just finished two tests to see effect of using Filter = InWatchList().

First test, using following code only:
|*Filter* = InWatchList(49); // WL# 49 contains only two stocks
*NumColumns* = 1;
*Buy* = *Filter*;
*Sell* = *Short* = *Cover* = 0;|

With AA>Apply to>use filter>Define>Filter setting, both Include and Exclude clear, results were as expected but took approx. 25 seconds to read through entire equity list of 8455 files, for each Scan, Explore and Back Test. However, if I set Include to Watch list 49 in AA....Filter settings each is instantaneous. I had hoped that Filter = InWatchList() would have been instantaneous as well.

Second test, only changed Buy = Filter; to Buy = 1;
|*Filter* = InWatchList(49);
*NumColumns* = 1;
*Buy* = 1;
*Sell* = *Short* = *Cover* = 0;

W|ith AA....Filter settings, both Include and Exclude clear:
Scan lists all 8455 stocks with as Buy.|
Explore lists correct two stocks.
Back Test lists four incorrect stocks, which are no longer traded.
All three analysis took approx. 25 seconds.
|
Anybody have any thoughts on this?
Thank you.
-- Keith

On 3/18/2010 19:14, Keith McCombs wrote:

Anthony --
I was searching the AB Users Manual for 'InCategory', came up empty, and gave up. I didn't think to look for 'InWatchList'. Thank you.

However, I believe a bit more manipulation is required to use CategoryGetSymbols(). For example, copy list from Category:Index to Category:WatchList:WLnumber and then use Filter = InWatchList(WLnumber) as you pointed out. Of coarse one might also want to use CategoryRemoveSymbol() to implement exclusion as well.

But, in order to save time, one might want to perform the operation only once per scan, exploration, backtest, or optimization. Ah, so now there's another question.

And again, thank you.
-- Keith


On 3/18/2010 17:11, Anthony Faragasso wrote:

Keith ,
I believe there are several ways...
*CategoryGetSymbols( category, index ) *
*GetCategorySymbols( category, index ) *
*InWatchList( listno ) *
Filter= InWatchList( 3 ) OR InWatchList( 5 );
Anthony
**

    ----- Original Message -----
    *From:* Keith McCombs <mailto:[email protected]>
    *To:* [email protected] <mailto:[email protected]>
    *Sent:* Thursday, March 18, 2010 3:30 PM
    *Subject:* [amibroker] Filter for multiple categories?

    With AA>Apply to>Define>Include, I have two similar problems:
    1.  If more than one category is selected, the are ANDed, rather
    than ORed.  So that one cannot, for example, filter for
    Market:Nasdaq OR Group:ETF.

2. There is no way to select more than one list in a category. One cannot have Watchlist:7 OR Watchlist:13.

    I would very much like a solution to both problems.

    A programmatic solution would be most appreciated.  I try to have
    as many settings in my code and as few GUI selected as possible.

    Thanks for any help.
    -- Keith


Reply via email to