כל התראה שולחת הודעה אחת לכל יעד שסימנתם. מעצמה, ההודעה מציינת מה קרה, מה היה המחיר באותו רגע והאם ההתראה נשארת פעילה. הוסיפו הערה על תוכנית המסחר שלכם כדי לראות מה תכננתם עוד לפני שתפתחו את הגרף. הגדרת ההתראה ונוסח ההודעה שלה היא פשוטה, מהירה ומדויקת. הקלידו את הנוסח בעורך, או אמרו או בקשו מכלי AI Trading Assistant בקול או בכתב.
אם אתם משתמשים בתוכנה משלכם, ב-Discord או ב-Slack, שימוש ב-webhook שולח כל התראה גם לשם, בלי להעתיק דבר ידנית. המדריך הזה מסביר את שתי האפשרויות.
הדוגמה: התראה על EURUSD שמופעלת כשהמחיר חוצה מעל 1.09 בגרף 5m.
מה מופיע בנוסח ההודעה האוטומטי
כשהשדה Message ריק, ההתראה כותבת בעצמה את נוסח ההודעה כשהיא מופעלת. בדוגמה שלנו, ההודעה נראית כך:
EURUSD crossed above 1.09
Price 1.0901.
This alert is now off. It was set to fire once.
השורה הראשונה מציינת מה קרה, בניסוח של עורך ההתראות. השורה הבאה מציגה את המספרים של אותו רגע. השורה האחרונה מציינת אם ההתראה נשארת פעילה. הדוגמה משתמשת במצב Once only, ולכן ההתראה כבויה כעת. בשאר אפשרויות ההפעלה (Trigger), השורה האחרונה מציגה "This alert stays on."
התראות אחרות בנויות באותו סדר. הנה כמה שורות ראשונות, ולצד כל אחת שורת המספרים שמופיעה מתחתיה:
קו: "GBPJPY touched 1h Resistance R1" ומתחתיו "Price 210.16, line at 210.20."
פריצה של קו: "GBPJPY broke above 1h Resistance R1" ומתחתיו "The 1h candle closed at 210.32, above the line at 210.20."
אינדיקטור: "BTCUSD: 1h RSI(14) crossed above 70" ומתחתיו "RSI(14) was 71.4 when the 1h candle closed at 105240.50."
שינוי תחזית: "GBPJPY: 1h forecast turned bearish" ומתחתיו "Before: bullish above 209.80. Now: bearish below 209.40."
התראה עם כמה תנאים מציינת כמה תנאים התקיימו, ואז מציגה שורה אחת עבור כל תנאי שהתקיים:
BTCUSD: both conditions met
• Price crossed above 105000: the 1h candle closed at 105240.50
• 1h RSI(14) is above 55 (now 58.2)
This alert stays on.
כשיש יותר תנאים, השורה הראשונה תציג למשל "all 3 conditions met" או "2 of 3 conditions met". כשרק תנאי אחד מתקיים, למשל עם מילת החיבור or, השורה הראשונה מציינת את אותו תנאי ואחריה מופיעים המספרים שלו.
כתיבת נוסח ההודעה
פתחו את עורך ההתראות ועברו ללשונית Options.
לחצו על השורה Message. כל עוד היא ריקה מופיע בה הכיתוב Auto, ומתחתיה נפתח שדה טקסט.
הקלידו את נוסח ההודעה שלכם. השדה מכיל עד 400 תווים.
כדי להוסיף ערך חי, פתחו את הרשימה Available variables שמתחת לשדה. העתיקו את המשתנה בדיוק כפי שהוא מופיע, כולל הסוגריים המסולסלים הכפולים.

