ForecastCity Yardım

Kendi alarm mesajınızı yazma ve webhook kullanma

9 dk okuma

Paylaş ve kazan

Bu makaleyi arkadaşlarınıza veya sosyal medyadaki takipçilerinize önerin. Aşağıdaki bağlantıyı kopyalayıp paylaşmanız yeterli. Birisi bağlantınıza tıklayıp abone olduğunda hem o hem de siz ödül kazanırsınız.

Bağlantınız hazırlanıyor…

Referans programı ayrıntıları
ForecastCity · Alarmlar rehberi

Her alarm, işaretlediğiniz her yere tek bir mesaj gönderir. Bu mesaj tek başına ne olduğunu, o anki fiyatı ve alarmın çalışmaya devam edip etmediğini söyler. Grafiği açmadan önce ne planladığınızı görmek için işlem planınızla ilgili bir not ekleyin. Alarmınızı ve mesajını ayarlamak basit, hızlı ve doğrudur. Mesajı editörde yazın ya da AI Trading Assistant'a sesli veya yazılı olarak söyleyin ya da sorun.

Kendi yazılımınızı, Discord'u veya Slack'i kullanıyorsanız bir webhook her alarmı oraya da gönderir. Elle hiçbir şey kopyalamanız gerekmez. Bu rehber ikisini de anlatır.

Örnek: 5m grafiğinde fiyat 1.09 seviyesini yukarı kestiğinde tetiklenen bir EURUSD alarmı.

Otomatik mesajın içeriği

Message alanı boşken alarm, tetiklendiğinde mesajını kendisi yazar. Örnekte mesaj şöyledir:

EURUSD crossed above 1.09
Price 1.0901.
This alert is now off. It was set to fire once.

İlk satır, alarm editörünün sözcükleriyle ne olduğunu söyler. Sonraki satır o anın rakamlarını verir. Son satır alarmın çalışmaya devam edip etmediğini söyler. Örnekte Once only kullanıldığı için alarm artık devre dışıdır. Trigger ayarındaki diğer seçeneklerde son satırda “This alert stays on.” yazar.

Diğer alarmlar da aynı sırayı izler. Aşağıda birkaç ilk satır, altlarındaki rakam satırıyla birlikte verilmiştir:

  • Bir çizgi: “GBPJPY touched 1h Resistance R1” ve “Price 210.16, line at 210.20.”

  • Bir çizginin kırılımı: “GBPJPY broke above 1h Resistance R1” ve “The 1h candle closed at 210.32, above the line at 210.20.”

  • Bir gösterge: “BTCUSD: 1h RSI(14) crossed above 70” ve “RSI(14) was 71.4 when the 1h candle closed at 105240.50.”

  • Bir tahmin değişikliği: “GBPJPY: 1h forecast turned bearish” ve “Before: bullish above 209.80. Now: bearish below 209.40.”

Birden fazla koşullu bir alarm, kaç koşulun gerçekleştiğini söyler. Ardından gerçekleşen her koşul için bir satır verir:

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.

Daha fazla koşulda ilk satırda örneğin “all 3 conditions met” ya da “2 of 3 conditions met” yazar. Yalnızca bir koşul gerçekleştiğinde, örneğin or ile bağlanan koşullarda, ilk satır o koşulu söyler ve rakamları onu izler.

Mesajı yazma

  1. Alarm editörünü açın ve Options sekmesine geçin.

  2. Message ayarına tıklayın. Bu ayar boşken Auto gösterir. Altında bir metin alanı açılır.

  3. Mesajınızı yazın. Alan en fazla 400 karakter alır.

  4. Canlı bir değer eklemek için alanın altındaki Available variables bölümünü açın. Değişkeni çift süslü parantezleriyle birlikte tam olarak kopyalayın.

Options sekmesinde açık Message satırı: boş bir alan, altındaki metin ve Available variables.
Message alanı açık ve hâlâ boş, bu yüzden alarm otomatik mesajını gönderir.
  1. Automatic message: boş alan. Kendi sözlerinizi buraya yazın ya da boş bırakın.

  2. Alanın altındaki metin: “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.” Yani alan boş kalırsa alarm ne olduğunu ve hangi fiyatta olduğunu söyler. Kendi mesajınız ise önce gönderilir ve bu metin onun altında yer alır.

  3. Available variables: mesajınıza ekleyebileceğiniz anlık değerler.

Yazdığınız sözler ilk satır olur ve otomatik metin onları izler. Örnekte şu mesaj:

{{symbol}} on {{timeframe}}: check the 1h trend before entering.

şöyle ulaşır:

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.

Fiyat ve koşul zaten sözlerinizin altındaki satırlarda yer alır. Mesajınızı bu satırların söyleyemeyeceği şeyler için kullanın, örneğin işlem planınız için.

