Tuesday 2 January 2018

بسيطة بيثون استراتيجية التداول


QuantStart.
الانضمام إلى كوانتكاديمي بوابة العضوية الخاصة التي تلبي احتياجات التجزئة المتزايد بسرعة المجتمع تاجر الكمي. سوف تجد مجموعة من ذوي الخبرة مثل التفكير من التجار الكميون على استعداد للرد على أسئلة التداول الكمي الأكثر إلحاحا.
تحقق من بلدي يبوك على التداول الكمي حيث أنا يعلمك كيفية بناء مربحة استراتيجيات التداول المنهجي مع أدوات بايثون، من الصفر.
نلقي نظرة على بلدي الكتاب الاليكتروني الجديد على استراتيجيات التداول المتقدمة باستخدام تحليل سلسلة زمنية، والتعلم الآلي والإحصاءات بايزي، مع بيثون و R.
من قبل مايكل هالز مور في 21 يناير 2014.
في المقالة السابقة على بيئات البحث المسبق في بيثون مع الباندا أنشأنا بيئة باكتستينغ القائم على البحوث القائمة على وجوه واختبارها على استراتيجية التنبؤ العشوائي. في هذه المقالة سوف نستفيد من الآلات التي قدمناها لإجراء البحوث على استراتيجية فعلية، وهي المتوسط ​​المتحرك كروس أوفر على آبل.
الانتقال المتوسط ​​استراتيجية كروس.
إن تقنية المتوسط ​​المتحرك كروس أوفر كروسوفر هي استراتيجية زخم تبسيطية معروفة للغاية. وغالبا ما يعتبر المثال "مرحبا العالم" للتداول الكمي.
الاستراتيجية كما هو موضح هنا هي طويلة فقط. يتم إنشاء مرشحين متوسطين بسيطين متحركين منفصلين، مع فترات زمنية متباينة، لسلسلة زمنية معينة. تحدث إشارات شراء الأصل عندما يتجاوز المتوسط ​​المتحرك لرجوع الرجوع الأقصر المتوسط ​​المتحرك الطويل للخلف. وإذا تجاوز المتوسط ​​الأطول المتوسط ​​الأقصر لاحقا، يتم بيع الأصل مرة أخرى. وتعمل الاستراتيجية بشكل جيد عندما تدخل سلسلة زمنية فترة من الاتجاه القوي ثم تعكف ببطء على عكس الاتجاه.
على سبيل المثال، لقد اخترت شركة آبل، Inc. (آبل) كسلسلة زمنية، مع فترة انتظار قصيرة من 100 يوم ورجعية طويلة من 400 يوم. هذا هو المثال الذي تقدمه مكتبة التداول خوارزمية زيبلين. وبالتالي إذا أردنا تنفيذ باكتستر الخاصة بنا نحن بحاجة للتأكد من أنه يطابق النتائج في زيبلين، كوسيلة أساسية للتحقق من الصحة.
التنفيذ.
تأكد من اتباع البرنامج التعليمي السابق هنا الذي يصف كيفية إنشاء التسلسل الهرمي الكائن الأولي ل باكتستر وإلا فإن رمز أدناه لن تعمل. ولتحقيق هذا التنفيذ تحديدا، استخدمت المكتبات التالية:
يتطلب تنفيذ ma_cross. py backtest. py من البرنامج التعليمي السابق. الخطوة الأولى هي استيراد الوحدات والكائنات الضرورية:
كما هو الحال في البرنامج التعليمي السابق ونحن في طريقنا إلى فئة فرعية استراتيجية فئة قاعدة مجردة لإنتاج موفينغافيراجكروسستراتيجي، الذي يحتوي على كل التفاصيل حول كيفية توليد إشارات عندما المتوسطات المتحركة من عبور عبر بعضها البعض.
يتطلب الكائن إطارا قصيرا و لونغ-ويندو يمكن تشغيله. تم تعيين القيم على افتراضات 100 يوم و 400 يوم على التوالي، والتي هي نفس المعلمات المستخدمة في المثال الرئيسي من زيبلين.
يتم إنشاء المتوسطات المتحركة باستخدام الدالة rolling_mean الباندا على القضبان ['إغلاق'] سعر إغلاق الأسهم آبل. وبمجرد أن يتم بناء المتوسطات المتحركة الفردية، يتم إنشاء سلسلة الإشارة عن طريق وضع الكولوم يساوي 1.0 عندما يكون المتوسط ​​المتحرك القصير أكبر من المتوسط ​​المتحرك الطويل، أو 0.0 خلاف ذلك. من هذه الأوامر أوامر يمكن أن تتولد لتمثيل إشارات التداول.
يتم تصنيف ماركيتونكلوسيبتفوليو من المحفظة، والتي وجدت في backtest. py. وهي متطابقة تقريبا مع التنفيذ الموصوف في البرنامج التعليمي السابق، مع استثناء أن الصفقات تتم الآن على أساس إغلاق إلى إغلاق، بدلا من أساس مفتوح إلى فتح. للحصول على تفاصيل حول كيفية تعريف كائن بورتفوليو، راجع البرنامج التعليمي السابق. لقد تركت رمز في لاستكمال والحفاظ على هذا البرنامج التعليمي مكتفية ذاتيا:
الآن وقد تم تعريف فئات موفينغافيراجكروسستراتيغي و ماركيتونكلوسيبتفوليو، سيتم استدعاء دالة __main__ لربط كل من وظائف معا. وبالإضافة إلى ذلك سيتم فحص أداء الاستراتيجية من خلال مؤامرة من منحنى الأسهم.
باندا داتاريدر الكائن تنزيل أوهلكف أسعار الأسهم آبل للفترة من 1 يناير 1990 إلى 1 يناير 2002، وعند هذه النقطة يتم إنشاء داتافريم لتوليد إشارات طويلة فقط. وفي وقت لاحق يتم إنشاء المحفظة مع قاعدة رأس المال الأولية 100،000 دولار أمريكي ويتم احتساب العائدات على منحنى الأسهم.
الخطوة الأخيرة هي استخدام ماتبلوتليب لرسم مؤامرة مكونة من رقمين من كل من أسعار آبل، مقترنة بالمتوسطات المتحركة وإشارات الشراء / البيع، فضلا عن منحنى الأسهم مع نفس إشارات الشراء / البيع. يتم أخذ رمز التآمر (وتعديله) من مثال تنفيذ خط زيبلين.
الناتج الرسومي من التعليمات البرمجية كما يلي. استعملت الأمر إيبيثون٪ لصق لوضع هذا مباشرة في وحدة تحكم إبيثون بينما في أوبونتو، بحيث بقي الناتج الرسومية في العرض. ويمثل الزوجان الورديان شراء السهم، في حين أن الانخفاضات السوداء تمثل بيعه مرة أخرى:
أداء كروسوفر المتوسط ​​المتحرك ل آبل من 1990-01-01 إلى 2002-01-01.
كما يمكن أن يرى أن الاستراتيجية تفقد المال خلال هذه الفترة، مع خمس صفقات ذهابا وإيابا. هذا ليس مفاجئا نظرا لسلوك آبل خلال الفترة، والتي كانت على اتجاه هبوطي طفيف، تليها صعود كبير ابتداء من عام 1998. فترة الاستعراض من إشارات المتوسط ​​المتحرك كبيرة نوعا ما وهذا أثر على ربح التجارة النهائية ، والتي ربما جعلت من استراتيجية مربحة.
في المقالات اللاحقة سنقوم بإنشاء وسائل أكثر تطورا لتحليل الأداء، فضلا عن وصف كيفية تحسين فترات الاسترجاع من إشارات المتوسط ​​المتحرك الفردية.
مجرد بدء مع التداول الكمي؟
3 أسباب الاشتراك في قائمة كوانتستارت:
1. دروس التداول الكمي.
سوف تحصل على إمكانية الوصول الفوري إلى دورة مجانية 10 جزء معبأة مع تلميحات ونصائح لمساعدتك على البدء في التداول الكمي!
2. جميع أحدث المحتوى.
كل أسبوع سوف نرسل لك التفاف جميع الأنشطة على كوانتستارت لذلك عليك أن لا يفوتون وظيفة مرة أخرى.
ريال مدريد، وقابلة للتنفيذ نصائح التداول الكمي مع أي هراء.

