خصائص الاستراتيجية
تحتوي كل استراتيجية Pine على عدد من الخصائص التي تحدد سلوكها:
- رأس المال الأولي
- العملة الأساسية
- حجم الطلبية
- حجم المركز
- العمولة
- التحقق من السعر للأوامر المُحددة السعر
- تقلبات الأسعار
- الهامش
- إعادة الحساب
- الأوامر
وهي متوفرة في إعدادات الإستراتيجية، في علامة تبويب الخصائص:
يمكن تغيير كل من المعلمات المحددة في خصائص الإستراتيجية عن طريق تحرير وسيطات استراتيجية()استدعاء الدالة في Pine:
strategy(title, initial_capital, currency, default_qty_value, default_qty_type, pyramiding, commission_type, commission_value, backtest_fill_limits_assumption, slippage, process_orders_on_close, margin_long, margin_short, calc_on_order_fills, calc_on_every_tick, process_orders_on_close, use_bar_magnifier)
دعونا نلقي نظرة على كل معلمة إدخال في قائمة الخصائص والمعلمة المقابلة لها في لغة Pine:
1 - يمثل رأس المال الأولي (المعلمة: initial_capital) مقدار الأموال المتاحة مبدئيًا لاستراتيجية التداول، بالعملة المحددة في العملة الأساسية. افتراضيًا، تساوي هذه القيمة 1,000,000. قد تحتاج إلى زيادة هذه القيمة حتى تحدث الصفقات على رموز معينة.
2 - تحدد العملة الأساسية (المعلمة: العملة) العملة المستخدمة في العمليات الحسابية. يتم التعبير عن النتائج التي تظهر في علامة تبويب اختبار الإستراتيجية (الربح والخسارة والسحب وما إلى ذلك) بهذه العملة. الاختيارات المتاحة هي:
الافتراضي، الدولار الأمريكي، اليورو، الدولار الأسترالي، الجنيه الإسترليني، الدولار النيوزيلندي، الدولار الكندي، الفرنك السويسري، دولار هونج كونج، الين الياباني، الكرونة النرويجية، الكرونة السويدية، الدولار السنغافوري، الليرة التركية، الراند الجنوب أفريقي. إذا تم تحديد الخيار الافتراضي ، فستستخدم الإستراتيجية العملة الافتراضية لهذا الرمز ولن يكون هناك تحويل للعملات.
3 - حجم الطلب (المعلمات: default_qty_value، default_qty_type). يتطلب هذا قيمة ووضع حساب. لاحظ أن القيم المحسوبة يمكن أن تخضع لقيود بسبب الحد الأدنى للكميات القابلة للتداول للرمز:
- العقود (الوسيطة: strategy.fixed) - ستدخل الإستراتيجية بالعدد المحدد من العقود/الأسهم/اللوتات.
- المبلغ بالعملة (الوسيطة: strategy.cash) - ستدخل الإستراتيجية المبلغ المحدد بالعملة الأساسية.
- النسبة المئوية للأسهم (الوسيطة: strategy.percent_of_equity) - سيتم احتساب أحجام المراكز كنسبة مئوية من الأسهمالمتاحة عند فتح الصفقة.
4 - يحدد Pyramiding (المعلمة: pyramiding) الحد الأقصى لعدد الإدخالات المتتالية المسموح بها في نفس الاتجاه. عندما يتم تعطيل الهرم، يمكن للاستراتيجية فتح مركز واحد طويل أو قصير فقط، حتى في حالة استيفاء شروط الدخول. يؤثر الهرم فقط على الإدخالات التي تم إجراؤها باستخدام دالة strategy.entry (). ليس له أي تأثير على الطلبات التي تم إنشاؤها باستخدام strategy.order ().
5 - العمولة (المعلمات: commission_type, commission_value). هو المبلغ المدفوع كرسوم تداول لكل صفقة. يجب توفير القيمة ووضع الحساب. لاحظ أنه يتم تطبيق العمولة على كل من الإدخالات والمخارج، وأنه عند استخدام النسبة المئوية، ستختلف العمولة المحسوبة مع قيمة المعاملة:
- النسبة المئوية للقيمة المتداولة (الوسيطة: strategy.commission.percent) - تفرض عمولة على كل طلب تساوي النسبة المئوية المحددة.
- العملة لكل عقد (الوسيطة: strategy.commission.cash_per_contract) - تفرض عمولة على كل عقد.
- العملة لكل طلب (الوسيطة: strategy.commission.cash_per_order) - تفرض عمولة على كل طلب.
6 - التحقق من سعر أوامر الحد (المعلمة: backtest_fill_limits_assumption) يجعل شروط الدخول إلى الصفقة باستخدام أوامر الحد أكثر صرامة. افتراضيًا، هذه القيمة هي 0، أي يتم ملء أوامر الحد بالبيانات التاريخية بمجرد الوصول إلى السعر المشار إليه في الطلب. إذا لم تكن المعلمة صفرية، فإن أوامر الحد يمكن أن تدخل مركزًا داخل الشريط فقط إذا تجاوز سعر السوق مستوى الأمر المحدد بالعدد المحدد من العلامات.
7 - يحدد الانزلاق (المعلمة: الانزلاق) القيمة في العلامات التي سيتم إضافتها إلى سعر ملء السوق أو أوامر الإيقاف. يمكن استخدامه لحساب الفارق.
8 - الهامش للمراكز الطويلة/القصيرة (المعلمات: margin_long، margin_short) يحدد الهامش لكل صفقة، أي النسبة المئوية للمركز الذي يجب على المتداول تمويله. على سبيل المثال، إذا تم تعيين الهامش لصفقات الشراء على 25٪، يجب أن يكون لدى المتداول أموال كافية لتغطية 25٪ من الصفقة المفتوحة ويمكن أن ينفق ما يصل إلى 400٪ من رأس ماله في كل صفقة. إذا تم فتح صفقة وبدأت في خسارة الأموال إلى الحد الذي لا تكفي فيه أموال المتداول لتغطية حصته من الصفقة، يحدث نداء الهامش ويؤدي إلى تصفية جزء من المركز الأصلي بالقوة. يمكنك معرفة المزيد حول هذه الميزة وكيفية حسابها في مقالة مركز المساعدة هذه.
9 - إعادة حساب الخيارات حدد عدد المرات التي يجب فيها إعادة حساب الاستراتيجية. افتراضيًا، تتم إعادة حساب الاستراتيجية عند إغلاق كل شريط، ولكن باستخدام الخيارات أدناه، يمكن أيضًا إعادة حسابها:
- بعد ملء الطلب (المعلمة: calc_on_order_fills) - يسمح للاستراتيجية بإجراء حساب إضافي للطلب داخل الشريط فورًا بعد ملء الطلب. يحدث هذا الحساب الإضافي على كل من الأشرطة التاريخية والواقعية.
- عند كل علامة (المعلمة: calc_on_every_tick). افتراضيًا، يتم حساب الاستراتيجيات فقط عند إغلاق أشرطة الوقت الفعلي. تسمح هذه المعلمة للاستراتيجية بالحساب في كل تحديث لأشرطة الوقت الفعلي، كما يفعل المؤشر. لاحظ أنه يتم فقدان بيانات العلامة عند تحديث الرسم البياني، لذلك ستتمإعادة رسمالاستراتيجيات التي تستخدم هذا الخيار . لا تؤثر هذه المعلمة على سلوك الاستراتيجيات على الأشرطة التاريخية. لاحظ أيضًا أن الاستراتيجيات التي تستخدم هذه الميزة لن تعرض نتائج واقعية على الأشرطة التاريخية، لأنها لا تحتوي على بيانات القراد.
10 - تنفيذ الأوامر:
- استخدام مكبر الشريط (المعلمة: use_bar_magnifier) - يوجه محاكي الوسيط لاستخدام أسعار أكثر دقة وأقل للإطار الزمني أثناء الاختبار الرجعي للتاريخ من أجل تحقيق نتائج أكثر واقعية. اقرأ المزيد حول هذه الميزة في مركز المساعدة.
- عند إغلاق الشريط (المعلمة: process_orders_on_close). إذا كان هذا صحيحًا، فإن الإستراتيجية تولد محاولة إضافية لتنفيذ الأوامر بعد إغلاق الشريط وإكمال حسابات الإستراتيجية. إذا كانت الأوامر عبارة عن أوامر فورية، فإن محاكي الوسيط ينفذها قبل افتتاح العمود التالي. إذا كانت الأوامر تتطلب استفاء شروط متعلقة بالسعر، فسيتم تنفيذها إذا تم استيفاء هذه الشروط فقط. يكون هذا الخيار مفيدًا إذا كنت ترغب في تنفيذ الأوامر في نفس وقت إنشائها: افتراضيًا، يتم إنشاء الأوامر عند إغلاق الشريط الحالي وتنفيذها عند فتح الشريط التالي؛ مع تشغيل هذا الإعداد، سيتم تنفيذها في نفس الإغلاق الذي تم إنشاء الأمر عليه. لاحظ أن إدخال الصفقة على نفس العلامة التي تم إنشاء الأمر بها يمكن أن يكون مضللاً لأن ذلك لن يكون ممكنًا في التداول الحقيقي.
- يؤدي استخدام OHLC (parameter: fill_orders_on_standard_ohlc) القياسي إلى فرض استراتيجيات تعمل علىهيكين آشي الرسوم البيانية لملء الطلبات باستخدام أسعار OHLC الفعلية، للحصول على نتائج أكثر واقعية. افتراضيًا، تقوم البرامج النصية للاستراتيجية بملء الطلبات باستخدام أسعار الرسم البياني، بغض النظر عن نوع الرسم البياني. بالنسبة لمخططات Heikin Ashi، يمنع هذا الإعداد استخدام الأسعار الاصطناعية التي قد لا تتوافق مع الواقع. على سبيل المثال، هذه الإستراتيجية التي طبقناها على رسم NASDAQ اليومي: قام رسم AAPL Heikin Ashi بتلبية الطلب في 2023-09-25 بسعر اصطناعي قدره 175.61 دولارًا أمريكيًا. ومع ذلك، بعد تمكين خيار "استخدام OHLC القياسي"، تم ملء نفس الطلب بسعر الرسم القياسي البالغ 174.20 دولارًا أمريكيًا.