Yazdığınız mesaj, Alerts listesinde alarmın adı olarak da kullanılır. Mesaj yoksa liste, koşuldan oluşturulan bir ad gösterir. Fiyat seviyesinde bu ad kısadır, örneğin “EURUSD crossing up 1.09”. Bir çizgi veya birden fazla koşul, editörün yazdığı gibi görünür, örneğin “GBPJPY: 1h Price touches 1h Resistance R1”. Koşulu değiştirdiğinizde bu ad da onunla birlikte değişir. Alarmı yeniden açtığınızda Message alanı yine boştur. Daha önce mesajsız kaydettiğiniz alarmlar da adlarını bu biçimde gösterir.

Mesajın her yerdeki görünümü

Her yer aynı mesajı alır ve onu kendi düzeninde gösterir:

Yer Ne gösterir
Uygulama içindeki bildirim Kalın yazılmış ilk satır ve altında rakamlar.
Notify my devices Başlık olarak ilk satır ve altında diğer satırlar.
Send to MetaTrader Başlık olarak ilk satır ve altında diğer satırlar. MetaTrader mesajın yanında kendi saatini gösterir.
Telegram Mesaj, kendi saat diliminize göre saat ve grafiğe giden bir bağlantı.
Send email Kendi saat diliminize göre tarih ve saatle birlikte mesaj.
Webhook URL Discord ve Slack mesajı UTC saatiyle alır. Raw JSON seçeneğinde yazılımınız aşağıdaki değişkenleri alır.

Telegram saati şöyle yazar: “24 Sep, 11:02 London time”. Saat dilimi yanlışsa Your profile sayfasındaki Timezone alanından kendi saat diliminizi seçin. ForecastCity saat diliminizi bilmiyorsa saat UTC olarak verilir.

Telegram mesajındaki, e-postadaki, telefon bildirimindeki ya da MetaTrader açılır penceresindeki bağlantı, o sembolün grafiğini Alerts paneliyle birlikte açar. Çoğu 4CM-AI alarmında bu bağlantı grafiği, o tetiklenmenin Alert observation penceresiyle birlikte açar.

Değişkenlerle canlı değerler ekleme

Alarm tetiklendiğinde her değişkenin yerine değeri yazılır. Available variables listesindeki değişkenler şunlardır:

Değişken Yazdığı değer Örnek
{{symbol}} Sembol EURUSD
{{price}} ve {{close}} Alarmın tetiklendiği andaki fiyat 1.0901
{{condition_text}} Sembol olmadan, ne olduğu Price crossed above 1.09
{{condition}} Koşulun kısa kod hâli CROSSING_UP 1.09
{{timeframe}} Alarmın zaman dilimi 5m
{{time_iso}} UTC cinsinden tarih ve saat 2026-09-24 10:02 UTC
{{time}} Aynı zaman, yazılımlar için saniye sayısı olarak 1790244120
{{time_now}} Mesajın gönderildiği an, sayı olarak 1790244121
{{exchange}} Fiyatların geldiği kaynak TwelveData
{{status}} Alarmın çalışmaya devam edip etmediği This alert stays on.
{{alert_url}} O sembolün grafiğine, alarmlarınızla birlikte giden bir bağlantı bir web adresi
{{name}} Her değişkenin yerine değeri yazılmış mesajınız ya da mesaj yoksa Alerts listesinde görünen ad EURUSD crossing up 1.09

Bir çizgide {{condition_text}} örneğin “Price touched 1h Resistance R1” olur. Birden fazla koşulda, gerçekleşen koşulları and sözcüğüyle birleştirir. Once only alarmı tetiklendikten sonra {{status}} değeri “This alert is now off. It was set to fire once.” olur. Birden fazla koşullu, çizgi ya da gösterge alarmlarında {{condition}} değeri TREE olur. Bu değişken yazılımlar için bir koddur.

4CM-AI alarmlarında {{forecast_summary}} tahminin ne yaptığını özetler, {{forecast_symbol}} ise tahminin sembolünü yazar. {{forecast_cycle}} ise alarm izlemeye her yeniden başladığında bir artan sayaçtır. Mesajınızda {{forecast_summary}} varsa altına otomatik satırlar eklenmez, çünkü özet ne olduğunu zaten söyler.

Çoğu 4CM-AI alarmında {{price}} ve {{close}} boş kalır, çünkü bu alarmların tek bir fiyatı yoktur. {{time_iso}} UTC kullanır, bu yüzden ekranınızdaki saatten farklı olabilir. Var olmayan bir değişken tam olarak yazdığınız gibi kalır: yanlış yazılmış bir {{prices}}, olduğu gibi {{prices}} olarak ulaşır.

Alarmları bir webhook'a gönderme