השדה Automatic message: השדה הריק. הקלידו כאן מילים משלכם, או השאירו אותו ריק.
השורה שמתחת לשדה: "Leave it blank and the alert says what happened and at what price. A message of your own is sent first, with that under it." (אם תשאירו אותו ריק, ההתראה תציין מה קרה ובאיזה מחיר; הודעה משלכם נשלחת ראשונה, והמידע הזה מופיע מתחתיה).
הרשימה Available variables: הערכים החיים שתוכלו להוסיף לנוסח ההודעה שלכם.
המילים שלכם הופכות לשורה הראשונה, והטקסט האוטומטי מופיע אחריהן. בדוגמה שלנו, ההודעה הזו:
{{symbol}} on {{timeframe}}: check the 1h trend before entering.
מגיעה כך:
EURUSD on 5m: check the 1h trend before entering.
EURUSD crossed above 1.09. Price 1.0901.
This alert is now off. It was set to fire once.
המחיר והתנאי כבר מופיעים בשורות שמתחת למילים שלכם. השתמשו בנוסח ההודעה שלכם למה שהשורות האלה אינן מציינות, כמו תוכנית המסחר שלכם.
נוסח ההודעה שאתם מקלידים משמש גם כשם ההתראה ברשימת ההתראות. ללא נוסח כזה, הרשימה מציגה שם שנבנה מתוך התנאי. עבור רמת מחיר השם קצר, למשל "EURUSD crossing up 1.09". עבור קו או כמה תנאים השם מופיע כפי שהעורך מנסח אותו, למשל "GBPJPY: 1h Price touches 1h Resistance R1". כשמשנים את התנאי, השם הזה משתנה יחד איתו. כשפותחים שוב את ההתראה, השדה Message עדיין ריק. גם התראות ששמרתם בעבר ללא נוסח הודעה מציגות את שמן בצורה הזו.
מה מציג כל יעד
כל יעד מקבל את אותה הודעה, מותאמת לתצוגה שלו:
| יעד | מה מוצג בו |
|---|---|
| ההתראה בתוך האפליקציה | השורה הראשונה בהדגשה, והמספרים מתחתיה. |
| האפשרות Notify my devices | השורה הראשונה ככותרת, ושאר השורות מתחתיה. |
| האפשרות Send to MetaTrader | השורה הראשונה ככותרת, ושאר השורות מתחתיה. פלטפורמת MetaTrader מציגה את השעה שלה לצד ההודעה. |
| האפשרות Telegram | נוסח ההודעה, השעה באזור הזמן שלכם וקישור לגרף. |
| האפשרות Send email | נוסח ההודעה, יחד עם התאריך והשעה באזור הזמן שלכם. |
| האפשרות Webhook URL | השירותים Discord ו-Slack מקבלים את ההודעה עם השעה ב-UTC. במצב Raw JSON, התוכנה שלכם מקבלת את המשתנים שלהלן. |
אפליקציית Telegram רושמת את השעה כך: "24 Sep, 11:02 London time". אם אזור הזמן שגוי, בחרו את אזור הזמן שלכם תחת ההגדרה Timezone בעמוד Your profile. כאשר ForecastCity אינה יודעת מהו אזור הזמן שלכם, השעה מוצגת ב-UTC.
הקישור בהודעת Telegram, באימייל, בהתראה לטלפון או בחלון קופץ ב-MetaTrader פותח את הגרף של אותו סימול יחד עם פאנל ההתראות. ברוב התראות 4CM-AI, הוא פותח את הגרף עם התצוגה Alert observation של אותה הפעלה.
הוספת ערכים חיים באמצעות משתנים
משתנה מוחלף בערך שלו כשההתראה מופעלת. אלה המשתנים שברשימה Available variables:
| משתנה | מה הוא כותב | דוגמה |
|---|---|---|
{{symbol}} |
הסימול | EURUSD |
{{price}} ו-{{close}} |
המחיר ברגע שההתראה הופעלה | 1.0901 |
{{condition_text}} |
מה קרה, ללא הסימול | Price crossed above 1.09 |
{{condition}} |
התנאי כקוד קצר | CROSSING_UP 1.09 |
{{timeframe}} |
מסגרת הזמן של ההתראה | 5m |
{{time_iso}} |
התאריך והשעה, ב-UTC | 2026-09-24 10:02 UTC |
{{time}} |
אותה שעה כמספר שניות, עבור תוכנה | 1790244120 |
{{time_now}} |
רגע שליחת ההודעה, כמספר | 1790244121 |
{{exchange}} |
מקור נתוני המחירים | TwelveData |
{{status}} |
האם ההתראה נשארת פעילה | This alert stays on. |
{{alert_url}} |
קישור לגרף של אותו סימול, עם ההתראות שלכם | כתובת אינטרנט |
{{name}} |
נוסח ההודעה שלכם לאחר החלפת כל משתנה בערכו, או השם שמוצג ברשימת ההתראות | EURUSD crossing up 1.09 |
עבור קו, המשתנה {{condition_text}} נראה כמו "Price touched 1h Resistance R1". כשיש כמה תנאים, הוא מחבר את התנאים שהתקיימו במילה and. לאחר שהתראה במצב Once only מופעלת, המשתנה {{status}} מציג "This alert is now off. It was set to fire once." עבור התראה עם כמה תנאים, קו או אינדיקטור, המשתנה {{condition}} מציג TREE. המשתנה הזה הוא קוד המיועד לתוכנה.
עבור התראות 4CM-AI, המשתנה {{forecast_summary}} מסכם מה עשתה התחזית והמשתנה {{forecast_symbol}} מציין את הסימול של התחזית. המשתנה {{forecast_cycle}} הוא מונה שעולה בכל פעם שההתראה מתחילה לעקוב מחדש. הודעה שמכילה את {{forecast_summary}} אינה מקבלת שורות אוטומטיות מתחתיה, משום שהסיכום כבר מציין מה קרה.
המשתנים {{price}} ו-{{close}} נשארים ריקים ברוב התראות 4CM-AI, משום שאין להן מחיר יחיד. המשתנה {{time_iso}} משתמש ב-UTC, ולכן הוא עשוי להיות שונה מהשעון שעל המסך שלכם. משתנה שאינו קיים נשאר בדיוק כפי שהקלדתם אותו: משתנה עם שגיאת כתיב כמו {{prices}} יגיע בתור {{prices}}.
שליחת התראות ל-webhook
שימוש ב-webhook שולח כל התראה לכתובת אינטרנט, שבה התוכנה שלכם, ערוץ Discord או ערוץ Slack מקבלים אותה. תוכנית המינוי שלכם חייבת לכלול webhooks.
בלשונית Options, תחת Notifications, סמנו את האפשרות Webhook URL. יופיעו שדה כתובת, בחירת Format ושדה עבור גוף הבקשה.
הדביקו את הכתובת שבה המקבל שלכם מאזין. היא חייבת להתחיל ב-
http://או ב-https://.קבעו את ההגדרה Format למצב Raw JSON והשאירו את שדה גוף הבקשה ריק.
לחצו על הלחצן Create, או על הלחצן Save עבור התראה שערכתם.

