انتقل إلى المحتوى
Signal Pilot

الـWebhook (TradingView ← بوت)

يتيح الـWebhook إرسال تنبيهات TradingView إلى خدمات خارجية أو بوتات أو واجهات API خاصة بك لأتمتة العمل. يشرح هذا الدليل كيف تُضبط وتُستخدم مع مؤشرات Signal Pilot.

الغرض تعليمي

يعرض هذا الدليل ربط الـWebhook لغرض التعلم والأتمتة. التداول الآلي ينطوي على مخاطر كبيرة. هذه ليست نصيحة مالية.

📡 ما هو الـWebhook؟

الـWebhook طلب HTTP POST يرسله TradingView من تلقاء نفسه إلى العنوان الذي تحدده، لحظة انطلاق التنبيه. أشهر استخداماته:

  • التنبيه: إرسال التنبيهات إلى Discord أو Telegram أو Slack
  • التسجيل: حفظ التنبيهات في قاعدة بيانات أو جدول حسابات
  • الأتمتة: تشغيل إجراءات عبر واجهات API خاصة بك
  • التجربة: متابعة عدد مرات التنبيه والشروط التي يظهر عندها

✅ ما تحتاجه أولًا

قبل ضبط الـWebhook تحتاج عادةً إلى هذه الأمور:

  • TradingView من نوع Pro أو Pro+ أو Premium: الحسابات المجانية لا تصل إلى الـWebhook
  • عنوان الجهة المستقبِلة: خدمة تستقبل طلبات HTTP POST، مثل webhook في Discord أو خادم خاص بك أو منصة أتمتة
  • مؤشر من Signal Pilot: مضبوط وموضوع على رسمك البياني
  • إلمام بسيط بـJSON: مفيد إن أردت تركيب الرسالة بنفسك، وليس شرطًا

🔧 خطوة بخطوة

الخطوة 1: احصل على عنوان الـWebhook

العنوان المطلوب يتوقف على الجهة التي تريد وصول التنبيهات إليها:

