PureBytes Links
Trading Reference Links
|
I am just experiencing a similar problem using both "if" and "filter=" InWatchlist() and InWatchlistName() in making an atc scan. The results are compiled only from tickers that satisfy the If-true conditions or Filter. But the entire database is scanned before the atc is compiled. It takes about 4 minutes on my core2duo/2GB.
I wonder how the AFL can be written so AA get straight to the watchlist and does the job, instead of iterating through the entire database.....
best kazaan
On 19 March 2010 12:37, Keith McCombs <kmccombs@xxxxxxxxxxxx> wrote:
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 -----
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
__._,_.___
**** 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/
__,_._,___
|