بيثون ستراتيجيك ترادينغ بيثون
وهناك الكثير من الناس يسمعون البرمجة مع التمويل وهم يفكرون على الفور في التداول عالية التردد (هفت)، ولكن يمكننا أيضا الاستفادة من البرمجة للمساعدة في التمويل حتى مع أشياء مثل الاستثمار وحتى الاستثمار على المدى الطويل. معظم الناس يعتقدون البرمجة مع التمويل لاستخدامها في تجارة عالية التردد أو التداول الخوارزمية لأن الفكرة هي أن أجهزة الكمبيوتر يمكن استخدامها لتنفيذ الصفقات الفعلية وجعل المواقف بمعدل أسرع بكثير من الإنسان يمكن.
هذا صحيح، ولكن يمكن للآلات أيضا مساعدة البشر مع الاستثمار من خلال تقصير كبير في الوقت اللازم للبحث. حتى المستثمرين على المدى الطويل يميلون إلى القيام بالكثير من العمل لخلق نوع من "الخوارزمية"، حيث يبحثون الشركات، يبحثون في جميع أنواع الأساسيات مثل نسبة السعر / الأرباح (بي)، الإيرادات / العائد على السهم (إبس)، ربع السنوية الأرباح والديون / الأسهم، والقائمة تطول. حتى لو كان المستثمر يبحث ببساطة عن قيم محددة لهذه المقاييس الأساسية للشركة، هناك أكثر من 10،000 الأسهم الأمريكية إلى ربما التجارة. من خلال الذهاب إلى كل هذه قد يستغرق قدرا هائلا من الوقت وسهولة سنوات، وبحلول الوقت الذي فعلت هذا، العديد من القيم الجديدة قد خرج.
لاحظ النص الذي يشبه هذا؟ يمكنك النقر على نص مثل هذا لمعرفة المزيد عن هذا الموضوع إذا لم تكن مألوفة. مع التمويل، وهناك الكثير من المصطلحات التي يمكن أن تترك لك بسرعة إذا كنت غير مألوفة، لذلك، لأي الوافدين الجدد، يتم شرح الشروط. لازلت مشوش؟ نشر تعليق على الفيديو.
السعر إلى نسبة الأرباح.
إن نسبة البولي ايثيلين هي نسبة تقييم لسعر السهم الحالي للشركة مقارنة بأرباح السهم على مدى ال 12 شهرا الماضية.
على سبيل المثال، إذا كانت حصة الشركة تقدر ب 38.96 دولار، وكان لها أرباح على مدى ال 12 شهرا الماضية من 4.87 $، فإن السعر إلى الأرباح سيكون (38.96 دولار أمريكي / 4.87 دولار أمريكي)، والذي يأتي إلى 8. عموما، فإن الرقم "السحر" هو 12، ولكن هذا يختلف اختلافا كبيرا حسب نوع السوق (مثل المصرفية والتكنولوجيا والطب وغيرها)، وكذلك النمو المتوقع للشركة.
نص شرح أكثر.
يمكنك النقر على هذه أن يكون المنبثقة مشروط أن مزيد من شرح النص والمفاهيم.
الأرباح / الأرباح لكل سهم (إبس)
إن ربحية السهم هي مقدار ربح الشركة الذي يتم تخصيصه لكل سهم من أسهم الشركة العادية، والذي يستخدم لقياس ربحية الشركة.
ارباح فصلية.
ويطلب من الشركات العامة بموجب القانون إصدار تقارير ربع سنوية عن أرباحها. وتصدر هذه التقارير ربع السنوية كل ثلاثة أشهر (أرباع السنة)، وتميل إلى احتواء معلومات مثل الأرباح الربعية، والتي هي عموما الأرقام السحرية، فضلا عن الإيرادات والنمو والتوقعات، وأكثر من ذلك.
وفي ضوء تقارير الأرباح الربعية، تميل أسعار الأسهم إلى التسعير بناء على ما يتوقعه المضاربون من التقارير. في كثير من الأحيان، تكون النتائج مختلفة، إما إيجابية أكثر مما كان متوقعا، سلبية أكثر مما كان متوقعا، أو عكس تماما لما كان متوقعا، مما تسبب في تحركات كبيرة جدا في الأسعار في بعض الأحيان، وأحيانا بأكثر من 20٪.
نسبة الدين إلى حقوق الملكية.
نسبة الدين إلى حقوق الملكية هي المقارنة بين مبلغ الدين الذي تملكه الشركة فيما يتعلق بمبلغ حقوق الملكية التي تمتلكها. ويفضل عادة أن يكون هذا الرقم أقل من رقم واحد، ولكن مرة أخرى، يختلف هذا العدد اختلافا كبيرا حسب نوع الشركة المعنية.
وثمة سبب آخر قد يجعلنا نهتم باستخدام الحواسيب المالية هو محاولة تصفية التحيزات المتأصلة لدينا. ويمكن القول إن أحد الأسباب الرئيسية التي جعلت البشر يرتفعون إلى الهيمنة هو قدرتنا على جعل الأنماط على الفور ونرى العلاقات في الأمور. ونحن نفعل ذلك بشكل جيد جدا، وأحيانا قليلا بشكل جيد جدا، ورؤية أنماط والعلاقات حيث لا يوجد. كما المفترس والفريسة ممكن، رؤية أنماط والعلاقات عادة ما تكون أكثر فائدة من لا، لذلك عملت بها. في التمويل، رؤية أنماط حيث لا يوجد يمكن أن يكون ضارا، وأنه هو. ربما كنت قد سمعت شخصيات مثل أكثر من 90٪ من التجار يفقدون المال في الأسواق. هذا هو سبب ذلك إلى حد كبير.
مصدر الصورة: مورغفيل.
أود أن أقول أن القيمة المضافة لاستخدام الآلات مع التمويل ليس له علاقة مع ارتفاع وتيرة التداول، لديها كل ما له علاقة مع قدرات البحث والاختبار الخلفي.
اختبار العودة هو شكل من أشكال التحليل الذي يسمح لنا أن ننظر إلى الوراء على التاريخ والتجارة استراتيجية ضد البيانات التاريخية لنرى كيف فعلنا. هذا هو بالطبع تعريف بسيط جدا من الاختبار الخلفي، ولكن يشمل ذلك بشكل جيد. والفكرة هنا هي أن نفعل نوعا من الاختبار الخلفي الأعمى حيثما أمكن، وكذلك للقضاء على التحيز البقاء.
حيث يفشل العديد من التجار هو أنها تميل إلى "الإفراط في" استراتيجيات إلى البيانات التاريخية. يحدث هذا عادة عندما تكون نتائج اختبار الظهر ليست جيدة كما كانوا يأملون، لذلك أنها قرص الأرقام قليلا وتكرار. انهم مجرد الحفاظ على القيام بذلك حتى النتائج هي ما أرادوا. هذا هو الإفراط في البيانات والتطفل، وانها سوف كسر لك.
مع أخذ ذلك في الاعتبار، هناك بعض العوامل أكثر للاختبار الخلفي، والتي تسمح لنا ليس فقط لاختبار أداء استراتيجية، ولكن أيضا إجراء تحليل المخاطر واختبار الصلاحية على الاستراتيجيات التي نكتبها، والتي يمكن أن تساعدنا للحصول على مزيد من المعلومات بما يتجاوز ما قمنا به، مثل مقدار المخاطر التي نتعرض لها، مقارنة بالعائدات التي كنا سنقوم بها.
البرمجة مع التمويل قد أو قد لا كسب لك المال، ولكن من المؤكد تقريبا أنه سيوفر لك المال إذا حق العمل. هذا ما سوف تكون هذه السلسلة التعليمية موجهة نحو. وللقيام بذلك، سنستخدم لغة برمجة بايثون.
بيثون يجعل لغة كبيرة لاستخدام لأنه من السهل إلى حد ما لفهم. عموما، رمز بايثون مقروء حتى من قبل غير مبرمج. هناك أيضا العديد من الوحدات المفيدة ومجتمع كبير دعم بيثون، لذلك هو لغة رائعة لاستخدامها مع التمويل.
بعد ذلك، علينا أن نقرر كيف نخطط لاختبار الاستراتيجيات فعلا. إن كتابة إطار للاختبار الخلفي مهمة ضخمة، ومن المؤكد أنه من المهم جدا أن نحصل على هذا الحق إذا فعلنا ذلك. تماما كما لو كنت ربما لا تكتب خوارزميات التشفير الخاصة بك، وربما كنت لا تحاول أن تكتب في الواقع أنظمة الاختبار الخلفي الخاصة بك إلا إذا كان فقط من أجل المتعة. ونحن في طريقنا للاستفادة من خدمة ويب دعا كوانتوبيان.
بنيت كوانتوبيان على رأس خوارزمية قوية للاختبار الخلفي لبيثون تسمى زيبلين. زيبلين قادر على اختبار خوارزميات التداول الخلفية، بما في ذلك المحاسبة عن أشياء مثل الانزلاق، فضلا عن حساب مختلف مقاييس المخاطر.
في حين أننا سوف نفعل معظم هذه السلسلة على كوانتوبيان، فمن الممكن تماما لتحميل زيبلين واستخدام ذلك على جهاز الكمبيوتر الخاص بك، محليا، دون استخدام الواقع كوانتوبيان على الإطلاق. السبب في أنني أود أن نستخدم كوانتوبيان لأن مقاييس المخاطر واجهة المستخدم العامة التي يتم توفيرها على كوانتوبيان هو رائع. وهذا وحده يختتم إنقاذ لنا كمية لا تصدق من الوقت في التنمية، وأنه هو أيضا اختبار على نطاق واسع جدا. إذا فعلنا ذلك بأنفسنا، يمكننا أن نفعل ذلك مع شيء مثل ماتلوتليب، لكننا سوف يكون من المؤكد تقريبا أن فوضى الكثير من الأشياء على طول الطريق.
تتجه إلى كوانتوبيان، إنشاء حساب عن طريق اختيار "الاشتراك" على الصفحة الرئيسية:
لا تتردد في كزة حولها، ولكن المكان التالي لرئاسة بمجرد إنشاء حساب والدخول هو علامة التبويب "خوارزميات" في الجزء العلوي.
مرة واحدة هناك، يجب أن تشاهد قسما يسمى "خوارزميات الاختبار." إذا لم يكن لديك أي خوارزميات، يجب أن ترى شيئا مثل:
اختر "استنساخ خوارزميات العينة". إذا كنت لا ترى الخيار للقيام بذلك، لا تقلق! بدلا من ذلك، توجه إلى وثائق كوانتوبيان وخوارزميات العينة هنا ومن ثم يمكنك النقر فوق "خوارزمية استنساخ" هنا. كمذكرة، يمكنك القيام بذلك مع أي خوارزمية تراه. إذا كنت التوجه إلى علامة التبويب المجتمع، سترى الناس نشر الأسئلة والمعلومات حول كوانتوبيان بشكل عام. بعض الناس سوف تشترك خوارزميات واختبارات الظهر هنا، والتي يمكنك ثم استنساخ للعب مع نفسك.
عند استنساخ الخوارزمية، يجب أن تؤخذ إلى صفحة خوارزميات التحرير النشط مع الخوارزمية المستنسخة، والتي تبدو مثل هذا (ناقص الصناديق الملونة)
بيثون إديتور - هذا هو المكان الذي رمز منطق بيثون الخاص بك ل ألغويرثم. نتائج خوارزمية مدمجة - عند بناء الخوارزمية، سوف تظهر النتائج الرسومية هنا. سجل / خطأ الإخراج - أي وحدة تحكم الإخراج / معلومات السجل سيأتي هنا. من الشائع أن يكون البرنامج إخراج بت مختلفة من النص لتصحيح الأخطاء أو لمجرد مزيد من المعلومات. بناء خوارزمية - استخدام هذا لاختبار بسرعة ما كنت قد كتبت. لن يتم حفظ النتائج، ولكن يمكنك أن ترى النتيجة في قسم النتائج الخوارزمية المدمج. باكتست الكامل - وهذا سيتم تشغيل اختبار العودة الكاملة على أساس خوارزمية الحالية. اختبارات العودة الكاملة تأتي مع تحليل أكثر قليلا، يتم حفظ النتائج، ويتم حفظ الخوارزمية التي ولدت تلك النتائج أيضا، حتى تتمكن من العودة من خلال الاختبارات مرة أخرى وعرض التعليمات البرمجية بالضبط التي ولدت نتيجة محددة.
رمز العينة الكامل هو شيء مثل:
تحت "ديف تهيئة (السياق):" هذا هو رمز التي سيتم تشغيلها على بدء مرة واحدة فقط، ومن ثم لدينا طريقة handle_data. سيتم تشغيل طريقة hand_data مرة واحدة لكل شريط. كوانتوبيان اثنين من الإعدادات الرئيسية: يوميا أو دقيقة. إذا كنت تقوم بتشغيل يوميا، على سبيل المثال، ثم task_data سيتم تشغيل "مرة واحدة في اليوم."
ضمن هذه الطريقة handle_data، نقوم بحساب المتوسط ​​المتحرك ل 5 أيام وكذلك تخزين السعر الحالي للمتغيرات. من هنا، نسأل إذا كان السعر الحالي أكبر من متوسط ​​السعر، وإذا كان لدينا المال لدفع حصة أخرى. إذا كان هذا هو الحال، ثم نشتري. إذا لم يكن كذلك، ثم نريد أن نبيع إذا كان لدينا أسهم للقيام بذلك.
هذا مجرد ملخص تقريبي لما يحدث هنا. في البرنامج التعليمي التالي، سنعمل من خلال سطر التعليمات البرمجية سطرا من شأنها أن تساعد على ترسيخ فهمك لكيفية هذا العمل.
الآن، اضغط على "تشغيل الاختبار الخلفي الكامل". وسوف يستغرق لحظة لبدء، ومن ثم يجب أن تبدأ رؤية النتائج. هنا، يمكننا أن نرى الأداء التاريخي لخوارزمية لدينا بالمقارنة مع بعض المعايير. المعيار الافتراضي هو مؤشر S & P 500، وهو عبارة عن مجموعة من أفضل 500 (وهو حاليا 502 في وقت كتابة هذا) الشركات تحويلها إلى فهرس. هذا هو مقياس شعبية تستخدم لحساب صحة سوق الأوراق المالية ككل.
ليس فقط يمكننا أن نرى الأداء، ونحن نرى بعض مقاييس المخاطر في الجزء العلوي، ولكن أيضا يمكننا أن نلعب مع هذا الجانب شريط التنقل للنظر من خلال طن من البيانات التي يتم تتبعها أيضا في ما يتعلق استراتيجيتنا.
لا تتردد في كزة حول هذه الصفحة ومعرفة ما هو متاح. إذا كنت لا تزال غائمة قليلا، وهذا لا ينبغي أن يكون مفاجأة، ونحن سوف يكون مسح أكثر حول كوانتوبيان ونحن نذهب. إذا كنت تجد نفسك فقدت مع رمز بايثون، قد ترغب في النظر في سلسلة بيثون 3 أساسيات البرنامج التعليمي.
يمكنك أيضا محاولة التوجه إلى شريط البحث دروس بيثون لمعرفة ما إذا كان يمكنك العثور على إجابة سريعة لموضوع معين. إذا فشل كل شيء آخر، إضافة تعليق على الفيديو ذات الصلة وأنا أو شخص آخر من المرجح أن تكون قادرة على مساعدتك!