webhook في Discord

  1. في Discord اذهب إلى إعدادات الخادم ← التكاملات ← Webhooks
  2. اضغط «New Webhook»
  3. اختر الاسم والقناة
  4. انسخ عنوان الـwebhook (شكله هكذا: https://discord.com/api/webhooks/...)

📸 لقطة الشاشة قادمة

شاشة إنشاء الـwebhook في Discord

سنضيف لقطة لشاشة إنشاء الـwebhook في Discord، تظهر فيها لوحة التكاملات وخطوات الضبط.

بوت في Telegram

  1. ابحث في Telegram عن «@BotFather»
  2. أرسل /newbot ثم اتبع ما يطلبه منك
  3. احتفظ برمز البوت
  4. استعن بخدمة وسيطة أو بخادم خاص بك لتمرير webhook الخاص بـTradingView إلى Telegram

خادم خاص أو واجهة API خاصة

تستطيع تجهيز الجهة المستقبِلة بنفسك عبر منصات مثل:

  • Webhook.site: للتجربة؛ يستقبل محتوى الـwebhook ويعرضه أمامك
  • Make.com (كان اسمه Integromat): لربط عدة خدمات ببعضها
  • Zapier: لأتمتة سلاسل العمل
  • خادم خاص بك: Python مع Flask، أو Node.js مع Express، وما شابه

الخطوة 2: اضبط التنبيه في TradingView

  1. على الرسم البياني الذي يحمل مؤشر Signal Pilot، اضغط أيقونة Alert (الساعة وعليها علامة +)
  2. في نافذة التنبيه:
    • الشرط: اختر مؤشر Signal Pilot والشرط الذي تريد مراقبته
    • الخيارات: اضبطه على «Once Per Bar Close» حتى لا تحدث إعادة رسم داخل الشمعة
    • الاستحقاق: حدده بحسب حاجتك؛ والأشيع هو «Open-ended»
  3. انزل إلى تبويب «Notifications».
  4. ثم فعّل خانة «Webhook URL».
  5. الصق هناك عنوان الجهة المستقبِلة

📸 لقطة الشاشة قادمة

نافذة تنبيهات TradingView وحقل Webhook URL

سنضيف لقطة لنافذة ضبط التنبيهات في TradingView، يظهر فيها حقل Webhook URL داخل قسم «Notifications».

الخطوة 3: ركّب الرسالة (اختياري)

في حقل «Message» تحدد أنت البيانات التي تُرسل. ويدعم TradingView هذه العناصر النائبة:

{
  "indicator": "{{ticker}}",
  "price": "{{close}}",
  "time": "{{time}}",
  "signal": "Pentarch Reversal Detected",
  "timeframe": "{{interval}}"
}

أشهر العناصر النائبة في TradingView:

  • {{ticker}}: اسم الأداة، مثل «BTCUSDT»
  • {{close}}: سعر الإغلاق في تلك اللحظة
  • {{time}}: وقت انطلاق التنبيه
  • {{interval}}: الإطار الزمني، مثل «15» أو «1D»
  • {{exchange}}: اسم المنصة

الخطوة 4: جرّب الـWebhook

  1. بعد إنشاء التنبيه، اضغط زر «Test» في إعدادات التنبيه.
  2. انظر في الجهة المستقبِلة: قناة Discord أو webhook.site أو ما وضعته
  3. تأكد من وصول الرسالة بتنسيق سليم
  4. إن لم يصل شيء، راجع الآتي:
    • هل عنوان الـwebhook صحيح
    • هل حساب TradingView لديه صلاحية الـwebhook، أي Pro+ أو Premium
    • هل الجهة المستقبِلة متاحة ولا يحجبها جدار حماية

📸 لقطة الشاشة قادمة

رسالة تجربة وصلت إلى Discord

سنضيف لقطة لقناة في Discord تظهر فيها رسالة تجربة قادمة من الـwebhook، وبيانات تنبيه Signal Pilot منسقة كما ينبغي.

💬 أمثلة على التنسيق

رسالة بتنسيق Discord

{
  "content": "🔔 **Signal Pilot Alert**",
  "embeds": [{
    "title": "Pentarch Reversal",
    "description": "Reversal pattern detected on {{ticker}}",
    "color": 65280,
    "fields": [
      {"name": "Price", "value": "{{close}}", "inline": true},
      {"name": "Timeframe", "value": "{{interval}}", "inline": true},
      {"name": "Time", "value": "{{time}}", "inline": false}
    ]
  }]
}

رسالة نصية بسيطة

Signal Pilot: {{ticker}} - Harmonic Oscillator cross detected at {{close}} on {{interval}} timeframe

JSON منظم لواجهة API خاصة

{
  "alert_type": "signal_pilot",
  "indicator": "janus_atlas",
  "symbol": "{{ticker}}",
  "exchange": "{{exchange}}",
  "timeframe": "{{interval}}",
  "price": "{{close}}",
  "timestamp": "{{time}}",
  "condition": "Level Break Alert"
}

🌐 المنصات الأكثر استخدامًا

المنصة متى يُستخدم صعوبة الضبط
Discord تنبيه الفريق وحفظ السجل سهلة جدًا
Telegram تنبيهات على الهاتف متوسطة؛ تحتاج بوتًا ووسيطًا
Make.com ربط عدة خدمات سهلة، وتبني المسار بصريًا
Zapier اتصال بأكثر من 5000 تطبيق سهلة، وتبني المسار بصريًا
Webhook.site التجربة وتتبع الأخطاء سهلة جدًا
خادم خاص تحكم كامل ومنطق تكتبه بنفسك عالية؛ تحتاج برمجة

🔍 حين لا يعمل شيء

🔍 الـWebhook لا يرسل شيئًا؟ راجع هذه النقاط:
  1. هل وضعت العنوان فعلًا داخل التنبيه؟ ← إن لم تفعل، أضفه
  2. هل ينطلق التنبيه أصلًا؟ ← إن لم ينطلق، أصلح التنبيه أولًا
  3. هل جربته على webhook.site؟ ← إن لم تجرب، ابدأ من هناك. وإن فشل، ولّد عنوانًا جديدًا
  4. هل التنسيق صحيح؟ ← راجع التنسيق الذي يطلبه Discord أو Telegram
  5. هل الـJSON سليم؟ ← مرره على أداة تحقق من JSON لمراجعة الصياغة
  6. هل لديك TradingView Pro+؟ ← الحسابات المجانية لا تستطيع استخدام الـwebhook

تجربة سريعة: اجعل تجربتك الأولى دائمًا على webhook.site. فإن وصلت هناك ولم تصل إلى Discord أو Telegram، فالخلل في إعداد الجهة المستقبِلة.

الـWebhook لا يصل

  • تحقق من باقتك في TradingView: الحسابات المجانية لا تستطيع استخدام الـwebhook
  • راجع العنوان: بلا مسافات زائدة، وبالبروتوكول https://
  • جرّب الجهة المستقبِلة: استخدم webhook.site للتأكد من أن TradingView يصل إلى عنوانك
  • هل انطلق التنبيه؟: راجع سجل التنبيهات في TradingView لتتأكد من انطلاقه فعلًا

بيانات خاطئة في الرسالة

  • صياغة العنصر النائب: الصواب هو {{ticker}} لا {ticker}
  • تنسيق الـJSON: إن استعملت الشكل المنظم، تحقق منه على jsonlint.com
  • تهريب علامات الاقتباس: استخدم \" إن احتجت علامات اقتباس داخل نص JSON

يصل عدد كبير من الـWebhook

  • تواتر التنبيه: انتقل من «Once Per Bar» إلى «Once Per Bar Close»
  • دقة الشرط: ضيّق الشرط حتى ينطلق مرات أقل
  • مدة الانتظار: بعض خدمات الـwebhook تحد من عدد الطلبات التي تقبلها

🔒 الأمان

نقاط مهمة في الأمان

  • عنوان الـwebhook معلومة حساسة: عامله معاملة كلمة المرور ولا تنشره في أي مكان
  • بدّله بين حين وآخر: خصوصًا إن تعلقت به أعمال مهمة
  • تحقق مما يصلك: إن كنت تستخدم خادمًا خاصًا، فتأكد أن الطلبات آتية فعلًا من TradingView
  • استخدم HTTPS كلما أمكن: الجهة التي تقبل HTTP غير مشفر تمثل خطرًا

📋 مثال على التركيب

السيناريو: استقبال تنبيهات الانعكاس من Pentarch في قناة على Discord

  1. أُنشئ: webhook في Discord داخل قناة ‎#trading-alerts
  2. ضُبط: Pentarch v1.0 على رسم BTCUSDT بإطار 15 دقيقة
  3. التنبيه: على شرط «Pentarch: Reversal Detected»
  4. التواتر: «Once Per Bar Close»
  5. لُصق: عنوان webhook الخاص بـDiscord في إعدادات التنبيه
  6. رسالة مخصصة: بتنسيق التضمين في Discord المعروض أعلاه
  7. جُرّب: التنبيه؛ وظهرت الرسالة في Discord
  8. التنبيه يعمل: يصل الفريق إشعار كلما ظهر نمط انعكاس

(مثال على تركيب حقيقي، للتعلم فقط. ليست نصيحة مالية. والنتائج تختلف من شخص لآخر.)