كيفية استخدام قيمة متغير في التنبيه؟

يمكنك استخدام عناصر نائبة خاصة للوصول إلى قيم المتغيرات في رسالة التنبيه. على سبيل المثال، يمكنك إنشاء تنبيه على NASDAQ: AAPL والكتابة في مربع رسالة: 

 

{{exchange}}:{{ticker}}, price = {{close}}, volume = {{volume}}

بعد تشغيل التنبيه، ستحصل على القيم المقابلة:

 

فيما يلي قائمة بالعناصر النائبة المتاحة:

 

1. {{ticker}} - مؤشر الرمز المستخدم في التنبيه (AAPL، BTCUSD، إلخ).

 

2. {{exchange}} - تبادل الرمز المستخدم في التنبيه (NASDAQ، NYSE، CME، إلخ). لاحظ أنه بالنسبة للرموز المتأخرة، سينتهي التبادل بـ "_DL" أو "_DLY". على سبيل المثال، "NYMEX_DL".

 

3. {{close}}، {{open}}، {{high}}، {{low}}، {{time}}، {{volume}}،} - القيم المقابلة للشريط الذي تم تشغيل التنبيه عليه. لاحظ أن التنبيهات على المؤشرات والرسوم البيانية غير القياسية والرسومات تعتمد على الدقة، بينما يتم دائمًا احتساب تنبيهات الأسعار البسيطة (مثل تجاوز السعر لبعض القيمة) على أشرطة مدتها دقيقة واحدة. {{time}} في التوقيت العالمي المنسق، تم تنسيقه كـ yyyy-mm-ddthh:mm:ssz. على سبيل المثال، 2019-08-27T 09:56:00 Z. القيم الأخرى هي أرقام ذات نقاط ثابتة بنقطة عشرية تفصل بين الأجزاء المتكاملة والكسرية. على سبيل المثال، 1245.25.

 

4. {{timenow}} - وقت إطلاق التنبيه الحالي، تم تنسيقه بنفس طريقة {{time}}. قم بإرجاع الوقت إلى أقرب ثانية، بغض النظر عن الدقة.

 

5. {{plot_0}}، {{plot_1}}،... {{plot_19}} - سلسلة الإخراج المقابلة للمؤشر المستخدم في التنبيه. لاحظ أن الرسوم البيانية مرقمة من الصفر. أعلى معرف للرسم هو 19 (يمكنك الوصول إلى 20 سلسلة إخراج أولى فقط). سلسلة المخرجات هي قيم المؤشر الذي يمكنك رؤيته على الرسم البياني. على سبيل المثال، يحتوي مؤشر مستوى الصوت المدمج على سلسلتي إخراج: الحجم والحجم MA. يمكنك إنشاء تنبيه عليه وكتابة شيء من هذا القبيل في مربع رسالة:

 

Volume: {{plot_0}}, Volume average: {{plot_1}}

 

6. {{interval}} - تقوم بإرجاع الفاصل الزمني (بمعنى آخر. الإطار الزمني/الدقة) للرسم الذي تم إنشاء التنبيه عليه. لاحظ أنه لأسباب فنية، في بعض الحالات، سيعرض هذا العنصر النائب "1" بدلاً من الإطار الزمني على الرسم البياني. تعتمد جميع التنبيهات العادية القائمة على الأسعار (بشروط مثل "AAPL Crossing 120" أو "AMZN Greater Than 3600") على القيمة الأخيرة للرمز، وبالتالي فإن الإطار الزمني للرسم ليس مناسبًا للتنبيه. ولهذا السبب، يتم حساب جميع التنبيهات المستندة إلى الأسعار فعليًا وفقًا للإطار الزمني البالغ 1 متر وسيقوم العنصر النائب دائمًا بإرجاع الرقم "1" وفقًا لذلك. بالإضافة إلى ذلك، يتم حساب رسومات النطاق أيضًا استنادًا إلى بيانات 1 متر، لذا فإن العنصر النائب {{interval}} سيعرض دائمًا الرقم «1" في أي تنبيه تم إنشاؤه على رسم النطاق. من خلال التنبيهات التي تم إنشاؤها على الرسومات والمؤشرات، سيعمل هذا العنصر النائب كما هو متوقع.

 

7. {{syminfo.currency}} - يقوم بإرجاع رمز العملة الخاص بالرمز الحالي («EUR»، «USD»، إلخ).

 

8. {{syminfo.basecurrency}} - تقوم بإرجاع رمز العملة الأساسية للرمز الحالي إذا كان الرمز يشير إلى زوج عملات. وإلا فإنها تقوم بإرجاع. على سبيل المثال، تقوم بإرجاع "EUR" عندما يكون الرمز "EURUSD".

 

