Pemberitahuan Baru Kami Membenarkan Mesej Dinamik

Jan 25, 2021

Pemberitahuan skrip baru kami menggunakan fungsi `alert()`yang dapat digunakan dalam strategi dan kajian , dan membenarkan mesej dinamik penuh dijana apabila pemberitahuan tercetus. 

Pemberitahuan baru ini berfungsi seperti pemberitahuan strategi yang dikeluarkan baru-baru ini, di mana pemberitahuan yang dicipta dalam antaramuka carta yang mengumpulkan semua pencetusan yang dijana oleh panggilan `alert()` dalam skrip, sama seperti sebuah strategi tunggal mengumpulkan semua pencetusan peristiwa broker.

Untuk menciptakan pemberitahuan baru:

  1. Masukkan sebanyak mana panggilan `alert()` dalam skrip anda ,kemudian masukkan setiap satu dalam blok ‘if’ dengan menentukan syarat-syarat pencetusan.
  2. Mencipta sebuah pemberitahuan untuk skrip menggunakan kotak dialog “Mencipta Pemberitahuan” dan pilih jenis pemberitahuan termasuk “alert() function call”.

Semasa digunakan dalam strategi, para pengguna boleh memilih untuk mencipta pemberitahuan yang akan tercetus berdasarkan peristiwa `alert()`, apabila pesanan dibuat atau kedua-duanya. Tiada had kepada berapa bilangan pembolehubah yang boleh digunakan dalam mesej pemberitahuan dinamik dan ‘placeholders’ tidak diperlukan lagi kerana sebarang pemboleh digunakan dalam skrip juga boleh digunakan dalam panggilan fungsi ‘alert()’ selagi ia dalam format rentetan.

Berikut merupakan tiga contoh fungsi ‘alert()’:

1) Pemberitahuan skrip tercetus pada setiap bar dan mesej mengandungi harga tutup bar:

//@version=4
study("Simple alert() example")
plot(close)
alert("Close = " + tostring(close), alert.freq_once_per_bar_close)

2) Nilai-nilai penunjuk disemak: RSI, SMA and Momentum. Pemberithaun skrip akan tercetus apabila mana-mana penunjuk merentasi aras tertentu(atau harga) dan mesej akan mengandungi nama penunjuk dan nilai semasa.

//@version=4
study("alert() with multiple indicators", overlay=true)
f_triggerSma()=>
    _s  = sma(close, 14)
    _co = crossover(close, _s)
    _cu = crossunder(close, _s)
    if _co
        alert("Price (" + tostring(close) + ") crossing up SMA (" + tostring(_s) + ")", alert.freq_once_per_bar)
    else if _cu
        alert("Price (" + tostring(close) + ") crossing down SMA (" + tostring(_s) + ")", alert.freq_once_per_bar)
f_triggerRsi()=>
    _r  = rsi(close, 7)
    _co = crossover(_r, 70)
    _cu = crossunder(_r, 30)
    if _co
        alert("RSI (" + tostring(_r) + ") crossing up 70 level", alert.freq_once_per_bar)
    else if _cu
        alert("RSI (" + tostring(_r) + ") crossing down 30 level", alert.freq_once_per_bar)
f_triggerMom()=>
    _m  = mom(close, 14)
    _co = crossover(_m, 0)
    _cu = crossunder(_m, 0)
    if _co
        alert("Momentum (" + tostring(_m) + ")  crossing up 0 level", alert.freq_once_per_bar)
    else if _cu
        alert("Momentum (" + tostring(_m) + ")  crossing down 0 level", alert.freq_once_per_bar)

plot(sma(close, 14), "SMA")
f_triggerSma()
f_triggerRsi()
f_triggerMom()

3) Dalam contoh ini, nilai penunjuk RSI disemak serentak untuk lima simbol. Pemberitahuan skrip akan dicetuskan jika RSI merentasi aras yang tertentu untuk mana-mana simbol dan mesej akan mengandungi nilai simbol dan penunjuk.

//@version=4
study("alert() with multiple symbols")
f_triggerRsi(_ticker)=>
    _r = rsi(close, 7)
    _x = crossover(_r,70)
    _y = crossunder(_r,30)
    _rt = barstate.isrealtime
    [_rsi, _co, _cu, _rt_bar] = security(_ticker, timeframe.period, [_r, _x, _y, _rt])
    _msg = _ticker + ", " + timeframe.period + ": "
    if _co and _rt_bar
        _msg := _msg + "RSI (" + tostring(_rsi) + ") crossing up 70 level"
        alert(_msg,  alert.freq_once_per_bar_close)
    else if _cu and _rt_bar
        _msg := _msg + "RSI (" + tostring(_rsi) + ")  crossing down 30 level"
        alert(_msg,  alert.freq_once_per_bar_close)

plot(rsi(close, 7), "RSI", color=#8E1599)
band1 = hline(70, "Upper Band", color=#C0C0C0)
band0 = hline(30, "Lower Band", color=#C0C0C0)
fill(band1, band0, color=color.new(#9915FF,90), title="Background")

f_triggerRsi(syminfo.tickerid)
f_triggerRsi("NASDAQ:MSFT")
f_triggerRsi("FX:EURUSD")
f_triggerRsi("NASDAQ:TSLA")
f_triggerRsi("NASDAQ:PYPL")

Pengguna skrip boleh belajar lebih lanjut tentang cara mencipta pemberitahuan dalam Pusat Bantuan.Pengekod Pine boleh membaca pemberitahuan baru ini dalam Manual Pengguna Pine dan Manual Rujukan.

Baca semua kemas kini untuk Pine dalam Nota Pelepasan Manual Pengguna

Look first Then leap

TradingView dibina untuk anda, pastikan anda memanfaatkan semua ciri-ciri hebat kami
Lancarkan Carta