Sunday 4 March 2018

بيثون تداول العملات الأجنبية


جون V.


البيانات الكبيرة. الشركات الناشئة. تجارة.


البيانات الكبيرة. الشركات الناشئة. تجارة.


وضع أول تداول فوركس مع بيثون.


تحديث: لقد قمت بتحديث التعليمات البرمجية لذلك يعمل مع أبي الجديد أواندا. أحضره هنا.


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


وسيط ليس أكثر من مجرد شركة التي تمكنك من التداول (شراء أو بيع) الأصول في السوق من خلال منصة. ما هو مهم جدا ل ألغوترادينغ هو:


وسيط يقدم أبي من أجل بالنسبة لنا لوضع أوامر هل يمكن أن يكون حساب تجريبي لتشغيل بيئة التدريج والتجربة انتشار صغير قدر الإمكان.


في حالتنا، نحن لا نهتم حقا انتشار كما أننا لن نفعل عالية التردد التداول في أي وقت قريب.


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


لا توجد مراجعات للوسيط على شبكة الانترنت (أو معظمها سيئة) إذا كان وسيط يقدم لك بعض الرافعة المالية مجنون (مثل 1: 200) إذا كان وسيط يبدو أن يكون في بلد غريب جدا.


ما يمكن أن يحدث هو أن تبدأ في صنع بعض المال وكنت لا تكون قادرة على سحب بها. بشكل جاد. سوبر الوضع المجهدة.


ولكن دعونا ننتقل إلى مذكرة أكثر سعادة التي تفتح حساب ووضع أول برنامجنا التجارة. Whooha!


أنا باستخدام أواندا كوسيط (أنا لا ينتمي معهم) وأنها توفر أبي لائق جدا، والمكتبات على جيثب وحساب تجريبي مجاني.


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


رمز لهذا هو وجميع المشاركات الأخرى على جيثب ويمكنك تثبيته وتشغيله بسهولة جدا.


تحديث: صدر أواندا (كيكاس) محرك تنفيذ جديد يسمى V20 وأنها قد أصدرت جديدة (تحسين) أبي. تم تحديث هذه المشاركة لاستخدام واجهة برمجة التطبيقات الجديدة ولكن إذا (لأي سبب من الأسباب) تريد التحقق من الشفرة القديمة، فمن هنا. كنت محظوظا لك!


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


الآن، الاستعداد ليكون عن دهشتها. الرمز هو مباشرة إلى الأمام. يتم تهيئة واجهة برمجة التطبيقات:


والآن دعونا وضع النظام (شراء 5000 وحدة من اليورو مقابل الدولار الأميركي)


تحقق من السعر الحالي هو سهلا!


سوبر سهلة. لا تقلق بشأن ما هو اليورو مقابل الدولار الأميركي أو عدد الوحدات التي نشتريها أو ما هو نظام السوق. في الوقت الراهن، لقد وضعنا أول التجارة لدينا من جهاز الكمبيوتر المحمول ونحن في طريقنا لبناء أبي الخاصة بنا لوضع الصفقات. الاشياء المثيرة!


يمكنك قراءة وثائق أواندا هنا لنرى ما يمكنك القيام به مع أبي الخاصة بهم والعثور على مكتبة بايثون هنا. أمثلة من الأمثلة المتاحة من الصفحة جيثب أواندا هنا.


القادمة القادمة، وربط حقيقي حقيقي نظام ألغوترادينغ، تشغيل من بلدي راسبريبي في المنزل.


سوف تكون قادرا على رؤية البرنامج النهائي (تقريبا) قيد التشغيل، وسوف نتحدث أكثر عن الفوركس والاستراتيجيات.


إذا كان لديك المزيد من ردود الفعل، بينغ لي في جونروميرو أو الاشتراك في النشرة الإخبارية.


قانوني خارجي. هذا هو برنامج تعليمي هندسي حول كيفية بناء منصة ألغوترادينغ للتجريب و فان. أي اقتراحات هنا ليست النصائح المالية. إذا كنت تفقد أي (أو كل) لك المال لأنك اتبعت أي نصائح التداول أو نشر هذا النظام في الإنتاج، لا يمكنك إلقاء اللوم على هذه بلوق عشوائي (و / أو لي). استمتع على مسؤوليتك الخاصة.


بيثون خوارزمية التداول المكتبة.


بيالغوتريد هي مكتبة بيثون خوارزمية التداول مع التركيز على باكتستينغ ودعم تداول الورق والتجارة الحية. لنفترض أن لديك فكرة عن استراتيجية التداول وكنت ترغب في تقييمها مع البيانات التاريخية ونرى كيف يتصرف. بيالغوتريد يسمح لك أن تفعل ذلك مع الحد الأدنى من الجهد.


الخصائص الرئيسية.


موثقة بالكامل. الحدث مدفوعة . يدعم السوق، والحد، وإيقاف أوامر ستوبليميت. يدعم Yahoo! المالية، جوجل المالية و نينجاترادر ​​ملفات كسف. يدعم أي نوع من البيانات سلسلة الوقت في تنسيق كسف، على سبيل المثال كواندل. دعم التداول بيتكوين من خلال بيتستامب. المؤشرات والفلاتر الفنية مثل سما، وما، إما، رسي، بولينجر باند، هورست أس وغيرها. مقاييس الأداء مثل نسبة شارب وتحليل السحب. التعامل مع أحداث تويتر في الوقت الحقيقي. ملف تعريف الحدث. تا-ليب التكامل.


من السهل جدا لتوسيع نطاق أفقيا، وهذا هو، باستخدام جهاز كمبيوتر واحد أو أكثر ل باكتست استراتيجية.


بيالغوتريد مجاني، مفتوح المصدر، ومرخص تحت رخصة أباتشي، الإصدار 2.0.


التداول مع بيثون.


السبت، 20 مايو 2017.


ياهو ميت، يعيش ياهو!


ملاحظة: يبدو أن البيانات المقدمة يتم تعديلها بسبب الانقسامات، ولكن ليس لتوزيعات الأرباح.


السبت 20 فبراير 2018.


وهناك ميزة إحصائية بسيطة في سبي.


حدث لي أن معظم الوقت الذي تحدث فيه الكثير من وسائل الإعلام حول تحطم السوق (بعد خسائر كبيرة على مدى عدة أيام من الزمن)، تماما انتعاش كبير يتبع في بعض الأحيان.


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


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


