,שעובדת באסטרטגיות ובמחקרים`alert()` התראות הסקריפט החדשות שלנו משתמשות בפונקציה
.ומאפשרת ליצור הודעה דינמית לחלוטין כאשר ההתראה מופעלת
ההתראות החדשות פועלות תוך שימוש במודל הדומה להתראות האסטרטגיה האחרונות, כאשר רק התראה
אחת שנוצרה בממשק המשתמש של הגרף יכולה לצבור את כל הטריגרים שנוצרו על ידי מספר כלשהו של
.בסקריפט באותו אופן שבו התראה על אסטרטגיה יחידה תצבור את כל גורמי האירוע מהברוקרים,`alert()`
:כדי ליצור את ההתראות החדשות
המגדיר את התנאים`if`בסקריפט שלך כרצונך, וסגור כל אחת מהן בבלוק `alert()` א. כלול כמה קריאות
.המפעילים
ב. צור התראה אחת עבור הסקריפט באמצעות תיבת הדו-שיח “צור התראה” בגרף ובחר סוג התראה כולל
.“alert() function call”
,`alert()` כאשר משתמשים בהם באסטרטגיות, משתמשים יכולים לבחור ליצור התראות המופעלות רק באירועי
באירועי מילוי פקודות או בשניהם. כדאי לזכור כי אין הגבלה על מספר המשתנים בהם ניתן להשתמש בהודעת
ההתראה הדינמית וכי אין צורך במצבי פוזיציה, מכיוון שכל משתנה המשמש בסקריפט יכול לשמש גם בפונקציה
.כל עוד זה בפורמט מחרוזת`alert()` החדשה קריאות
:`alert()`להלן שלוש דוגמאות לפונקציה
:א. התראת הסקריפט מופעלת בכל בר, וההודעה מכילה את מחיר הסגירה של הבר
//@version=4 study("Simple alert() example") plot(close) alert("Close = " + tostring(close), alert.freq_once_per_bar_close)
:RSI, SMA ו- Momentum ב. בדקים הערכים של שלושה אינדיקטורים
התראת הסקריפט תופעל אם אחד מהאינדיקטורים חוצה רמה (או מחיר) מסוים, וההודעה תכיל את שם
.האינדיקטור ואת הערך הנוכחי שלו
//@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()
אחד אך על חמישה סימולים בו זמנית התראת הסקריפט RSI ג. בדוגמה זו נבדקים הערכים של אינדיקטור
חוצה רמה מסוימת עבור אחד מהסימולים וההודעה תכיל את הסימול ואת ערך האינדיקטור RSI תופעל אם
.ברגע המעבר
//@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")
.פקודות למניעת ביצוע של צד שלישי
משתמשי סקריפט יכולים ללמוד עוד על יצירת התראות במרכז התמיכה
קודני פיין יכולים לקרוא על ההתראות החדשות במדריך למשתמש של הפיין ובמדריך
.קרא על כל העדכונים של פיין בהערות של מדריך למשתמש שלנו