The following documents shall assist you in creating, understanding & running custom scans. We recommend that you have our scanning tool open in another window to practice the below demonstrations.
New! Video Tutorials
- Filter components
A tool to help you scan stocks broken out of various technical levels/indicators that you’ve customized and built during your experience with stock markets & technical analysis. Chartink’s scanner encompasses all the flexibility requested by our users to provide custom, accurate & fast stock scans. A few examples include listing stocks that have crossed the 200 day moving average OR having RSI values greater than 70 OR stocks closing above their open price and many more.. everything configurable by your requirements.
Scans are made up of multiple filters, which can be added by clicking on the filter icon . A scan with a single filter looks like below:
Specifies to list stocks whose closing is greater than 5000, the interface relates closely to our English language grammer.
Relates to the Open, High, Low, Close, Volume of a stock. A stock attribute would always be prefixed by a offset, specifying “are you looking for the latest value OR a day ago OR n days ago”.
Steps performed to add “Close” as a filter attribute. Notice the “Offset” component automatically added.
Often, you may what to compare yesterdays filter component with today’s/latest, eg: Searching for stocks that have closed above their yesterdays close. Offsets help your add this flexibility to help you compare components days prior to the latest trading day.
A offset is automatically added once you select a stock attribute or a indicator defaulting to “Latest”. To change, click on it.
Relates to hard coded number definitions. Can be used against comparisons(greater than, less than..) operators OR any of the mathematical operations(+,-,/,*). Number constants cannot have a offset, as they’d be the same if valued for today, yesterday OR any days ago.
You can add multiple indicators RSI, MACD, ADX, SMA, EMA.. etc and perform various computations against them to filter stocks. A common use case is comparing an indicator value with another value derived from another “Indicator” OR”Stock Attribute”. Most of the indicators require a parameter to be specified for their computations, Chartink defaults the parameter when you add them(inside brackets), you can also change the parameter of any of the indicators.
Adding SMA as a indicator, notice the parameter for SMA, signifying the computations to be on the “close” stock attribute for the past 200 days. If a “Indicator” requires multiple parameters, they are separated by a comma eg: “(close, 200)” here.
Once you have added a “Stock Attribute”/”Indicator” you’d want to perform certain operations on them(eg compare them), operations bind indicators to your custom criteria. Eg: Compare an Indicator value to a number constant OR Add indicators to themselves. Below is the format for linking operations with other filter components.
indicator operation(greater than/less than) number constant .... stock attribute operation(equals) indicator .... number constant operation(*, /, +, -) number constant operation(less than) indicator ...
A operation can be performed by clicking on “….”, click to view an example. Also, you can have multiple operations performed for a single filter.
Types of operations:
Probably the most common operation that you’d use as every valid scan requires a comparison among 2 filter components. A single filter can have only a single comparison. In the below snippet, “greater than” operation denotes the relation between the 2 stock attributes(close & high) & filters stocks that have a “Close” greater than a stocks’ “Open”
Close greater than Open
You can add/subtract/multiply/divide filter components to each other. This enables you build scans like “Stocks gaining x% today” (x refers to your custom percentage value, eg: 5%). The below snippet, uses 2 operations(*, greater than) one of which is a Arithmetic operation(*). Click to view an example used for Gap up/down scans.
Yesterdays close * 1.03 greater than Today's close
Often you want to filter stocks based on certain breakouts, which could be a result of a stock closing below a value yesterday but closing above it today(signifying a cross over). [value here refers to any indicator or stock attribute].
Close crossed over SMA(close, 50)
The above would filter Stocks that closed below the 50 day SMA yesterday, but closed above 50 day SMA today(crossing over from below yesterday).
Steps to add operations to a stock attribute:
Example of a operation being performed to filter stocks closing above 5,000. Note, that after adding a operation, a filter on the right is automatically added(number constant by default), which you can change, by clicking on it.
To add further operations, again click on “….”.
Multiple Filters & Filter Behavior
Normally you’d want to have multiple filters specified in a single scan. To add more than a single filter again click on the filter icon and select a new filter to add. You can also change the behavior of multiple filters added, i.e Do you want “all OR any” of the filters to “pass OR fail”?
Filter stocks that have a “volume greater than 10,000” & “RSI indicating an overbought region, greater than 70”, also notice the behavior of the filters indicating whether ALL/ANY of the filters PASS/FAILS.
At times you may need to group filters & their behavior, eg: Find stocks having a volume greater than 5,000 AND also resulting in either a breakout from [200 SMA OR 100 SMA].
Translates to filtering stocks that have a volume greater than 5,000 AND ( close crossed above SMA OR a close crossover above SMA ).
Notice how the sub-filter group had its behavior changed to pass ANY of the two filters below it ( SMA OR SMA ) crossover), whereas the outer filter still requires ALL filters below it to pass, this ensures, both the volume AND the sub-filter(passing ANY of the 2 SMA’s to pass) PASS.
Min & Max filter components are special in way that they accept other filter components as their parameters. These functions are useful to calculate the highest/minimum values over the given number of days. These functions take 2 parameters as follows:
- Period – denotes the periods over which this function shall perform its computations
- Measure(stock attribute, indicator) – denotes the measure against which the computation shall be performed.
To find stocks that touched their 52-week high today. Notice after selecting the Max(period, measure) function its required parameters are automatically added, to change the parameters to 252 & High, simply click on the parameters.
Any measure(indicator, stock attribute) can be selected as a parameter, “High” was choose specifically to relate to stocks at 52-week high, consisting of 252 trading days.
We’ve complied a few examples to further help you design your custom scans. Click here to view the videos for more example scans.
List stocks that have their RSI(14 day) change its zone from above 70 yesterday to below 70 today, indicating they are likely to see further downside ahead.
List stocks that have their RSI(14 day) change its zone from below 30 yesterday to above 30 today, indicating they are likely to see an upmove ahead.
Overbought OR Oversold filter:
List stocks that have a crossover OR a crossbelow in ANY of the above 2 zones.
Listing stocks that have a open greater than 3% of its yesterday’s close. If a stock closed at 100 INR yesterday, Its open today should be greater than 103, denoted by “1 day ago Close * 1.03”
Listing stocks that have a open less than 3% of its yesterday’s close. If a stock closed at 100 INR yesterday, Its open today should be less than 97, denoted by “1 day ago Close * 0.97”
Bullish stocks filter:
Often a crossover of 50 day SMA over 200 day SMA is treated as a bullish signal.
We hope this guide builds the groundwork required by you for creating your own custom scans & helps you take informed trading decisions.