بعد كونسكتيوتيف 3 أو أكثر من الخسائر، تذهب طويلة. اخرج من الإغلاق التالي.


هذا لا تبدو سيئة على الإطلاق! وبالنظر إلى نسب شارب، فإن الإستراتيجية تدل على النسب 2.2 مقابل 0.44 ل B & أمب؛ H. هذا هو في الواقع جيدة جدا! (لا تحصل على متحمس جدا على الرغم من أنني لم حساب لتكاليف لجنة، الانزلاق الخ).


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


الاثنين، 17 نوفمبر 2017.


تداول فس مع أقرب الجيران التنبؤ.


تعريفي لهذين هو:


تقلب قسط = فيكس-أدركسيفول دلتا (المنحدر هيكل المدى) = فيكس-فكسف.


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


إنشاء مجموعة بيانات من [دلتا، بريميوم] - & غ؛ [فكس عودة اليوم التالي] (في عينة) إنشاء أقرب الجيران التنبؤ استنادا إلى مجموعة البيانات أعلاه استراتيجية التجارة (خارج العينة) مع القواعد: يذهب طويلا إذا توقعت العودة & غ؛ 0 انتقل قصير إذا كان متوقعا العودة & لوت؛ 0.


في المؤامرتين الأخيرتين، يبدو أن الاستراتيجية تؤدي نفس العينة داخل وخارج العينة. نسبة شارب حوالي 2.3.


أنا مسرورة جدا مع النتائج، ولدي شعور بأنني كنت فقط خدش سطح ما هو ممكن مع هذه التقنية.


الأربعاء، 16 يوليو، 2017.


وحدة باكتستينغ بسيطة.


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


العثور على الدخول والمخارج - & غ؛ حساب بنل وجعل المؤامرات مع باكتستر - & غ؛ بيانات استراتيجية ما بعد العملية.


السبت، 7 يونيو 2017.


تعزيز الأداء مع سيثون.


5K عينات كبيانات الاختبار. هنا يأتي النسخة الأصلية من بلدي وظيفة السحب (كما يتم تنفيذه الآن في مكتبة ترادينغويثبيثون)


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


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


نجاح باهر، وهذا الإصدار يعمل في 122 ثانية الصغرى، مما يجعلها عشرة آلاف مرة أسرع من النسخة الأصلية! يجب أن أقول أنني معجب جدا بما حققته فرق سيثون و إبيثون! سرعة مقارنة مع سهولة الاستخدام هو مجرد رهيبة!


ملاحظة اعتدت أن تفعل كود التحسينات في ماتلاب باستخدام C النقي و. ميكس التفاف، كان كل ألم فقط في الحمار مقارنة مع هذا.


الثلاثاء، 27 مايو 2017.


معضلات الاختبار الخلفي: مراجعة بيالغوتريد.


الانطباع الأول: وضعت بنشاط، وثائق جيدة جدا، أكثر من كافية فيوتشرز (مؤشرات تا، أمثلية الخ). تبدو جيدة، لذلك ذهبت مع التثبيت الذي ذهب أيضا بسلاسة.


البرنامج التعليمي يبدو أن قليلا من التاريخ، كما الأمر الأول yahoofinance. get_daily_csv () يلقي خطأ حول وظيفة غير معروفة. لا تقلق، والوثائق هي حتى الآن، وأجد أن وظيفة مفقودة والآن تسميته إلى yahoofinance. download_daily_bars (رمز، سنة، كسفيل). المشكلة هي أن هذه الوظيفة فقط بتحميل البيانات لمدة سنة واحدة بدلا من كل شيء من ذلك العام إلى التاريخ الحالي. جميلة جدا عديمة الفائدة.


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


بعد ذلك إلى اختبار الأداء على استراتيجية سما التي يتم توفيرها في البرنامج التعليمي. تتكون مجموعة البيانات الخاصة بي من 5370 يوما من سبي:


هذا هو في الواقع جيدة جدا للإطار القائم على الحدث.


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


خاتمة بيالوتغراد لا يلبي ريكوريمنت للمرونة. يبدو أنه تم تصميمه مع تا الكلاسيكية في الاعتبار وتداول أداة واحدة. لا أرى أنها أداة جيدة لاستراتيجيات الاختبار المسبق التي تنطوي على أصول متعددة، والتحوط وما إلى ذلك.


الاثنين، 26 مايو 2017.


معضلات باكتستينغ.


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


في الوظائف التالية أنا & # 8217؛ ليرة لبنانية النظر في ثلاثة مرشحين ممكن I & # 8217؛ وجدت:


زيبلين هو معروف على نطاق واسع و هو المحرك وراء كوانتوبيان بيالغوتراد ويبدو أن تكون وضعت بنشاط و بيباكتست موثقة جيدا هو الإطار القائم على ناقلات خفيفة الوزن مع التي قد تكون مثيرة للاهتمام بسبب بساطته والأداء. أنا سوف تبحث في ملاءمة هذه الأدوات قياسها ضد استراتيجية التداول الافتراضية. إذا لم يكن أي من هذه الخيارات يناسب متطلبات بلدي سوف تضطر إلى أن تقرر ما إذا كنت ترغب في الاستثمار في كتابة الإطار الخاص بي (على الأقل من خلال النظر في الخيارات المتاحة أنا & # 8217؛ ليرة لبنانية معرفة ما لا يعمل) أو عصا مع رمز مخصص لكل إستراتيجية.


أول واحد للتقييم هو زيبلين.


انطباعي الأول عن زيبلين و كوانتوبيان هو واحد إيجابي. ويدعم زيبلين من قبل فريق من المطورين ويتم اختبارها في الإنتاج، لذلك نوعية (البق) يجب أن تكون كبيرة. هناك وثائق جيدة على الموقع ومثال على الكمبيوتر المحمول جيثب.


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


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


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


في المنصب التالي سأبحث في بيالغوتراد.


ملاحظة: النظام الحالي هو بضع سنوات من العمر، تشغيل أمد أثلون إي X2 @ 2800MHZ مع 3GB من ذاكرة الوصول العشوائي. مع باكتستينغ القائم على ناقلات I & # 8217؛ م تستخدم لحساب مرات أقل من ثانية واحدة باكتست ودقيقة أو اثنين لمسح المعلمة. وهناك اختبار المشي إلى الأمام الأساسية مع 10 خطوات والمسح الضوئي المعلمة لشبكة 20X20 من شأنه أن يؤدي إلى الديك 66 ساعة مع زيبلين. أنا & # 8217؛ م ليس بيتينت.


الأربعاء، 15 يناير 2017.


بدء إبيثون دفتر من إكسيلورر ملف ويندوز.


الاثنين، 13 يناير، 2017.


صناديق الاستثمار المتداولة في عام 2018، أين هو الانحلال الخاص بك الآن؟


ومع العلم بسلوك إتف المرتفع، أتوقع أن يتفوق إتفس المستقر على المؤشر المعياري، وبالتالي فإن الإستراتيجية التي تحاول الربح من الاضمحلال ستفقد المال.


بمجرد تطبيع الأسعار إلى 100 $ في بداية فترة باكتست (250 يوما) من الواضح أن 2x إتف يتفوق 1x إتف.


شفرة المصدر الكامل للحسابات متاح للمشتركين في التداول مع بيثون بالطبع. نوتيبوك # 307.


الخميس 2 يناير 2017.


وضع سعر على توتر.


السعر المستمد من قيمة المستخدم.


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


السعر المستمد من الأرباح المستقبلية.


استنتاج.


الخميس، 19 سبتمبر، 2018.


التداول مع دورة بايثون المتاحة!


الأحد، 18 أغسطس، 2018.


إستراتيجية قصيرة فس.


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


بعد أن قلت ذلك، دعونا نلقي نظرة على استراتيجية تقلل بعض المخاطر من خلال تقصير فس فقط عندما يكون ذلك مناسبا.


يظهر الرسم البياني أعلاه بيانات فيكس-فكسف منذ يناير 2018. تظهر نقاط البيانات من العام الماضي باللون الأحمر.


لقد اخترت استخدام تناسب من الدرجة الثانية بين اثنين، تقريب فسف = f (فيكس). يتم رسم f (فيكس) كخط أزرق.


وتمثل القيم فوق الخط حالة عندما تكون العقود الآجلة أقوى من كونتانغو العادي. الآن أنا أعرف مؤشر دلتا، وهو الانحراف عن صالح: دلتا = فكسف-f (فيكس).


ومن الواضح أن المناطق الخضراء تتوافق مع عوائد سلبية في فس.


شورت فس عند دلتا & غ؛ 0 رأس المال الثابت (الرهان على كل يوم هو 100 $) أي انزلاق أو تكاليف المعاملات.


الحصول على حجم قصير من باتس.


الخميس، 15 أغسطس، 2018.


بناء مؤشر من البيانات قصيرة الحجم.


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


لذلك أنا بنيت بلدي 'لوحة القيادة السوق' التي تجمع تلقائيا المعلومات بالنسبة لي ويعرضها في شكل سهل الهضم. في هذا المنصب سوف أشرح كيفية بناء مؤشر يعتمد على بيانات الحجم القصير. وستوضح هذه الوظيفة عملية جمع البيانات ومعالجتها.


يوفر تبادل باتس بيانات حجم اليومية مجانا على موقعهم.


يتم تضمين بيانات حجم قصيرة من تبادل باتس في ملف نصي مضغوط. كل يوم لديه ملف مضغوط خاص به. بعد تحميل وفك ملف تكست، وهذا هو ما في الداخل (أول عدة أسطر):


هذه البيانات تحتاج إلى بعض العمل قبل أن يمكن تقديمها بطريقة هادفة.


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


لحسن الحظ، أتمتة كاملة ليست سوى بضعة خطوط رمز بعيدا:


أولا نحتاج إلى إنشاء عنوان ورل حيوي يتم تنزيل الملف منه:


الخطوة الخامسة: إنشاء مخطط:


الأحد، 17 مارس، 2018.


التداول مع دورة بايثون - تحديث الحالة.


ابتداء من اليوم سأقوم بإعداد موقع جديد على شبكة الإنترنت والمواد اللازمة للدورة، والتي ستبدأ في الأسبوع الثاني من أبريل.


الخميس، 12 يناير، 2018.


إعادة بناء فس من كبو الآجلة البيانات.


النصوص أدناه أتمتة هذه العملية. أول واحد، downloadVixFutures. py، يحصل على البيانات من كبو، يحفظ كل ملف في دليل بيانات ثم يجمع بينهما في ملف كسف واحد، vix_futures. csv.


يقوم البرنامج النصي الثاني ريكونستروكشيون VXX. py بتحليل vix_futures. csv، ويحسب العوائد اليومية ل فس ويحفظ النتائج على إعادة الإنشاء VXX. csv.


للتحقق من الحسابات، لقد قارنت النتائج المحاكاة بلدي مع بيانات مؤشر سبفستر، وهما يتفق بشكل جيد جدا، انظر الرسوم البيانية أدناه.


رمز لإعادة بناء فس.


الاثنين، 26 ديسمبر، 2018.


هوتو: نمط المراقب.


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


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


الأربعاء، 14 ديسمبر، 2018.


التآمر مع غيكوت.


داتا أكيسيتيون: إبي & أمب؛ TradingWithPython. lib. yahooData - تحقق.


حاوية البيانات: باندا & أمب؛ سكليت - الاختيار.


مكتبة التآمر: ماتبلوتليب - إهم. لا.


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


. إذا كنت أعرف فقط كيفية تعيين التواريخ على المحور س.


الجمعة، 4 نوفمبر 2018.


كيفية إعداد بيئة تطوير بيثون.


2. تثبيت السلحفاة سفن. هذه أداة تحتاج إلى سحب شفرة المصدر من غوغل كود.


3. تثبيت الباندا (مكتبة سلسلة زمنية)


للحصول على التعليمات البرمجية، استخدم 'سفن تشيكوت' ويندوز قائمة السياق المستكشف الذي يتوفر بعد تثبيت السلحفاة سفن. الخروج مثل هذا (تغيير تشيكوت الدليل إلى الموقع الذي تريد، ولكن يجب أن ينتهي مع ترادينغويثبيثون):


حسنا، كل ذلك، الآن يمكنك تشغيل الأمثلة من \ كوكبوك دير.


الجمعة، 28 أكتوبر، 2018.


الكونغ فو الباندا سوف يحل مشاكل البيانات الخاصة بك.


منذ بعض الوقت لقد جئت عبر مجموعة أدوات تحليل البيانات الباندا مناسبة خاصة للعمل مع البيانات المالية. بعد خدش سطح سطح قدراته أنا بالفعل في مهب ما يسلم. ويجري تطوير الحزمة بنشاط من قبل ويس ماكيني وطموحه هو خلق أقوى وأداة مرنة مفتوحة المصدر تحليل البيانات / التلاعب المتاحة. حسنا، أعتقد أنه على ما يرام!


في ما يلي النتيجة:


رجل، وهذا يمكن أن ينقذني طن من الوقت! ولكن لا يزال سيساعدني في المستقبل، وأنا سوف تستخدم كائن داتافريم كقاعدة في أعمالي أخرى.


QuantStart.


الانضمام إلى كوانتكاديمي بوابة العضوية الخاصة التي تلبي احتياجات التجزئة المتزايد بسرعة المجتمع تاجر الكمي. سوف تجد مجموعة من ذوي الخبرة مثل التفكير من التجار الكميون على استعداد للرد على أسئلة التداول الكمي الأكثر إلحاحا.


تحقق من بلدي يبوك على التداول الكمي حيث أنا يعلمك كيفية بناء مربحة استراتيجيات التداول المنهجي مع أدوات بايثون، من الصفر.


نلقي نظرة على بلدي الكتاب الاليكتروني الجديد على استراتيجيات التداول المتقدمة باستخدام تحليل سلسلة زمنية، والتعلم الآلي والإحصاءات بايزي، مع بيثون و R.


من قبل مايكل هالز مور في 21 يناير، 2018.


لقد ذكرت سابقا في كوانتستارت: 2017 في مقالة مراجعة أنني سوف تنفق بعض من عام 2018 الكتابة عن تداول العملات الأجنبية الآلي.


وبالنظر إلى أنني نفسي عادة إجراء البحوث في الأسهم والأسواق الآجلة، وأعتقد أنه سيكون من المرح (والتعليمية!) لكتابة عن تجربتي من دخول سوق الفوركس في اسلوب مذكرات. كل "مذكرات الدخول" سيحاول البناء على كل من قبل، ولكن ينبغي أيضا أن تكون مكتفية ذاتيا نسبيا.


في هذا الإدخال الأول من مذكرات سأصف كيفية إعداد حساب الوساطة ممارسة جديدة مع أواندا وكذلك كيفية إنشاء محرك التداول يحركها الحدث متعددة الخيوط الأساسية التي يمكن أن تنفذ تلقائيا الصفقات في كل من الممارسة والعيش الإعداد.


في العام الماضي قضينا الكثير من الوقت في النظر في باكتستر يحركها الحدث، في المقام الأول للأسهم وصناديق الاستثمار المتداولة. واحد الذي قدم أدناه موجهة نحو النقد الأجنبي، ويمكن استخدامها إما تداول الورق أو التداول المباشر.


لقد كتبت جميع التعليمات التالية ل أوبونتو 14.04، ولكن يجب أن تترجم بسهولة إلى ويندوز أو ماك أوس X، وذلك باستخدام توزيع بايثون مثل أناكوندا. مكتبة إضافية الوحيدة المستخدمة لمحرك التداول بيثون هي مكتبة الطلبات، وهو أمر ضروري للاتصال هتب إلى أبي أواندا.


وبما أن هذه هي أول وظيفة مباشرة عن تداول العملات الأجنبية، ويمكن أن تتكيف التعليمات البرمجية المعروضة أدناه بشكل مباشر مع بيئة التداول الحية، وأود أن تقديم إخلاء المسؤولية التالية:


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


يتم توفير هذا البرنامج "كما هو" وأية ضمانات صريحة أو ضمنية، بما في ذلك، ولكن لا تقتصر على، الضمانات الضمنية للرواج والصلاحية لغرض معين يتم إخلاء المسؤولية. ولا يتحمل الوصيون أو المساهمون بأي حال من الأحوال المسؤولية عن أي أضرار مباشرة أو غير مباشرة أو عرضية أو خاصة أو نموذجية أو تبعية (بما في ذلك، على سبيل المثال لا الحصر، شراء السلع أو الخدمات البديلة؛ أو فقدان الاستخدام أو البيانات أو الأرباح؛ انقطاع الأعمال) مهما كان سببها وعلى أي نظرية المسؤولية، سواء في العقد، المسؤولية الصارمة، أو الضرر (بما في ذلك الإهمال أو خلاف ذلك) الناشئة في أي من استخدام هذا البرنامج، حتى لو نصح من احتمال حدوث مثل هذا الضرر.


إعداد حساب مع أواندا.


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


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


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


ستتمكن بعد ذلك من تسجيل الدخول باستخدام بيانات اعتماد تسجيل الدخول. تأكد من تحديد علامة التبويب "فسترادبراكتيس" من شاشة تسجيل الدخول:


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


في هذه المرحلة سوف تكون قادرة على توليد رمز أبي المميز. سوف تحتاج إلى مفتاح لاستخدامها في وقت لاحق، لذلك تأكد من كتابته أيضا.


سوف تحتاج الآن إلى إطلاق تطبيق فكتريد الممارسة، والتي سوف تسمح لنا أن نرى أوامر تنفيذها و (ورقة!) الربح & أمب؛ خسارة.


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


سوف تكون الآن قادرة على إطلاق بيئة التداول الممارسة. العودة إلى لوحة القيادة أواندا وانقر على الضوء الأخضر "إطلاق فكتراد الممارسة" الارتباط. فإنه سيتم طرح حوار جافا يسألك عما إذا كنت تريد تشغيله. انقر فوق "تشغيل" وسيتم تحميل أداة فكتريد الممارسة. توقفت الألغام إلى الرسم البياني الشمعة 15 دقيقة من ور / أوسد مع لوحة اقتباس على اليسار:


أواندا شاشة فكستريد الممارسة.


في هذه المرحلة ونحن على استعداد للبدء في تصميم وترميز نظام التداول الآلي النقد الاجنبى ضد أواندا أوبي.


نظرة عامة على تجارة العمارة.


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


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


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


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


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


وتعطى حلقة التداول الرئيسية من قبل بيثون رمز شبه التالية:


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


المكونات الأساسية التي سنقوم بإنشاء نظام التداول لدينا تشمل ما يلي:


معالج أسعار الجري - هذا سيحافظ على اتصال طويل الأمد مفتوح لخوادم أوانداس ويرسل بيانات القراد (أي عرض / طلب) عبر الاتصال بأي أدوات نهتم بها. مولد إشارات الإستراتيجية - سيأخذ هذا الأمر سلسلة من القراد الأحداث واستخدامها لتوليد أوامر التداول التي سيتم تنفيذها من قبل معالج التنفيذ. ؛ إيكسكوتيون هاندلر - يأخذ مجموعة من أحداث النظام ثم ينفذها بشكل أعمى مع أواندا. الأحداث - هذه الكائنات تشكل "الرسائل" التي يتم تمريرها حول أحداث قائمة الانتظار. نحن فقط تتطلب اثنين لهذا التنفيذ، وهما تيكيفنت و أوردريفنت. نقطة الدخول الرئيسية - تتضمن نقطة الدخول الرئيسية أيضا حلقة "التجارة" التي تقوم باستمرار باستطلاع قائمة انتظار الرسائل وترسل الرسائل إلى المكون الصحيح. وغالبا ما يعرف هذا باسم "حلقة الحدث" أو "معالج الأحداث".


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


بيثون التنفيذ.


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


ومع ذلك، لأننا مهتمون فقط في بناء "لعبة" نظام التداول، وليسوا مهتمين مع تفاصيل الإنتاج في هذه المقالة، فإننا سوف بدلا من ذلك فصل هذه الرموز المصادقة في ملف الإعدادات.


في إعدادات التكوين settings. py التالية لدينا قاموس يسمى إنفيرونمنتس الذي يخزن نقاط النهاية أبي لكل من أواندا السعر تدفق أبي و أبي التداول. يحتوي كل قاموس فرعي ثلاث نقاط نهاية منفصلة أبي: الحقيقي والممارسة ورمل.


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


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


في ما يلي نستخدم حساب الممارسة كما هو محدد في إعداد دومين. نحن بحاجة إلى اثنين من القواميس منفصلة للنطاقات، واحد لكل من مكونات أبي تدفق والتجارة. وأخيرا لدينا ACCESS_TOKEN و ACCOUNT_ID. لقد ملأت اثنين أدناه مع معرفات وهمية لذلك سوف تحتاج إلى استخدام الخاصة بك، والتي يمكن الوصول إليها من صفحة حساب أواندا:


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


لفي المستقبل برهان الأحداث لدينا رمز نحن ذاهبون إلى إنشاء فئة قاعدة تسمى الحدث ويكون كل الأحداث ترث من هذا. يتم توفير الشفرة أدناه في events. py:


والطبقة التالية ونحن على وشك إنشاء التعامل مع استراتيجية التداول. في هذا العرض نحن نذهب لخلق استراتيجية لا معنى له بدلا من ذلك ببساطة يتلقى كل من القراد السوق وعلى كل 5 القراد يشتري عشوائيا أو يبيع 10،000 وحدة من ور / أوسد.


ومن الواضح أن هذا هو "استراتيجية" سخيفة! ومع ذلك، فإنه أمر رائع لأغراض الاختبار لأنه هو واضح لرمز وفهم. في مذكرات المستقبل مذكرات سنقوم استبدال هذا مع شيء أكثر إثارة بكثير من شأنها أن (نأمل) تتحول أرباحا!


يمكن العثور على ملف policy. py أدناه. دعونا نعمل من خلال ذلك ونرى ما يجري. أولا نستورد مكتبة عشوائية وكائن أوردريفنت من events. py. نحن بحاجة إلى ليب عشوائي من أجل اختيار شراء عشوائي أو بيع النظام. نحتاج أوردريفنت لأن هذه هي الطريقة التي سوف ترسل كائن الاستراتيجية أوامر إلى قائمة الانتظار الأحداث، والتي سيتم تنفيذها في وقت لاحق من قبل معالج التنفيذ.


فئة تستراندومستراتيغي ببساطة يأخذ الصك (في هذه الحالة ور / أوسد)، وعدد من الوحدات والأحداث طابور كمجموعة من المعلمات. ثم يخلق عداد القراد الذي يستخدم لمعرفة عدد حالات تيكيفنت التي شهدتها.


يحدث معظم العمل في أسلوب account_signals، الذي يأخذ ببساطة حدثا، ويحدد ما إذا كان هو تيكيفنت (خلاف ذلك تجاهل) ويزيد عداد القراد. ثم يتحقق لمعرفة ما إذا كان العد قابل للقسمة بنسبة 5 ثم يشتري عشوائيا أو يبيع، مع نظام السوق، وعدد محدد من الوحدات. انها بالتأكيد ليست أكبر استراتيجية التداول في العالم، ولكن سيكون أكثر من مناسبة لدينا أواندا الوساطة أغراض اختبار أبي!


العنصر التالي هو معالج التنفيذ. ويكلف هذا الفصل مع التمثيل على حالات أوردريفنت وتقديم طلبات للوسيط (في هذه الحالة أواندا) بطريقة "البكم". وهذا هو، لا يوجد إدارة المخاطر أو تراكب البناء بوتفوليو. سوف معالج التنفيذ تنفيذ ببساطة أي أمر أنه قد أعطيت.


يجب علينا تمرير كافة معلومات المصادقة إلى فئة التنفيذ، بما في ذلك "المجال" (الممارسة، الحقيقي أو رمل)، رمز الوصول ورقم تعريف الحساب. ثم نقوم بإنشاء اتصال آمن مع هتبليب، واحدة من بيثونس بنيت في المكتبات.


معظم العمل يحدث في execute_order. تتطلب الطريقة حدث كمعلمة. ثم يبني القواميس اثنين - الرؤوس والمعلمات. ثم سيتم تشفير هذه القواميس بشكل صحيح (جزئيا بواسطة أورليب، مكتبة بيثون أخرى) ليتم إرسالها كطلب هتب بوست إلى أونداس أبي.


نمر معلمات نوع المحتوى والتخويل، والتي تتضمن معلومات المصادقة. وبالإضافة إلى ذلك نحن ترميز المعلمات، والتي تشمل أداة (ور / أوسد)، وحدات ونوع النظام والجانب (شراء / بيع). وأخيرا، نقوم بإجراء الطلب وحفظ الرد:


العنصر الأكثر تعقيدا من نظام التداول هو الكائن سترامينغفوريكسريسز، الذي يعالج تحديثات سعر السوق من أواندا. هناك طريقتان: connect_to_stream و stream_to_queue.


الأسلوب الأول يستخدم مكتبة طلبات بيثون للاتصال بمقبس تدفق مع الرؤوس والمعلمات المناسبة. وتشمل المعلمات معرف الحساب وقائمة الأدوات اللازمة التي ينبغي أن يستمع إلى للحصول على التحديثات (في هذه الحالة هو فقط ور / أوسد). لاحظ السطر التالي:


هذا يروي اتصال أن يتم بثها، وبالتالي تبقى مفتوحة بطريقة طويلة المدى.


الطريقة الثانية، stream_to_queue، في الواقع تحاول الاتصال بالتيار. إذا لم تكن الاستجابة ناجحة (بمعنى أن رمز الاستجابة ليس هتب 200)، فإننا نعود ونخرج ببساطة. إذا كان ناجحا نحن نحاول تحميل حزمة جسون عاد إلى قاموس بايثون. وأخيرا، فإننا تحويل القاموس بايثون مع الصك، محاولة / طلب والطابع الزمني في تيكيفنت التي يتم إرسالها إلى قائمة انتظار الأحداث:


ولدينا الآن جميع العناصر الرئيسية. والخطوة الأخيرة هي إنهاء كل ما كتبناه حتى الآن في برنامج "رئيسي". الهدف من هذا الملف، المعروف باسم trading. py، هو إنشاء موضوعين منفصلين، أحدهما يعمل معالج التسعير والآخر الذي يدير معالج التداول.


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


دعونا ندرس هذا أكثر قليلا. نخلق اثنين من المواضيع منفصلة مع الأسطر التالية:


نقوم بتمرير اسم الوظيفة أو الأسلوب إلى وسيطة الكلمة الرئيسية المستهدفة ثم قم بتمرير تكرارية (مثل قائمة أو تلميح) إلى وسيطة الكلمة الرئيسية الأرجل، والتي تمرر تلك الوسيطات إلى الأسلوب / الدالة الفعلية.


وأخيرا نبدأ كلا الموضوعين بالخطوط التالية:


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


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


بعد ذلك نحدد وظيفة التجارة، والتي تم شرحها في بيثون-بسيودوكود أعلاه. يتم تنفيذ لانهائية في حين حلقة (في حين صحيح:) أن استطلاعات مستمرة من قائمة انتظار الأحداث وتخطي فقط حلقة إذا وجدت فارغة. إذا تم العثور على حدث ثم هو إما تيكيفنت أو أوردريفنت ثم يسمى المكون المناسب لتنفيذها. في هذه الحالة هو إما استراتيجية أو معالج التنفيذ. حلقة ثم ينام ببساطة ل "ضربات القلب" ثانية (في هذه الحالة 0.5 ثانية) ويستمر.


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


ثم نقوم بإنشاء المثال تيستراندومستراتيغي. وأخيرا نحدد موضوعي الترابط ثم نبدأهما:


لتشغيل التعليمات البرمجية تحتاج ببساطة لوضع كافة الملفات في نفس الدليل واستدعاء ما يلي في المحطة:


لاحظ أن إيقاف التعليمات البرمجية في هذه المرحلة يتطلب قتل الصعب لعملية بايثون، عن طريق "كترل-Z" أو ما يعادلها! لم أضف موضوع ترابط إضافي للتعامل مع البحث عن sys. exit () التي ستكون هناك حاجة لوقف التعليمات البرمجية بأمان. وهناك طريقة محتملة لوقف التعليمات البرمجية على جهاز أوبونتو / لينوكس هو كتابة:


ومن ثم تمرير إخراج هذا (رقم العملية) إلى ما يلي:


حيث يجب استبدال PROCESS_ID بإخراج بريب. لاحظ أن هذه ليست ممارسة جيدة بشكل خاص!


في مقالات لاحقة سوف نقوم بإنشاء آلية توقف / بدء أكثر تطورا يجعل استخدام عملية أوبونتو الإشراف من أجل أن يكون نظام التداول يعمل 24/7.


ويعطى الناتج بعد 30 ثانية أو نحو ذلك، اعتمادا على الوقت من اليوم بالنسبة لساعات التداول الرئيسية لليورو مقابل الدولار الأمريكي، للرمز أعلاه، فيما يلي:


تظهر الخطوط الخمسة الأولى البيانات القراد جسون عاد من أواندا مع أسعار العطاءات / أسك. في وقت لاحق يمكنك ان ترى ترتيب التنفيذ! الناتج وكذلك استجابة جسون عادت من أواندا مما يؤكد افتتاح تجارة شراء ل 10،000 وحدة من ور / أوسد والسعر الذي تحقق في.


سيبقى هذا قيد التشغيل إلى أجل غير مسمى حتى تقتل البرنامج بأمر "كترل-Z" أو ما شابه ذلك.


ماذا بعد؟


في مقالات لاحقة سنقوم بتنفيذ بعض التحسينات التي تمس الحاجة إليها، بما في ذلك:


استراتيجيات حقيقية - استراتيجيات الفوركس المناسبة التي تولد إشارات مربحة. البنية التحتية للإنتاج - تنفيذ الملقم البعيد و 24/7 مراقبة نظام التداول، مع القدرة على وقف / بدء. إدارة المحفظة والمخاطر - تراكب الحافظة والمخاطر لجميع الطلبات المقترحة من الاستراتيجية. استراتيجيات متعددة - إنشاء مجموعة من الاستراتيجيات التي تدمج في تراكب إدارة المخاطر.


كما هو الحال مع الأسهم باكيتستر يحركها الحدث، ونحن بحاجة أيضا إلى إنشاء وحدة النقد الاجنبى باكتستينغ حدة. وهذا سيتيح لنا إجراء بحوث سريعة وتسهيل نشر الاستراتيجيات.


settings. py (تذكر تغيير ACCOUNT_ID و ACCESS_TOKEN!):


مجرد بدء مع التداول الكمي؟


3 أسباب الاشتراك في قائمة البريد الإلكتروني كوانتستارت:


1. دروس التداول الكمي.


سوف تحصل على إمكانية الوصول الفوري إلى دورة مجانية 10-البريد الإلكتروني معبأة مع تلميحات ونصائح لمساعدتك على البدء في التداول الكمي!


2. جميع أحدث المحتوى.


كل أسبوع سوف نرسل لك التفاف جميع الأنشطة على كوانتستارت لذلك عليك أن لا يفوتون وظيفة مرة أخرى.


ريال مدريد، وقابلة للتنفيذ نصائح التداول الكمي مع أي هراء.


بيثون والتجارة.


بيثون و & # 8230؛ تجارة.


القائمة والحاجيات.


المشاركات الاخيرة.


الاقسام.


التداول كريبتوكيرنسيز على بولونيكس.


بولونيكس هو تبادل التشفير العملة، يمكنك التجارة.


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


العملات الأكثر تداولا هي:


لحسن الحظ بالنسبة لنا، يوفر بولونيكس أبي للحصول على بيانات السوق، للحصول على أرصدة لكل عملة وإرسال أوامر شراء / بيع إلى السوق. يمكنك العثور على وثائق هنا.


لقد وجدت المجمع بايثون لأبي بولونيكس على جيثب، وهذا واحد هو السوبر سهلة الاستخدام.


يمكنك تثبيت الحزمة مثل هذا:


بعد تثبيته، يلزمك إدراج الاستيراد المناسب في شفرتك:


الآن تحتاج إلى الحصول على مفتاح أبي من أجل أن تكون قادرة على استرداد أرصدة حسابك وإرسال أوامر إلى السوق. إذا كنت ترغب فقط في الحصول على بيانات السوق يمكنك تخطي هذا الجزء.


انتقل إلى بولونيكس / أبيكيس، انقر على إنشاء مفتاح جديد، والآن لديك مفتاح أبي وقد تحتاج إلى الحصول على بعض التحقق من صحة البريد الإلكتروني لرؤية المفتاح السري (التي تحتاج إليها أيضا). تحقق من الخيارات التي تريدها، إذا كنت ترغب في التجارة عبر أبي، ما عليك سوى تحديد خانة الاختيار المناسبة، نفسه للسحب.


في التعليمات البرمجية، تحتاج إلى إعداد الاتصال بحيث يمكنك الحصول على مصادقة. يمكنك فقط استخدام سطر معلق إذا كنت ترغب فقط في الوصول إلى أبي العامة:


إذا كنت ترغب في الحصول على بيانات السوق عن شريط:


الآن لإرسال أمر، انها & # 8217؛ s بسيطة جدا:


أنت & # 8217؛ ليرة لبنانية الحصول على كائن النظام في جسون، ريسولتينغرادس هو صفيف من الصفقات التي تم إنشاؤها من قبل النظام، ويمكن ملء النظام على الفور مع العديد من الصفقات:


لإدارة المخاطر، ستحتاج إلى استرداد الأرصدة:


مع هذا أبي الأساسي يمكنك رمز أي استراتيجية خوارزمية في بايثون لبولونيكس، يمكنك محاولة للتنبؤ قيمة تشفير العملات باستخدام دروسنا السابقة على سبيل المثال.


تحميل بيانات السوق من كواندل.


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


لحسن الحظ بالنسبة لنا، كواندل لديه أبي في بيثون التي تمكنك من الوصول إلى البيانات الخاصة به. أنت بحاجة أولا للحصول على مفتاح أبي الشخصي هنا، هنا مقتطف شفرة أساسي:


ترجع الطريقة quandl. get () إطار بيانات بانداس مع التواريخ في الفهرس وفتح / عالية / منخفضة / إغلاق البيانات، وهذا يعتمد على مصدر البيانات، قد تحصل على مزيد من المعلومات مثل حجم الخ.


حتى الآن يمكنك العمل مباشرة مع هذا الإطار البيانات، يمكنك دمجها مع البيانات الأخرى، وتطبيق بعض العمليات الحسابية واستخدامه كمدخلات في خوارزمية التعلم الآلي. والميزة الرئيسية هي أنك & # 8217؛ سوف تحصل دائما على أحدث البيانات، لا حاجة لإعادة تحميل ملف.


إنشاء استراتيجية التداول من الصفر في بيثون.


لتظهر لك العملية الكاملة لإنشاء استراتيجية التداول، أنا & # 8217؛ م الذهاب للعمل على استراتيجية فائقة بسيطة على أساس فيكس ومستقبلها. أنا & # 8217؛ مجرد تخطي البيانات تحميل من كواندل، أنا & # 8217؛ م باستخدام مؤشر فيكس من هنا والعقود الآجلة فيكس من هنا، فقط VX1 و VX2 العقود المستمرة مجموعات البيانات.


تحميل البيانات.


أولا نحن بحاجة لتحميل جميع الواردات اللازمة، باكتست استيراد سيتم استخدامها في وقت لاحق:


من أجل البساطة، I & # 8217؛ م الذهاب إلى وضع جميع القيم في داتافريم واحد وفي أعمدة مختلفة. لدينا مؤشر فيكس، VX1 و VX2، وهذا يعطينا هذا الرمز:


وهنا & # 8217؛ s النتيجة:


لهذا البرنامج التعليمي أنا & # 8217؛ م الذهاب إلى استخدام إشارة أساسية جدا، وهيكل هو نفسه، ويمكنك استبدال المنطق مع كل ما تريد الاستراتيجية الخاصة بك، وذلك باستخدام معقدة جدا آلة تعلم الطحالب أو مجرد عبور المتوسطات المتحركة.


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


نحن الآن نرغب في تصور الإشارة للتحقق مما إذا كانت الاستراتيجية تبدو مربحة على الأقل:


والنتيجة جيدة جدا، على الرغم من عدم وجود تجارة بين عامي 2009 و 2018، يمكننا تحسين ذلك لاحقا:


Backtesting.


دعنا نتحقق مما إذا كانت الاستراتيجية مربحة واحصل على بعض المقاييس. سنجري مقارنة لإستراتيجياتنا مع & # 8220؛ شراء وعقد & # 8221؛ ، مما يعني أننا مجرد شراء مستقبل VX1 والانتظار (ولفه في كل انتهاء)، وبهذه الطريقة يمكننا أن نرى ما إذا كانت استراتيجيتنا هي أكثر ربحية من واحدة سلبية.


أضع طريقة باكتست في ملف منفصل لجعل التعليمات البرمجية الرئيسية أقل الثقيلة، ولكن يمكنك الاحتفاظ بالطريقة في نفس الملف:


في التعليمات البرمجية الرئيسية I & # 8217؛ م الذهاب إلى استخدام طريقة باكتست مثل هذا:


فمن المهم لعرض العائد السنوي، استراتيجية مع 20٪ العائد على مدى 10 سنوات مختلفة من 20٪ العودة أكثر من 2 أشهر، ونحن سنويا كل شيء حتى نتمكن من مقارنة الاستراتيجيات بسهولة. نسبة شارب هي مقياس مفيد، فإنه يسمح لنا لمعرفة ما إذا كان العائد يستحق المخاطرة، في هذا المثال أنا فقط افترضت معدل 0٪ خالية من المخاطر، وإذا كانت النسبة هي & غ؛ 1 فهذا يعني أن العائد المعدل للمخاطر مثير للاهتمام، إذا كان & # 8217؛ s & غ؛ 10 وهو ما يعني عودة تعديل المخاطر مثيرة جدا للاهتمام، عائد مرتفع أساسا لتقلب منخفض.


في مثالنا لدينا نسبة شارب جميلة جدا من 4.6 وهو جيد جدا:


وأخيرا، نريد رسم استراتيجية بنل مقابل & # 8220؛ شراء مع الاستمرار & # 8221؛ الأرباح والخسائر:


استراتيجية بيرفوميد بشكل جيد جدا حتى عام 2018 ولكن بعد ذلك من 2018 يبدأ الحزب الوطني التقدمي في الركود:


استنتاج.


وأظهرت لك بنية أساسية لخلق استراتيجية، يمكنك التكيف مع احتياجاتك، على سبيل المثال يمكنك تنفيذ الاستراتيجية الخاصة بك باستخدام زيبلين بدلا من وحدة باكتكتستينغ مخصصة. مع زيبلين أنت & # 8217؛ ليرة لبنانية لها المزيد من المقاييس و أنت & # 8217؛ سوف تكون قادرة بسهولة على تشغيل الاستراتيجية الخاصة بك على الأصول المختلفة، حيث يتم إدارة بيانات السوق من قبل زيبلين.


لم أكن أشير إلى أي رسوم المعاملات أو عرض الأسعار في هذا المنصب، لا تأخذ في الاعتبار كل هذا حتى إذا كنا ندرج لهم استراتيجية ستفقد المال!


استخدام ماتلوتليب لتحديد إشارات التداول.


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


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


إعداد البيانات.


لهذا البرنامج التعليمي اخترت استراتيجية بسيطة جدا وهو المتوسط ​​المتحرك العبور، والفكرة هي لشراء عندما & # 8220؛ قصيرة & # 8221؛ المتوسط ​​المتحرك، واسمحوا & # 8217؛ ق يقول 5 أيام هو عبور & # 8220؛ طويل & # 8221؛ المتوسط ​​المتحرك، واسمحوا & # 8217؛ ق يقول 20-- يوم، وبيع عندما يعبرون الطريق الآخر.


الخطوة الأولى سهلة، وتركيب ماتلوتليب عبر نقطة المعتادة:


يتطلب هذا المثال الباندا و ماتلوتليب:


I & # 8217؛ م باستخدام مجموعة البيانات E-ميني المستقبل من كواندل، انظر هذه المقالة.


تحميل البيانات وحساب المتوسطات المتحركة هو تافهة جدا بفضل الباندا:


الآن جزء توليد إشارة الفعلي هو أكثر قليلا صعبة:


يشتري ويبيع هو الآن تحتوي على جميع التواريخ حيث لدينا إشارة.


رسم الإشارات.


الجزء المثير للاهتمام هو الرسوم البيانية لهذا، وبناء الجملة بسيط:


نريد عرض سعر E-ميني والمتوسطات المتحركة بسيطة جدا، ونحن نستخدم data. index لأن التواريخ في داتافريم موجودة في الفهرس:


ولكن للإشارات، ونحن نريد أن نضع كل علامة في تاريخ محدد، وهو في الفهرس، وعلى مستوى السعر E-ميني بحيث بصريا انها & # 8217؛ s غير مربكة جدا:


data. ix [buys. index] [& # 8216؛ تسوية & # 8217؛] يعني أننا نأخذ & # 8216؛ تسوية & # 8217؛ الحقل في داتافريم البيانات.


هنا هو النتيجة النهائية:


استنتاج.


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


والميزة الرئيسية لهذه الطريقة هي أننا يمكن أن نرى على الفور إذا كانت الإشارات هي & # 8220؛ الحق & # 8221؛ أو لا، على سبيل المثال يمكنك أن تلعب مع المتوسط ​​المتحرك القصير والطويل، هل يمكن أن تحاول 10 يوما مقابل 30 يوما الخ، وفي النهاية يمكنك اختيار المعلمات الصحيحة لهذه الإشارة.


كيفية استخدام مصنف عشوائي الغابات في بايثون باستخدام سكيكيت تعلم.


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


نحن & # 8217؛ إعادة استخدام حزمة سكيت-تعلم في بيثون، انها & # 8217؛ s مكتبة مفيدة جدا التي تحتوي على الكثير من خوارزميات التعلم الآلي والأدوات ذات الصلة.


إعداد البيانات.


لنرى كيف يمكن تطبيق عشوائية الغابات، ونحن & # 8217؛ في محاولة للتنبؤ العقود الآجلة S & أمب؛ P 500 (E-ميني)، يمكنك الحصول على البيانات مجانا على كواندل. هنا هو ما يبدو:


يجب إزالة العمود "تغيير" نظرا لوجود بيانات مفقودة، ويمكن استرداد هذه المعلومات مباشرة عن طريق الاستغناء عن D وإغلاق D-1.


وبما أنه من المصنف، نحتاج إلى إنشاء فصول لكل سطر: 1 إذا كان المستقبل قد ارتفع اليوم، -1 إذا انخفض أو بقي كما هو.


الآن لدينا مجموعة بيانات كاملة مع قيمة يمكن التنبؤ بها، آخر كولوم & # 8220؛ عودة & # 8221؛ والتي هي إما -1 أو 1، دع & # 8217؛ s إنشاء القطار واختبار مجموعة البيانات.


باستخدام الخوارزمية.


مرة واحدة لدينا كل شيء جاهز يمكننا البدء في تركيب تصنيف الغابات عشوائي ضد مجموعة البيانات القطار لدينا:


التنبؤات هي صفيف يحتوي على القيم المتوقعة (-1 أو 1) للميزات في data_X_test.


يمكنك أن ترى دقة التنبؤ باستخدام الدالة method_score الذي يقارن القيم المتوقعة مقابل تلك المتوقعة.


ما المقصود بعد ذلك؟


الآن على سبيل المثال يمكنك إنشاء استراتيجية التداول الذي يمضي طويلا إذا كانت القيمة المتوقعة هي 1، ويذهب قصيرة إذا كان & # 8217؛ ق -1. هذا يمكن بسهولة باكتستد باستخدام محرك باكتست مثل زيبلين في بايثون.


بناء على نتيجة باكتست الخاصة بك يمكنك إضافة أو إزالة الميزات، ربما التقلب أو المتوسط ​​المتحرك لمدة 5 أيام يمكن أن تحسن دقة التنبؤ؟

No comments:

Post a Comment