جون V.
البيانات الكبيرة. الشركات الناشئة. تجارة.
البيانات الكبيرة. الشركات الناشئة. تجارة.
بناء نظام باكتستينغ في بايثون: أو كيف فقدت 3400 $ في ساعتين.
بناء نظام باكتست هو في الواقع من السهل جدا. من السهل المسمار يعني. على الرغم من أن هناك أطنان من المكتبات ممتازة هناك (وسوف نذهب من خلالهم في مرحلة ما)، وأنا دائما مثل القيام بذلك من تلقاء نفسها من أجل صقل ذلك.
من جميع أنظمة باكتستينغ رأيت، يمكننا أن نفترض أن هناك فئتين:
اليوم، سوف نتحدث عن لوبيرس.
و "فور-لوبيرس" هي نوعي المفضل من باكتسترس. هم تافهة لكتابة ومتعة فائقة للتوسع ولكن لديهم بعض التدفقات الحيوية و للأسف معظم باكتستيرس هناك "فور لوبيرس" (بس: أحتاج إلى العثور على اسم أفضل لهذا!).
كيف يعمل لوبيرس؟ باستخدام حلقة (كما كنت قد خمنت). إنه شيء من هذا القبيل:
حق بسيط جدا؟ هذه هي الطريقة التي يعمل نظام باكتستينغ واحد، الذي يدير استراتيجية الزخم:
فما هي المشكلة؟
من الصعب جدا على نطاق (أفقيا) يحتاج الكثير من العمل للحفاظ على application_strategy () العمل على باكتستينغ والإنتاج تحتاج إلى أن يكون كل شيء في نفس لغة البرمجة.
دعونا الغوص في هذه، واحدا تلو الآخر.
قابلية التوسع . كنت تجرب زوجين قبل أسابيع مع خوارزمية تسلق التل لتحسين واحد من استراتيجيات بلدي. لا يزال قيد التشغيل. بعد أسبوعين. وأنا بناء أنظمة اوبر قابلة للعيش. لماذا لا يزال قيد التشغيل؟ يمكنك استخدام المعالجات المتعددة، ديسكو، المنتج / المستهلك (باستخدام زيرومق) أو المواضيع فقط لتسريع هذا ولكن بعض المشاكل ليست "محرجة موازية" (نعم، هذا هو مصطلح الفعلي، وليس واحدا من بلدي الكلمات المكتوبة). كمية العمل على نطاق باكتستر مثل هذا (وخصوصا عندما تريد أن تفعل نفس التعلم الآلي على رأسه) ضخمة. يمكنك أن تفعل ذلك ولكن هذا هو الطريق الخطأ.
الإنتاج و باكتستينغ في مزامنة هذا. الأوقات لقد تم لعض من قبل هذا. أستطيع أن أذكر الحرف المفقودة حيث كنت "هم، لماذا دخلت هذه التجارة؟" أو بلدي القديم الوقت المفضل "لماذا توقفت عربة توقفت الآن؟".
وقت القصة: كان لدي فكرة من أجل تحسين استراتيجيتي، لتشغيل باكتستر لمعرفة ما سيحدث لو كنت يمكن أن تضع وقف زائدة بعد أن كانت التجارة مربحة من أجل ضمان الأرباح دائما. عملت باكتستينغ مثل سحر في زيادة بنسبة 13٪ من الأرباح والإنتاج فقدت كل تجارة واحدة. أنا أحسب بها بعد خسر بلدي ألغو 3400 $ في بضع ساعات (درس مكلفة للغاية).
الحفاظ على مزامنة application_strategy من الصعب جدا ويصبح شبه مستحيل عندما تريد أن تفعل ذلك بطريقة موزعة. وأنت لا تريد أن يكون لديك إصدارين من الاستراتيجية الخاصة بك التي هي "تقريبا" متطابقة. إلا إذا كان لديك $ 3400 لتجنيب.
استخدام لغات مختلفة أحب بيثون. و إرلانغ. و كلوجور. و J. و C. و R. و روبي (لا فعلا أكره روبي). أريد أن أكون قادرا على الاستفادة من قوة اللغات الأخرى في نظامي. أريد أن جرب الاستراتيجيات في R حيث توجد مكتبات جيدة جدا اختبار وهناك مجتمع ضخم وراء ذلك. أريد أن يكون إرلانغ لتوسيع نطاق التعليمات البرمجية و C إلى أزمة البيانات. إذا كنت تريد أن تكون ناجحة (ليس فقط في التداول)، تحتاج إلى أن تكون قادرة على استخدام جميع الموارد المتاحة دون التحيز. لقد تعلمت الكثير من الاشياء من شنقا مع المطورين R بشأن كيف يمكنك دلتا السندات التحوط وتصور لهم أو لماذا نسبة شارب يمكن أن يكون كذب. كل لغة لديها حشد مختلف وتريد العديد من الناس سكب الأفكار في النظام الخاص بك. إذا حاولت أن يكون application_strategy في لغة مختلفة ثم حظا سعيدا مع (2).
هل أنت مقتنع الآن؟ حسنا، أنا لا أحاول إقناع لكم كما ل لوبرز هو وسيلة رائعة لتشغيل الاختبارات الأولية الخاصة بك. هو كيف بدأت ولعدة استراتيجيات أنا لا ترسل لهم إلى خط الأنابيب. وهناك طريقة "أفضل" (حتى تتمكن من النوم ليلا) هو مولدات الحدث.
القادمة القادمة، وتقاسم ومناقشة بلدي أبسط (ولكن الأكثر نجاحا) باكتستر!
إذا كان لديك المزيد من ردود الفعل، بينغ لي في جونروميرو أو الاشتراك في النشرة الإخبارية.
قانوني خارجي. هذا هو برنامج تعليمي هندسي حول كيفية بناء منصة ألغوترادينغ للتجريب و فان. أي اقتراحات هنا ليست النصائح المالية. إذا كنت تفقد أي (أو كل) لك المال لأنك اتبعت أي نصائح التداول أو نشر هذا النظام في الإنتاج، لا يمكنك إلقاء اللوم على هذه بلوق عشوائي (و / أو لي). استمتع على مسؤوليتك الخاصة.

