Filter Conditions with Explorer Filter

Hi,

I was wondering if someone could help with code some filters I'm trying to explore for.

Stocks priced between - 35c-$10
Minimum Turnover - 100000
Minimum Volume - 100000
Minimum Average Volume - 100000
Price above 50, 100, 200 day move averages

Any help would be greatly appreciated.

@lscharkie, Welcome to the forum.

You will find that the best way to get help on the forum is to show your work first.

If you have tried some code, and can explain what is not working the way you think it should, post it (USE CODE BLOCKS '</>'), and you will usually get much quicker support.

The other advice for newbies is to use the SEARCH. Alternatively, the HELP in the application, and the User Manual.

As a hint, search/look up Explorations.

Most of the helpful members here want to see you put an effort in, and then they are usually very helpful.

2 Likes

Just to piggy-back on @snoopy.pa30's reply,

The reason everyone wants to see you try, is because realistically speaking you will not get very far in your journey if you do not learn to code yourself. Someone will write you this script, you will likely see that it can be improved, and wont know where to go from there.

When you do your search for Explorations, you wont find your exact question. But you will find enough to get your started in learning.

If you do not want to lean to code, there is an AFL code wizard that you might find useful.

3 Likes

@lscharkie,

Don't create duplicates - it's against forum rules!

Duplicate: different-filter-conditions-with-explorer-filter.

Again, see here

1 Like

@TrendSurfer slowly getting my head around the rules. I just removed my other question.

@snoopy.pa30 @Pinecone thanks guys, definitely trying to slowly learn.
This is where I'm at with the code.

Screener = ((C - Ref(C,-1)) / Ref(C,-1)) * 100;

 Filter = Screener;

 AddColumn(Close, “Minimum Price $” ,0.35”);
 AddColumn(Close, “Maximum Price $” ,10”);
 AddColumn(Close, “Minimum Turnover $” ,100000”);
 AddColumn(Close, “Minimum Volume ,100000”);
 AddColumn(Close, “Minimum Average Volume ,100000”);

You need to put your code in the same post!

C'mon! You need to make more of an effort! Did you search the forum (and if so for more than 5 seconds!)?

This forum is not a free coding service!

There is a ton of great help on this forum but only if you are prepared to help yourself somewhat first.

Post up a decent effort and you will get the assistance you need - it's that simple!

With a decent forum search you see examples like this!

myPriceFilter = Close >= 0.35 AND Close <= 10;
1 Like

Good to see passionate contributors on here like yourself. I’ll continue to look into how the forum works. Have a great day.

The code within "Screener" is saying:
"Close today -minus- Close yesterday -divided by- Close yesterday -multiplied by- 100."
This has nothing to do with what you asked for.

You are also improperly using AddClumn (which isn't even necessary in order to perform your actual screen).

@TrendSurfer has given you your first criteria but he has used the variable "myPriceFilter" instead of "Screener". You can name it whatever you want.

Use that as an example to code the rest of your criteria for the volume's and MA.

1 Like

That all makes sense, I’ll continue to work on it. Thanks for your reply.

Exactly! That's what I mean by @lscharkie needs to make a decent effort.

No, "myPriceFilter" is (as you know) just part of "Screener".

Screener = myPriceFilter AND myOtherCondition1 AND myOtherCondition2 AND ...;
1 Like

@lscharkie Sometimes I think when the request is simple and at least some effort has been made, that it is easier for the forum users to post some example code.

You weren't specific about some of your filters but this could get you started

VolumeFilter 	= MA(Volume, 50) > 100000;  // ave volume of the last 50 bars > 100,000 shares
MinPriceFilter 	= Close > 0.35; // you could Paramaterize this part for flexibility
MaxPriceFilter 	= Close < 10.00;
Turnover 		= Close * Volume > 1000000;  // Dollar volume at least $1,000,000
TrendFilter 	= C > MA(C, 50) AND C > MA(C, 100) AND C > MA(C, 200);

AllFilters = VolumeFilter AND MinPriceFilter AND MaxPriceFilter AND Turnover AND TrendFilter;
4 Likes

Appreciate that @portfoliobuilder, I am trying. Slower learner than others.

This topic was automatically closed 100 days after the last reply. New replies are no longer allowed.