لا يمكن استخدام العناصر النائبة التي تحتوي على بادئة "الإستراتيجية" إلا في تنبيهات الإستراتيجية:

 

  • {{strategy.position_size}} - تُرجع قيمة الكلمة الرئيسية نفسها في Pine، أي حجم الموضع الحالي.
  • {{strategy.order.action}} - تقوم بإرجاع سلسلة «شراء» أو «بيع» للأمر المنفذ.
  • {{strategy.order.contracts}} - يقوم بإرجاع عدد عقود الأمر المنفذ.
  • {{strategy.order.price}} - يقوم بإرجاع السعر الذي تم تنفيذ الأمر به.
  • {{strategy.order.id} - تقوم بإرجاع معرف الأمر المنفذ (السلسلة المستخدمة كمعامل أول في إحدى الدالات تستدعي توليد الأوامر: strategy.entry أو strategy.exit أو strategy.order).
  • {{strategy.order.comment}} - يقوم بإرجاع تعليق الأمر المنفذ (السلسلة المستخدمة في معلمة التعليق في إحدى الدالات تستدعي توليد الأوامر: strategy.entry أو strategy.exit أو strategy.order). إذا لم يتم تحديد أي تعليق، فسيتم استخدام قيمة strategy.order.id.
  • {{strategy.order.alert_message}} - تُرجع قيمة المعلمة alert_message التي يمكن استخدامها في كود باين الخاص بالاستراتيجية عند استدعاء إحدى الدوال المستخدمة لتقديم الأوامر: strategy.entry أو strategy.exit أو strategy.order. هذه الميزة مدعومة فقط في Pine v4 والإصدارات الأحدث.
  • {{strategy.market_position}} - تُرجع الموضع الحالي للاستراتيجية في شكل سلسلة: "شراء" أو "تعادل" أو "بيع على المكشوف".
  • {{strategy.market_position_size}} - تُرجع حجم الموضع الحالي كقيمة مطلقة، أي رقم غير سالب.
  • {{strategy.prev_market_position}} - تُرجع الموضع السابق للاستراتيجية في شكل سلسلة: "شراء" أو "تعادل" أو "بيع على المكشوف".
  • {{strategy.prev_market_position_size}} - تُرجع حجم الموضع السابق كقيمة مطلقة، أي رقم غير سالب.

بعد تشغيل التنبيه، سترى القيم المقابلة:

 

لوظائف الرسم من النصوص البرمجية المكتوبة بلغة Pine Script:

  • plot;
  • plotshape;
  • plotchar;
  • plotarrow;
  • plotbar;
  • plotcandle.

بالإضافة إلى استخدام العناصر النائبة {{plot_0}}، {{plot_1}}،... {{plot_19}}، من الممكن التعرف عليها بالاسم. للقيام بذلك، استخدم العنصر النائب {{plot("Name")}}، حيث الاسم هو اسم السلسلة. على سبيل المثال، بالنسبة لوظيفة plotarrow:


//@version=6 indicator('My script') plotarrow(close, colorup=color.new(color.teal,40), colordown=color.new(color.orange, 40) , title = 'arrow')
Generic

إضافة {{plot("arrow")}} إلى نص الإشعار

 

 

بالنسبة لوظائف plotcandle و plotbar، لا يتم دعم الوصول إلى سلسلة بالاسم نظرًا لأن كل وظيفة تعرض 4 سلاسل (مفتوحة وعالية ومنخفضة ومغلقة). بالنسبة لكل سلسلة، يمكنك استخدام عنصر نائب مع الترقيم المناسب.

 

 

 

يمكنك فقط استخدام العناصر النائبة بأسماء السلاسل باللغة الإنجليزية للمؤشرات المضمنة. على سبيل المثال، بالنسبة لمؤشر مستوى الصوت:

الحجم: {{plot("Volume")}}، متوسط الحجم: {{plot("Volume MA")}}

 

 

 

في حالة استخدام عدة مؤشرات في التنبيه، سيتم استبدال قيم المؤشر الأول فقط في العناصر النائبة {{plot}}:

 

بالنسبة للمثال أعلاه، سيتم استبدال قيم السلسلة من مؤشر «My script1" في العناصر النائبة. لعرض قيم مؤشر «My script2"، حدده في القائمة المنسدلة الأولى.

 

يمكن أيضًا تحديد العناصر النائبة في وسيطة الرسالة الخاصة بوظيفة alertcondition. عند إنشاء تنبيه، يتم سحب قيمة هذه الوسيطة تلقائيًا إلى مربع إدخال نص التنبيه.


//@version=6 indicator("alertcondition", overlay=true) alertcondition(close >= open, title='Alert', message='"price {{ticker}} = {{close}}"!')
Generic

 

 

يرجى ملاحظة أنه عند إنشاء تنبيه بشرط من وظيفة alertcondition، فإن استبدال القيمة سيعمل في النصوص البرمجية المكتوبة على الإصدار الرابع (Pine v4) أو أعلى.

 

يمكن استخدام القيم من التنبيهات التي تم تشغيلها مع webhooks عن طريق إرسال قيم متغيرة من رسالة إلى العناوين المطلوبة. أو باستخدام تطبيقات خارجية تابعة لجهات خارجية مثل TradingView Alerts إلى MT4/MT5، والتي تستخدم بالفعل استخدام القيم الديناميكية. يمكن العثور على بعض حالات استخدام بناء الجملة في هذا المثال النصي. هذا يفتح المزيد من الاحتمالات لأولئك منكم الذين يستخدمون التنبيهات.