أصبح برنامج Pine Script™ والرسوم البيانية أكثر إلمامًا

Jul 12, 2022

توفر العناصر المضمنة الجديدة في مساحة اسم الرسم البياني الآن نصوصًا برمجية أكثر وضوحًا على خصائص المخطط. من خلالها نقدم نوعًا جديدًا من السلوك لنصوص Pine الخاصة بك، والتي تسمح لهم بإعادة الحساب وإعادة الرسم على الأعمدة المرئية فقط، وإعادة الضبط تلقائيًا عندما يقوم المتداولون بالتمرير أو تكبير الرسم البياني الخاص بهم.

خصائص الرسوم البيانية

chart.bg_color الجديد المدمج يقوم بإرجاع لون خلفية الرسم البياني. يمكنك استخدامه لتكييف نظام ألوان البرنامج النصي الخاص بك مع سياق الرسم البياني. chart.fg_color يُرجع لونًا يوفر تباينًا مثاليًا مع لون خلفية المخطط، مهما كان.

مجموعة أخرى من العناصر المضمنة المنطقية الجديدة تجعل من الممكن اكتشاف نوع المخطط الذي يعمل عليه البرنامج النصي هي:

خر واحد سيرجع صحيح على جميع أنواع الرسوم البيانية القياسية (تلك التي تُرجع قيمة غير تركيبية سعر الإغلاق): الأعمدة أو الشموع أو الشموع المجوفة أو الأعمدة أو الخط أو المنطقة أو خط الأساس.

أعمدة مرئية وإعادة الحساب الديناميكي

chart.left_visible_bar_time و. chart.right_visible_bar_time يقومان بإرجاع زمن افتتاح لأعمدة الرسم البياني الموجودة في أقصى اليسار وأقصى اليمين. أثناء قيام المتداول بالتمرير أو التكبير / التصغير على الرسم البياني الخاص به – مما يتسبب في تغيير نطاق الأعمدة المرئية على الرسم البياني – ستتم إعادة تنفيذ البرامج النصية التي تستخدم أيًا من هذه العناصر المدمجة الجديدة تلقائيًا حتى تتمكن الحسابات والمرئيات من التكيف مع السياق الجديد. يفتح هذا الباب أمام مجموعة متنوعة جديدة تمامًا من البرامج النصية التي تتكيف ديناميكيًا مع التغييرات في نطاق الأعمدة المرئية.

يرسم هذا المثال سهمًا من سعر الافتتاح من أول عمود مرئي إلى الإغلاق الأخير، ويظهر الربح / الخسارة لهذا النطاق:

 

//@version=5
indicator("Chart gain/loss", "", true)

// Save the `open` of the leftmost visible bar.
var float chartOpen = na
if time == chart.left_visible_bar_time
    chartOpen := open
else if time == chart.right_visible_bar_time
    // Run the following code on the chart's rightmost visible bar.
    color arrowColor = close > chartOpen ? color.lime : color.fuchsia
    // Draw arrow once, then modify it.
    var line arrow = line.new(na, na, na, na, xloc.bar_time, extend.none, na, line.style_arrow_right, 3)
    line.set_xy1(arrow, chart.left_visible_bar_time, chartOpen)
    line.set_xy2(arrow, chart.right_visible_bar_time, close)
    line.set_color(arrow, arrowColor)
    // Draw percentage label once, then modify it.
    var label percentage = label.new(na, na, na, xloc.bar_time, yloc.price, #00000000, label.style_label_down, size = size.huge)
    int midTime = int(math.avg(chart.left_visible_bar_time, chart.right_visible_bar_time))
    label.set_xy(percentage, midTime, math.avg(chartOpen, close))
    label.set_text(percentage, str.tostring((close - chartOpen) / chartOpen * 100, format.percent))
    label.set_textcolor(percentage, arrowColor)

 

لاحظ أنه نظرًا لأن البرامج النصية التي تستخدم هذه الميزة ستتم إعادة تنفيذها في كثير من الأحيان أكثر من البرامج العادية، يجب توخي الحذر لاستخدام كود فعال والحفاظ على العمليات الحسابية خفيفة إذا أراد المرء الحفاظ على الاستجابة المعتادة لمخططات TradingView.

لقد نشرنا ملف مخطط VWAP كمثال على كيفية استخدام هذه الميزة الجديدة. يثبت تلقائيًا على الأعمدة المرئية:

كما قام حساب PineCoders بنشر مكتبة VisibleChart لمساعدة مبرمجي Pine Script ™ على الاستفادة القصوى من هذه الميزة الجديدة.

للبقاء على اطلاع بميزات Pine الجديدة، راقب دليل المستخدم ملاحظات الإصدار. يبث حساب  أيضًا تحديثات من Squawk Box تيليغرام، حساب على موقع تويتر، ومن الدردشة العامة “Pine Script ™ Q&A” على TradingView.

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

Look first Then leap

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