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.

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.
發布通知: Updated the code for daily timeframe.


PineScript Programming: https://qntly.com/pineprog
TradingView Essen: https://qntly.com/tve

Access to Pro Indic.: https://qntly.com/proind

YouTube: https://qntly.com/youtube
Discord: https://qntly.com/discord
Telegram: https://qntly.com/tel


Hi QuantNomad,
Sir i want to know, how can i add a condition instead of RSI > 70,
the Condition which i want to add is blow:

Buy signal alert when "Moving average 21 crossover 28 Moving average". (in daily time frame)
sell signal alert when " crossunder (close,28 Moving average) ". (in daily time frame)
+28 回覆
pitlordinvesting mohammadamjad48
@mohammadamjad48, code is simple my friend
+15 回覆
misterstealyourgirl pitlordinvesting
@pitlordinvesting, that's not particularly helpful
+3 回覆
According to this script, can you explain for it?

scr_label := c01 ? scr_label + s01 + ' ' + tostring(roundn(v01, 3)) + '\n' : scr_label

because i just found a way to insert more selection of stock.i am going to modify your scipt due to too many local scope.
+17 回覆
Hi, i received only alerts from the symbol on the chart, from the other 39 symbols nothing! Whats going wrong? Thanks
+9 回覆
I tried designing a screener with the above code.

I am calling a function using the following:

= security("NSE:NIFTY", timeframe.period, funct())
I am getting an error " Expression argument of security function should have no side effects"

However it works with = funct()

How to resolve this?
+5 回覆
when I am adding the following function its giving me this error Add to Chart operation failed, reason: line 46: expr type (series__float) do not matches array of ids:

// Screener Function
screenerFunc() =>
ema30 = ema(close, 30) // Value
cond = crossover(ema30, close) // Condition

please help me..
+2 回覆
Hi! Thanks for this great script. Really saves me a lot of time. I only have one problem. The strategy does not send alerts on the daily timeframe. It works on lower time frames like 1H. Do you have an idea how this could be solved?
+2 回覆
@CMToni, Don't see how that can be possible since the script includes "timeframe.period" which sets the time period based on the main chart...?
@CMToni, I updated the code for daily timeframe, check now