Webhook, her alarmı bir web adresine gönderir. Orada alarmı kendi yazılımınız, bir Discord kanalı ya da bir Slack kanalı alır. Abonelik planınızın webhook'ları kapsaması gerekir.

  1. Options sekmesinde, Notifications bölümünde Webhook URL onay kutusunu işaretleyin. Bir adres alanı, bir Format açılır listesi ve bir gövde alanı belirir.

  2. Alıcınızın dinlediği adresi yapıştırın. Adres http:// veya https:// ile başlamalıdır.

  3. Format ayarını Raw JSON olarak ayarlayın ve gövde alanını boş bırakın.

  4. Create düğmesine ya da düzenlediğiniz bir alarm için Save düğmesine basın.

İşaretli Webhook URL satırı: bir adres, Raw JSON seçili format seçici ve boş bir gövde alanı.
Webhook URL işaretli, bir adres girilmiş ve Format, Raw JSON olarak ayarlanmış. Boş gövde alanı varsayılan verileri gönderir.
  1. Alıcınızın dinlediği adres. 80 veya 443 numaralı standart portları kullanın.

  2. Format: kendi yazılımınız için Raw JSON, bu hizmetler için ise Discord veya Slack.

Gövde alanı boşken alıcınız, tablodaki tüm değişkenleri ve ayrıca alertId ile triggerId değerlerini içeren bir JSON nesnesi alır. Bu ikisi, alarmı ve bu belirli tetiklenmeyi tanımlar. JSON'daki alanlara dayanan bir şey kurmadan önce gerçek bir iletimi inceleyin.

Editör, alanın altında isteklerimizin geldiği sunucu adresini gösterir. Alıcınız yalnızca bilinen adresleri kabul ediyorsa bu adresi izin listenize ekleyin.

Adres için gerekenler

  • Standart bir portta, herkese açık bir adres: http için 80, https için 443. Başka portlara, localhost'a veya özel ağ adreslerine giden mesajlar gönderilmez.

  • Adresin içinde kullanıcı adı veya parola olmaması.

  • Doğrudan o adresin kendisinden, 3 saniye içinde gelen bir yanıt. Başka bir adrese yönlendirme başarısız sayılır.

Editör yalnızca adresin http:// veya https:// ile başlayıp başlamadığını kontrol eder. Diğer gereksinimler bir mesaj gönderilirken kontrol edilir, bu yüzden adresinizi gerçek bir alarmla test edin. Fiyat ve teknik alarmlarda alıcınız geçici bir hata verirse mesaj en fazla iki kez daha denenir. Bir 4CM-AI alarmının mesajı ise zaman aşımı veya sunucu hatasından sonra yeniden gönderilmez, çünkü alıcınız o mesaja göre zaten harekete geçmiş olabilir.

Kendi webhook gövdenizi yazma

Gövde alanı, mesajdaki değişkenlerin aynısını kullanan bir şablon alır. En fazla 2000 karakter olabilir. Alan daha fazlasını yazmanıza izin verir, ancak daha uzun bir gövde kaydederken reddedilir.

Raw JSON seçiliyken, küçük bir nesne bekleyen bir alıcı şu gövdeyi alabilir:

{"symbol":"{{symbol}}","condition":"{{condition_text}}","time":"{{time_iso}}","source":"ForecastCity"}

Değişkenler düz metin olarak yerleştirilir. Tırnak işareti veya satır sonu içeren bir değer JSON'unuzu bozabilir. Geçerli JSON olmayan bir gövde düz metin olarak gönderilir.

Bir Discord kanalı için Format ayarını Discord olarak ayarlayın ve kanalın webhook adresini kullanın. Ardından gövde alanına kısa bir satır yazın, örneğin:

{{symbol}}: {{condition_text}}. Open your alerts: {{alert_url}}

Slack için Slack seçeneğini seçin ve aynı şekilde yazın. ForecastCity metninizi her hizmetin beklediği biçime yerleştirir. Alan boşsa ikisi de yukarıda gösterilen alarm mesajını alır ve mesajın son satırında UTC saati yer alır.

Sonucu kontrol etme

  1. Alarmın tetiklenmesini bekleyin, ardından Alerts panelinin Log sekmesini açın.

  2. Alıcınıza ulaşanı Log'daki kayıtla karşılaştırın: ne olduğu, sembol ve saat.

Log, alarmın tetiklendiğini gösterir. Alıcınızın mesajı kabul edip etmediğini göstermez, bu yüzden alıcınızın kendi kayıtlarına da bakın. {{prices}} gibi süslü parantezler görüyorsanız bir değişken adı yanlış yazılmıştır. Alıcınız gövdeyi reddediyorsa JSON'u kontrol edin.

Bilmekte fayda var

  • Mesaj, işaretlediğiniz her yere gider. Webhook gövdesi ise yalnızca webhook'a gider.

  • Discord en fazla 1900, Slack en fazla 3000 karakter gösterir. Daha uzun metin kesilir.

Bu makale işinize yaradı mı?

Son güncelleme: 28.10.2026