المتاجرة نظام تصميم و الأمثل


أنظمة التداول الترميز: اختبار، استكشاف الأخطاء وإصلاحها والتحسين الآن بعد أن لديك نظام التداول المصممة والمشفرة، فقد حان الوقت لاختبار ذلك للتأكد من أن الترميز الخاص بك خالية من الأخطاء المنطقية والتقنية. وسوف ننظر أيضا في شيء يعرف باسم التحسين - ميزة في بعض البرامج التجارية التي تسمح لك لضبط قواعد التداول الخاصة بك لتناسب الأسهم التي كنت تخطط للتداول. اختبار نظام التداول الخاص بك الغالبية العظمى من التطبيقات التجارية التي تدعم لغات البرمجة كما تدعم أدوات الاختبار. وتنقسم هذه الأدوات إلى فئتين: 1. التقنية الفنية أدوات الاختبار البحث عن الأخطاء التقنية في التعليمات البرمجية. على سبيل المثال، إذا نسيت إضافة فاصلة منقوطة بعد عبارة، فستخبرك أداة الاختبار الفني بأن كشفك غير صالح. يعتمد موقع أداة الاختبار الفني على تطبيق التداول المستخدم. تعرض ميتاترادر ​​خطأ أو نتائج معيبة عند محاولة تجميع التعليمات البرمجية الخاصة بك، في حين أن تطبيقات التداول مثل تراديسيسيون لديها أداة التحقق من التعليمات البرمجية المضمنة في واجهة التي تمكنك من التحقق من التعليمات البرمجية الخاصة بك عن الأخطاء قبل تطبيقه. 2. منطقي أدوات الاختبار المنطقي البحث عن الأخطاء المنطقية في التعليمات البرمجية. على سبيل المثال، إذا حدث استخدام علامة أكبر من علامة بدلا من علامة أقل من علامة (والتي ليست خطأ فني)، فستظهر لك أداة اختبار منطقية أن نتائجك غير منطقية. أداة الاختبار المنطقي الأكثر شعبية هي أداة باكتستينغ. هذه الأداة تسمح لك أن تأخذ البيانات الماضية وتطبيق نظام التداول الخاص بك إلى تلك البيانات. هذا يمنحك فكرة عما يلي: ما إذا كان نظام التداول الخاص بك مربحا 13 ما هي الشروط التي أثبتت أنها الأكثر ربحية 13 في حالة وجود أي أخطاء في القواعد الخاصة بك (لمزيد من المعلومات، انظر باكتستينغ: تفسير الماضي). استكشاف الأخطاء وإصلاحها التداول الخاص بك النظام كما هو الحال مع أي نوع آخر من البرمجة، يمكن أن يكون استكشاف الأخطاء وإصلاحها مهمة شاقة وصعبة. ويتطلب العثور على أخطاء في الشفرة تصنيفا منهجيا من خلال الشفرة لتحديد الأخطاء التركيبية التي قد تؤدي إلى توقف البرنامج، على الرغم من أنه غالبا ما يكون طفيفة. وإليك بعض الأخطاء الشائعة للبحث عن: الفاصلة المنقوطة بعد العبارات - هذه يجب أن تكون بعد كل بيان. 13 متغيرات غير معروفة - تذكر أن عليك أن تعلن عنها قبل استخدامها 13 أخطاء إملائية - إذا تم كتابة أي أسماء أو وظائف بشكل غير صحيح، فإن تطبيق التداول سيعود خطأ (انظر المثال أدناه). 13 الاستخدام غير الصحيح ل () - تذكر أن تعين قيمة واحدة إلى قيمة أخرى، في حين أن الوسائل تساوي. 13 الاستخدام غير الصحيح للوظائف المضمنة - استشر وثائق تطبيقات التداول أو واجهة برمجة التطبيقات (أبي) للتأكد من أنك تستخدم الصيغة الصحيحة. بعض التطبيقات التجارية تحتوي على ميزة من شأنها أن تمكنك من اختبار التعليمات البرمجية الخاصة بك قبل استخدام أو تجميعه. هذه الميزة تسمح لك أن ترى ما هو الخطأ وعلى أي خط يمكن العثور عليها. خذ تراديسيسيون على سبيل المثال: هنا يمكننا أن نرى أن تراديسيسيون يعطينا الموقع (الخط والعمود) من الخطأ، ووصف الخطأ ونوع الخطأ (في هذه الحالة، فمن سينتاكتيكال). إذا نظرنا إلى التعبير، يمكننا أن نرى أنه في العمود 8 زروسبيلو ليست وظيفة صالحة. إذا استبدلنا x (الموجود في العمود 8) ب c، فسيكون لدينا رمز صالح. إذا نظرنا إلى ميتاتريدر، يمكننا أن نرى أن الأخطاء تأتي عندما نحاول تجميع البرنامج: هنا يمكننا أن نرى أنه في الوصف تقول متغير بينو لم يتم تعريف. النقر المزدوج على رسالة الخطأ هذه سيجلبنا إلى الموقع المحدد للخطأ في الشفرة. كما ترون، معظم التطبيقات التجارية تعطيك وسيلة سهلة لتحديد الأخطاء التقنية وإصلاحها. تحديد الأخطاء ببساطة ينطوي على الذهاب بشكل منهجي من خلال كل رسالة خطأ ثم إعادة ترجمة التعليمات البرمجية أندور تطبيق نظام التداول على الرسوم البيانية الخاصة بك. تحسين نظام التداول تسمح لك بعض تطبيقات التداول بتحديد المتغيرات التي يجب تحسينها. تراديسيسيون، على سبيل المثال، يتيح لك بسهولة تحديد متغير واستبدالها مع التعليمات البرمجية التي سوف تحاول التحسين. التحسين نفسه هو ببساطة العملية التي تجد القيمة المثلى لعنصر نظام التداول معين على أساس النتائج والأداء السابق. لاحظ أن الإفراط في التحسين يؤدي إلى أنظمة التداول التي غير قادرة على التكيف مع ظروف السوق وبالتالي، فمن المهم فقط تحسين بعض المتغيرات الهامة، وليس كل متغير هنا هو ما تبدو ميزة التحسين في تراديسيسيون: يمكنك أن ترى أننا أعلنا اثنين من المتغيرات الجديدة وتعيينها يساوي. ببساطة يعني أن برنامج التداول سوف يحل محل هذا مع العدد الأمثل. بعد ذلك، يمكنك أن ترى أننا استخدمنا المتغيرات الجديدة ضمن استراتيجية التداول لدينا. وأخيرا، وضعنا مجموعة للأرقام (حتى أن البرنامج لن البحث إلى ما لا نهاية). بعض البرامج التجارية الأخرى لديها الميزات التي تعمل بطريقة مماثلة، مما يسمح لك لاستبدال القيمة العددية مع وتقول تطبيق التداول لتحسينه. خاتمة الآن يجب أن يكون قد وضعت نظام التداول العمل الذي يمكن أن يكون لديك الثقة. في الجزء التالي من هذه السلسلة، سوف تتعلم كيفية تطبيق نظام التداول الخاص بك إلى الرسوم البيانية وكيفية استخدامها لاتخاذ قرارات التداول كيفية تحسين نظام التداول ملاحظة: هذا موضوع متقدم إلى حد ما. يرجى قراءة دروس أفل السابقة أولا. الفكرة وراء التحسين هو بسيط. أولا يجب أن يكون لديك نظام التداول، وهذا قد يكون بسيط المتوسط ​​المتحرك كروس على سبيل المثال. في كل نظام تقريبا هناك بعض المعلمات (كمتوسط ​​الفترة) التي تقرر كيف يتصرف النظام (أي هو مناسب تماما على المدى الطويل أو القصير الأجل، كيف هو رد فعل على الأسهم شديدة التقلب، الخ). التحسين هو عملية إيجاد القيم المثلى لتلك المعلمات (إعطاء أعلى ربح من النظام) لرمز معين (أو مجموعة من الرموز). أميبروكر هي واحدة من عدد قليل جدا من البرامج التي تسمح لك لتحسين النظام الخاص بك على رموز متعددة في آن واحد. لتحسين النظام لديك لتحديد من واحد تصل عشرة معلمات إلى أن يكون الأمثل. عليك أن تقرر ما هو الحد الأدنى والحد الأقصى المسموح به للقيمة المعلمة وفي ما الزيادات هذه القيمة يجب تحديث. أميبروكر ثم ينفذ اختبارات الظهر متعددة النظام باستخدام جميع توليفات الممكنة من قيم المعلمات. عند الانتهاء من هذه العملية أميبروكر يعرض قائمة النتائج مرتبة حسب صافي الربح. كنت قادرا على رؤية قيم المعلمات الأمثل التي تعطي أفضل نتيجة. كتابة صيغة أفل يتم دعم التحسين في اختبار الظهر عن طريق وظيفة جديدة تسمى الأمثل. بناء جملة هذه الدالة كما يلي: المتغير الأمثل (كوت الوصف كوت، ديفولت. مين. ماكس ستيب) فاريابل - هو متغير أفل العادي الذي يحصل على تعيين القيمة التي تم إرجاعها عن طريق تحسين الدالة. مع باكتستينغ العادي، والمسح الضوئي، واستكشاف وسائط كومنتاري وظيفة الأمثل ترجع القيمة الافتراضية، وبالتالي فإن الدعوة وظيفة أعلاه ما يعادل: الافتراضي المتغير في وضع الأمثل وظيفة تحسين ترجع القيم المتتالية من دقيقة إلى أقصى حد (إينكلوسيفيلي) مع خطوة يخطو. كوت دسكريبتيونوت هو عبارة عن سلسلة تستخدم لتحديد متغير التحسين ويتم عرضها كاسم عمود في قائمة نتائج التحسين. الافتراضي هو القيمة الافتراضية التي تحسن عوائد الدالة في الاستكشاف والمؤشر والتعليق والمسح الضوئي وطبيعية وسائط اختبار الظهر دقيقة هي قيمة الحد الأدنى للمتغير يجري الأمثل ماكس هو الحد الأقصى لقيمة المتغير يجري خطوة الأمثل هو الفاصل الزمني المستخدم لزيادة قيمة من دقيقة إلى أقصى يدعم أميبروكر تصل 64 مكالمات لتحسين وظيفة (وبالتالي تصل 64 متغيرات التحسين)، لاحظ أنه إذا كنت تستخدم الأمثل شامل ثم انها فكرة جيدة حقا للحد من عدد من المتغيرات الأمثل لعدد قليل فقط. كل دعوة لتحسين توليد (ماكس - دقيقة) حلقات تحسين الخطوة ومكالمات متعددة لتحسين مضاعفة عدد من أشواط اللازمة. على سبيل المثال تحسين معلمتين باستخدام 10 خطوات تتطلب 1010 100 حلقات التحسين. استدعاء وظيفة تحسين فقط مرة واحدة لكل متغير في بداية الصيغة الخاصة بك كما كل مكالمة يولد حلقات التحسين الجديدة يتم دعم الأمثل رمز متعددة بشكل كامل من قبل أميبروكر أقصى مساحة البحث هو 2 64 (10 19 10،000،000،000،000،000،000) مجموعات 1. واحد الأمثل المتغير: سيغافغ الأمثل (سيغافغ)، ماسد (12) 26). (1) شراء عبر (ماسد (12. 26)، إشارة (12. 26. سيغافغ) 2. الأمثل اثنين متغير (مناسبة لرسم 3D) في تحسين (لكل 2. 2. 50. 1) مستوى تحسين (مستوى 2. 2. 2. 150. 4) شراء الصليب (تسي (لكل)، مستوى) بيع الصليب (المستوى، تسي (لكل)) 3. متعددة (3) الأمثل المتغير: فاست تحسين (ماسد سريع 12. 8. 1) مسلو الأمثل (ماسد بطيء 26. 17. 1) سيغافغ تحسين (إشارة (.MFfast، مسلو، سيغافغ) إشارة (مفاست، مسلو، سيغافغ)) بيع عبر (إشارة (مفاست، مسلو، سيغافغ)، ماسد (مفاست، مسلو)) بعد دخول و أورمولا فقط انقر على زر التحسين في تحليل تلقائي. سيبدأ أميبروكر اختبار جميع التوليفات الممكنة من متغيرات التحسين والإبلاغ عن النتائج في القائمة. بعد إجراء التحسين يتم عرض قائمة النتيجة مرتبة حسب صافي الربح. كما يمكنك فرز النتائج من قبل أي عمود في قائمة النتائج فمن السهل للحصول على القيم المثلى للمعلمات لأدنى تراجع، أدنى عدد من الصفقات، أكبر عامل ربح، أدنى تعرض السوق وعالية المخاطر العائد السنوي المعدل. تعرض الأعمدة الأخيرة لقائمة النتائج قيم متغيرات التحسين للاختبار المعطى. عندما تقرر أي مجموعة من المعلمات تناسب احتياجاتك أفضل ما عليك القيام به هو استبدال القيم الافتراضية في تحسين المكالمات وظيفة مع القيم المثلى. في المرحلة الحالية تحتاج إلى كتابتها باليد في نافذة تحرير الصيغة (المعلمة الثانية من تحسين استدعاء وظيفة). عرض مخططات تحسين الرسوم المتحركة ثلاثية الأبعاد لعرض مخطط التحسين ثلاثي الأبعاد، تحتاج إلى تشغيل التحسين ثنائي المتغير أولا. يحتاج تحسينين متغيرين إلى صيغة تحتوي على 2 استدعاءات الدالة (). على سبيل المثال صيغة التحسين ثنائية المتغير تبدو كما يلي: لكل تحسين (لكل 2. 2. 50. 1) تحسين مستوى (مستوى 2. 2. 150. 4) شراء الصليب (تسي (لكل)، - Level) بيع الصليب (المستوى، تسي (لكل)) بعد دخول الصيغة تحتاج إلى النقر فوق زر كوتوبتيميزكوت. بعد اكتمال التحسين، يجب النقر على السهم المنسدل على زر التحسين واختيار عرض الرسم البياني للتحسين ثلاثي الأبعاد. في بضع ثوان سوف تظهر مؤامرة سطح ثلاثي الأبعاد الملونة في إطار عارض الرسم البياني 3D. على سبيل المثال، يظهر الرسم البياني ثلاثي الأبعاد الذي تم إنشاؤه باستخدام الصيغة أعلاه. افتراضيا تعرض المخططات ثلاثية الأبعاد قيم صافي الربح مقابل متغيرات التحسين. ومع ذلك يمكنك رسم مخطط سطح ثلاثي الأبعاد لأي عمود في جدول نتيجة التحسين. ما عليك سوى النقر على رأس العمود لفرزه (سيظهر السهم الأزرق يشير إلى أن نتائج التحسين مرتبة حسب عمود محدد)، ثم اختر عرض الرسم البياني للتحسين ثلاثي الأبعاد مرة أخرى. من خلال تصور كيف تؤثر معلمات الأنظمة الخاصة بك على أداء التداول، يمكنك بسهولة تحديد أي القيم المعلمة تنتج كوتفراجيليكوت والتي تنتج أداء النظام كروبوستكوت. إعدادات قوية هي المناطق في الرسم البياني 3D التي تظهر تغييرات تدريجية بدلا من التغيرات المفاجئة في مؤامرة سطحية. 3D الرسوم البيانية الأمثل هي أداة عظيمة لمنع منحنى المناسب. يحدث الانحناء المناسب (أو الإفراط في التحسين) عندما يكون النظام أكثر تعقيدا مما يجب أن يكون، وكل ذلك التعقيد كان يركز على ظروف السوق التي قد لا تحدث مرة أخرى. التغييرات الجذرية (أو طفرات) في المخططات الأمثل 3D تظهر بوضوح المناطق الإفراط في التحسين. يجب عليك اختيار منطقة المعلمة التي تنتج هضبة واسعة واسعة على الرسم البياني 3D لتداول حياتك الحقيقية. مجموعات المعلمة إنتاج الأرباح الربح لن تعمل بشكل موثوق في التداول الحقيقي. 3D الرسم البياني المشاهد يتحكم أميبروكيرز 3D الرسم البياني المشاهد يوفر قدرات مشاهدة كاملة مع دوران الرسم البياني الكامل والرسوم المتحركة. الآن يمكنك عرض نتائج النظام الخاص بك من كل منظور يمكن تصوره. يمكنك التحكم في الموقف والمعلمات الأخرى من المخطط باستخدام الماوس، شريط الأدوات واختصارات لوحة المفاتيح، كل ما تجد أسهل بالنسبة لك. أدناه سوف تجد القائمة. - لتدوير - اضغط باستمرار على زر الماوس الأيسر والانتقال في اتجاهات زي - للتكبير، تصغير - اضغط باستمرار على زر الماوس رايت والانتقال في الاتجاهات زي - لنقل (ترجمة) - اضغط باستمرار على زر الماوس الأيمن ومفتاح كترل التحرك في اتجاهات زي - للتحريك - اضغط باستمرار على زر الماوس الأيسر، اسحب بسرعة والافراج عن زر أثناء سحب سباس - تحريك (لصناعة السيارات في تدوير) مفتاح السهم الأيسر - تدوير الرأس. ليفت رايت أرو كي - تدوير الدوار. الحق لأعلى مفتاح السهم - تدوير هوريز. فوق السهم لأسفل كي - روتيت هوريز. أسفل (نومباد) - قرب (تكبير) نومباد - (مينوس) - الأقصى (تصغير) نومباد 4 - تحرك اليسار نومباد 6 - تحرك الحق نومباد 8 - نقل ما يصل نومباد 2 - التحرك لأسفل بادج أوب - مستوى المياه أعلى الصفحة لأسفل - مستوى المياه أسفل التحسين الذكي (غير الشامل) الأمثل يقدم أميبروكر الآن تحسينا ذكيا (غير شامل) بالإضافة إلى بحث شامل وشامل. ومن المفيد إجراء بحث غير شامل إذا كان عدد جميع توليفات المعلمات لنظام التداول المعطى أكبر من أن يكون مجديا للبحث الشامل. البحث الشامل على ما يرام تماما طالما أنه من المعقول استخدامه. دعونا نقول لديك 2 معلمات كل تتراوح من 1 إلى 100 (الخطوة 1). ثاتس 10000 تركيبات - موافق تماما للبحث شامل. الآن مع 3 المعلمات التي حصلت على 1 مليون تركيبات - فإنه لا يزال موافق للبحث شامل (ولكن يمكن أن يكون لينغتي). مع 4 معلمات لديك 100 مليون تركيبات ومع 5 معلمات (1..100) لديك 10 مليار تركيبات. في هذه الحالة سيكون وقتا طويلا جدا للتحقق من كل منهم، وهذا هو المجال حيث طرق البحث الذكية غير شاملة يمكن أن تحل المشكلة التي ليست قابلة للحل في وقت معقول باستخدام بحث شامل. هنا على الاطلاق تعليمات أبسط كيفية استخدام محسن جديد غير شامل (في هذه الحالة سما-إس). 1. افتح الصيغة في محرر الصيغة 2. أضف هذا السطر الواحد في أعلى الصيغة: أوبتميزيرزيتنجين (كوتسمايكوت) يمكنك أيضا استخدام كوتسوكوت أو كوتريبكوت هنا 3. (اختياري) حدد هدف التحسين الخاص بك في التحليل التلقائي، الإعدادات، كووالك - Forwardquot علامة التبويب، حقل الهدف الأمثل. إذا تخطيت هذه الخطوة فإنه سيتم تحسين ل كارمد (العائد السنوي المركب مقسوما على الحد الأقصى للسحب). الآن إذا قمت بتشغيل التحسين باستخدام هذه الصيغة، فإنه سيتم استخدام تطور جديد (غير شامل) سما-إس محسن. كيف يعمل التحسين هو عملية إيجاد الحد الأدنى (أو الحد الأقصى) من وظيفة معينة. ويمكن اعتبار أي نظام تجاري دالة لعدد معين من الحجج. المدخلات هي المعلمات وبيانات الاقتباس. الناتج هو هدف التحسين الخاص بك (ويقول كارمد). وأنت تبحث عن أقصى وظيفة معينة. وتستند بعض خوارزميات التحسين الذكية على الطبيعة (السلوك الحيواني) - خوارزمية بسو، أو العملية البيولوجية - الخوارزميات الجينية، وبعضها يقوم على المفاهيم الرياضية المستمدة من قبل البشر - سما-إس. وتستخدم هذه الخوارزميات في العديد من المجالات المختلفة، بما في ذلك التمويل. أدخل كوتسو فينانسكوت أو كوتسما-إس فينانسكوت في جوجل وسوف تجد الكثير من المعلومات. طرق غير حصرية (أو كوتسمارتكيوت) سوف تجد العالمية أو المحلية الأمثل. والهدف هو بالطبع العثور على واحدة عالمية، ولكن إذا كان هناك ذروة حادة واحدة من مجموعات المعلمة زيليونس، قد تفشل طرق غير شاملة للعثور على هذه الذروة واحدة، ولكن أخذها شكل التجار المنظور، وإيجاد ذروة حادة واحدة لا طائل منه ل لأن هذه النتيجة ستكون غير مستقرة (هشة جدا) ولا يمكن تكرارها في التداول الحقيقي. في عملية التحسين نحن بدلا من البحث عن مناطق الهضبة مع المعلمات مستقرة وهذا هو المجال حيث أساليب ذكية تألق. أما الخوارزمية المستخدمة من قبل البحث غير الشامل فهي تبدو كما يلي: أ) المحسن يولد بعض (عادة عشوائية) بدء مجموعة من مجموعات المعلمات ب) يتم تنفيذ باكتست من قبل أميبروكر لكل مجموعة المعلمة من السكان ج) نتائج باكتيستس هي يتم تقييمها وفقا لمنطق الخوارزمية ويتم توليد السكان الجدد بناء على تطور النتائج، د) إذا وجدت أفضل جديد - حفظه والذهاب إلى الخطوة ب) حتى يتم الوفاء بمعايير التوقف يمكن أن تشمل معايير التوقف التالية: أ) الوصول المحدد الحد الأقصى للتكرار ب) يتوقف إذا كان المدى من أفضل القيم الموضوعية للأجيال X الأخيرة هو صفر ج) توقف إذا كان إضافة 0.1 ناقلات الانحراف المعياري في أي اتجاه محور رئيسي لا يغير قيمة القيمة الموضوعية د) الآخرين لاستخدام أي الذكية (غير - شاملة) في أميبروكر تحتاج إلى تحديد محرك محسن تريد استخدامها في صيغة أفل باستخدام الدالة أوبتميزيرسيتنجين. تقوم الدالة باختيار محرك التحسين الخارجي المحدد بالاسم. أميبروكر حاليا السفن مع 3 محركات: محسن سرب الجسيمات القياسية (كوتسوكوت)، القبائل (كوتريبكوت)، و سما-إس (كوتسمايكوت) - أسماء في الأقواس لاستخدامها في المكالمات أوبتميزيرزيتنجين. بالإضافة إلى اختيار محرك محسن قد ترغب في تعيين بعض المعلمات الداخلية. للقيام بذلك استخدام وظيفة أوبتميزيرزيتوبتيون. أوبتميزيرزيتوبتيون (كوتونكوت، قيمة) وظيفة تعيين وظيفة معلمات إضافية لمحرك التحسين الخارجي. المعلمات تعتمد على المحرك. كل ثلاثة أمثلية شحنها مع أميبروكر (سبسو، تريب، كمي) دعم معلمتين: كوتونسكوت (عدد من أشواط) و كوتاكسيفالكوت (أقصى التقييمات (اختبارات) في تشغيل واحد). سلوك كل معلمة يعتمد على المحرك، لذلك قد القيم نفسها وعادة ما تسفر عن نتائج مختلفة مع محركات مختلفة المستخدمة. الفرق بين تشغيل و ماكسفال كما يلي. التقييم (أو الاختبار) هو باكتست واحد (أو تقييم قيمة وظيفة موضوعية). رن هو تشغيل واحد كامل من الخوارزمية (إيجاد القيمة المثلى) - وعادة ما تنطوي على العديد من الاختبارات (التقييمات). كل تشغيل ببساطة ريستارتس عملية التحسين بأكملها من بداية جديدة (جديدة عشوائية السكان عشوائي). لذلك كل تشغيل قد يؤدي إلى إيجاد ماكسمين المحلية المختلفة (إذا لم تجد العالمية واحدة). حتى يعمل معلمات يحدد عدد خوارزميات لاحقة يعمل. ماكسيفال هو الحد الأقصى لعدد التقييمات (باكتيستس) في أي تشغيل واحد. إذا كانت المشكلة بسيطة نسبيا و 1000 الاختبارات تكفي للعثور على ماكس العالمية، 5x1000 هو أكثر عرضة للعثور على الحد الأقصى العالمي لأن هناك فرص أقل أن تكون عالقة في ماكس المحلية، كما تشغيل لاحق سوف تبدأ من مختلف عشوائي عشوائي السكان اختيار قيم المعلمة يمكن تكون صعبة. ذلك يعتمد على المشكلة تحت الاختبار، وتعقيدها، وما إلى ذلك. أي طريقة عشوائية غير شاملة لا تعطيك ضمان العثور على ماكسمين العالمي، بغض النظر عن عدد من الاختبارات إذا كان أصغر من شاملة. أسهل الجواب هو. تحديد عدد كبير من الاختبارات كما هو معقول بالنسبة لك من حيث الوقت اللازم لإكمال. نصيحة بسيطة أخرى هي مضاعفة من قبل 10 عدد من الاختبارات مع إضافة بعدا جديدا. وهذا قد يؤدي إلى المبالغة في تقدير عدد الاختبارات المطلوبة، ولكنها آمنة تماما. تم تصميم محركات شحنها لتكون بسيطة للاستخدام، وبالتالي يتم استخدام قيم ديفولتاوتوماتيك كوترياسونابلكوت بحيث يمكن تشغيل الأمثل عادة دون تحديد أي شيء (قبول افتراضيات). من المهم أن نفهم أن جميع أساليب التحسين الذكية تعمل بشكل أفضل في مساحات المعلمة المستمرة والوظائف الموضوعية على نحو سلس نسبيا. إذا كانت مساحة المعلمة خوارزميات تطورية منفصلة قد تواجه صعوبة في إيجاد القيمة المثلى. وهو صحيح خاصة بالنسبة للمعلمات الثنائية (أونوف) - فهي ليست مناسبة لأي طريقة البحث التي تستخدم التدرج من تغيير وظيفة موضوعية (كما تفعل معظم الأساليب الذكية). إذا كان نظام التداول الخاص بك يحتوي على العديد من المعلمات الثنائية، يجب أن لا تستخدم محسن الذكية مباشرة عليها. بدلا من ذلك محاولة لتحسين المعلمات المستمرة فقط باستخدام محسن الذكية، والتبديل المعلمات الثنائية يدويا أو عن طريق البرنامج النصي الخارجي. سبسو - محسن سرب الجسيمات القياسي يستند سرب محسن الجسيمات القياسي إلى رمز SPSO2007 الذي من المفترض أن ينتج نتائج جيدة شريطة أن يتم توفير المعلمات الصحيحة (أي تشغيل، ماكسيفال) لمشكلة معينة. اختيار الخيارات الصحيحة للمحسن بسو يمكن أن تكون خادعة وبالتالي النتائج قد تختلف بشكل كبير من حالة إلى أخرى. SPSO. dll يأتي مع رموز المصدر الكامل داخل كوتادكوت الفرعية. رمز المثال لمحسن سرب الجسيمات القياسية: (إيجاد القيمة المثلى في 1000 اختبار داخل مساحة البحث من 10000 مجموعات) أوبتميزيرزيتنجين (كوتسوكوت) أوبتميزيرزيتوبتيون (كوتونسكوت، 1) أوبتميزيرزيتوبتيون (كوتاكسيفالكوت، 1000) سي تحسين (كوتسكوت، 26، 1، 100، 1 (فا، سل)، 0) بيع عبر (0، ماسد (فا، سي)) ترابيس - التكيف المعلمات أقل الجسيمات سرب محسن القبائل هو التكيف ، المعلمة أقل نسخة من بسو (الجسيمات سرب الأمثل) محسن غير شاملة. للحصول على خلفية علمية انظر: acidleswarm. infoTribes2006Cooren. pdf من الناحية النظرية ينبغي أن تؤدي أفضل من بسو العادية، لأنه يمكن ضبط تلقائيا أحجام سرب واستراتيجية خوارزمية للمشكلة التي يجري حلها. وتظهر الممارسة أن أدائها يشبه إلى حد بعيد بسو. و Tribes. DLL المساعد ينفذ كوتريبس-دكوت (أي البعد بلا حدود) البديل. استنادا إلى clerc. maurice. free. frpsoTribesTRIBES-D. zip التي كتبها موريس كليرك. رموز المصدر الأصلي المستخدمة مع إذن من المؤلف Tribes. DLL يأتي مع شفرة المصدر الكامل (داخل مجلد كوتادكوت) المعلمات المعتمدة: كوتاكسيفالكوت - الحد الأقصى لعدد التقييمات (باكتيستس) لكل تشغيل (الافتراضي 1000). يجب زيادة عدد التقييمات مع عدد متزايد من الأبعاد (عدد من معلمات التحسين). الافتراضي 1000 هو جيد لمدة 2 أو 3 أبعاد كحد أقصى. كوتونسكوت - عدد من أشواط (إعادة تشغيل). (الافتراضي 5) يمكنك ترك عدد من أشواط القيمة الافتراضية 5. يتم افتراضيا تعيين عدد من تشغيل (أو إعادة تشغيل) إلى 5. لاستخدام محسن القبائل، تحتاج فقط لإضافة سطر واحد إلى التعليمات البرمجية الخاصة بك: أوبتميزيرزيتوبتيون (كوتاكسيفالكوت ، 5000) 5000 تقييم كحد أقصى سما-إس - التباين المتزامن مصفوفة التكيف استراتيجية التحسين التطوري سما-إس (مصفوفة التغايرية التكيف استراتيجية تطور) هو محسن غير شاملة متقدمة. للحصول على خلفية علمية انظر: bionik. tu-berlin. deusernikocmaesintro. html وفقا للمعايير العلمية يتفوق على تسع استراتيجيات أخرى تطورية شعبية (مثل بسو، التطور الوراثي والتفاضلي). bionlin. tu-berlin. deusernikocec2005.html البرنامج المساعد CMAE. DLL ينفذ كوتغلوبالكوت البديل من البحث مع عدة إعادة تشغيل مع زيادة حجم السكان CMAE. DLL يأتي مع التعليمات البرمجية المصدر الكامل (داخل مجلد كوتادكوت) يتم تعيين افتراضيا عدد من تشغيل (أو إعادة تشغيل) إلى 5. ينصح لترك العدد الافتراضي من إعادة التشغيل. قد تختلف ذلك باستخدام أوبتيميزيرزيتوبتيون (كورتونسكوت، N)، حيث يجب أن يكون N في النطاق 1..10. تحديد أكثر من 10 أشواط غير مستحسن، وإن كان ذلك ممكنا. لاحظ أن كل تشغيل يستخدم تويس حجم السكان من تشغيل السابقة حتى ينمو أضعافا مضاعفة. لذلك مع 10 أشواط في نهاية المطاف مع السكان 210 أكبر (1024 مرات) من المدى الأول. هناك معلمة أخرى كوتاكسيفالكوت. القيمة الافتراضية هي صفر وهو ما يعني أن البرنامج المساعد سوف تلقائيا حساب ماكسيفال المطلوبة. ينصح بعدم تعريف ماكسيفال من قبل نفسك كما الافتراضي يعمل بشكل جيد. خوارزمية ذكية بما فيه الكفاية لتقليل عدد من التقييمات المطلوبة وتتقارب سريع جدا إلى نقطة الحل، في كثير من الأحيان يجد الحلول أسرع من الاستراتيجيات الأخرى. فمن الطبيعي أن البرنامج المساعد سوف تخطي بعض خطوات التقييم، إذا كان يكتشف أن تم العثور على حل، لذلك يجب أن لا يفاجأ أن شريط التقدم الأمثل قد تتحرك بسرعة كبيرة في بعض النقاط. البرنامج المساعد لديه أيضا القدرة على زيادة عدد الخطوات على القيمة المقدرة في البداية إذا كان هناك حاجة للعثور على الحل. نظرا لطبيعة تكيفها، و كوتستيماتد الوقت ليفتكووت أندور كوتنومبر من ستارسكوت المعروضة من قبل الحوار التقدم هو فقط اقتبس تخمين في تيمكوت وقد تختلف خلال دورة التحسين. لاستخدام محسن سما-إس، تحتاج فقط لإضافة سطر واحد إلى التعليمات البرمجية الخاصة بك: وهذا سيتم تشغيل التحسين مع الإعدادات الافتراضية التي هي على ما يرام بالنسبة لمعظم الحالات. وتجدر الإشارة إلى ذلك، كما هو الحال مع العديد من خوارزميات البحث كونتينو-الفضاء، أن انخفاض معلمة كوتستيبكوت في تحسين () مكالمات فونسيتون لا يؤثر بشكل كبير مرات التحسين. الشيء الوحيد الذي يهم هو مشكلة كوتديمنزيونكوت، أي عدد من المعلمات المختلفة (عدد من المكالمات وظيفة الأمثل). يمكن تعيين عدد كوستيبسكوت لكل معلمة دون التأثير على الوقت الأمثل، وذلك باستخدام أفضل دقة تريد. من الناحية النظرية يجب أن تكون الخوارزمية قادرة على إيجاد حل في معظم 900 (N3) (N3) باكتيستس حيث كوتنوت هو البعد. في الممارسة أنه يتلاقى الكثير أسرع. على سبيل المثال الحل في 3 (N3) الأبعاد المعلمة الفضاء (نقول 100100100 1 مليون خطوات شاملة) يمكن العثور عليها في عدد قليل من الخطوات 500-900 سما-إس. التحسين الفردي متعدد الخيوط بدءا من أميبروكر 5.70 بالإضافة إلى تعدد تعدد الرموز. يمكنك تنفيذ متعددة الخيوط رمز واحد الأمثل. للدخول إلى هذه الوظيفة، انقر على السهم المنسدل بجوار زر كوتوبتيميزكوت في نافذة "تحليل جديد" وحدد "تحسين فردي". سوف كوتيمديفيدوال أوبتيميزكوت استخدام كل النوى المعالج المتاحة لأداء الأمثل رمز واحد، مما يجعلها أسرع بكثير من الأمثل العادية. في كوتكونت سيمبلكوت وضع فإنه سيتم إجراء التحسين على رمز واحد. في كوتال سيمبولسكوت و كوتفيلتركوت وسائط فإنه سيتم معالجة جميع الرموز بالتتابع، أي أول الأمثل الكامل للرمز الأول، ثم الأمثل على الرمز الثاني، الخ القيود: 1. مخصص باكتستر غير معتمد (حتى الآن) 2. محركات التحسين الذكية غير معتمدة - يعمل فقط إكساوستيف الأمثل. في نهاية المطاف قد نتخلص من الحد (1) - عندما يتم تغيير أميبروكر لذلك مخصص باكتستر لا تستخدم أولي بعد الآن. (2) على الأرجح هنا للبقاء لفترة طويلة. أنظمة التداول: استكشاف الأخطاء وإصلاحها والتحسين 1313 حتى بعد نجاح تصميم وبناء نظام تداول عملي، قد يجد المتداول أن نظامه غير كامل. قد تكون هناك بعض المشاكل، مثل الحدث الذي يحافظ على توليد خسائر أو ربما القواعد واسعة جدا وتحتاج إلى أن يكون الأمثل. ما هي أسهل طريقة لإصلاح المشكلة مدى فعالية التحسين هذا القسم سوف تظهر لك كيفية استكشاف وتحسين نظام التداول الخاص بك لتحقيق أقصى قدر من الأرباح وتقليل الخسائر. استكشاف الأخطاء وإصلاحها استكشاف الأخطاء وإصلاحها هو جانب مهم جدا من تطوير النظام. نظام التداول اللائق سيكون مربحا في معظم ظروف السوق، ولكن إذا كان في بعض الأحيان يجعل خسائر كبيرة، يمكنك العمل على تحديد وحل المشكلة. وفيما يلي أربع خطوات سهلة: 1. تحديد المشكلة - البحث عن جميع الحالات التي حدثت فيها المشكلة أثناء باكتستينغ الخاص بك، أندور بدء التسجيل عند حدوث المشكلة أثناء التداول المباشر. في كل حالة، نلاحظ أي اتجاه للعوامل الأربعة التالية: نمط الرسم البياني أو سلسلة الأسعار - ارتفاع الأسعار. 13 الحجم - حجم كبير في البداية وانخفاض حجمه بعد ذلك. 13 انتشار بيداك - يشير الارتفاع في السعر على انخفاض الحجم في كثير من الأحيان إلى انتشار كبير .13 الهامش (إذا ما استخدم). 13 13 هذه هي بعض المناطق التي يمكن أن تحدث مشاكل، والتي يمكننا أن نرى من خلال تحليل الرسم البياني أدناه. لاحظ ارتفاع السعر على انخفاض حجم السهم الأخضر. لاحظ أيضا حجم كبير (بالقرب من السهم الأزرق) تليها انخفاض حجم بعد ذلك. إذا لم يتبين أن أيا من هذه هي الجاني، هناك عوامل أخرى يمكن تحليلها، مثل أحجام الكتلة وأنماط الرسم البياني المتقدمة. تقييم المشكلة - استخدام المعلومات التي جمعتها لتحديد ما تسبب بالضبط النظام إلى خلل أو لتوليد خسارة. وغالبا ما يتم ذلك باستخدام الحس السليم، أو من خلال تحليل سجلات المعاملات (المقدمة من الوسيط الخاص بك). في ما يلي أمثلة على بعض أسباب العوامل الأربعة المذكورة أعلاه التي قد تكون سبب حدوث مشكلة محددة: نمط الرسم البياني أو سلسلة السعر - يتعذر على النظام بيعه أثناء الانخفاضات الحادة أو الشراء خلال التسلق الحاد. ولعل النظام لم يكن لديه متسع من الوقت لشراء أو بيع. حجم - النظام غير قادر على بيع خلال الانخفاضات أو شراء خلال الزيادات. ولعل الأسهم ذات حجم تداول منخفض لا يستطيع النظام شراءه أو بيعه بسعر واحد. خلال هذه الحالات، يمكن أن يكون السعر مضللا دون النظر في حجم و Bidask. BidAsk انتشار - النظام يجعل عملية الشراء ولكن لا ربح بقدر ما ينبغي عند البيع. هذا يمكن أن يكون راجعا إلى حقيقة أن التاجر نسيت أن تنظر بيداسك ينتشر. إذا كان النظام مبرمجا للشراء والبيع بالسعر الحالي فإنه يدفع في الواقع الطلب. وعندما تباع، فإنه لا تبيع بالسعر الحالي ولكن بسعر العرض. في بعض الأحيان يمكن أن تكون الاختلافات بين العطاء وأسأل كبيرة، مما يؤدي إلى خسائر غير مرغوب فيها. الهامش - يبيع النظام فجأة دون سبب واضح. في حالة حدوث ذلك، قد تكون قد نسيت النظر في مكالمات الهامش. 13 3. النظر في البدائل - ببساطة حاول بعض الحلول للمشاكل التي حددتها. النظر في البدائل التالية المقابلة للمشاكل المذكورة أعلاه. نمط الرسم البياني أو سلسلة السعر - بديل واحد هو ببساطة إخبار النظام بالانتظار حتى يستقر السعر قبل الشراء. ويمكن القيام بذلك عن طريق استخدام الاختلافات بين الأسعار السابقة والسعر الحالي لإنشاء قاعدة. حجم - لحل هذه المشكلة، هل يمكن أن تخلق قاعدة تتطلب حقوق الملكية أن يكون لها كمية معينة من حجم قبل تنفيذ التجارة. بيداسك انتشار - هنا قد ترغب في شراء وبيع على أساس العرض وأسعار الطلب بدلا من السعر الحالي. الهامش - استخدام الهامش يمكن أن تكون مربحة إذا تدار المخاطر بشكل فعال. الحد من الهبوط يجب أن تبقى لكم من تلقي المكالمات الهامش. ويمكن القيام بذلك مع نقاط وقف الخسارة الزائدة أو تكتيكات أخرى مماثلة للحد من الهبوط. 13 4. تنفيذ حل - وأخيرا، نحن بحاجة إلى تطبيق الحل ونرى كيف يعمل. تداول الورق أو اختباره مرة أخرى قبل التداول المباشر غالبا ما يكون فكرة جيدة بعد تطبيق الحل لأن الحلول في بعض الأحيان لها عواقب غير مقصودة. على سبيل المثال، قواعد إضافية قد تحد من هذه الأيام السفلية، ولكن أيضا تقليل الأرباح الإجمالية (بسبب الفرص الضائعة). التحسين الأمثل يعني ببساطة العثور على أفضل مجموعات من المعلمات لسوق معين. هذه العملية يمكن أن تحسن بشكل هامشي النتائج. ومع ذلك، فإنه يحمل أيضا العديد من المخاطر لأن افتراضه الأساسي هو أن الأداء السابق يدل على تحركات الأسعار في المستقبل. ويمكن تحقيق التحسين من خلال تغيير قيم المعلمة التي ترغب في تحسينها ثم إعادة اختبار هذه التغييرات. ضع في اعتبارك أن المعلمات الأخرى يجب أن تظل ثابتة لتأثير التغييرات التي سيتم تحديدها. بمجرد العثور على القيمة التي تعطي أعلى أداء في اختبار الظهر، وتنفيذه في نظام التداول. دعونا نعتبر مثالا. Say a trader analyzed the SampP 500 and found that he or she could optimize the system by using a daily chart. This same process can also be taken to a higher degree. For example, if a simple moving average of 6 works better than 8 for an MA-crossover strategy in a given market, then 6 would be used. The problem here is not only in the assumption, but also in the fact that the system may perform worse in many other markets, thereby making it less universal. Many system developers forgo the optimization stage for these two reasons: Optimization often overstates results. This is because the parameters are so specific and non-universal that any change in the market (that is, the future) can cause instability. In many cases, optimization will not improve performance by a meaningful degree. Slight improvements may be apparent however, the forfeiture of universality is a high price to pay. 13 As a general rule, optimization should only define broad settings for parameters rather than set up specific rules - even if it was successful in backtesting and paper trading. Conclusion Troubleshooting is crucial to making your system work the way you want it to. It is important to identify any problems by observing the instances in which they occurred and then evaluating how certain conditions of several factors - such as price pattern, volume, bidask spread, and margin - may have caused the problem. Optimization can improve your results, but it is important to remember that it has its limitations. Not only is it based on the assumption that past performance indicates the future, but it is not the stage at which the trader creates specific rules - optimization is only about defining broad settings. In the next and final installment, we will provide an overview of everything weve covered along with some advice and resources to help you gain a working knowledge of trading system design and development. Trading Systems: Conclusion

Comments

Popular Posts