بيثون ستراتيجيك ترادينغ بيثون
سنقوم بإنشاء استراتيجية كروسوفر المتوسط ​​المتحرك البسيطة في هذا التمويل مع البرنامج التعليمي بيثون، والتي سوف تسمح لنا للحصول على راحة مع إنشاء خوارزمية الخاصة بنا والاستفادة من الميزات كوانتوبيان ل. للبدء، توجه إلى علامة التبويب الخوارزميات ثم اختر الزر "خوارزمية جديدة". هنا، يمكنك تسمية خوارزمية الخاص بك ما تشاء، ومن ثم يجب أن يكون لديك بعض التعليمات البرمجية بدءا مثل:
كما ترون، تم إعداد بعض التعليمات البرمجية الأولية بالنسبة لنا.
إذا لم تكن معتادا على المتوسطات المتحركة، فإن ما يفعلونه هو أخذ عدد معين من "النوافذ" من البيانات. وفي حالة الترشح مقابل الأسعار اليومية، ستكون النافذة الواحدة يوما واحدا. إذا أخذت المتوسط ​​المتحرك 20، فإن ذلك يعني متوسط ​​متحرك لمدة 20 يوما. من هنا، الفكرة لنفترض أن لديك 20 متوسط ​​متحرك و 50 متوسط ​​متحرك. قد يبدو رسم هذا الرسم البياني على الشكل التالي:
هنا، الخط الأزرق هو سعر السهم، والخط الأحمر هو المتوسط ​​المتحرك 20 والخط الأصفر هو المتوسط ​​المتحرك 50. والفكرة هي أنه عندما يتحرك المتوسط ​​المتحرك 20، الذي يتفاعل بشكل أسرع، يتحرك فوق المتوسط ​​المتحرك 50، فهذا يعني أن السعر قد يتجه نحو أعلى، وقد نرغب في الاستثمار. على العكس من ذلك، إذا انخفض المتوسط ​​المتحرك 20 إلى ما دون المتوسط ​​المتحرك 50، فإن هذه الإشارات ربما تتجه للأسفل، وقد نرغب في البيع أو الاستثمار أو حتى بيع الشركة لفترة قصيرة.
بيع قصيرة.
البيع القصير هو فعل بيع ضمان لا يملكه أحد. وعادة ما يتم ذلك عن طريق اقتراض حصة شخص آخر للبيع، مع وعد بشرائه مرة أخرى. والهدف هنا هو بيع الأسهم لشخص آخر ل، مثلا، 100 $، لأنك تعتقد أنها ستسقط. لذلك، ثم ينخفض ​​إلى 90 $، يمكنك شرائه مرة أخرى، ومن ثم إعادته إلى المالك الأصلي. الفجوة 10 $ لك للحفاظ على.
البيع القصير محفوف بالمخاطر لسببين رئيسيين. الأول هو أنه في معظم الأحيان هو أن الشخص الآخر هو إقراض لك أسهم الشركة، لذلك هذا هو القرض، وكنت قد ينتهي فقدان المال الذي لم يكن لديك.
السبب التالي لماذا هذا محفوف بالمخاطر هو لأن قصيرة يمكن أن تذهب سيئة إلى حد ما. على سبيل المثال، إذا كنت تشتري شركة مقابل 100 دولار، فإن معظم ما يمكن أن تخسر هو 100 $ للسهم الواحد، لأن حصة يمكن أن تذهب إلى الصفر. إذا كنت قصيرة الشركة التي هي 100 $، وكنت تقف إلى ربما تفقد مبلغ لا حصر له من المال، لأن تلك الشركة يجب أن تذهب إلى 200 $ للسهم، 2000 $ للسهم. أو 200،000 $ للسهم. بطبيعة الحال فإنه من غير المحتمل أن تحصل على هذا السوء، ولكن النقطة هي: يمكنك أن تخسر لتفوق أكثر بكثير من الاستثمار الأصلي الخاص بك، وهذا غالبا ما يقترن حقيقة أن الاستثمار الأصلي لم يكن حتى مع المال، وكان القرض.
عادة، سيتم إقراضك من قبل الوسيط الخاص بك أو البنك، الذي لديه أيضا الحق في استعادة الأسهم كلما يشعرون بها. وهذا يعني أن السهم 100 $ قد يرتفع إلى 110 $ قبل أن ينخفض ​​إلى 90 $، ولكن البنك قد استعادة الأسهم في علامة 110 $ وكنت قدم ذلك الفاتورة.
وبالنظر إلى الرسم البياني أعلاه، يبدو لنا أننا سنفعل بشكل جيد. نحن نفتقد القمم المطلقة وأحواض من السعر، ولكن، عموما، ونحن نعتقد أننا سوف نفعل ما يرام مع هذه الاستراتيجية.
في كل مرة تقوم بإنشاء خوارزمية مع زيبلين أو كوانتوبيان، سوف تحتاج إلى أن يكون أساليب التهيئة والتعامل معها. وينبغي أن تدرج في كل خوارزمية تبدأ جديدة.
طريقة التهيئة تشغيل مرة واحدة على بدء الخوارزمية (أو مرة واحدة في اليوم إذا كنت تقوم بتشغيل خوارزمية العيش في الوقت الحقيقي). يتم تشغيل handle_data مرة واحدة لكل فترة. في حالتنا، نحن نعمل على البيانات اليومية، وهذا يعني أنه سيتم تشغيل مرة واحدة في اليوم الواحد.
ضمن أسلوب التهيئة، نمر عادة بمعلمة السياق هذه. السياق هو قاموس بايثون، وهو ما سنستخدمه لتعقب ما قد نستخدمه المتغيرات العالمية لولا ذلك. سوف تتبع السياق جوانب مختلفة من خوارزمية التداول لدينا مع مرور الوقت، حتى نتمكن من الإشارة إلى هذه الأشياء في السيناريو لدينا.
ضمن طريقة التهيئة:
ماذا يفعل هذا، هو أنه يضع أمننا للتداول إلى سبي. هذا هو سبيدر S & P 500 إتف (إكسهانج ترادد فوند)، وهي الطريقة التي يمكننا استخدامها لتداول مؤشر S & P 500.
هذا كل ما سنفعله الآن في أسلوب التهيئة لدينا، ثم سنبدأ لدينا طريقة hand_data:
لاحظ هنا أننا تمرير السياق ومعلمة جديدة تسمى البيانات. وتتبع البيانات البيانات الحالية للشركات داخل "عالم التداول". الكون هو مجموعة من الشركات ونحن مهتمون بشكل معقول في ربما الاستثمار في. في حالتنا، وضعنا هذا الكون في البداية في طريقة التهيئة، ووضع الكون كله إلى سبي.
ببساطة، يتم استخدام السياق فار لتعقب وضعنا الاستثماري الحالي، مع أشياء مثل محفظتنا والنقدية. يتم استخدام متغير البيانات لتتبع عالمنا من الشركات والمعلومات الخاصة بهم.
.mavg () هو طريقة بنيت في كوانتوبيان، و "البيانات [السياق. security]" هو لنا الرجوع إلى مفتاح بهذا الاسم في قاموس السياق لدينا.
يمكننا استدعاء هذا السياق. ما 1 والسياق. ما 2 إذا أردنا تخزينها في قاموس السياق واستخدامها خارج أسلوب التعامل معها، ولكننا لا نحتاج إلى الوصول إلى هذه البيانات خارج هنا، لذلك سنقوم فقط بعملها المتغيرات المحلية.
الآن بعد أن نحسب المتوسطات المتحركة المحسوبة، نحن مستعدون لمزيد من المنطق. من أجل التجارة، ونحن بحاجة إلى منطق مثل إذا كان قد عبرت أكثر من، ولكن أيضا، قبل أن نتمكن من جعل التجارة، ونحن بحاجة لمعرفة ما إذا كان لدينا ما يكفي من المال لإجراء عملية شراء، ونحن بحاجة إلى معرفة سعر الأمن، وعلينا أن تحقق لمعرفة ما إذا كان لدينا بالفعل هذا الموقف. ولإجراء ذلك، نضيف ما يلي إلى طريقة التعامل معها:
نحن الاستيلاء على السعر الحالي من خلال الرجوع إلى البيانات، وهو طريقنا لتتبع الكون لدينا من الشركات (حاليا فقط S & P 500 إتف $ الجاسوس). بعد ذلك، نحن تحقق لمعرفة أي المواقف الحالية التي لدينا من خلال الرجوع لدينا سياق. هنا، يمكننا أن نشير إلى جميع أنواع الأشياء في ما يتعلق بمحفظتنا، ولكن، في الوقت الراهن، ونحن نريد فقط للتحقق من مواقفنا. هذا يعود القاموس من كل من المواقف الخاصة بك، والمبلغ، وكم تم شغلها، وهلم جرا. لذلك نحن مهتمون في موقف معين في الشركة، لذلك نحن تفعل content. portfolio. positions [رمز ('سبي')]. من هنا، قلقنا الوحيد الآن هو معرفة ما إذا كان لدينا أي استثمار على الإطلاق، وبالتالي فإن السمة التي نهتم بها أكثر هو مقدار المواقف لدينا، لذلك نستخدم. amount في النهاية.
حتى الآن، قمنا بإنشاء المعلومات المطلوبة بالنسبة لنا أن نعرف قبل أن نستخدم فعلا بعض المنطق لتنفيذ الصفقات، ولكننا لم يكتب أي شيء للقيام فعلا التداول. هذا ما سنقوم بتغطيته في البرنامج التعليمي التالي.

No comments:

Post a Comment