Monday 15 January 2018

رمز إستراتيجية التداول


خطوة أخرى أيضا.
يرجى إكمال الفحص الأمني ​​للوصول إلى رمز التداول.
لماذا يتعين علي إكمال اختبار كابتشا؟
إكمال اختبار كابتشا يثبت أنك إنسان وتمنحك إمكانية الوصول المؤقت إلى موقع الويب.
ماذا يمكنني أن أفعل لمنع ذلك في المستقبل؟
إذا كنت على اتصال شخصي، كما هو الحال في المنزل، يمكنك تشغيل فحص مكافحة الفيروسات على جهازك للتأكد من أنه لم يصاب مع البرامج الضارة.
إذا كنت في مكتب أو شبكة مشتركة، يمكنك أن تطلب من مسؤول الشبكة إجراء فحص عبر الشبكة تبحث عن الأجهزة التي تمت تهيئتها بشكل خاطئ أو المصابة.
كلودفلار راي إد: 3d2f509a23a85972 & بول؛ إب الخاص بك: 78.109.24.111 & الثور؛ الأداء & أمب؛ الأمن من قبل كلودفلار.

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

شفرة إستراتيجية التداول
رمز استراتيجية المظاهرة.
استجابة لطلب كبير على استراتيجيات التداول عينة ل ترادستاتيون، جوريك البحوث الآن يقدم مجموعة من 13 استراتيجيات في اللغة سهلة التي تعمل في ترادستاتيون. وتهدف هذه الدراسات مظاهرة كما دروس لتوضيح طرق مختلفة لتطبيق أدوات جوريك (جما، فيل، رسكس، دمكس و كفب) التي قد تختار تضمينها في الاستراتيجيات الخاصة بك. كل دراسة كاملة مع شرح مفصل لمنطق التداول، الرسم البياني وإعدادات المعلمة استخدمنا للتحقق من صحة، ورمز لغة سهلة يمكنك فتح وقراءة وتعديل.
يظهر أدناه لقطات من هذه الاستراتيجيات، كما ينطبق على أسواق محددة. لاحظ أن بعض لقطات تظهر أيضا المؤشرات. لا يتم تضمين هذه المؤشرات مع مجموعة من الاستراتيجيات. ومع ذلك، يتم تضمين هذه المؤشرات المخصصة مجانا مع شراء أدوات جوريك ل ترادستاتيون. لمزيد من المعلومات حول المؤشرات المخصصة المجانية، انتقل هنا.
للحصول على تفاصيل حول كيفية ترتيب مجموعة استراتيجية العرض التوضيحي و / أو ترقية مجموعة أدوات جوريك، انتقل إلى أسفل هذه الصفحة.
قد تنتج أطر زمنية مختلفة على الرسم البياني نتائج مختلفة.
من فضلك لا تسألنا عن إعدادات المعلمة المؤشر. كل سوق مختلف.
إن الأداء السابق لأي نظام تجاري لا يضمن أبدا الأداء المستقبلي.
جميع استراتيجيات التداول لديها مخاطر والسلع / تداول العقود الآجلة روافع هذا الخطر.
لم يتم تصميم هذا البرنامج التعليمي استراتيجية مظاهرة ليتم تداولها دون تعديل إضافي من قبل المستخدم. على سبيل المثال، يفتقد الرمز عناصر مهمة مختلفة مثل الإشارات المؤكدة البديلة وإدارة المخاطر. هو تماما لأغراض البرنامج التعليمي فقط.
جما سريع - K العشوائية.
جما مؤشر ستوكاستيك مزدوج.
كفف ديناميكي مذبذب.
قد تنتج أطر زمنية مختلفة على الرسم البياني نتائج مختلفة.
من فضلك لا تسألنا عن إعدادات المعلمة المؤشر. كل سوق مختلف.
إن الأداء السابق لأي نظام تجاري لا يضمن أبدا الأداء المستقبلي.
جميع استراتيجيات التداول لديها مخاطر والسلع / تداول العقود الآجلة روافع هذا الخطر.
لم يتم تصميم هذا البرنامج التعليمي استراتيجية مظاهرة ليتم تداولها دون تعديل أدتيونال من قبل المستخدم. على سبيل المثال، يفتقد الرمز عناصر مهمة مختلفة مثل الإشارات المؤكدة البديلة وإدارة المخاطر. هو تماما لأغراض البرنامج التعليمي فقط.
سعر مجموعة كاملة من استراتيجيات العرض هو 50 $.
حدد أحد الشروط التالية التي تصف حالتك بشكل أفضل.
إذا لم يكن لديك كل أربعة الأساسية أدوات جوريك، سوف تحتاج لشراء تلك التي مفقودة. مع هذا الشراء، وسوف نقوم بتحديث تلقائيا أدوات جوريك الأخرى لديك بالفعل. لمزيد من التفاصيل، انتقل إلى بلان A.
إذا كان لديك بالفعل جميع الأدوات الأساسية الأربعة جوريك، ولكن كان لديك أحدث الترقية قبل 1 يوليو-2017، ثم الأدوات الخاصة بك ليست محدثة. سوف تحتاج إلى ترقية لهم قبل تثبيت مجموعة تجريبي الاستراتيجية. لمزيد من التفاصيل، انتقل إلى بلان B.
إذا كان كل ما تبذلونه من أربعة أدوات جوريك الأساسية (جما + فيل + كفب + رسكس) ما يصل إلى التاريخ، تحتاج فقط للحصول على مجموعة استراتيجية. انتقل إلى الخطة C.
هذا الرسم هو مجرد توضيح. أنها ليست نشطة. قراءة التعليمات في اليسار فيما يتعلق القائمة المنتجات القائمة الحقيقية.
هذا الرسم هو مجرد توضيح. أنها ليست نشطة. قراءة التعليمات في اليسار فيما يتعلق القائمة المنتجات القائمة الحقيقية.
هذا الرسم هو مجرد توضيح. أنها ليست نشطة. قراءة التعليمات في اليسار فيما يتعلق القائمة المنتجات القائمة الحقيقية.

مجانا إيسيلانغواج.
وفيما يلي قائمة من المقالات التي تحتوي على التعليمات البرمجية المصدر إيسيلانغواج مجانا لمساعدتك على اكتشاف طرق جديدة لبناء أنظمة التداول مربحة.
رمز الاستراتيجية.
تحتوي هذه المقالات على أفكار تجارية قد تكون بذور نظام تجاري كبير. هذه ليست أنظمة التداول كاملة لأنها تقف. فهي أمثلة رائعة على حواف السوق المحتملة التي يمكن أن تقفز بدء تطوير النظام الخاص بك.
تطوير النظام.
رمز المؤشر.
كوبيرايت © 2017 بي كابيتال إفولوتيون ليك. - صمم من قبل تزدهر المواضيع | مدعوم من وورد.
الرجاد الدخول على الحساب من جديد. سيتم فتح صفحة تسجيل الدخول في نافذة جديدة. بعد تسجيل الدخول يمكنك إغلاقه والعودة إلى هذه الصفحة.