הכתובת שבה המקבל שלכם מאזין. השתמשו בפורטים הסטנדרטיים, 80 או 443.
ההגדרה Format: בחרו Raw JSON עבור תוכנה משלכם, או Discord או Slack עבור השירותים האלה.
כששדה גוף הבקשה ריק, המקבל שלכם מקבל אובייקט JSON עם כל המשתנים מהטבלה, ובנוסף את alertId ואת triggerId. שני אלה מזהים את ההתראה ואת ההפעלה המסוימת הזו. בדקו שליחה אמיתית אחת לפני שתבנו מערכת שמסתמכת על השדות שלה.
מתחת לשדה, העורך מציג את כתובת השרת שממנה יוצאות הבקשות שלנו. הוסיפו אותה לרשימת ההיתר (allowlist) שלכם אם המקבל שלכם מאשר רק כתובות מוכרות.
דרישות הכתובת
כתובת ציבורית בפורט סטנדרטי: 80 עבור http, או 443 עבור https. הודעות לפורטים אחרים, ל-localhost או לכתובת ברשת פרטית אינן נשלחות.
ללא שם משתמש או סיסמה בתוך הכתובת.
מענה תוך 3 שניות מאותה כתובת עצמה. הפניה (redirect) לכתובת אחרת נחשבת לכישלון.
העורך בודק רק שהכתובת מתחילה ב-http:// או ב-https://. שאר הדרישות נבדקות כשיוצאת הודעה, ולכן כדאי לבדוק את הכתובת באמצעות התראה אמיתית. בהתראות מחיר ובהתראות טכניות, אם אצל המקבל שלכם מתרחשת שגיאה זמנית, המערכת מנסה לשלוח את ההודעה עד פעמיים נוספות. הודעה של התראת 4CM-AI אינה נשלחת שוב לאחר חריגה מזמן ההמתנה או שגיאת שרת, משום שהמקבל שלכם אולי כבר פעל לפיה.
כתיבת גוף בקשת webhook משלכם
שדה גוף הבקשה מקבל תבנית עם אותם משתנים כמו נוסח ההודעה. הוא יכול להכיל עד 2000 תווים. השדה מאפשר להקליד יותר, אך גוף בקשה ארוך יותר יידחה בעת השמירה.
במצב Raw JSON, מקבל שמצפה לאובייקט קטן יכול לקבל גוף בקשה כזה:
{"symbol":"{{symbol}}","condition":"{{condition_text}}","time":"{{time_iso}}","source":"ForecastCity"}
המשתנים ממולאים כטקסט רגיל. ערך שמכיל מירכאות או ירידת שורה עלול לשבור את מבנה ה-JSON שלכם. גוף בקשה שאינו JSON תקין נשלח כטקסט רגיל.
עבור ערוץ Discord, קבעו את ההגדרה Format לאפשרות Discord והשתמשו בכתובת ה-webhook של הערוץ. לאחר מכן כתבו שורה קצרה בשדה גוף הבקשה, למשל:
{{symbol}}: {{condition_text}}. Open your alerts: {{alert_url}}
עבור Slack, בחרו באפשרות Slack וכתבו באותו אופן. המערכת של ForecastCity עוטפת את הטקסט שלכם במבנה שכל שירות מצפה לקבל. כשהשדה ריק, שני השירותים מקבלים את נוסח ההודעה של ההתראה כפי שהוצג למעלה, עם השעה ב-UTC בשורה האחרונה.
בדיקת התוצאה
המתינו שההתראה תופעל, ואז פתחו את הלשונית Log בפאנל ההתראות.
השוו את מה שהמקבל שלכם קיבל מול הרשומה ביומן ההפעלות: מה קרה, הסימול והשעה.
יומן ההפעלות מראה שההתראה הופעלה. הוא אינו מראה אם המקבל שלכם אישר את ההודעה, ולכן בדקו גם את היומן של המקבל עצמו. אם אתם רואים סוגריים מסולסלים כמו {{prices}}, יש שגיאת כתיב בשם המשתנה. אם המקבל שלכם דוחה את גוף הבקשה, בדקו את תקינות ה-JSON.
כדאי לדעת
נוסח ההודעה נשלח לכל יעד שסימנתם. גוף בקשת ה-webhook נשלח רק אל ה-webhook.
בשירות Discord מוצגים עד 1900 תווים וב-Slack עד 3000 תווים. טקסט ארוך יותר נחתך.