Trendoscope

How to create fully customisable alerts in pinescript

教育
BINANCE:BTCUSDT   Bitcoin / TetherUS
Hi All,

As discussed in the video, below are the steps to define fully customisable alert templates and alerts in pine script. This is a generic idea which can be implemented for any script.

Step 1. What all parameters(keys) need to be sent in alerts.
Step 2. Create a default alert template
Step 3. Create a user input where users can alter the default alert template
Step 4. Define your alert condition.
Step 5. Calculate the values for all the keys
Step 6. In the template, replace all keys with values and send alert

Sample script developed during the video.

//@version=5
indicator("Fully Customizable Alerts", overlay=true)
import HeWhoMustNotBeNamed/RecursiveAlerts/2 as ra

//Step 1. What all parameters(keys) need to be sent in alerts.
keys = array.from("{entry}", "{stop}", "{target1}", "{target2}")

//Step 2. Create a default alert template
template = '{\n
         \t"entry" : {entry},\n
         \t"stop" : {stop},\n
         \t"target1" : {target1},\n
         \t"target2" : {target2}\n
     }'

//Step 3. Create a user input where users can alter the default alert template
inputTemplate = input.text_area(template, 'Alert Template')

//Step 4. Define your alert condition.
ma = ta.sma(close, 20)
condition = ta.crossover(close, ma)
atr = ta.atr(14)

if(condition)
//Step 5. Calculate the values for all the keys
    entry = high + atr
    stop = low - atr
    risk = entry - stop
    target1 = entry + risk
    target2 = entry + 2*risk

//Step 6. In the template, replace all keys with values and send alert
    values = array.from(str .tostring(entry), str .tostring(stop), str .tostring(target1), str .tostring(target2))
    alertMessage = ra.updateAlertTemplate(inputTemplate, keys, values)
    alert(alertMessage, alert.freq_once_per_bar)


plot(ma, "Moving Average")

免責聲明

這些資訊和出版物並不意味著也不構成TradingView提供或認可的金融、投資、交易或其他類型的意見或建議。請在使用條款閱讀更多資訊。