Wednesday 27 September 2017

Backtesting الناجح ل استراتيجيات التداول حسابي ، الجزء 1


Backtesting الناجح لاستراتيجيات التداول حسابي، الجزء 1 30 يونيو 2014 05:00 3 تعليقات المشاهدات: 1498 وتستمر هذه المقالة سلسلة على التداول الكمي، والتي بدأت مع دليل المبتدئين وتحديد الاستراتيجية. وكانت كل من هذه أطول، مقالات أكثر انخراطا شعبية جدا بحيث يستمر سوء في هذا السياق، وتوفير التفاصيل حول موضوع backtesting الاستراتيجية. backtesting حسابي يتطلب معرفة العديد من المجالات، بما في ذلك علم النفس والرياضيات، والإحصاء، وتطوير البرمجيات والسوق / تبادل المجهرية. أنا لم أستطع الأمل لتغطية كل تلك الموضوعات في مادة واحدة، لذلك ايم الذهاب الى تقسيمها الى قسمين او ثلاثة أجزاء أصغر. ما سوف نناقش في هذا القسم؟ يبدأ سوء من خلال تحديد backtesting ثم سأذكر أساسيات كيفية تنفيذه. بعد ذلك سوف توضيح على التحيزات تطرقنا عليها في دليل المبتدئين لتجارة الكمية. التالي سأقدم مقارنة بين مختلف الخيارات المتاحة البرمجيات backtesting. في مقالات لاحقة سوف ننظر في تفاصيل التنفيذ الاستراتيجية التي غالبا ما يتم ذكرها أو تجاهل بالكاد. وسوف ننظر أيضا كيفية جعل عملية backtesting أكثر واقعية من قبل بما في ذلك الخصوصيات من التبادل التجاري. ثم سنناقش تكاليف المعاملات وكيفية تصميم نموذج بشكل صحيح في وضع backtest. وسوف تنتهي مناقشة حول أداء backtests لدينا وتوفير أخيرا مثال على استراتيجية مشتركة ضليع في الرياضيات، والمعروفة باسم أزواج التجارة الرجوع المتوسط. دعونا نبدأ من خلال مناقشة ما هو backtesting وماذا يجب علينا القيام بها في التداول لدينا حسابي. ما هو Backtesting؟ تداول حسابي تقف وبصرف النظر عن أنواع أخرى من فئات الاستثمار لأننا يمكن أن توفر أكثر موثوقية توقعات حول الأداء المستقبلي من الأداء في الماضي، نتيجة لتوافر بيانات وفيرة. ومن المعروف أن العملية التي يتم تنفيذ هذه الخطة كما backtesting. بعبارات بسيطة، ويتم backtesting من خلال تعريض خوارزمية استراتيجية معينة لسيل من البيانات المالية التاريخية، الأمر الذي يؤدي إلى مجموعة من إشارات التداول. وكل صفقة (ونحن سوف يعني هنا أن تكون رحلة شاملة من إشارتين) يكون لها الربح أو الخسارة المرتبطة بها. وتراكم هذا الربح / الخسارة خلال مدة backtest استراتيجيتك يؤدي إلى مجموع الأرباح والخسائر (المعروف أيضا باسم PL أو الأرباح والخسائر). وهذا هو جوهر الفكرة، على الرغم من وبطبيعة الحال فإن الشيطان يكمن دائما في التفاصيل! ما هي الأسباب الرئيسية لbacktesting استراتيجية حسابي؟ الترشيح إذا كنت تذكر من هذه المادة على تحديد استراتيجية. كان هدفنا في مرحلة الأبحاث الأولية لانشاء خط انابيب استراتيجية وثم تصفية أي استراتيجية التي لم تستوف معايير معينة. Backtesting يوفر لنا آلية الترشيح آخر، ونحن يمكن القضاء على الاستراتيجيات التي لا تلبي احتياجات أدائنا. نمذجة Backtesting يسمح لنا (بأمان!) اختبار نماذج جديدة للظواهر معينة في السوق، مثل تكاليف المعاملات، بهدف توجيه، الكمون، السيولة أو قضايا المجهرية الأخرى في السوق. وعلى الرغم من التحسين الأمثل استراتيجية محفوف التحيز، backtesting يسمح لنا لزيادة أداء استراتيجية من خلال تعديل كمية أو قيم المعلمات المرتبطة بهذه الاستراتيجية وإعادة حساب أدائها. وغالبا ما مصدرها استراتيجيات تحقق لدينا خارجيا، عبر خط أنابيب استراتيجيتنا. Backtesting استراتيجية يضمن التي لم يتم تنفيذه بشكل غير صحيح. على الرغم من أننا نادرا ما يكون الوصول إلى الإشارات التي تولدها الاستراتيجيات الخارجية، ونحن في كثير من الأحيان الوصول إلى مقاييس الأداء مثل نسبة شارب وخصائص تراجع. وهكذا يمكننا مقارنتها مع تنفيذ منطقتنا. يوفر Backtesting مجموعة من المزايا للتداول حسابي. ومع ذلك، فإنه ليس من الممكن دائما أن backtest مباشر الاستراتيجية. بشكل عام، كما تردد من الزيادات استراتيجية، يصبح من الصعب نموذج للآثار المجهرية للسوق والتبادلات بشكل صحيح. وهذا يؤدي إلى backtests أقل موثوقية، وبالتالي تقييم اصعب من استراتيجية المختار. هذا هو مشكلة خاصة حيث نظام التنفيذ هو المفتاح لأداء استراتيجية، كما هو الحال مع خوارزميات تردد فائقة. للأسف، backtesting محفوف التحيز من جميع الأنواع. لقد تطرقت بعض هذه القضايا في مقالات سابقة، ولكن نحن سوف نناقشها الآن في العمق. التحيزات التي تمس Backtests الاستراتيجية هناك العديد من التحيزات التي يمكن أن تؤثر على أداء استراتيجية backtested. للأسف، هذه التحيزات تميل إلى تضخيم الأداء بدلا من ينتقص منه. وبالتالي يجب عليك أن تنظر دائما backtest أن يكون المثالية العلوي على الأداء الفعلي للاستراتيجية. يكاد يكون من المستحيل للقضاء على التحيزات من تداول حسابي لذلك فمن واجبنا أن التقليل منها قدر استطاعتنا من أجل اتخاذ قرارات مستنيرة بشأن استراتيجيات حسابي لدينا. هناك أربعة التحيزات الرئيسية التي أود أن مناقشة: الأمثل التحيز، نظرة مسبقة التحيز، الوراثة التحيز والتسامح النفسي التحيز. الأمثل التحيز وربما هذا هو أخبث من كل التحيزات backtest. أنها تنطوي على تعديل أو إدخال المعلمات التداول إضافية حتى الأداء الاستراتيجية على مجموعة البيانات backtest جذابة جدا. ومع ذلك، مرة واحدة يعيش أداء استراتيجية يمكن أن تكون مختلفة بشكل ملحوظ. اسم آخر لهذا التحيز هو منحنى المناسب أو التطفل البيانات التحيز. التحيز الأمثل من الصعب القضاء عن استراتيجيات حسابي غالبا ما تنطوي على العديد من المعلمات. المعلمات في هذه الحالة قد تكون معايير الدخول / الخروج، وفترات ننظر الى الوراء، حيث بلغ متوسطها فترات (أي متوسط ​​المعلمة تجانس تتحرك) أو تردد قياس التقلبات. التحيز الأمثل يمكن التقليل عن طريق الحفاظ على عدد من المعلمات إلى الحد الأدنى وزيادة كمية من نقاط البيانات في مجموعة التدريب. في الواقع، يجب على المرء أيضا أن نكون حذرين من هذا الأخير كنقاط تدريب كبار السن يمكن أن تخضع لنظام سابق (مثل بيئة تنظيمية)، وبالتالي قد لا تكون ذات صلة الاستراتيجية الحالية الخاصة بك. طريقة واحدة للمساعدة في تخفيف هذا التحيز هو إجراء تحليل الحساسية. وهذا يعني متفاوتة المعلمات تدريجيا والتآمر على سطح الأداء. يجب السليم، والمنطق الأساسي لاختيارات المعلمة، مع جميع العوامل الأخرى في الاعتبار، أن يؤدي إلى سطح المعلمة سلاسة. إذا كان لديك سطح أداء ثاب جدا، وغالبا ما يعني أن المعلمة لا تعكس الظواهر وهي الحرفية من بيانات الاختبار. هناك أدب كبير على خوارزميات التحسين متعددة الأبعاد وأنها منطقة نشطة للغاية للبحث. أنا لن أسهب في الحديث عن ذلك هنا، ولكن يبقيه في الجزء الخلفي من عقلك عندما تجد استراتيجية مع backtest رائعة! نظرة مسبقة التحيز هو عرض التحيز ننظر قدما إلى نظام backtesting عندما يتم تضمين البيانات في المستقبل عن طريق الخطأ في نقطة في محاكاة حيث أن البيانات لن يكون في الواقع المتاح. إذا نحن تشغيل backtest زمنيا ونصل إلى نقطة زمنية N. ثم يحدث التحيز ننظر للأمام إذا تم تضمين البيانات لأي نقطة N + ك. حيث k & GT؛ 0. ننظر قدما أخطاء التحيز يمكن أن تكون خفية لا يصدق. وفيما يلي ثلاثة أمثلة لكيفية نظرة إلى الأمام التحيز ويمكن إدخال: البق التقنية صالحة / ناقلات في التعليمات البرمجية في كثير من الأحيان iterators أو متغيرات المؤشر. إزاحة غير صحيحة من هذه المؤشرات يمكن أن يؤدي إلى تحيز نظرة إلى الأمام من خلال دمج البيانات في N + K لغير الصفر ك. حساب مقياس آخر مثال شائع من التحيز نظرة الاخضر يحدث عند حساب المعلمات الاستراتيجية المثلى، مثل مع الانحدار الخطي بين سلسلتين الوقت. إذا تم استخدام مجموعة البيانات بأكملها (بما في ذلك البيانات المستقبلية) لحساب معاملات الانحدار، وبالتالي يطبق بأثر رجعي لاستراتيجية التداول لأغراض التحسين، ثم يتم إدخال بيانات في المستقبل وجود تحيز نظرة إلى الأمام. استراتيجيات تداول بعض ماكسيما / الدنيا الاستفادة من القيم القصوى في أي فترة زمنية، مثل دمج أسعار مرتفعة أو منخفضة في البيانات OHLC. ومع ذلك، منذ لا يمكن إلا أن تحسب هذه القيم القصوى / الحد الأدنى في نهاية فترة زمنية، يتم إدخال تحيز نظرة إلى الأمام إذا تم استخدام هذه القيم - during - الفترة الحالية. فمن الضروري دائما أن يتخلف قيم عالية / منخفضة قبل فترة واحدة على الأقل في أي تداول استخدام صنع استراتيجية منهم. البقاء على قيد الحياة التحيز التحيز البقاء على قيد الحياة هو ظاهرة خطيرة للغاية ويمكن أن يؤدي إلى أداء تضخم بشكل كبير لأنواع استراتيجية معينة. وهو يحدث عندما يتم اختبار الاستراتيجيات على مجموعات البيانات التي لا تتضمن الكون الكامل للأصول السابقة التي ربما تكون قد اختارت عند نقطة معينة من الزمن، ولكن فقط النظر في تلك التي بقيت إلى الوقت الحالي. وكمثال على ذلك، والنظر في اختبار الاستراتيجية على مجموعة عشوائية من الأسهم قبل وبعد انهيار سوق 2001. ذهب بعض أسهم شركات التكنولوجيا المفلسة، بينما تمكن آخرون على البقاء واقفا على قدميه وازدهرت حتى. إذا كنا قد قيدت هذه الاستراتيجية فقط إلى الأسهم التي جعلت من خلال فترة السحب السوق، وسنكون إدخال التحيز البقاء على قيد الحياة لأنها أثبتت بالفعل نجاحها بالنسبة لنا. في الواقع، هذا هو مجرد حالة أخرى محددة من التحيز نظرة إلى الأمام، كما يجري إدماج المعلومات في المستقبل إلى تحليل الماضي. هناك طريقتان رئيسيتان للتخفيف من التحيز البقاء على قيد الحياة في backtests الاستراتيجية الخاصة بك: البقاء على قيد الحياة التحيز مجموعات البيانات الحرة في حالة بيانات الأسهم فمن الممكن لشراء مجموعات البيانات التي تشمل الكيانات شطب، على الرغم من أنها ليست رخيصة، وتميل فقط لاستخدامها من قبل الشركات المؤسسية. على وجه الخصوص، البيانات ياهو المالية هو NOT التحيز البقاء على قيد الحياة الحرة، وهذا يستخدم عادة من قبل العديد من التجار ALGO التجزئة. يمكن للمرء أيضا التداول في فئات الأصول التي ليست عرضة للتحيز البقاء على قيد الحياة، مثل بعض السلع الأساسية (ومشتقاتها في المستقبل). استخدام المزيد من البيانات الأخيرة في حالة من الأسهم، وذلك باستخدام مجموعة بيانات أكثر حداثة يخفف من احتمال أن يكون اختيار الأسهم اختيار وترجيح للناجين، وذلك ببساطة لأن هناك احتمال أقل من الشطب الأسهم عموما في فترات زمنية أقصر. يمكن للمرء أيضا البدء في بناء شخصية البقاء على قيد الحياة التحيز بيانات مجانية عن طريق جمع البيانات من النقطة الحالية فصاعدا. بعد 3-4 سنوات، سيكون لديك البقاء على قيد الحياة التحيز مجموعة مجانية صلبة من الأسهم البيانات التي لbacktest استراتيجيات أخرى. سننظر الآن بعض الظواهر النفسية التي يمكن أن تؤثر على الأداء التجاري الخاص بك. سننظر الآن بعض الظواهر النفسية التي يمكن أن تؤثر على الأداء التجاري الخاص بك. النفسي التسامح التحيز لم يتم في كثير من الأحيان ناقش هذه الظاهرة بشكل خاص في سياق التداول الكمي. ومع ذلك، يتم مناقشته على نطاق واسع فيما يتعلق المزيد من الطرق التجارية التقديرية. له أسماء مختلفة، ولكنها قررت إيف أن نسميها التحيز التسامح النفسي لأنه يجسد جوهر المشكلة. عند إنشاء backtests على مدى 5 سنوات أو أكثر، فمن السهل أن ننظر إلى منحنى الأسهم تتجه صعودا، وحساب العائد السنوي تتفاقم، نسبة شارب وحتى خفض وجودها الخصائص ويكون راضيا عن النتائج. وكمثال على ذلك، فإن استراتيجية قد تمتلك سحب النسبي الحد الأقصى من 25٪ ومدة السحب أقصاها 4 أشهر. وهذا لن يكون غير نمطية لاستراتيجية الزخم. ومن اليسير إقناع نفسه أنه من السهل على تحمل مثل هذه الفترات من الخسائر لأن الصورة العامة هي وردية. ومع ذلك، من الناحية العملية، فمن أصعب بكثير! في حالة حدوث عمليات السحب التاريخية من 25٪ أو أكثر في backtests، ثم في جميع الاحتمالات سترى فترات انسحاب مماثل في التداول الحي. هذه الفترات من سحب ونفسيا يصعب تحملها. ولقد لوحظ أول يد ما لسحب الموسعة يمكن أن يكون مثل، في الإطار المؤسسي، وأنه ليس لطيفا حتى لو توحي backtests سوف تحدث مثل هذه الفترات. السبب في أنني قد يطلق عليه التحيز هو أن في كثير من الأحيان استراتيجية من شأنها أن يكون الأمر خلاف ذلك النجاح هو توقف عن التداول خلال أوقات التخفيض الموسع، وبالتالي سوف تؤدي إلى ضعف أداء كبير مقارنة backtest. وهكذا، على الرغم من أن الاستراتيجية حسابي في الطبيعة، والعوامل النفسية يمكن أن لا تزال لديها التأثير الكبير على الربحية. الوجبات الجاهزة هو التأكد من أن إذا رأيت السحب من نسبة معينة والمدة في backtests، ثم عليك أن نتوقع منهم أن يحدث في البيئات التجارية الحية، وسوف تحتاج إلى المثابرة من أجل الوصول إلى الربحية مرة أخرى. حزم البرمجيات لBacktesting المشهد البرمجيات لbacktesting الاستراتيجية واسع. وتتراوح الحلول من الصف المؤسسي متكاملة برمجيات متطورة من خلال لغات البرمجة مثل C ++، بيثون وR حيث يجب أن تكون مكتوبة كل شيء تقريبا من الصفر (أو الإضافات المناسبة التي تم الحصول عليها). حيث أن التجار ضليع في الرياضيات نحن مهتمون في ميزان القدرة على نملك كومة تكنولوجيا التداول مقابل سرعة وموثوقية منهجية التنمية لدينا. وهنا هي الاعتبارات الرئيسية للاختيار البرنامج: البرمجة المهارة اختيار البيئة سوف في جزء كبير ينزل قدرتك على برنامج البرنامج. أنا أزعم أن يجري في السيطرة على كومة الكلي سوف يكون لها تأثير أكبر على الخاص PL المدى الطويل من الاستعانة بمصادر خارجية قدر الإمكان إلى بائع البرنامج. ويرجع ذلك إلى خطر الهبوط وجود البق الخارجية أو الخصوصيات التي كنت غير قادر على إصلاح في برنامج بائع، والتي لولاها علاجها بسهولة إذا كان لديك المزيد من السيطرة على كومة التكنولوجيا الخاصة بك هذا. تريد أيضا بيئة تحقق التوازن الصحيح بين الإنتاجية وتوفر مكتبة وسرعة التنفيذ. يمكنني أن أجعل توصية الشخصية أدناه. إعدام القدرة / وكيل التفاعل برامج معينة backtesting، مثل Tradestation، والعلاقات في مباشرة مع الوساطة. أنا لست من محبي هذا النهج إلى خفض تكاليف المعاملات وغالبا ما تكون عنصرا كبيرا في الحصول على نسبة شارب أعلى. إذا كنت تعادل في وسيط معين (وقوات Tradestation لك أن تفعل ذلك)، ثم سيكون لديك صعوبة في الانتقال إلى برنامج جديد (أو وسيط جديد) إذا دعت الحاجة إلى ذلك. توفر وسطاء التفاعلية API التي هي قوية، ولكن مع واجهة منفرجة قليلا. التخصيص بيئة مثل MATLAB أو بيثون يمنحك قدرا كبيرا من المرونة عند وضع استراتيجيات ALGO لأنها توفر مكتبات رائعة للعملية حسابية أي ما يقرب من تخيلها، ولكن أيضا السماح التخصيص واسعة النطاق عند الضرورة. استراتيجية تعقيد بعض البرامج فقط يكون لا قطع لعدد الثقيلة الطحن أو التعقيد الرياضي. التفوق هو واحد من هذه قطعة من البرمجيات. في حين انه لامر جيد لاستراتيجيات أبسط، فإنه لا يمكن التغلب حقا مع العديد من الأصول أو خوارزميات أكثر تعقيدا، بسرعة. التحيز Minimisation هل قطعة معينة من البرامج أو البيانات تقرض نفسها أكثر على التحيزات التداول؟ كنت بحاجة للتأكد من أنه إذا كنت تريد إنشاء كل وظيفة نفسك، وأنك لا يعرض الأخطاء التي يمكن أن تؤدي إلى التحيز. سرعة التنمية احدة سوفت لديك لقضاء شهور وشهور تنفيذ محرك backtest. النماذج ينبغي أن يستغرق سوى بضع أسابيع. تأكد من أن البرنامج لا يعيق تقدمك إلى أي حد بعيد، لمجرد الاستيلاء على عدد قليل اضافية نقطة مئوية من سرعة التنفيذ. C ++ هو الفيل في الغرفة هنا! سرعة التنفيذ إذا لديك استراتيجية تعتمد كليا على توقيت الإعدام (كما هو الحال في HFT / UHFT) ثم لغة مثل C أو C ++ سيكون ضروريا. ومع ذلك، سيتم لك يشارف على لينكس الأمثل نواة واستخدام FPGA لهذه المجالات، والتي هي خارج نطاق هذا المقال! يكلف الكثير من البيئات البرامج التي يمكنك البرنامج استراتيجيات التداول الحسابية مع هم مصدر خال تماما ومفتوحة. في الواقع، العديد من صناديق التحوط الاستفادة من البرمجيات المفتوحة المصدر لكامل مداخن التداول البرودة؛ الصقيع بهم. بالإضافة إلى ذلك، Excel و MATLAB كلاهما رخيصة نسبيا، وهناك حتى البدائل الخالية لكل منهما. الآن أن لدينا قائمة من المعايير التي نحن بحاجة إلى اختيار البنية التحتية برنامجنا، أريد أن تعمل من خلال بعض من الحزم أكثر شعبية وكيف يقارنونها: ملاحظة: انا ذاهب فقط لتشمل البرامج غير متاحة لمعظم الممارسين التجزئة و مطوري البرمجيات، وهذا هو قراء الموقع. بينما البرامج الأخرى متاحة مثل المزيد من الأدوات الصف المؤسسي، أشعر هذه هي مكلفة جدا بحيث لا يمكن استخدامها بشكل فعال في وضع التجزئة، وأنا شخصيا ليست لدي خبرة معهم. وصف . WYSIWYG (ما لكم الترقب هو بين ما أنت بين الحصول على) برنامج جداول البيانات. على نطاق واسع للغاية في الصناعة المالية. تقترن بإحكام البيانات والخوارزمية. إعدام . نعم، يمكن أن تكون مرتبطة Excel في معظم شركات السمسرة. التخصيص. وحدات الماكرو VBA تسمح المزيد من الوظائف المتقدمة على حساب يختبئ التنفيذ. استراتيجية التعقيد. المزيد من الأدوات الإحصائية المتقدمة هي أصعب لتنفيذ وكذلك الاستراتيجيات مع عدة مئات من الأصول. التحيز Minimisation. ننظر قدما التحيز هو من السهل اكتشافها عن طريق وظيفة-تسليط الضوء على الخلية (على افتراض عدم VBA). سرعة التنمية. سريعة لتنفيذ الاستراتيجيات الأساسية. إعدام السرعة. سرعة التنفيذ بطيئة مناسبة فقط لاستراتيجيات أدنى تردد. كلفة . رخيصة أو مجانا (تبعا الترخيص). البدائل. مكتب مفتوح وصف . بيئة برمجة مصممة أصلا لمادة الرياضيات الحسابية والفيزياء والهندسة. مناسبة بشكل جيد للغاية لعمليات vectorised وتلك التي تنطوي العددي الجبر الخطي. يوفر مجموعة واسعة من الإضافات لتداول ضليع في الرياضيات. في الاستخدام واسع النطاق في صناديق التحوط الكمية. إعدام . لا قدرة التنفيذ الأم، يتطلب MATLAB نظام التنفيذ منفصل. التخصيص. مجموعة ضخمة من الإضافات المجتمع في جميع المجالات تقريبا الرياضيات الحسابية. استراتيجية التعقيد. العديد من الأساليب الإحصائية المتقدمة المتاحة بالفعل واختبارها بشكل جيد. التحيز Minimisation. أصعب لكشف التحيز نظرة إلى الأمام، يتطلب اختبارات مكثفة. سرعة التنمية. يمكن النصية القصيرة خلق backtests متطورة بسهولة. إعدام السرعة. بافتراض / خوارزمية parallelised vectorised، هو الأمثل للغاية MATLAB. الفقراء لحلقات كرر التقليدية. كلفة . وصف . لغة رفيعة المستوى مصممة لسرعة التنمية. مجموعة واسعة من المكتبات منذ ما يقرب من أي مهمة يمكن تخيلها البرمجي. كسب قبول أوسع في صناديق التحوط والمجتمع بنك الاستثمار. ليس تماما بأسرع C / C ++ لسرعة التنفيذ. إعدام . توجد الإضافات الثعبان للوسطاء أكبر، مثل وسطاء التفاعلية. backtest بالتالي ونظام التنفيذ يمكن أن يكون كل جزء من نفس التكنولوجيا المكدس. التخصيص. الثعبان لديها مجتمع التنمية صحي جدا وهي لغة ناضجة. NumPy / SciPy توفير الحوسبة والتحليل الإحصائي الأدوات العلمية السريعة ذات الصلة لتداول ضليع في الرياضيات. استراتيجية التعقيد: توجد العديد من الإضافات لخوارزميات الرئيسية، ولكن ليس تماما كبيرة كمجتمع ضليع في الرياضيات كما توجد لMATLAB. التحيز Minimisation. وتوجد نفس المشاكل التحيز التقليل من شأن أية لغة عالية المستوى. يجب أن نكون حذرين للغاية حول اختبار. سرعة التنمية. الثعابين الميزة الرئيسية هي سرعة التنمية، مع قوة في بني في قدرات الاختبار. إعدام السرعة. ليس تماما بأسرع C ++، ولكن مكونات الحوسبة العلمية هي الأمثل وبيثون يمكن التحدث إلى رمز C الأصلي مع بعض الإضافات. كلفة . متوفر / بدائل مفتوحة المصدر. روبي. إرلانج. هاسكل وصف . البيئة المصممة للطرق الإحصائية المتقدمة وتحليل السلاسل الزمنية. مجموعة واسعة من من toolsets محددة الرسوم البيانية الإحصائية، الاقتصاد القياسي والأم. مجتمع المطورين كبير. إعدام . R تمتلك الإضافات لبعض السماسرة، ولا سيما وسطاء التفاعلية. وبالتالي يمكن للنظام نهاية إلى نهاية مكتوبة تماما في R. التخصيص. R يمكن تكييفها مع أي حزمة، ولكن قوتها تكمن في الإحصائية / مجالات الاقتصاد القياسي. استراتيجية التعقيد. معظمها مفيدة إذا كان أداء الاقتصاد القياسي والاستراتيجيات الإحصائية أو تعلم آلة بسبب الإضافات المتاحة. التحيز Minimisation. مستوى مماثل من التحيز إمكانية لأي لغة عالية المستوى مثل بايثون أو C ++. وهكذا الاختبار يجب أن تنفذ. سرعة التنمية. R هي السريع لاستراتيجيات الكتابة استنادا إلى الأساليب الإحصائية. إعدام السرعة. R أبطأ من C ++، لكنها لا تزال الأمثل نسبيا لعمليات vectorised (كما هو الحال مع MATLAB). كلفة . متوفر / بدائل مفتوحة المصدر. SPSS. ستاتا وصف . ناضجة، لغة عالية المستوى مصممة لسرعة التنفيذ. مجموعة واسعة من التمويل الكمي والمكتبات الرقمية. أصعب لتصحيح وعادة ما يستغرق وقتا أطول للتنفيذ من بيثون أو MATLAB. سائدة للغاية في كل من buy - والجانب بيع. إعدام . تتم كتابة معظم واجهات برمجة التطبيقات الوساطة في C ++ و Java. وبالتالي وجود العديد من الإضافات. التخصيص. C / C ++ يسمح بالوصول المباشر إلى الذاكرة الأساسية، لا يمكن تنفيذ استراتيجيات تردد بالتالي فائقة. استراتيجية التعقيد. يوفر C ++ STL مجموعة واسعة من خوارزميات الأمثل. أي ما يقرب من خوارزمية رياضية متخصصة تمتلك ومفتوح المصدر C / C ++ تنفيذ مجانا على شبكة الإنترنت. التحيز Minimisation. التحيز ننظر قدما يمكن أن تكون خادعة للقضاء، ولكن ليس أصعب من غيرها من لغة عالية المستوى. يجب أن أدوات التصحيح جيدة، ولكن المرء أن يكون حذرا عند التعامل مع الذاكرة الأساسية. سرعة التنمية. C ++ مطول جدا بالمقارنة مع بيثون أو MATLAB لنفسه algorithmm. المزيد من خطوط-من التعليمات البرمجية (LOC) وغالبا ما يؤدي إلى زيادة احتمال الخلل. إعدام السرعة. C / C ++ ديه سريع للغاية سرعة التنفيذ، ويمكن أن أمثل بشكل جيد للأبنية الحسابية محددة. هذا هو السبب الرئيسي للاستفادة من ذلك. كلفة . المجمعين مختلفة: لينكس / مجلس التعاون الخليجي هي حرة، MS البصرية ستوديو تمت متباينة التراخيص. البدائل. C #. جافا. سوف سكالا استراتيجيات مختلفة تتطلب حزم البرمجيات المختلفة. وسوف تكون مكتوبة استراتيجيات HFT وUHFT في C / C ++ (في هذه الأيام كثيرا ما تنفذ فيها على وحدات معالجة الرسومات والتصميم بما)، في حين استراتيجيات الأسهم الاتجاه ذات التردد المنخفض هي سهلة التنفيذ في TradeStation، نظرا لطبيعة كل واحدة من البرنامج / الوساطة. بلدي تفضيل شخصي هو لبيثون، حيث أنه يوفر درجة اليمنى من التخصيص، وسرعة التطور، والقدرة على اختبار وسرعة التنفيذ لاحتياجات واستراتيجيات بلدي. إذا كنت بحاجة إلى أي شيء بشكل أسرع، ويمكن إسقاط في لC ++ بصورة مباشرة من برامج بيثون بلدي. أسلوب واحد التي يفضلها العديد من التجار ضليع في الرياضيات هو النموذج الأولي استراتيجياتها في بيثون ثم تحويل أقسام التنفيذ أبطأ C ++ بطريقة متكررة. في نهاية المطاف هو مكتوب في البرودة؛ الصقيع كامل في C ++، ويمكن أن تترك وحدها للتجارة! في المقالات القليلة المقبلة على backtesting سوف نلقي نظرة على بعض المسائل الخاصة التي تحيط بتنفيذ نظام تجاري backtesting حسابي، وكذلك كيفية إدراج آثار التبادل التجاري. وسوف نناقش قياس أداء استراتيجية وإبرام أخيرا مع استراتيجية سبيل المثال. - بقلم مايكل هولز-مور من QuantStart

No comments:

Post a Comment