و التاجر R.
استخدام R والأدوات ذات الصلة في التمويل الكمي.
أرتشيف فور & # 8216؛ ترادينغ ستراتيجيس & # 8217؛ الفئة.
ربط R إلى إقفيد مع حزمة كوانتولس.
يوفر إقفيد تدفق خدمات البيانات والحلول التجارية التي تغطي السوق الزراعي والطاقة والمالية. بل هو معروف ومعترف به مزود تغذية البيانات الموجهة نحو مستخدمي التجزئة والمؤسسات الصغيرة. يبدأ سعر الاشتراك في حوالي 80 $ / الشهر.
وقد وضعت ستانيسلاف كوفاليفسكي حزمة تسمى كوانتولس. بل هو حزمة في كل واحدة تهدف إلى تعزيز النمذجة التداول الكمي. فإنه يسمح لتحميل وتنظيم بيانات السوق التاريخية من مصادر متعددة مثل ياهو، جوجل، فينام، موكس و إكيفيد. الميزة التي تهمني أكثر هي القدرة على ربط إكفيد ل R. أنا & # 8217؛ لقد تم استخدام إكفيد لبضع سنوات وأنا & # 8217؛ م سعيد معها (أنا & # 8217؛ م لا ينتمي إلى الشركة في أي الطريق). ويمكن الاطلاع على مزيد من المعلومات هنا. أنا & # 8217؛ كنت تبحث عن التكامل داخل R لفترة من الوقت وهنا هو. ونتيجة لذلك، بعد أن ركضت بعض الاختبارات، انتقلت التعليمات البرمجية التي كانت لا تزال في بيثون إلى R. مجرد اكتمال، وهنا & # 8217؛ ق رابط يشرح كيفية تحميل البيانات التاريخية من إكفيد باستخدام بايثون.
كوانتولس يقدم أربع وظائف رئيسية هي: الحصول على بيانات السوق، مخزن / استرداد بيانات السوق، مؤامرة البيانات سلسلة الوقت والاختبار مرة أخرى.
تأكد أولا من أن إقفيد مفتوح. يمكنك إما تحميل البيانات اليومية أو خلال اليوم. أدناه رمز التنزيلات الأسعار اليومية (المفتوحة، عالية، منخفضة، إغلاق) ل سبي من 1 يناير 2017 إلى 1 يونيو 2017.
أدناه رمز التنزيلات البيانات اللحظية من 1 مايو 2017 إلى 3 مايو 2017.
لاحظ معلمة الفترة. يمكن أن تأخذ أي من القيم التالية: القراد، 1min، 5min، 10min، 15min، 30min، ساعة، يوم، أسبوع، شهر، اعتمادا على التردد الذي تحتاجه.
كوانتولس يجعل عملية إدارة وتخزين بيانات سوق القراد سهلة. كنت فقط الإعداد معلمات التخزين وكنت على استعداد للذهاب. المعلمات هي حيث، منذ التاريخ والرموز التي ترغب في أن يتم تخزينها. في أي وقت يمكنك إضافة المزيد من الرموز وإذا لم تكن موجودة في التخزين، كوانتولس يحاول الحصول على البيانات من تاريخ البدء المحدد. سيقوم الرمز أدناه بحفظ البيانات في الدليل التالي: & # 8220؛ C: / وسرس / أرنو / دوكومينتس / ماركيت داتا / إكفيد & # 8221 ؛. هناك مجلد فرعي واحد من قبل أداة والبيانات هو أفيد في ملفات. rds.
يمكنك أيضا تخزين البيانات بين تواريخ محددة. استبدل السطر الأخير من الشفرة أعلاه بأحد الخيارات التالية.
الآن إذا كنت ترغب في الحصول على العودة بعض البيانات التي قمت بتخزينها، مجرد تشغيل شيء مثل:
لاحظ أن القراد فقط معتمد في التخزين المحلي لذلك يجب أن تكون الفترة & # 8216؛ علامة & # 8217؛
كوانتولس يوفر وظيفة plot_ts لرسم البيانات سلسلة الوقت دون عطلة نهاية الأسبوع، والعطلات والثغرات بين عشية وضحاها. في المثال أدناه، أنا أولا استرداد البيانات المخزنة أعلاه، ثم حدد أول 100 الملاحظات السعر وأخيرا رسم المخطط.
أمران أن نلاحظ: الجاسوس الأول هو كائن data. table وبالتالي بناء الجملة أعلاه. للحصول على لمحة سريعة عن قدرات data. table لها نظرة على هذه الورقة الغش ممتازة من داتاكامب. ثانيا المعلمة المحلية ترو كما يتم استرجاع البيانات من وحدة التخزين الداخلية.
كوانتولس يسمح لكتابة استراتيجية التداول الخاصة بك باستخدام C ++ أبي. أنا & # 8217؛ م لن نتحدث عن هذا لأن هذا هو أساسا C ++ التعليمات البرمجية. يمكنك الرجوع إلى قسم الأمثلة على موقع كوانتولس.
عموما أجد حزمة مفيدة للغاية وموثقة بشكل جيد. الشيء الوحيد المفقود هو تغذية حية بين R و إقفيد والتي سوف تجعل حزمة نهاية حقيقية لإنهاء الحل.
كالمعتاد أي تعليقات موضع ترحيب.
بيرت: الوافد الجديد في اتصال R إكسيل.
قبل بضعة أشهر قارئ يشير لي من هذه الطريقة الجديدة لربط R و إكسيل. أنا لا أعرف كم من الوقت كان هذا حولها، ولكن أنا لم تأتي عبر ذلك وأنا & # 8217؛ لم أر أي مشاركة بلوق أو مقالة حول هذا الموضوع. لذلك قررت أن أكتب وظيفة كأداة حقا يستحق ذلك وقبل أن يسأل أي شخص، أنا & # 8217؛ م لا علاقة للشركة بأي شكل من الأشكال.
يقف بيرت لمجموعة أدوات إكسيل R الأساسية. إنه مجاني (مرخص بموجب غل v2) وقد تم تطويره من قبل ستروتوريد داتا ليك. في وقت كتابة النسخة الحالية من بيرت هو 1.07. ويمكن الاطلاع على مزيد من المعلومات هنا. من منظور أكثر تقنية، تم تصميم بيرت لدعم تشغيل وظائف R من خلايا جداول البيانات إكسل. في عبارات إكسيل، فإنه يتم كتابة المهام التي يحددها المستخدم (أودفس) في R.
في هذا المنصب أنا & # 8217؛ م لن تظهر لك كيف R و إكسيل التفاعل عبر بيرت. هناك دروس جيدة جدا هنا، هنا وهنا. بدلا من ذلك أريد أن تظهر لك كيف استخدمت بيرت لبناء & # 8220؛ برج التحكم & # 8221؛ لتداول بلدي.
يتم إنشاء إشارات التداول الخاصة بي باستخدام قائمة طويلة من الملفات R ولكن أنا بحاجة إلى مرونة إكسيل لعرض النتائج بسرعة وكفاءة. كما هو مبين أعلاه بيرت يمكن أن تفعل هذا بالنسبة لي ولكن أريد أيضا أن خياط التطبيق لاحتياجاتي. من خلال الجمع بين قوة شمل، فبا، R و بيرت يمكنني إنشاء تطبيق جيد حتى الآن قوية في شكل ملف إكسيل مع الحد الأدنى من التعليمات البرمجية فبا. في نهاية المطاف لدي ملف اكسل واحد جمع كل المهام اللازمة لإدارة محفظتي: تحديث قاعدة البيانات، توليد إشارة، تقديم الطلبات الخ & # 8230؛ ويمكن تقسيم نهجي في الخطوات الثلاث التالية:
استخدم شمل لإنشاء قوائم وأزرار محددة من قبل المستخدم في ملف إكسيل. القوائم المذكورة أعلاه وأزرار هي أساسا يدعو إلى وظائف فبا. تلك الوظائف فبا هي التفاف حول وظائف R المعرفة باستخدام بيرت.
مع هذا النهج يمكنني الحفاظ على تمييز واضح بين جوهر بلدي رمز الاحتفاظ بها في R، سكل وبيثون وكل ما يستخدم لعرض وتنسيق النتائج أبقى في إكسيل، فبا & أمب؛ XML. في الأقسام التالية أقدم الشرط الأساسي لتطوير مثل هذا النهج ودليل خطوة بخطوة يوضح كيف يمكن استخدام بيرت لمجرد تمرير البيانات من R إلى إكسيل مع الحد الأدنى من التعليمات البرمجية فبا.
1 & # 8211؛ تحميل وتثبيت بيرت من هذا الرابط. بمجرد اكتمال التثبيت يجب أن يكون لديك قائمة الوظائف الإضافية الجديدة في إكسيل مع الأزرار كما هو موضح أدناه. هذه هي الطريقة التي تحققت بيرت في إكسيل.
2 & # 8211؛ تنزيل وتثبيت محرر واجهة مستخدم مخصص: يسمح محرر واجهة المستخدم المخصص بإنشاء قوائم وأزرار محددة من قبل المستخدم في شريط إكسيل. يتوفر إجراء خطوة بخطوة هنا.
1 & # 8211؛ R كود: وظيفة R أدناه هي قطعة بسيطة جدا من التعليمات البرمجية لأغراض التوضيح فقط. ويحسب ويعيد البقايا من الانحدار الخطي. هذا هو ما نريد استرداد في إكسيل. حفظ هذا في ملف يسمى myRCode. R (أي اسم آخر على ما يرام) في دليل من اختيارك.
2 & # 8211؛ functions. R في بيرت: من إكسيل حدد الوظائف الإضافية - & غ؛ الصفحة الرئيسية الدليل وفتح الملف يسمى functions. R. في هذا الملف قم بلصق التعليمة البرمجية التالية. تأكد من إدراج المسار الصحيح.
هذا هو مجرد مصادر في بيرت ملف R قمت بإنشائه أعلاه. ثم حفظ وإغلاق الملف functions. R. إذا كنت تريد إجراء أي تغيير على ملف R الذي تم إنشاؤه في الخطوة 1 سيكون لديك لإعادة تحميله باستخدام زر بيرت & # 8220؛ تحديث ملف بدء التشغيل & # 8221؛ من القائمة الوظائف الإضافية في إكسيل.
3 & # 8211؛ في إكسيل: إنشاء وحفظ ملف يسمى myFile. xslm (أي اسم آخر على ما يرام). هذا هو ملف تمكين ماكرو الذي تقوم بحفظه في الدليل الذي تختاره. مرة واحدة يتم حفظ الملف إغلاقه.
4 & # 8211؛ افتح الملف الذي تم إنشاؤه أعلاه في محرر واجهة المستخدم المخصصة: بعد فتح الملف، الصق الشفرة التالية.
يجب أن يكون لديك شيء من هذا القبيل في محرر شمل:
أساسا هذه القطعة من رمز شمل يخلق قائمة إضافية (رترادر)، مجموعة جديدة (مجموعتي) وزر تعريف المستخدم (زر جديد) في الشريط إكسيل. بعد الانتهاء من إجراء ذلك، افتح myFile. xslm في إكسيل وأغلق محرر واجهة المستخدم المخصص. يجب أن نرى شيئا من هذا القبيل.
5 & ​​# 8211؛ فتح محرر فبا: في myFile. xlsm إدراج وحدة نمطية جديدة. قم بلصق التعليمة البرمجية أدناه في الوحدة النمطية التي تم إنشاؤها حديثا.
يؤدي ذلك إلى محو النتائج السابقة في ورقة العمل قبل التعامل مع نتائج جديدة.
6 & # 8211؛ انقر فوق زر جديد: الآن عد إلى جدول البيانات وفي القائمة رترادر ​​انقر فوق & # 8220؛ زر جديد & # 8221؛ زر. يجب أن تشاهد شيئا مثل ما يظهر أدناه.
الدليل أعلاه هو نسخة أساسية جدا من ما يمكن تحقيقه باستخدام بيرت لكنه يظهر لك كيفية الجمع بين قوة عدة أدوات محددة لبناء التطبيق المخصص الخاص بك. من وجهة نظري مصلحة هذا النهج هو القدرة على الغراء معا R و إكسيل الواضح ولكن أيضا لتشمل عن طريق شمل (والدفعة) قطعة من التعليمات البرمجية من بايثون، سكل وأكثر من ذلك. هذا هو بالضبط ما كنت بحاجة إليه. وأخيرا أود أن تكون غريبة لمعرفة ما إذا كان أي شخص لديه أي خبرة مع بيرت؟
استراتيجية التداول: الاستفادة القصوى من البيانات من العينة.
عند اختبار استراتيجيات التداول هناك نهج مشترك هو تقسيم مجموعة البيانات الأولية إلى بيانات العينة: الجزء من البيانات المصممة لمعايرة النموذج والخروج من بيانات العينة: جزء من البيانات المستخدمة للتحقق من صحة المعايرة وضمان أن الأداء التي تم إنشاؤها في عينة ستنعكس في العالم الحقيقي. وكقاعدة عامة يمكن استخدام حوالي 70٪ من البيانات الأولية للمعايرة (أي في العينة) و 30٪ للتحقق (أي من العينة). ثم تساعد مقارنة البيانات داخل وخارج العينة على تحديد ما إذا كان النموذج قويا بما فيه الكفاية. ويهدف هذا المنصب إلى المضي قدما خطوة أخرى ويوفر طريقة إحصائية لتقرير ما إذا كان خارج العينة البيانات يتماشى مع ما تم إنشاؤه في العينة.
في الرسم البياني أدناه تمثل المنطقة الزرقاء خارج أداء العينة لأحد استراتيجياتي.
فحص بصري بسيط يكشف عن تناسب جيد بين داخل وخارج أداء العينة ولكن ما هي درجة الثقة لدي في هذا؟ في هذه المرحلة ليس كثيرا، وهذه هي القضية. والمطلوب حقا هو مقياس للتشابه بين مجموعات البيانات داخل وخارج العينة. ومن الناحية الإحصائية، يمكن ترجمة ذلك على أنه احتمال أن تأتي أرقام أداء العينة وخارجها من نفس التوزيع. هناك اختبار إحصائي غير بارامتري الذي يفعل بالضبط هذا: اختبار كروسكال واليس. ويمكن العثور على تعريف جيد لهذا الاختبار على R-توتور & # 8220؛ مجموعة من عينات البيانات مستقلة إذا كانت تأتي من السكان غير ذات الصلة والعينات لا تؤثر على بعضها البعض. باستخدام اختبار كروسكال واليس، يمكننا أن نقرر ما إذا كانت التوزيعات السكانية متطابقة دون افتراض أنها تتبع التوزيع الطبيعي. & # 8221؛ الفائدة الإضافية لهذا الاختبار لا يفترض توزيع طبيعي.
وتوجد اختبارات أخرى من نفس الطبيعة يمكن أن تتلاءم مع هذا الإطار. اختبار مان-ويتني-ويلكوكسون أو اختبارات كولموغوروف-سميرنوف يناسب تماما الإطار يصف هنا ولكن هذا خارج نطاق هذه المقالة لمناقشة إيجابيات وسلبيات كل من هذه الاختبارات. ويمكن الاطلاع على وصف جيد جنبا إلى جنب مع الأمثلة R هنا.
هنا الرمز المستخدم لإنشاء الرسم البياني أعلاه والتحليل:
في المثال أعلاه في فترة العينة أطول من خارج الفترة عينة ولذلك أنا عشوائيا إنشاء 1000 مجموعات فرعية من البيانات في العينة كل واحد لها نفس طول البيانات خارج العينة. ثم اختبرت كل عينة فرعية في مقابل عينة من البيانات وسجلت قيم p. هذه العملية لا تخلق قيمة P واحدة لاختبار كروسكال واليس ولكن التوزيع يجعل التحليل أكثر قوة. في هذا المثال يكون متوسط ​​قيم p أعلى بكثير من الصفر (0.478) مما يشير إلى أنه يجب قبول الفرضية الصفرية: فهناك أدلة قوية على أن البيانات داخل وخارج العينة تأتي من نفس التوزيع.
كالمعتاد ما هو عرض في هذا المنصب هو مثال لعبة أن خدوش فقط على سطح المشكلة ويجب أن تكون مصممة لتلبية الاحتياجات الفردية. ومع ذلك أعتقد أنه يقترح إطارا إحصائيا للاهتمام والعقلاني لتقييم نتائج العينة.
هذه المقالة مستوحاة من الورقتين التاليتين:
فيجيل ألكسندر، شميل سوان (2007)، "آثار وظائف التحسين المختلفة على الخروج من عينة أداء استراتيجيات التداول المتطورة وراثيا"، التنبؤ مؤتمر الأسواق المالية.
فيجيه أليكساندر، شميل سوان (2018)، "عملية التحسين لتحسين / الخروج من عينة الاتساق، حالة سوق الأسهم»، مؤتمر مورغان كازينوف الأسهم الكمية الكمية، لندن أكتوبر 2018.
تقديم فيدلر: فينانسيال داتا لوادير.
فيدلر هو رستوديو أدين تهدف إلى تبسيط عملية تنزيل البيانات المالية من مختلف مقدمي الخدمات. هذا الإصدار الأولي هو المجمع حول وظيفة جيتسيمبولس في حزمة كوانتمود وياهو فقط، جوجل، فريد و أواندا معتمدة. أنا ربما إضافة وظائف مع مرور الوقت. كالمعتاد مع هذه الأشياء مجرد تذكير نوع: & # 8220؛ يتم توفير البرنامج & # 8220؛ كما هو & # 8221؛، دون ضمان من أي نوع & # 8230؛ & # 8221؛
كيفية تثبيت واستخدام فيدلر؟
يمكنك الحصول على أدين / حزمة من مستودع جيثب هنا (وسوف يسجل على كران في وقت لاحق) تثبيت أدين. هناك تعليمي ممتاز لتثبيت رستوديو أدينز هنا. بمجرد تثبيت أدين يجب أن تظهر في القائمة أدين. اخترت فقط فيدلر في القائمة ونافذة كما في الصورة أدناه يجب أن تظهر. اختر موفر بيانات من القائمة المنسدلة المصدر. حدد نطاق تاريخ من قائمة التاريخ أدخل الرمز الذي ترغب في تنزيله في مربع النص الخاص بالأداة. لتحميل عدة رموز فقط أدخل الرموز مفصولة بفواصل. استخدام أزرار الراديو لاختيار ما إذا كنت ترغب في تحميل الصك في ملف كسف أو في البيئة العالمية. سيتم حفظ ملف كسف في دليل العمل وسيكون هناك ملف كسف واحد لكل أداة. اضغط على تشغيل للحصول على البيانات أو إغلاق لإغلاق أدين.
يتم التعامل مع رسائل الخطأ والتحذيرات من قبل الحزم الأساسية (كوانتمود و لامعة) ويمكن قراءتها من وحدة التحكم.
هذه هي النسخة الأولى جدا من المشروع لذلك لا نتوقع الكمال ولكن نأمل أنه سوف تتحسن مع مرور الوقت. يرجى الإبلاغ عن أي تعليق، اقتراح، علة الخ & # 8230؛ تو: ثيرترادر ​​@ غميل.
الحفاظ على قاعدة بيانات لملفات الأسعار في R.
القيام بالبحث الكمي ينطوي على الكثير من البيانات الطحن واحد يحتاج إلى بيانات نظيفة وموثوق بها لتحقيق ذلك. ما هو مطلوب حقا هو البيانات النظيفة التي يمكن الوصول إليها بسهولة (حتى من دون اتصال بالإنترنت). وكانت الطريقة الأكثر فعالية للقيام بذلك بالنسبة لي للحفاظ على مجموعة من ملفات كسف. من الواضح أن هذه العملية يمكن التعامل معها في نواح كثيرة ولكن وجدت العمل الإضافي فعالة جدا وبسيطة للحفاظ على الدليل حيث يمكنني تخزين وتحديث ملفات كسف. لدي ملف كسف واحد لكل أداة ويسمى كل ملف بعد الصك أنه يحتوي على. والسبب في ذلك هو شقين: أولا، لا أريد تحميل البيانات (السعر) من ياهو، غوغل وغيرها & # 8230؛ في كل مرة أريد أن اختبار فكرة جديدة ولكن الأهم من ذلك مرة واحدة حددت وتحديد المشكلة، وأنا لا تريد أن تفعل ذلك مرة أخرى في المرة القادمة أنا بحاجة إلى نفس الأداة. بسيطة لكنها فعالة جدا حتى الآن. يتم تلخيص العملية في الرسم البياني أدناه.
في كل ما يلي، أفترض أن البيانات تأتي من ياهو. يجب تعديل الشفرة للبيانات من غوغل، كواندل إتك & # 8230؛ وبالإضافة إلى ذلك أقدم عملية تحديث بيانات الأسعار اليومية. سيكون الإعداد مختلفا عن بيانات التردد الأعلى والنوع الآخر من مجموعات البيانات (أي مختلف عن الأسعار).
1 & # 8211؛ تحميل البيانات الأولية (listOfInstruments. R & historyData. R)
ملف listOfInstruments. R هو ملف يحتوي فقط على قائمة بجميع الصكوك.
إذا لم يكن أحد الأدوات جزءا من قائمتي (أي ملف كسف في مجلد البيانات) أو إذا قمت بذلك للمرة الأولى، عليك تنزيل مجموعة البيانات التاريخية الأولية. المثال أدناه ينزل مجموعة من صناديق المؤشرات المتداولة يوميا من ياهو فينانس إلى يناير 2000 وتخزين البيانات في ملف كسف.
2 & # 8211؛ تحديث البيانات الموجودة (updateData. R)
يبدأ رمز أدناه من الملفات الموجودة في مجلد مخصص وتحديث كل منهم واحدا تلو الآخر. أنا عادة تشغيل هذه العملية كل يوم إلا عندما أنا & # 8217؛ م في عطلة. لإضافة أداة جديدة، ببساطة تشغيل الخطوة 1 أعلاه لهذا الصك وحده.
3 & # 8211؛ إنشاء ملف دفعي (updateDailyPrices. bat)
جزء مهم آخر من المهمة هو إنشاء ملف دفعي يقوم بأتمتة عملية التحديث أعلاه (I & # 8217؛ م مستخدم ويندوز). هذا يتجنب فتح R / رستوديو وتشغيل التعليمات البرمجية من هناك. يتم وضع التعليمات البرمجية أدناه على ملف بت. (يجب تعديل المسار مع إعداد القارئ & # 8217؛ s). لاحظ أنني أضفت ملف الإخراج (updateLog. txt) لتتبع التنفيذ.
العملية المذكورة أعلاه بسيطة للغاية لأنها تصف فقط كيفية تحديث بيانات الأسعار اليومية. أنا & # 8217؛ لقد تم استخدام هذا لفترة من الوقت، وأنها كانت تعمل بسلاسة جدا بالنسبة لي حتى الآن. للحصول على بيانات أكثر تقدما و / أو ترددات أعلى، يمكن للأشياء الحصول على أكثر صعوبة.
كالمعتاد أي تعليقات موضع ترحيب.
تقييم العوامل في إدارة الحافظة الكمية.
وعندما يتعلق الأمر بإدارة محفظة من الأسهم مقابل معيار مرجعي، فإن المشكلة تختلف كثيرا عن تحديد استراتيجية العودة المطلقة. في السابق يجب أن تعقد المزيد من الأسهم مما كانت عليه في وقت لاحق حيث لا يمكن الاحتفاظ بأي أسهم على الإطلاق إذا لم تكن هناك فرصة جيدة بما فيه الكفاية. والسبب في ذلك هو خطأ التتبع. ويعرف هذا على أنه الانحراف المعياري لعائد المحفظة مطروحا منه العائد المرجعي. وكلما قلت المخزونات مقابل مقياس مرجعي كلما زاد خطأ التتبع (مثل ارتفاع المخاطر).
التحليل التالي هو مستوحى إلى حد كبير من كتاب & # 8220؛ إدارة المحافظ النشطة & # 8221؛ بواسطة غرينولد & أمب؛ كان. هذا هو الكتاب المقدس لأي شخص مهتم في تشغيل محفظة ضد المعيار. وأنا أشجع بقوة أي شخص لديه مصلحة في هذا الموضوع لقراءة الكتاب من البداية إلى النهاية. انها & # 8217؛ ق مكتوبة بشكل جيد جدا ويضع أسس إدارة المحافظ النشطة النشطة (ليس لدي أي انتماء إلى المحرر أو المؤلفين).
هنا نحن & # 8217؛ محاولة لترتيب بأكبر قدر ممكن من الأسهم في عالم الاستثمار على أساس العودة إلى الأمام. العديد من الناس جاءوا مع العديد من الأدوات و تم تطوير عدد لا يحصى من تلك الأدوات لتحقيق ذلك. في هذا المنصب، أركز على مقياسين بسيطين ومستخدمين على نطاق واسع: معامل المعلومات (إيك) وعائد الكميات (ريال قطري).
و إيك يعطي لمحة عامة عن القدرة التنبؤ عامل. وبشكل أدق، هذا مقياس لمدى تصنيف العامل للأسهم على أساس العائد الآجل. ويعرف إيك بأنه ارتباط الرتبة (ρ) بين المقياس (مثل العامل) والعائد الآجل. ومن الناحية الإحصائية، فإن ارتباط الرتبة هو مقياس غير حسابي للاعتماد بين متغيرين. وبالنسبة لعينة من الحجم n، يتم تحويل الدرجات الخام n إلى الرتب، وتحسب ρ من:
ويجب أن يحدد المحلل الأفق للعودة الآجلة، كما أنه يمثل دالة لدوران الإستراتيجية وتسوس ألفا (كان هذا موضوع بحث موسع). من الواضح أن المراآز يجب أن تكون على أعلى مستوى ممكن من حيث القيمة المطلقة.
للقارئ الحريص، في كتاب غرينولد & أمب؛ كاهن وتعطى صيغة ربط نسبة المعلومات (إر) و إيك: مع اتساع عدد من الرهانات مستقلة (الصفقات). وتعرف هذه الصيغة بالقانون الأساسي للإدارة الفعالة. المشكلة هي أنه في كثير من الأحيان، وتحديد اتساع بدقة ليست سهلة كما يبدو.
من أجل الحصول على تقدير أكثر دقة للقوة التنبؤية للعامل فإنه من الضروري أن يذهب خطوة أبعد وأسهم المجموعة حسب كمية قيم عامل ثم تحليل متوسط ​​العائد إلى الأمام (أو أي مقياس ميل مركزي آخر) لكل من تلك quantiles. فائدة هذه الأداة هي واضحة. يمكن أن يكون لعامل إيك جيد ولكن قد تنحصر قدرته التنبؤية على عدد قليل من الأسهم. هذا ليس جيدا كما مدير محفظة سيكون لديك لاختيار الأسهم داخل الكون كله من أجل تلبية قيود خطأ التتبع. وتتميز عودة الكميات الجيدة بعلاقة رتيبة بين الكميات الفردية والعوائد الآجلة.
جميع الأسهم في مؤشر S & أمب؛ P500 (في وقت كتابة هذا التقرير). ومن الواضح أن هناك تحيز سفينة البقاء على قيد الحياة: قائمة الأسهم في المؤشر قد تغيرت بشكل ملحوظ بين بداية ونهاية الفترة العينة، ومع ذلك انها جيدة بما فيه الكفاية لأغراض التوضيح فقط.
ينزل الرمز أدناه أسعار الأسهم الفردية في مؤشر S & أمب؛ P500 بين يناير / كانون الثاني 2005 واليوم (يستغرق الأمر بعض الوقت) ويتحول إلى أسعار الخام خلال الأشهر ال 12 الماضية والشهر الماضي. الأول هو عاملنا، وسيتم استخدام هذا الأخير كمقياس العودة إلى الأمام.
وفيما يلي رمز لحساب معامل المعلومات وعودة الكميات. لاحظ أنني استخدمت الشرائح الخمسية في هذا المثال ولكن يمكن استخدام أي طريقة تجميع أخرى (تيرسيلز، ديسيلس إتك & # 8230؛). فإنه يعتمد حقا على حجم العينة، ما تريد التقاط والطقس تريد أن يكون لمحة عامة أو التركيز على ذيول التوزيع. ولتقدير العائدات في كل خمسية، استخدم الوسيط كمقدر للنزعة المركزية. هذا المقياس أقل حساسية بكثير من القيم المتطرفة من الوسط الحسابي.
وأخيرا رمز لإنتاج الرسم البياني كوانتيز ريتورن.
3 & # 8211؛ كيفية استغلال المعلومات أعلاه؟
في الرسم البياني أعلاه Q1 هو أدنى 12 شهرا الماضية عودة و Q5 أعلى. هناك زيادة رتيبة تقريبا في العائد الكمي بين Q1 و Q5 مما يشير بوضوح إلى أن الأسهم التي تندرج في Q5 تفوق تلك التي تندرج في الربع الأول بنحو 1٪ شهريا. هذا مهم جدا وقوي لمثل هذا عامل بسيط (ليس حقا مفاجأة على الرغم من & # 8230؛). لذلك هناك فرص أكبر للتغلب على المؤشر من خلال زيادة الوزن للأسهم المتساقطة في Q5 ونقص الوزن لتلك التي تقع في الربع الأول بالنسبة إلى المؤشر المعياري.
إيك من 0.0206 قد لا يعني الكثير في حد ذاته لكنه يختلف كثيرا عن 0 ويشير إلى قوة تنبؤية جيدة من الأشهر ال 12 الماضية يعود عموما. يمكن تقييم اختبارات الأهمية الرسمية ولكن هذا خارج نطاق هذه المقالة.
الإطار أعلاه ممتاز لتقييم عامل الاستثمار & # 8217؛ ق الجودة ولكن هناك عدد من القيود العملية التي يجب معالجتها لتنفيذ الحياة الحقيقية:
إعادة التوازن: في الوصف أعلاه، فقد افترضنا أنه في نهاية كل شهر يتم إعادة توازن المحفظة بالكامل. وهذا يعني أن جميع الأسهم التي تندرج في الربع الأول من هذا العام تعاني من نقص الوزن، وأن جميع الأسهم التي تندرج في Q5 هي زيادة في الوزن مقارنة بالمؤشر المعياري. هذا ليس دائما ممكنا لأسباب عملية: بعض الأسهم قد تكون مستبعدة من عالم الاستثمار، وهناك قيود على الصناعة أو وزن القطاع، وهناك قيود على دوران الخ & # 8230؛ تكاليف المعاملات: هذا لم يؤخذ في الاعتبار في التحليل أعلاه وهذا هو فرامل خطيرة لتنفيذ الحياة الحقيقية. وعادة ما يتم تنفيذ اعتبارات دوران في الحياة الحقيقية في شكل عقوبة على جودة عامل. معامل التحويل: هذا هو امتداد للقانون الأساسي للإدارة النشطة ويخفف من افتراض نموذج غرينولد & # 8217؛ أن المديرين لا يواجهون أي قيود تحول دون ترجمتهم رؤى استثماراتهم مباشرة إلى رهانات المحفظة.
وأخيرا، أنا & # 8217؛ م دهشتها ما يمكن تحقيقه في أقل من 80 سطر من التعليمات البرمجية مع R & # 8230؛
كالمعتاد أي تعليقات موضع ترحيب.
المخاطر ك & # 8220؛ بقاء متغير & # 8221؛
جئت عبر الكثير من الاستراتيجيات على المدون بعض مثيرة للاهتمام بعض هي مضيعة كاملة للوقت ولكن معظم حصة سمة مشتركة: الناس الذين يطورون تلك الاستراتيجيات القيام بواجباتهم المنزلية من حيث تحليل العائد ولكن أقل اهتماما بكثير يدفع إلى الجانب المخاطر طبيعتها العشوائية. رأيت تعليقا مثل & # 8220؛ تخفيض بنسبة 25٪ في عام 2018 ولكن عائد ممتاز بشكل عام & # 8221 ؛. حسنا رهان بلدي هو أن لا أحد على الأرض سوف تتيح لك تجربة خسارة 25٪ مع أموالهم (ما لم تكن اتفاقات خاصة في المكان). في العالم التحوط صندوق الناس لديهم التسامح منخفضة جدا للانسحاب. عموما، كمتداول جديد في صندوق التحوط، على افتراض أن تأتي مع أي سمعة، لديك القليل جدا من الوقت لإثبات نفسك. يجب عليك كسب المال من اليوم 1 والحفاظ على القيام بذلك لبضعة أشهر قبل أن تكسب قليلا من المصداقية.
اسمحوا أولا & # 8217؛ ق أقول لديك بداية سيئة وتخسر ​​المال في البداية. مع سحب 10٪ كنت & # 8217؛ بالتأكيد بالتأكيد ولكن حتى مع انخفاض 5٪ فرص رؤية تخصيصك مخفضة مرتفعة جدا. هذا له آثار كبيرة على استراتيجياتك. دعنا نفترض أنه إذا فقدت 5٪ يتم تقسيم التخصيص إلى 2 وتعود إلى التخصيص الأولي فقط عند اجتياز علامة المياه المرتفعة مرة أخرى (على سبيل المثال، يعود السحب إلى 0). في الرسم البياني أدناه أنا محاكاة التجربة مع واحدة من استراتيجيات بلدي.
يمكنك البدء في التداول في 1 يونيو 2003 وكل يسير على ما يرام حتى 23 يوليو 2003 حيث يصل منحنى السحب الخاص بك -5٪ عتبة (** 1 **). يتم تخفيض تخصيصك بنسبة 50٪ وأنت لا تعبر ارتفاع مستوى علامة المياه حتى 05 ديسمبر 2003 (** 3 **). إذا كنت قد أبقت على التخصيص دون تغيير، فإن مستوى علامة المياه العالية كان قد عبرت في 28 أكتوبر 2003 (** ** **) وبحلول نهاية العام كنت قد كسبت المزيد من المال.
ولكن دع & # 8217؛ ق دفع المنطق أبعد قليلا. لا يزال على الرسم البياني أعلاه، افترض أنك تحصل على محظوظ حقا وبدء التداول حتى منتصف يونيو 2003. كنت ضرب الحد من 10٪ الانسحاب بحلول بداية أغسطس وأنت & # 8217؛ على الأرجح للخروج من اللعبة. كنت قد بدأت في أوائل أغسطس تخصيص الخاص بك لن يكون قد قطع على الإطلاق، وكنت في نهاية المطاف القيام سنة جيدة في 4 أشهر كاملة فقط من التداول. في هذين المثالين لم يتغير شيء ولكن تاريخ البدء & # 8230 ؛.
نجاح التداول لأي فرد لديه شكل من أشكال الاعتماد على المسار وليس هناك الكثير الذي يمكنك القيام به حيال ذلك. ومع ذلك يمكنك التحكم في حجم استراتيجية & # 8217؛ s و رسكو؛ s s و رسكو؛ s s؛ وينبغي تنويع المحفظة في كل بعد ممكن: فئات الأصول واستراتيجيات الاستثمار وترددات التداول وما إلى ذلك & # 8230؛. من هذا المنظور الخطر هو متغير بقاء & # 8220؛ & # 8221 ؛. إذا تمكنت بشكل صحيح لديك فرصة للبقاء في اللعبة لفترة كافية لتحقيق إمكانات الاستراتيجية الخاصة بك. وإلا فلن تتمكن من الاطلاع على ما سيحدث في الشهر المقبل.
كالمعتاد أي تعليقات موضع ترحيب.
والتطبيق بسيط لامعة لرصد استراتيجيات التداول & # 8211؛ الجزء الثاني.
هذا هو متابعة لبلدي وظيفة السابقة & # 8220؛ بسيطة لامعة التطبيق لرصد استراتيجيات التداول & # 8220؛. لقد أضفت بعض التحسينات التي تجعل التطبيق أفضل قليلا (على الأقل بالنسبة لي!). وفيما يلي قائمة الميزات الجديدة:
نموذج ملف كسف. (الملف الذي يحتوي على البيانات الأولية) A & # 8220؛ إنديت & # 8221؛ مربع المنسدلة السماح لتحديد نهاية الفترة. A & # 8220؛ ريسك & # 8221؛ صفحة تحتوي على تحليل فار ورسم بياني لأسوأ أداء على آفاق مختلفة A & # 8220؛ هاو تو & # 8221؛ صفحة شرح كيفية استخدام وتخصيص التطبيق للاحتياجات الفردية.
أنا أيضا جعل التطبيق الذاتي تماما الواردة. وهو متاح الآن كمنتج مستقل وحده وليس هناك حاجة إلى أن يكون R / رستوديو المثبتة على جهاز الكمبيوتر الخاص بك لتشغيله. ويمكن تحميلها من حساب محرك الأقراص R التاجر جوجل. هذا الإصدار من التطبيق يعمل باستخدام المحمولة R والمحمولة كروم. للقارئ حريصة، ويوضح هذا الرابط في التفاصيل الكاملة كيفية حزم التطبيق لامعة في التطبيق سطح المكتب (ويندوز فقط في الوقت الراهن).
1 & # 8211؛ كيفية تثبيت & أمب؛ تشغيل التطبيق على جهاز الكمبيوتر الخاص بك.
إنشاء مجلد معين بفك ضغط ملف. zip على هذا المجلد الجديد. تغيير مسارات في ملف رونشينياب لمطابقة الإعدادات الخاصة بك لتشغيل التطبيق، لديك فقط تشغيل الملف run. vbs. أنا أيضا شملت رمز (RTraderTradingApp. ico) إذا كنت ترغب في إنشاء اختصار على سطح المكتب الخاص بك.
ui. R: يتحكم في تخطيط ومظهر من server. R التطبيق: يحتوي على التعليمات اللازمة لبناء التطبيق. يمكنك تحميل استراتيجيات بقدر ما تريد طالما ملف كسف المقابلة لديه الشكل الصحيح (انظر أدناه). shinyStrategyGeneral. R: تحميل حزم المطلوبة ويطلق التطبيق.
3 & # 8211؛ كيفية إضافة استراتيجية التداول؟
إنشاء ملف. csv المقابل في الدليل الصحيح إنشاء إدخال جديد في وظيفة رد الفعل البيانات (داخل ملف server. R) إضافة عنصر إضافي إلى معلمة الاختيار في أول سيليتينبوت في الشريط الجانبي بانيل (داخل ملف ui. R) . يجب أن يتطابق اسم العنصر مع اسم الإدخال الجديد أعلاه.
إزالة الإدخال في وظيفة رد الفعل البيانات المقابلة للاستراتيجية التي تريد إزالتها (داخل ملف server. R) إزالة العنصر في المعلمة الاختيار في أول سيليتينبوت في الشريط الجانبي بانيل المقابلة للاستراتيجية التي تريد إزالتها (داخل واجهة المستخدم. R).
لا تتردد في الحصول على اتصال يجب أن يكون لديك أي اقتراح.
والتطبيق لامعة بسيطة لرصد استراتيجيات التداول.
في وظيفة سابقة وأظهرت كيفية استخدام R، كنيتر واللثي لبناء تقرير استراتيجية قالب. هذه الوظيفة يذهب خطوة أبعد من خلال جعل التحليل التفاعلي. إلى جانب التفاعل، والتطبيق لامعة أيضا يحل مشكلتين:
يمكنني الآن الوصول إلى جميع استراتيجيات التداول من نقطة واحدة بغض النظر عن الصك المتداولة. إلى جانب التفاعل لامعة، فإنه يسمح مقارنة أسهل. يمكنني التركيز على فترة زمنية محددة.
الرمز المستخدم في هذا المنصب متوفر على مستودع جيست / جيثوب. هناك أساسا 3 ملفات.
ui. R: يتحكم في تخطيط ومظهر التطبيق. server. R: يحتوي على التعليمات اللازمة لبناء التطبيق. فإنه يقوم بتحميل البيانات وتنسيقه. هناك ملف كسف واحد لكل إستراتيجية تحتوي كل منها على عمودين على الأقل: التاريخ والعودة بالتنسيق التالي: (& # 8220؛ 2018-12-22 & # 8243؛، & # 8221؛ 0.04٪ & # 8221؛). يمكنك تحميل استراتيجيات بقدر ما تريد طالما لديهم التنسيق الصحيح. shinyStrategyG Eneral. R: تحميل حزم المطلوبة ويطلق التطبيق.
هذا التطبيق هو على الارجح بعيدا عن الكمال، وسوف بالتأكيد تحسينه في المستقبل. لا تتردد في الحصول على اتصال إذا كان لديك أي اقتراح.
شكرا جزيلا لفريق رستوديو / لامعة لمثل هذه الأداة العظيمة.
استخدام الخوارزميات الجينية في التداول الكمي.
السؤال الذي يجب أن يطرح نفسه دائما عند استخدام المؤشرات الفنية هو ما يمكن أن يكون معيارا موضوعيا لتحديد مؤشرات المؤشرات (على سبيل المثال، لماذا استخدام مؤشر القوة النسبية 14 يوما بدلا من 15 أو 20 يوما؟). الخوارزميات الجينية (غا) هي أدوات مناسبة تماما للإجابة على هذا السؤال. في هذا المنصب أنا & # 8217؛ سوف تظهر لك كيفية إعداد المشكلة في R. قبل أن أبدأ تذكير المعتاد: ما أقدم في هذا المنصب هو مجرد مثال لعبة وليس دعوة للاستثمار. انها ليست استراتيجية الانتهاء إما ولكن فكرة البحث التي تحتاج إلى مزيد من البحث، وضعت ومصممة خصيصا للاحتياجات الفردية.
ما هي الخوارزميات الجينية؟
أفضل وصف غا أنا جاء عبر يأتي من سايبرناتيك تجارة كتاب من قبل موراي A. روجيرو. & غ؛ خوارزميات جينية تم اختراعها من قبل جون هولاند في منتصف 1970 لحل مشاكل التحسين الصعب. يستخدم هذا الأسلوب الانتقاء الطبيعي، والبقاء للأصلح & # 8221؛. وتتبع العملية العامة الخطوات التالية:
ترميز المشكلة في الكروموسومات باستخدام الترميز، تطوير وظيفة اللياقة البدنية لاستخدامها في تقييم كل قيمة كروموسوم & # 8217؛ s في حل مشكلة معينة تهيئة السكان من الكروموسومات تقييم كل كروموسوم في السكان إنشاء كروموسومات جديدة عن طريق التزاوج اثنين من الكروموسومات. This is done by muting and recombining two parents to form two children (parents are selected randomly but biased by their fitness) Evaluate the new chromosome Delete a member of the population that is less fit than the new chromosome and insert the new chromosome in the population. If the stop criteria is reached (maximum number of generations, fitness criteria is good enough…) then return the best chromosome alternatively go to step 4.
From a trading perspective GA are very useful because they are good at dealing with highly nonlinear problems. However they exhibit some nasty features that are worth mentioning:
Over fitting: This is the main problem and it’s down to the analyst to set up the problem in a way that minimises this risk. Computing time : If the problem isn’t properly defined, it can be extremely long to reach a decent solution and the complexity increases exponentially with the number of variables. Hence the necessity to carefully select the parameters.
There are several R packages dealing with GA, I chose to use the most common one: rgenoud.
Daily closing prices for most liquid ETFs from Yahoo finance going back to January 2000. The in sample period goes from January 2000 to December 2018. The Out of sample period starts on January 2018.
The logic is as following: the fitness function is optimised over the in sample period to obtain a set of optimal parameters for the selected technical indicators. The performance of those indicators is then evaluated in the out of sample period. But before doing so the technical indicators have to be selected.
The equity market exhibits two main characteristics that are familiar to anyone with some trading experience. Long term momentum and short term reversal. Those features can be translated in term of technical indicators by: moving averages cross over and RSI. This represents a set of 4 parameters: Look-back periods for long and short term moving averages, look-back period for RSI and RSI threshold. The sets of parameters are the chromosomes . The other key element is the fitness function . We might want to use something like: maximum return or Sharpe ratio or minimum average Drawdown. In what follows, I chose to maximise the Sharpe ratio.
The R implementation is a set of 3 functions:
fitnessFunction : defines the fitness function (e. g., maximum Sharpe ratio) to be used within the GA engine tradingStatistics : summary of trading statistics for the in and out of sample periods for comparison purposes genoud : the GA engine from the rgenoud package.
The genoud function is rather complex but I’m not going to explain what each parameter means as I want to keep this post short (and the documentation is really good).
In the table below I present for each instrument the optimal parameters (RSI look-back period, RSI threshold, Short Term Moving Average, and Long Term Moving Average) along with the in and out of sample trading statistics.
Before commenting the above results, I want to explain a few important points. To match the logic defined above, I bounded the parameters to make sure the look-back period for the long term moving average is always longer that the shorter moving average. I also constrained the optimiser to choose only the solutions with more than 50 trades in the in sample period (e. g;, statistical significance).
Overall the out of sample results are far from impressive. The returns are low even if the number of trades is small to make the outcome really significant. However there’s a significant loss of efficiency between in and out of sample period for Japan (EWJ) which very likely means over fitting.
This post is intended to give the reader the tools to properly use GA in a quantitative trading framework. Once again, It’s just an example that needs to be further refined. A few potential improvement to explore would be:
fitness function : maximising the Sharpe ratio is very simplistic. A “smarter” function would certainly improve the out of sample trading statistics pattern : we try to capture a very straightforward pattern. A more in depth pattern research is definitely needed. optimisation : there are many ways to improve the way the optimisation is conducted. This would improve both the computation speed and the rationality of the results.
The code used in this post is available on a Gist repository.

No comments:

Post a Comment