Screener for 40+ instrumentsAs you probably know in TradingView there is a limit of 40 instruments in one custom screener.
I created a script that will allow you to scan more symbols.
The idea of it is pretty simple. You have to add a screener a few times on your screen with a different set of symbols. Then select column width (as % of your chart width) and # of the screener right to left.
Script will plot #1 screener next to the right border. For #2 and all next tables, the script will compute the needed offset and will draw it on the left. This way it will look like one table and not a few separate indicators.
I created a script with an RSI screener, but you can create more complicated examples with it.
Off course, that's not a silver bullet solution but might work for some of you.
Disclaimer
Please remember that past performance may not be indicative of future results.
Due to various factors, including changing market conditions, the strategy may no longer perform as well as in historical backtesting.
This post and the script don’t provide any financial advice.
Cerca negli script per "screener"
Screener: Alpha & BetaThis is a Live Screener for my previous Alpha & Beta indicator, which filters stocks lively based on the given values.
Use 5min timeframe for Live Intraday.
The default stocks in the screener is selected based on high beta value from F&O listed stocks. It may include other stocks also.
User can input stocks of your choice either through the menu or through the Pine editor.
The maximum number of stocks inputs is only 40. The indicator includes only 20 stocks by default.
More number of stocks can be added but it makes the screener slower to load.
Open the indicator in a sperate tab or window to avoided the loading lag.
It is recommended to choose only 10 to 20 stocks based on the weightage from each sectors.
Beta values are dynamic. It changes from day to day based on the trend and sector.
Update the sock list weekly or twice a week or monthly.
Use investing.com screener(preferably) or TradingView screener for shortlisting beta stocks.
Remember that majority of indicators fails in a sideways market, also every indicator is not 100% accurate.
MOST + Moving Average ScreenerScreener version of Anıl Özekşi's Moving Stop Loss (MOST) Indicator:
USERS MAY SCREEN MOST WITH 11 DIFFERENT TYPES OF MOVING AVERAGES + THEY CAN ALSO SCREEN SIGNALS WITH THAT 11 MOVING AVERAGES INSTEAD OF USING MOST LINE.
Adjustable Moving Average Types:
SMA : Simple Moving Average
EMA : Exponential Moving Average
WMA : Weighted Moving Average
DEMA : Double Exponential Moving Average
TMA : Triangular Moving Average
VAR : Variable Index Dynamic Moving Average aka VIDYA
WWMA : Welles Wilder's Moving Average
ZLEMA : Zero Lag Exponential Moving Average
TSF : True Strength Force
HULL : Hull Moving Average
TILL : Tillson T3 Moving Average
About Screener Panel:
Users can explore 20 different and user-defined tickers, which can be changed from the SETTINGS (shares, crypto, commodities...) on this screener version.
The screener panel shows up right after the bars on the right side of the chart.
-In this screener version of MOST, users can define the number of demanded tickers (symbols) from 1 to 20 by checking the relevant boxes on the settings tab.
-All selected tickers can be screened in different timeframes.
-Also, different timeframes of the same Ticker can be screened.
IMPORTANT NOTICE:
Screener shows the results in 3 different logic:
1st LOGIC (Default Settings):
BUY AND SELL SIGNALS of MOST and MOVING AVERAGE LINE
Most Buy Signal: Moving Average Crosses ABOVE the MOST LINE
Most Sel Signal: Moving Average Crosses BELOW the MOST LINE
Tickers seen in green are the ones that are in an uptrend, according to MOST.
The ones that appear in red are those in the SELL signal, in a downtrend.
The numbers before each Ticker indicate how many bars passed after MOST's last BUY or SELL signal.
For example, according to the indicator, when BTCUSDT appears (3) in GREEN, Bitcoin switched to a BUY signal 3 bars ago.
2nd LOGIC (Moving Average & Price Flips Screener Mode):
This mode can only be activated by checking the 'Activate Moving Average Screening Mode' box on the settings menu.
MOST line will be disappeared after checking the box.
Buy Signal: When the Selected Price crosses ABOVE the selected Moving Average.
Sell Signal: When the Selected Price crosses BELOW the selected Moving Average.
Tickers seen in green are the ones that are in an uptrend, according to Moving Average & Price Flips.
The ones that appear in red are those in the SELL signal, in a downtrend.
The numbers before each Ticker indicate how many bars passed after the last BUY or SELL signal of Moving Average & Price Flips.
For example, according to the indicator, when BTCUSDT appears (3) in GREEN, Bitcoin switched to a BUY signal 3 bars ago.
3rd LOGIC (Moving Average Color Change Screener Mode):
Both 'Activate Moving Average Screening Mode' and 'Activate Moving Average Color Change Screening Mode' boxes must be checked in the settings tab.
Moving Average Line will turn out into two colors.
Green color means the moving average value is greater than the previous bar's value.
Red color means the moving average value is smaller than the previous bar's value.
Buy Signal: After the Selected Moving Average turns GREEN from red.
Sell Signal: After the Selected Moving Average turns RED from green.
-Screener shows the information about the color changes of the selected Moving Average with default settings.
If this option is preferred, users are advised to enlarge the length to have better signals.
Tickers seen in green are the ones that are in an uptrend, according to Moving Average Color.
The ones that appear in red are those in the SELL signal, in a downtrend.
The numbers before each Ticker indicate how many bars passed after the last BUY or SELL signal of Moving Average Color Change.
For example, according to the indicator, when BTCUSDT appears (3) in GREEN, Bitcoin switched to a BUY signal 3 bars ago.
Screener - Mean Reversion Channel█ OVERVIEW
This is Screener script for Mean Reversion Channel Indicator
█ Description & How To Use
The screener works by scanning through up to 40 symbols and list down symbols that are currently within Overbought/Oversold Zone as defined by Mean Reversion Channel indicator.
The Overbought/Oversold Zone are further categorized and sorted by:
Strong : Indicated by "(Strong)" next to the symbol name
Normal : Indicated by the absence of "(Strong)" or "(Weak)" next to the symbol name
Weak : Indicated by "(Weak)" next to the symbol name
Notes: Refer to chart above to see how the Zone are categorized.
Notes: If the screener displays "Nothing Interesting". It simply means none of the screened assets are within the Overbought/Oversold Zone.
█ Features
- Scan up to 40 symbols at a time (By default, no asset is define. Once configured all the symbols you required, remember to save as default to save you from pain of configuring it again in the future)
- Options to scan by zones
- Custom Timeframe
█ Limitation
Due to multiple use of security() function required to call other symbols, expect the screener to be slow at certain times
█ Disclaimer
Past performance is not an indicator of future results.
My opinions and research are my own and do not constitute financial advice in any way whatsoever.
Nothing published by me constitutes an investment recommendation, nor should any data or Content published by me be relied upon for any investment/trading activities.
I strongly recommends that you perform your own independent research and/or speak with a qualified investment professional before making any financial decisions.
Any ideas to further improve this indicator are welcome :)
Credit: QuantNomad for his script idea on custom screener
Screener Price Percentage ChangeA screener that displays price percentage change in actual chart timeframe and the default Daily, Weekly and Monthly.
The actual time frame also displays last value percentage change.
For example, if actual timeframe is "Monthly, it is going to display also the last "previous Monthly percentage price change.
Can select 3 more assets to display.
Full control of Panel position and size.
A modified version of @Mohamed3nan
Para el Shiaks
Psych Level ScreenerThis Script is intended for Pine Screener and is not designed as a indicator!!!
Pine Screener is something TradingView has recently added and is still only a Beta version.
Pine Screener itself is currently only available to members that are Premium and above.
What it does:
This screener will actively look for tickers that are close to Pysch level in your watchlist.
Psych level here refers to price levels that are round numbers such as 50,100,1000.
Users can specify the offset from a psych level (in %) and scanner will scan for tickers that are within the offset. For example if offset is set at 5% then it will scan for tickers that are within +/-5% of a ticker. (for $100 psych level it will scan for ticker in $95-105 range)
Once scan is completed you will be able to see:
- Current price of ticker
- Closest psych level for that ticker
- % and $ move required for it to hit that psych level
- Ticker's day range and Average range (with % of average range completed for the day)
- Ticker volume and average volume
Setting up:
www.tradingview.com
Above link will help you guide how to setup Pine screener.
Use steps below to guide you the setup for this specific screener:
1. Open Pine Screener (open new tab, select screener the "Pine")
2. At the top, click on "Choose Indicator" and select "Psych Level Screener"
3. At the top again, click "Indicator Psych Level Screener" and select settings.
4. Change setting to your needs. Hit Apply when done.
a)"% offset from Psych Level" will scan for any stocks in your watchlist which are +/- from the offset you chose for any given psych level. Default is 5. (e.g. If offset is 5%, it will scan for stocks that are between $95-$105 vs $100 psych level, $190-$210 for $200 psych level and so on)
b) ATR length is number of previous trading days you want to include in your calculation. Moving Average Type is calculation method.
c) Rvol length is number of previous trading days you want to include in your calculation.
5. On top left, click "Price within specified offset of Psych. Level" and select true. Then select "Scan" which is located at the top next to "Indicator Psych Level Screener". This will filter out all the stock that meets the condition.
6. At the end of the column on the right there is a "+" symbol. From there you can add/remove columns. 30min/1hr/4hr/1D Trend are disabled by default so if this is needed please enable them.
7. You can change the order of ticker by ascending and descending order of each column label if needed. Just click on the arrow that comes up when you move the cursor to any of the column items.
8. You can specify advanced filter settings based on the variables in the column. (e.g., set price range of stock to filter out further) To do so, click on the column variable name in interest, located above the screener table (or right below "scan") and select "manual setup".
How to read the column:
Current Price: Shows current price of the ticker when scan was done. Currently Pine Screener does NOT support pre/post-hours data so no PM and AH price.
Psych Level: Psych level the current price is near to.
% to Psych Level: Price movement in % necessary to get to the Psych level.
$ to Psych Level: Price movement in $ necessary to get to the Psych level.
DTR: Daily True Range of the stock. i.e. High - Low of the ticker on the day.
ATR: Average True Range of stock in the last x days, where x is a value selected in the setting. (See step 3 in Previous section)
DTR vs ATR: Amount of DTR a ticker has done in % with respect to ATR. (e.g., 90% means DTR is 90% of ATR)
Vol.: Volume of a ticker for the day. Currently Pine Screener does NOT support pre/post-hours data so no PM and AH volume.
Avg. Vol: Average volume of a ticker in the last x days, where x is a value selected in the setting. (See step 3 in Previous section)
Rvol: Relative volume in percentage, measured by the ratio of day's volume and average volume.
30min/1hr/4hr/1D Trend: Trend status to see if the chart is Bullish or Bearish on each of the time frame. Bullishness or Bearishness is defined by the price being over or under the 34/50 cloud on each of the time frame. Output of 1 is Bullish, -1 is Bearish. 0 means price is sitting inside the 34/50 cloud. Currently Pine Screener does NOT support pre/post-hours data so 34/50 cloud is based on regular trading hours data ONLY.
Some things user should be aware of:
- Pine Screener itself is currently only available to TradingView members with Premium Subscription and above. (I can't to anything about this as this is NOT set by me, I have no control) For more info: www.tradingview.com
- The Pine Screener itself is a Beta version and this screener can stop working anytime depending on changes made by TradingView themselves. (Again I cannot control this)
- Pine Screener can only run on Watchlists for now. (as of 03/31/2025) You will have to prepare your own watchlists. In a Watchlist no more than 1000 tickers may be added. (This is TradingView rules)
- Psych level included are currently 50 to 1500 in steps of 50. If you need a specific number please let me know. Will add accordingly.
- Unfortunately this screener does not update automatically, so please hit "scan" to get latest screener result.
- I cannot add 10min trend to the column as Pine Screener does NOT support 10min timeframe as of now. (03/31/2025)
- This code is only meant for Pine Screener. I do NOT recommend using this as an indicator.
- Currently Pine Screener does NOT support pre/post-hours data. So data such as Price, Volume and EMA values are based on market hours data ONLY! (If I'm wrong about this please correct me / let me know and will make look into and make changes to the code)
Other useful links about Pine Screener:
Quick overview of the Screener’s functionality: www.tradingview.com
what do you need to know before you start working? : www.tradingview.com
These links will go over the setting up with GIFs so is easier to understand.
-----------------------------------------------------------------------------------------------------------------
If there are other column variables that you think is worth adding please let me know! Will try add it to the screener!
If you have any questions let me know as well, will reply soon as I can!
Have a good trading day and hope it helps!
Your CRYPTO Screener - MACD 0 LAG editionHello traders
What's good?
1 - Quick introduction
This script is to demonstrate a proof-of-concept - showing you again what you thought wasn't possible might become (with some tricks) in the realm of possibles !!!.
I get requests for people who want a custom screener because the native TradingView Stocks/Forex/Crypto screeners don't allow to plug external indicators. (example: www.tradingview.com
This is entirely true and I have also good news for you, we can hack the system one more time. As Hackerman would say, "IT"S HACKING TIME !!!" (ref : KUNG FURY . (#geek #reference #done #for #today)
What if you could build your own personalized screener based on your custom indicator? "No Dave stop smoking, that's not possible, go back to eating your baguette". Say no more, let me present you my new script called YOUR CRYPTO Screener (MACD 0 LAG)
2 - What is a MACD ZERO LAG?
We'll all agree this indicator is NOT in the TradingView screeners so I'm not cheating here :)
A MACD ZERO LAG is a MACD that .... suspens.... wait for it.... DOES NOT lag.
The traditional MACD is based on exponential moving averages and as moving averages are lagging, then the MACD is lagging also. I'll spare you all the maths behind the MACD ZERO LAG but in short, this is a way more reactive indicator than the traditional MACD
I shared before the version that I personally use for my own trading : MACD 0 LAG nTREND coloring
3 - Crypto Screener specifications
If I could do a screener as complete as the native one, this would be wonderful but ... we cannot and this is due to technical reasons. To call indicators from different timeframes, I have to use the security function. And we're limited to 40 security calls per indicator.
That explains why I selected 4 crypto assets and 5 timeframes and the MACD zero lag output for each asset/timeframe - which gives a total of 4 * 5 * 2 = 40
You'll be able to select from the interface the 5 timeframes that you want for your screener
In this script, you'll get a :
- BUY whenever the MACD ZERO LAG for your asset/timeframe is green.
- SELL whenever the MACD ZERO LAG for your asset/timeframe is red.
4 - Can you hack it even more?
If you want to add other timeframes or assets, you can either, change the code or add the indicator on another chart.
I made the source code generic enough so that you can update it yourself easily
Example:
Chart 1 will list BTCUSD, ETHUSD, LTCUSD, and XRPUSD in m5/m15/m30/H1/H4 and Chart2 could list BTCUSD, ETHUSD, LTCUSD and XRPUSD in H6/H8/H12/Daily, etc...
Once again the sky (and your computer RAM capacity) is the limit
5 - Can you super hack it even more?
1/ This script is only a proof-of-concept that you can build your own custom screener. Imagine having the Algorithm Builder and being able to connect it in a single click to a custom screener using your own configuration :)
How coooooooooooooooool would that be!!!
This screener version will be available on my website in a few weeks along with all the tools I'm spamming you about since the beginning of July (#shameless #self-advertising)
2/ For a nicer scripter, let's keep in mind that TradingView just enabled Webhooks this week. This will allow my company to offer custom screeners design and hosted on your own website. Those screeners will be for sure nicer than the indicator version
That's it for today and for this week
I won't even touch the laptop this weekend and will enjoy life a bit
Love you all
Dave
____________________________________________________________
Be sure to hit the thumbs up. Building those indicators take a lot of time and likes are always rewarding for me :) (tips are accepted too)
- If you want to suggest some indicators that I can develop and share with the community, please use my personal TRELLO board
- I'm an officially approved PineEditor/LUA/MT4 approved mentor on codementor. You can request a coaching with me if you want and I'll teach you how to build kick-ass indicators and strategies
Jump on a 1 to 1 coaching with me
- You can also hire for a custom dev of your indicator/strategy/bot/chrome extension/python
BEST Ultimate Engulfing ScreenerHello traders
Continuing deeper and stronger with the screeners serie. I keep getting requests private messages and requests saying that screeners aren't possible with TradingView.
My answer is always... "Reallyyy ??" (I never find a better answer than that...)
I'll publish a few screeners just for everyone to understand what can be done with Pinescript. We don't have to wait for TradingView to allow screener based on custom indicator - we can build our own ^^
I - What is an engulfing pattern
Let's start with a screener to check for a very famous candlestick pattern called engulfing
Engulfing candles tend to signal a reversal of the current trend in the market. This specific pattern involves two candles with the latter candle ‘engulfing’ the entire body of the candle before it.
The engulfing candle can be bullish or bearish depending on where it forms in relation to the existing trend
Source and more info here
These engulfing candles indicate a strong shift in direction, and when combined with observation of the price-trending direction that precedes it, this shift creates the opportunity for a trading strategy.
II - How did I set the screener
I added an optional filter being Price vs SMA. The idea is to select only the engulfing whenever the price also breaks an SMA - this usually translates a stronger move - but could sometimes give the signal too late (#meh #trading #ain't #easy)
The visual signals are as follow:
- square: whenever the engine detects an engulfing and an SMA breakout
- triangle: the engine only detects an engulfing
- dash: none of the above
Then the colors are:
- orange when bullish
- yellow when bearish
- aqua/dash when none of the above
Cool Hacks
"But sir... what can we do with only 5 instruments for a screener?" I agree not much but...
even if I allow only 5 instruments per indicator - nothing prevents you from adding multiple times the same indicator and changing the selected instruments for each. I also show why the SPX500 gave a yellow triangle (bearish engulfing) and how to match it with the screener.
=> imgur.com
Wishing you all the BEST trading
Dave
Linear Regression Channel Screener [Daveatt]Hello traders
First and foremost, I want to extend a huge thank you to @LonesomeTheBlue for his exceptional Linear Regression Channel indicator that served as the foundation for this screener.
Original work can be found here:
Overview
This project demonstrates how to transform any open-source indicator into a powerful multi-asset screener.
The principles shown here can be applied to virtually any indicator you find interesting.
How to Transform an Indicator into a Screener
Step 1: Identify the Core Logic
First, identify the main calculations of the indicator.
In our case, it's the Linear Regression
Channel calculation:
get_channel(src, len) =>
mid = math.sum(src, len) / len
slope = ta.linreg(src, len, 0) - ta.linreg(src, len, 1)
intercept = mid - slope * math.floor(len / 2) + (1 - len % 2) / 2 * slope
endy = intercept + slope * (len - 1)
dev = 0.0
for x = 0 to len - 1 by 1
dev := dev + math.pow(src - (slope * (len - x) + intercept), 2)
dev
dev := math.sqrt(dev / len)
Step 2: Use request.security()
Pass the function to request.security() to analyze multiple assets:
= request.security(sym, timeframe.period, get_channel(src, len))
Step 3: Scale to Multiple Assets
PineScript allows up to 40 request.security() calls, letting you monitor up to 40 assets simultaneously.
Features of This Screener
The screener provides real-time trend detection for each monitored asset, giving you instant insights into market movements.
It displays each asset's position relative to its middle regression line, helping you understand price momentum.
The data is presented in a clean, organized table with color-coded trends for easy interpretation.
At its core, the screener performs trend detection based on regression slope calculations, clearly indicating whether an asset is in a bullish or bearish trend.
Each asset's price is tracked relative to its middle regression line, providing additional context about trend strength.
The color-coded visual feedback makes it easy to spot changes at a glance.
Built-in alerts notify you instantly when any asset experiences a trend change, ensuring you never miss important market moves.
Customization Tips
You can easily expand the screener by adding more symbols to the symbols array, adapting it to your watchlist.
The regression parameters can be adjusted to match your preferred trading timeframes and sensitivity.
The alert system is already configured to notify you of trend changes, but you can customize the alert messages and conditions to your needs.
Limitations
While powerful, the screener is bound by PineScript's limitation of 40 security calls, capping the maximum number of monitored assets.
Using AI to Help With Conversion
An interesting tip:
You can use AI tools to help convert single-asset indicators to screeners.
Simply provide the original code and ask for assistance in transforming it into a screener format. While the AI output might need some syntax adjustments, it can handle much of the heavy lifting in the conversion process.
Prompt (example) : " Please make a pinescript version 5 screener out of this indicator below or in attachment to scan 20 instruments "
I prefer Claude AI (Opus model) over ChatGPT for pinescript.
Conclusion
This screener transformation technique opens up endless possibilities for market analysis.
By following these steps, you can convert any indicator into a powerful multi-asset scanner, enhancing your trading toolkit significantly.
Remember: The power of a screener lies not just in monitoring multiple assets, but in applying consistent analysis across your entire watchlist in real-time.
Feel free to fork and modify this screener for your own needs.
Happy trading! 🚀📈
Daveatt
Multiple Screeners with AlertsI already published few version of my custom screeners. Unfortunately, because of TradingView's security function call limit you can't use more than 40 stocks in 1 screener.
Fortunately, you can compute multiple values in your function and screen few indicators at once.
In this script I show how you can compute 5 indicators at the same time for 40 instruments. I display then in different labels.
Every label consist of list of instruments satisfying current indicator conditions and a value for it. It can be absolute value as for RSI or -1/1 representing Bullish/Bearish event.
Also you can create 1 alert with result of all screeners inside.
In this example I took 5 indicators with following conditions:
RSI - "RSI < 30" or "RSI > 70"
TSI - "TSI < -30" or "RSI >30"
ADX - "ADX > 40"
MACD - "MACD Bullish Cross" or "MACD Bearish Cross" (1 and -1 in screener)
AO - "AO Crosses 0 UP" or "AO Crosses 0 DOWN" (1 and -1 in screener)
Params
- bars_apart - this parameter define how may bars apart you labels are on your chart. If you see labels overlapping, increase this number.
- Parameters for all used indicators
- 40 symbol inputs for instruments you want to use in this screener
Alerts
You can create an alert from it easily by selecting screener name from the list and then selecting "Any alert() function call".
No additional configuration is required, message and alert on close is generated in the code.
You should better change default name for your alert. Sometimes because of big amount of inputs you might receive an error.
Disclaimer
Please remember that past performance may not be indicative of future results.
Due to various factors, including changing market conditions, the strategy may no longer perform as good as in historical backtesting.
This post and the script don’t provide any financial advice.
Custom Screener with Alerts V2 [QuantNomad]TradingView just recently announced the alert() function that allows you to create dynamic alerts from both strategies and studies.
So I decided to update custom screener I published before. It was based on alerts from orders in strategies, that was the only way to create dynamic alerts in PineScript at that point.
With the alert() function code become cleaner and more readable.
It works for up to 40 symbols at the same time.
You can create an alert from it easily by selecting screener name from the list and then selecting "Any alert() function call".
No additional configuration is required, message and alert on close I set up in the code.
I created as an example a screener that tracks both overbought (RSI > 70) and oversold stocks (RSI < 30).
To create your own screener you have to change only screenerFunc().
By design it should output 2 values:
cond - True/False Boolean variable. Should this instrument be displayed in the screener?
value - Additional numeric value you can display in your screener. I display RSI level for selected stocks for example.
Link to the old screener:
Disclaimer
Please remember that past performance may not be indicative of future results.
Due to various factors, including changing market conditions, the strategy may no longer perform as good as in historical backtesting.
This post and the script don’t provide any financial advice.
Ultimate Screener TemplateHello Traders
With the Ultimate Strategy Template , I shared a template to connect any indicator to this template and get backtesting results in less than a few minutes
Now sharing another template ... many traders ask me to develop for them a screener/scanner based on a custom indicator on TradingView.
The current TradingView screeners are great but don't allow for much customization; as we can only select pre-defined filters
I don't know when we'll be able to natively screen among hundreds of assets with a custom indicator... then.... I created this template for the time being.... which should
A whole new world
The Ultimate Screener Template screens over 38 securities.
What's very cool is that you'll only need to create 1 alert to scan over 38 securities: Explanation with this image here
I totally understand that not all TradingView accounts have a lot of alarms; with this template, you can multiply the number of custom alerts you're initially allowed to.
What if I need to set alerts on more than 38 securities?
Pretty straightforward... you can create alerts only if the indicator is added to your chart first.
So if you need let's say 100 securities, add this indicator 3 times on your chart (38*3 > 100) and then... edit the securities for your 3 indicators
How to update your Screener settings
Alert mode
As per Pinescript reference , this template allows setting the alert frequency
Possible values are:
- alert.freq_all (all function calls trigger the alert)
- alert.freq_once_per_bar (the first function call during the bar triggers the alert)
- alert.freq_once_per_bar_close (the function call triggers the alert only when it occurs during the last script iteration of the real-time bar when it closes).
All-time-high and All-time-low
This template shows how to capture ATH and ATL alerts across many securities
I used the functions from Quantnomad:
Whenever a new ATH or ATL is made, the screener will send a personalized alarm with a personalized text based on the security triggering this alarm
The code is pretty straightforward and shows you the part you'll need to update to transform your favorite custom indicator into a powerful screener.
If anything is unclear in the code, please leave a comment and I'll respond as soon as possible
All the best
Dave
Any Screener (Multiple)I suppose it's time to publish something relatively useful :). Here's the first try, Any Screener.
This script is an advanced version of the Alphatrend - Screener that I've coded as a humble "thank you" to Kıvanç Özbilgiç (KivancOzbilgic), who always inspired me.
INTRODUCTION
I developed this version with a unique method because I couldn't find an example with the following features:
It presents the valid signal status of multiple indicators for 15 different symbols in the form of a report.
It indicates how many bars have passed after the signal has occurred.
It indicates the signal direction with dynamic colors and chars.
It can also be used for data (just indicator value) that is only intended to be displayed as text. (Default color is grey).
Long and short signals can optionally be ploted on the chart.
It includes advanced configuration settings.
USAGE OF PANEL
The screener panel is simple to use. On the far left, assets are listed. The names of the indicators appear at the top. In the column with the name of each indicator, the signals of that indicator appear as green or red. The green ones represent the long signals (uptrend) and the red ones represent the short signals (down trend). The numbers in square brackets indicate how many bars have passed after the last signal has occurred. (For example: According to the indicator at the top, when the green bullish triangle and 21 appeared on allign of BTCUSDT, Bitcoin switched to buy signal 21 bars ago. A tip : If the signal distance is 0, the signal occurred at the current bar. It is recommended to wait for the bar to close before entering the trade). Signal distance is an essential output for both manual and algorithmic trading. Users often require mentioned data the most during real time trading.
THE SCRIPT
There are two sections in the script; indicators and screener.
SECTION 1 : "INDICATORS"
In the indicator section, you'll find efficient details about switch methods, normalization, avoid pyramyding (in momentum oscillators) etc. On the other hand, I intended to present a "how to example" of a multiple screener, so it has to include more than one indicator.
OTT : Optimized Trend Tracker is developed by dear Anıl Özekşi, known as the "Old Fisherman" :). In my opinion, it is a pretty cool trend-following indicator that offers a mathematical elegance. This indicator aim to detect the current market trend direction, the indicator detect an up-trending market when the support line is superior to the OTT, and a down trending market when the support line is inferior to the OTT. It has three parameters; moving average type, length and percentage. In this version when the percentage parameter is set to 0.0, OTT turns into the selected moving average. And the signals are generated by the crossing of the closing price. It means, this screener is able to compile and present status of moving averages as well. Also VAR (VIDYA) and EVWMA has been re-designed, both moving averages no longer start at zero at the beginning of the chart (That was a big problem for backtests).
PSAR : J. Welles Wilder's Parabolic Stop And Reversal is an important trend following indicator. PSAR detects an up-trending market when below the market price and a down-trend when above. It can work in harmony with OTT according to the parameter combinations.
OSCILLATORS : Also optional three momentum oscillators have been added. MFI (Money Flow Index), RSI (Relative Strength Index) and STOCH (Stochastic %k). All three oscillators are widely used in markets and quite successful in explaining price movements by using different sources. Oscillators generate long and short signals based on oversold and overbought parameters.
VOLATILITY & TREND : There are three optional indicators. ADX (Average Directional Index), BBW-N (Normalized Bollinger Bandwidth) and REG-N (Normalized value of standard error of linear regression). These three indicators don't generate any long or short signals. Instead, they are used to measure the strength of trends and volatility. Therefore, only the numerical results (0-100) are displayed in screener panel and it is grey. (Note : The second length parameter of ADX has the same value with the first one. Bollinger Bandwith's multiplier is 2.0. REG-N is a variable that developed by Paul Kirshenbaum for Kirshenbaum Bands.)
SECTION 2 : "SCREENER"
The second section processes the main idea. This Screener model is based on generating an integer direction variable from boolean signals. The direction value serves multiple purposes: calculating the distance of signal, determining the color based on the direction, and creating "clean" data for the security function. The final step is to present the obtained data as text to the user.
HOW CAN I "SCREEN" MY CONDITIONS?
That's piece a cake, delete the Section 1 in the script :). If you change totally 11 variables according to your own strategy, you can create your new screener! The method is explained at lines 169-171.
SINCERELY THANKS
To allanster for patiently answering my primitive questions,
And to KivancOzbilgic for mind blowing suggestions (especially while we're drinking Raki) :)...
DISCLEIMER
This is just an indicator, nothing more. The script is for informational and educational purposes only. The use of the script does not constitute professional and/or financial advice. The responsibility for risks associated with the use of the script is solely owned by the user. Do not forget to manage your risk. And trade as safely as possible. Good luck!
Cleaner Screeners LibraryLibrary "cleanscreens"
Screener Panel.
This indicator displays a panel with a list of symbols and their indications.
It can be used as a screener for multiple timess and symbols
in any timeframe and with any indication in any combination.
#### Features
Multiple timeframes
Multiple symbols
Multiple indications per group
Vertical or horizontal layouts
Acceepts External Inputs
Customizable colors with 170 presets included (dark and light)
Customizable icons
Customizable text size and font
Customizable cell size width and height
Customizable frame width and border width
Customizable position
Customizable strong and weak values
Accepts any indicator as input
Only 4 functions to call, easy to use
#### Usage
Initialize the panel with _paneel = cleanscreens.init()
Add groupd with _screener = cleanscreens.Screener(_paneel, "Group Name")
Add indicators to screeener groups with cleanscreens.Indicator(_screener, "Indicator Name", _source)
Update the panel with cleanscreens.display(_paneel)
Thanks @ PineCoders , and the Group members for setting the bar high.
# local setup for methods on our script
import kaigouthro/cleanscreen/1
method Screener ( panel p, string _name) => cleanscreens.Screener ( p, _name)
method Indicator ( screener s , string _tf, string name, float val) => cleanscreens.Indicator ( s , _tf, name, val)
method display ( panel p ) => cleanscreens.display ( p )
init(_themein, loc)
# Panel init
> init a panel for all the screens
Parameters:
_themein (string) : string: Theme Preset Name
loc (int) : int :
1 = left top,
2 = middle top,
3 = right top,
4 = left middle,
5 = middle middle,
6 = right middle,
7 = left bottom,
8 = middle bottom,
9 = right bottom
Returns: panel
method Screener(p, _name)
# Screener - Create a new screener
### Example:
cleanscreens.new(panel, 'Crpyto Screeners')
Namespace types: panel
Parameters:
p (panel)
_name (string)
method Indicator(s, _tf, name, val)
# Indicator - Create a new Indicator
### Example:
cleanscreens.Inidcator('1h', 'RSI', ta.rsi(close, 14))
Namespace types: screener
Parameters:
s (screener)
_tf (string)
name (string)
val (float)
method display(p)
# Display - Display the Panel
### Example:
cleanscreens.display(panel)
Namespace types: panel
Parameters:
p (panel)
indication
single indication for a symbol screener
Fields:
name (series string)
icon (series string)
rating (series string)
value (series float)
col (series color)
tf (series string)
tooltip (series string)
normalized (series float)
init (series bool)
screener
single symbol screener
Fields:
ticker (series string)
icon (series string)
rating (series string)
value (series float)
bg (series color)
fg (series color)
items (indication )
init (series bool)
config
screener configuration
Fields:
strong (series float)
weak (series float)
theme (series string)
vert (series bool)
cellwidth (series float)
cellheight (series float)
textsize (series string)
font (series int)
framewidth (series int)
borders (series int)
position (series string)
icons
screener Icons
Fields:
buy (series string)
sell (series string)
strong (series string)
panel
screener panel object
Fields:
items (screener )
table (series table)
config (config)
theme (theme type from kaigouthro/theme_engine/1)
icons (icons)
Linear Regression & RSI Multi-Function Screener with Table-LabelHi fellow traders..
Happy to share a Linear Regression & RSI Multi-Function Custom Screener with Table-Labels...
The Screener scans for Linear Regression 2-SD Breakouts and RSI OB/OS levels for the coded tickers and gives Summary alerts
Uses Tables (dynamica resizing) for the scanner output instead of standard labels!
This Screener cum indicator collection has two distinct objectives..
1. Attempt re-entry into trending trades.
2. Attempt Counter trend trades using linear regression , RSI and Zigzag.
Briefly about the Screener functions..
a. It uses TABLES as Labels a FIRST for any Screener on TV.
b. Tables dynamically resize based on criteria..
c. Alerts for breakouts of the UPPER and the LOWER regression channels.(2 SD)
d. In addition to LinReg it also Screens RSI for OB/OS levels so a multifunction Screener.
e. Of course has the standard summary Alerts and programmable format for Custom functions.
f. Uses only the inbuilt Auto Fib and Lin Reg code for the screener.(No proprietary stuff)
g. The auto Zigzag code is derived(Auto fib).
Question what are all these doing in a single screener ??
ZigZag is very useful in determining Trend Up or Down from one Pivot to another.
So Once you have a firm view of the Current Trend for your chosen timeframe and ticker…
We can consider few possible trading scenarios..
a. Re-entry in an Up Trend - Combination of OS Rsi And a Lower Channel breach followed by a re-entry back into the regression channel CAN be used as an effective re-entry.
b. Similarily one can join a Down Trend on OB Rsi and Upper Channel line breach followed by re-entry into the regression channel.
If ZigZag signals a range-bound market, bound within channel lines then the Upper breakout can be used to Sell and vice-versa!
In short many possibilities for using these functions together with Scanner and Alerts.
This facilitates timely PROFITABLE Trending and Counter trend opportunities across multiple tickers.
You must give a thorough READ to the various available tutorials on ZigZag / Regression and Fib retracements before attempting counter trend trades using these tools!!
A small TIP – Markets are sideways or consolidating 70% of the time!!
Acknowledgements: - Thanks a lot DGTRD for the Auto ZigZag code and also for the eagerness to help wherever possible..Respect!!
Disclaimer: The Alerts and Screener are just few tools among many and not any kind of Buy/Sell recommendations. Unless you have sufficient trading experience please consult a Financial advisor before investing real money.
*The alerts are set for crossovers however for viewing tickers trading above or below the channel use code in line 343 and 344 after setting up the Alerts!
** RSI alerts are disabled by default to avoid clutter, but if needed one can activate code lines 441,442,444 and 445
Wish you all, Happy Profitable Trading!
Multi timeframes RSI Screener & indicator by noop42Since my previous x4 multi timeframes Stochastic RSI script seems to have been appreciated, I decided to make a 2nd version of this tool which focuses on the RSI indicator only.
Default parameters
RSI length : 14
Timeframes: 5, 15, 60, 240
OB/OS zones : 70 & 30
Repaint mode: enabled
Display lines: enabled
Display screener: enabled
Convergence warnings: timeframes 1, 2 & 3
Details
Repaint mode : Disabling it makes the indicator wait for the current candle to close before to change its value
Display lines: Allows you to disable RSI lines drawings, in order to move the screener on your main chart for example.
Display screener: Allows you to disable the screener, in order to use RSI lines only
OB/OS convergences warnings : Allows you to select which timeframe(s) must be taken into consideration for convergence signals (Selected timeframes can be distinguished in the screener, followed by a * char in the timeframes column)
Note The Stochastic RSI version of this tool is available here
Overbought / Oversold Screener## Introduction
**The Versatile RSI and Stochastic Multi-Symbol Screener**
**Unlock a wealth of trading opportunities with this customizable screener, designed to pinpoint potential overbought and oversold conditions across 17 symbols, with alert support!**
## Description
This screener is suitable for tracking multiple instruments continuously.
With the screener, you can see the instant RSI or Stochastic values of the instruments you are tracking, and easily catch the moments when they are overbought / oversold according to your settings.
The purpose of the screener is to facilitate the continuous tracking of multiple instruments. The user can track up to 17 different instruments in different time intervals. If they wish, they can set an alarm and learn overbought oversold according to the values they set for the time interval of the instruments they are tracking.**
Key Features:
Comprehensive Analysis:
Monitors RSI and Stochastic values for 17 symbols simultaneously.
Automatically includes the current chart's symbol for seamless integration.
Supports multiple timeframes to uncover trends across different time horizons.
Personalized Insights:
Adjust overbought and oversold thresholds to align with your trading strategy.
Sort results by symbol, RSI, or Stochastic values to prioritize your analysis.
Choose between Automatic, Dark, or Light mode for optimal viewing comfort.
Dynamic Visual Cues:
Instantly highlights oversold and overbought symbols based on threshold levels.
Timely Alerts:
Stay informed of potential trading opportunities with alerts for multiple oversold or overbought symbols.
## Settings
### Display
**Timeframe**
The screener displays the values according to the selected timeframe. The default timeframe is "Chart". For example, if the timeframe is set to "15m" here, the screener will show the RSI and stochastic values for the 15-minute chart.
** Theme **
This setting is for changing the theme of the screener. You can set the theme to "Automatic", "Dark", or "Light", with "Automatic" being the default value. When the "Automatic" theme is selected, the screener appearance will also be automatically updated when you enable or disable dark mode from the TradingView settings.
** Position **
This option is for setting the position of the table on the chart. The default setting is "middle right". The available options are (top, middle, bottom)-(left, center, right).
** Sort By **
This option is for changing the sorting order of the table. The default setting is "RSI Descending". The available options are (Symbol, RSI, Stoch)-(Ascending, Descending).
It is important to note that the overbought and oversold coloring of the symbols may also change when the sorting order is changed. If RSI is selected as the sorting order, the symbols will be colored according to the overbought and oversold threshold values specified for RSI. Similarly, if Stoch is selected as the sorting order, the symbols will be colored according to the overbought and oversold threshold values specified for Stoch.
From this perspective, you can also think of the sorting order as a change in the main indicator.
### RSI / Stochastic
This area is for selecting the parameters of the RSI and stochastic indicators. You can adjust the values for "length", "overbought", and "oversold" for both indicators according to your needs. The screener will perform all RSI and stochastic calculations according to these settings. All coloring in the table will also be according to the overbought and oversold values in these settings.
### Symbols
The symbols to be tracked in the table are selected from here. Up to 16 symbols can be selected from here. Since the symbol in the chart is automatically added to the table, there will always be at least 1 symbol in the table. Note that the symbol in the chart is shown in the table with "(C)". For example, if SPX is open in the chart, it is shown as SPX(C) in the table.
## Alerts
The screener is capable of notifying you with an alarm if multiple symbols are overbought or oversold according to the values you specify along with the desired timeframe. This way, you can instantly learn if multiple symbols are overbought or oversold with one alarm, saving you time.
Order Blocks Screener | Flux Charts💎 GENERAL OVERVIEW
Introducing our new Order Blocks Screener! This screener can provide information about the latest order blocks in up to 5 tickers. You can also customize the algorithm that finds the order blocks and the styling of the screener.
Features of the new Order Blocks Screener :
Find Latest Order Blocks Accross 5 Tickers
Latest Status, Restests, Bullish & Bearish Volume
Customizable Algoritm / Styling
📌 HOW DOES IT WORK ?
Order blocks occur when there is a high amount of market orders exist on a price range. It is possible to find order blocks using specific formations on the chart.
The high & low volume of order blocks should be taken into consideration while determining their strengths. The determination of the high & low volume of order blocks are similar to FVGs, in a bullish order block, the high volume is the last 2 bars' total volume, while the low volume is the oldest bar's volume. In a bearish order block scenerio, the low volume becomes the last 2 bars' total volume.
This screener then finds order blocks accross 5 different tickers, and shows the latest information about them.
Status ->
Far -> The current price is far away from the order block.
Approaching ⬆️/⬇️ -> The current price is approaching the order block, and the direction it's approaching from.
Inside -> The price is currently inside the order block.
Retests -> Retest means the price to invalidate the order block, but failed to do so. Here you can see how many times the price retested the order block.
For the bullish / bearish volume, check the "How Does It Work" section.
🚩UNIQUENESS
This screener can detect latest order blocks and give information about them for up to 5 tickers. This saves the user time by showing them all in a dashboard at the same time. The screener shows the number of the retests of the order block as an unique trait. Another unique ability of the screener is that it shows the latest valid order block's bullish and bearish volume in the dashboard.
⚙️SETTINGS
1. Tickers
You can set up to 5 tickers for the screener to scan order blocks here. You can also enable / disable them and set their individual timeframes.
2. General Configuration
Zone Invalidation -> Select between Wick & Close price for Order Block Invalidation.
Swing Length -> Swing length is used when finding order block formations. Smaller values will result in finding smaller order blocks.
QuantNomad - Simple Custom Screener in PineScriptQuite often I need to run screeners with the custom condition, but unfortunately, in TradingView it's impossible.
I created an example script to show how you can create a simple custom screener in Pine Script on your own.
It's not very good, it requires some manual adjustments, it can be improved in some ways, but I think it might work for some tasks.
What do you think? Do you have a better way to implement custom screeners in TradingView?
To run your own conditions you need to implement them in:
customFunc() function and for every ticker you want to include in your search add 2 lines like these with newly defined variable:
s1 = security('BTCUSD', '1', customFunc())
and
scr_label := s1 ? scr_label + 'BTCUSD\n' : scr_label
I'm not sure that it will work well for more than a few dozen tickers.
But I hope it will be helpful for you.
And remember:
Past performance does not guarantee future results.
Market Structures Screener | Flux Charts💎 GENERAL OVERVIEW
Introducing our new Market Structures Screener! This screener can provide information about the latest market structures in up to 5 tickers. You can also customize the styling of the screener.
Features of the new Market Structures Screener :
Find Latest Market Structures Across 5 Tickers
Break Of Structure (BOS)
Change of Character (CHoCH)
Change of Character+ (CHoCH+)
Customizable Algoritm / Styling
📌 HOW DOES IT WORK ?
Sometimes specific market structures form and break as the market fills buy & sell orders. Formed Change of Character (CHoCH) and Break of Structure (BOS) often mean that market will change direction, and they can be spotted by inspecting low & high pivot points of the chart.
This screener then finds market structures across 5 different tickers, and shows the latest information about them.
🚩UNIQUENESS
Formed market structures can be strong hints about the current direction and the state of the market, and our screener has the ability to detect Change Of Character structures of the market with higher sensitivity (CHoCH+), so you will miss less hints. This screener will then show the elapsed time of the found BOS, CHoCH and CHoCH+ structures.
⚙️SETTINGS
1. Tickers
You can set up to 5 tickers for the screener to scan market structures here. You can also enable / disable them and set their individual timeframes.
Liquidity Grab Screener | Flux Charts💎 GENERAL OVERVIEW
Introducing our new Liquidity Grab Screener! This screener can provide information about the latest liquidity grabs in up to 5 tickers. You can also customize the algorithm that finds the liquidity grabs and the styling of the screener.
Features of the new Liquidity Grab Screener :
Find Latest Liquidity Grabs Accross 5 Tickers
Price, Size, Status Information
Customizable Algoritm / Styling
📌 HOW DOES IT WORK ?
Liquidity grabs occur when one of the latest pivots has a false breakout. Then, if the wick to body ratio of the bar is higher than 0.5 (can be changed from the settings) a bubble is plotted.
The bubble size is determined by the wick to body ratio of the candle.
This screener then finds liquidity grabs accross 5 different tickers, and shows the latest information about them.
Price -> The price when the liquidity grab happened.
Size -> Size of the liquidity grab, determined by the wick-body ratio.
Status -> Shows the elapsed time of the liquidity grab.
🚩UNIQUENESS
Liquidity grabs can be useful when determining candles that have executed a lot of market orders, and planning your trades accordingly. This screener will find liquidity grabs from up to 5 tickers and give information about their price, size and status. The screener also lets you customize the pivot length and the wick-body ratio for liquidity grabs.
⚙️SETTINGS
1. Tickers
You can set up to 5 tickers for the screener to scan order blocks here. You can also enable / disable them and set their individual timeframes.
2. General Configuration
Pivot Length -> This setting determines the range of the pivots. This means a candle has to have the highest / lowest wick of the previous X bars and the next X bars to become a high / low pivot.
Wick-Body Ratio -> After a pivot has a false breakout, the wick-body ratio of the latest candle is tested. The resulting ratio must be higher than this setting for it to be considered as a liquidity grab.
Fair Value Gap Screener | Flux Charts💎 GENERAL OVERVIEW
Introducing our new Fair Value Gap Screener! This screener can provide information about the latest Fair Value Gaps in up to 5 tickers. You can also customize the algorithm that finds the Fair Value Gaps and the styling of the screener.
Features of the new Fair Value Gap (FVG) Screener :
Find Latest Fair Value Gaps Accross 5 Tickers
Shows Their Information Of :
Latest Status
Number Of Retests
Consumption Percent
Bullish & Bearish Volume
Customizable Algoritm / Styling
📌 HOW DOES IT WORK ?
A Fair Value Gap generally occur when there is an imbalance in the market. They can be detected by specific formations within the chart. This screener then finds Fair Value Gaps accross 5 different tickers, and shows the latest information about them.
Status ->
Far -> The current price is far away from the FVG.
Approaching ⬆️/⬇️ -> The current price is approaching the FVG, and the direction it's approaching from.
Inside -> The price is currently inside the FVG.
Retests -> Retest means the price tried to invalidate the FVG, but failed to do so. Here you can see how many times the price retested the FVG.
Consumed -> FVGs get consumed when a Close / Wick enters the FVG zone. For example, if the price hits the middle of the FVG zone, the zone is considered 50% consumed.
Bullish / Bearish Volume -> Bullish & Bearish volume of a FVG is calculated by analyzing the bars that formed it. For example in a bullish FVG, the bullish volume is the total volume of the first 2 bars forming the FVG, and the bearish volume is the volume of the 3rd bar that forms it.
🚩UNIQUENESS
This screener can detect latest Fair Value Gaps and give information about them for up to 5 tickers. This saves the user time by showing them all in a dashboard at the same time. The screener also uniquely shows information about the number of retests and the consumed percent of the FVG, as well as it's bullish & bearish volume. We believe that this extra information will help you spot reliable FVGs easier.
⚙️SETTINGS
1. Tickers
You can set up to 5 tickers for the screener to scan Fair Value Gaps here. You can also enable / disable them and set their individual timeframes.
2. General Configuration
Zone Invalidation -> Select between Wick & Close price for FVG Zone Invalidation.
Zone Filtering -> With "Average Range" selected, algorithm will find FVG zones in comparison with average range of last bars in the chart. With the "Volume Threshold" option, you may select a Volume Threshold % to spot FVGs with a larger total volume than average.
FVG Detection -> With the "Same Type" option, all 3 bars that formed the FVG should be the same type. (Bullish / Bearish). If the "All" option is selected, bar types may vary between Bullish / Bearish.
Detection Sensitivity -> You may select between Low, Normal or High FVG detection sensitivity. This will essentially determine the size of the spotted FVGs, with lower sensitivies resulting in spotting bigger FVGs, and higher sensitivies resulting in spotting all sizes of FVGs.
Custom Screener with Alerts [QuantNomad]Some time ago I published an example of simple custom screener in PineScript:
The only thing this screener did is created a dynamic label with screener output.
Recently TradingView announced alerts from the strategy with the possibility to add custom messages to alerts.
So using it I was able to create a bit more advanced screener which sends results as alert messages. With tools like Alertatron, you can easily redirect them to Telegram if you want.
It works for 40 symbols (limitation of the number of security calls).
To create your own screener you need to change only screenerFunc. The logic of this function is very simple, it outputs value you want to display in screener and condition based on which your screener should filter your stocks.
To create alerts for this screener create an alert from strategy and use {{strategy.order.alert_message}} as alert message.
Do you know now how to make this screener better? Let me know.
Disclaimer
Please remember that past performance may not be indicative of future results.
Due to various factors, including changing market conditions, the strategy may no longer perform as good as in historical backtesting.
This post and the script don’t provide any financial advice.