EITEN هي مجموعة أدوات مفتوحة المصدر من قبل Tradytics التي تنفذ العديد من استراتيجيات الاستثمار الإحصائية والخوارزمية مثل محافظ Eigen ، وحافظات التباين الحد الأدنى ، وحافظات نسبة الشارب القصوى ، والمحافظات على أساس الخوارزميات الوراثية . يتيح لك بناء محافظك الخاصة مع مجموعة الأسهم الخاصة بك التي يمكنها التغلب على السوق. يمكّنك إطار الاختبار الصارم المدرج في EITEN من الثقة في محافظك.
إذا كنت تتطلع إلى مناقشة هذه الأدوات بعمق والتحدث عن المزيد من الأدوات التي نعمل عليها ، فلا تتردد في الانضمام إلى قناة Discord حيث لدينا مجموعة من الأدوات أيضًا.
طريق | وصف |
---|---|
إيتين | المجلد الرئيسي. |
└ الأرقام | أرقام لهذا المستودعات github. |
└ الأسهم | المجلد للحفاظ على قوائم الأسهم التي تريد استخدامها لإنشاء محافظك. |
└ الاستراتيجيات | حفنة من الاستراتيجيات التي تم تنفيذها في بيثون. |
backtester.py | الوحدة النمطية للاختلاف الذي يختبر كل من الاختبارات والتهمة جميع المحافظ. |
data_loader.py | وحدة لتحميل البيانات من ياهو تمويل. |
Portfolio_manager.py | الملف الرئيسي الذي يأخذ مجموعة من الحجج ويولد العديد من المحافظ لك. |
Simulator.py | Simulator التي تستخدم العائدات التاريخية ومونت كارلو لمحاكاة الأسعار المستقبلية للحافظات. |
strategy_manager.py | يدير الاستراتيجيات المنفذة في مجلد "الاستراتيجيات". |
ستحتاج إلى تثبيت الحزمة التالية لتدريب النماذج واختبارها.
يمكنك تثبيت جميع الحزم باستخدام الأمر التالي. يرجى ملاحظة أنه تمت كتابة البرنامج النصي باستخدام Python3.
pip install -r requirements.txt
دعونا نرى كيف يمكننا استخدام جميع الاستراتيجيات الواردة في مجموعة الأدوات لإنشاء محافظنا. أول شيء عليك القيام به هو تعديل ملف stocks.txt في مجلد الأسهم وإضافة الأسهم التي تختارها. يوصى بالحفاظ على القائمة الصغيرة ، أي في أي مكان ما بين 5 إلى 50 مخزون يجب أن يكون على ما يرام. لقد وضعنا بالفعل قائمة أسهم صغيرة تحتوي على مجموعة من الأسهم التقنية مثل AAPL و MSFT و TSLA وما إلى ذلك. هذا هو الأمر الرئيسي الذي تحتاج إلى تشغيله.
python portfolio_manager.py --is_test 1 --future_bars 90 --data_granularity_minutes 3600 --history_to_use all --apply_noise_filtering 1 --market_index QQQ --only_long 1 --eigen_portfolio_number 3 --stocks_file_path stocks/stocks.txt
سيستخدم هذا الأمر آخر 5 سنوات من البيانات اليومية باستثناء آخر 90 يومًا وبناء عدة محافظ لك. استنادًا إلى تلك المحافظ ، سيتم اختبارها بعد ذلك على بيانات خارجية من 90 يومًا وتظهر لك أداء كل محفظة. أخيرًا ، سيقارن أيضًا الأداء مع اختيارك لمؤشر السوق وهو QQQ هنا. دعنا نغطس في كل من المعلمات بالتفصيل.
فيما يلي بعض الأمثلة لبناء أنواع مختلفة من المحافظ.
python portfolio_manager.py --is_test 1 --future_bars 30 --data_granularity_minutes 3600 --history_to_use 90 --apply_noise_filtering 1 --market_index QQQ --only_long 0 --eigen_portfolio_number 3 --stocks_file_path stocks/stocks.txt
python portfolio_manager.py --is_test 0 --future_bars 0 --data_granularity_minutes 60 --history_to_use all --apply_noise_filtering 1 --market_index SPY --only_long 1 --eigen_portfolio_number 3 --stocks_file_path stocks/stocks.txt
python portfolio_manager.py --is_test 1 --future_bars 90 --data_granularity_minutes 3600 --history_to_use all --apply_noise_filtering 0 --market_index SQQQ --only_long 1 --eigen_portfolio_number 1 --stocks_file_path stocks/stocks.txt
يتم دعم أربع استراتيجيات مختلفة للمحفظة بواسطة مجموعة الأدوات.
عندما تقوم بتشغيل الأمر أعلاه ، ستقوم أداةنا بإنشاء محافظ من كل هذه الاستراتيجيات ومنحها لك. دعونا نلقي نظرة على بعض المحافظ الناتجة.
لغرض هذه النتائج ، سوف نستخدم 9 أسهم في ملف الأسهم/الأسهم. عندما ندير الأمر أعلاه ، نحصل أولاً على أوزان المحفظة لجميع الاستراتيجيات الأربعة. لأغراض الاختبار ، استخدم الأمر أعلاه الخمس سنوات الأخيرة من البيانات اليومية حتى 29 أبريل. تم استخدام البيانات المتبقية لهذا العام للاختبار الأمامي ، أي أن استراتيجيات المحفظة لم تتمكن من الوصول إليها عند بناء المحافظ.
ماذا لو كانت محفظتي تحتاج إلى أسهم مختلفة؟ : كل ما عليك فعله هو تغيير الأسهم في ملف stocks.txt وتشغيل الأداة مرة أخرى. إليكم الأمر النهائي مرة أخرى التي نديرها من أجل الحصول على محافظنا:
python portfolio_manager.py --is_test 1 --future_bars 90 --data_granularity_minutes 3600 --history_to_use all --apply_noise_filtering 1 --market_index QQQ --only_long 1 --eigen_portfolio_number 3 --stocks_file_path stocks/stocks.txt
يمكننا أن نرى أن محفظة eigen تعطي وزنًا كبيرًا لـ TSLA بينما يقسم الآخرون أوزانهم بشكل موحد. هناك ظواهر مثيرة للاهتمام التي تحدث هنا هي التحوط مع SQQQ التي تعلمتها جميع الاستراتيجيات تلقائيًا. تقوم كل أداة بتعيين بعض الوزن الإيجابي لـ SQQQ مع تعيين أوزان إيجابية أيضًا لأسهم أخرى تشير إلى أن الاستراتيجيات تحاول تلقائيًا التحوط من المحافظ من المخاطرة. من الواضح أن هذا ليس مثاليًا ، ولكن حقيقة أنه يحدث رائع. دعونا نلقي نظرة على نتائج الاختبار الخلفي في السنوات الخمس الماضية قبل 29 أبريل 2020.
الاختبارات الخلفية تبدو مشجعة جدا. الخط الأسود المنقط هو مؤشر السوق أي QQQ . خطوط أخرى هي الاستراتيجيات. يبدو أن تطبيق الخوارزمية الوراثية المخصصة لدينا يحظى بأفضل نتائج الاختبار الخلفي لأنها نسخة متقدمة من الاستراتيجيات الأخرى. إن محفظة Eigen التي تزن TSLA لديها أكبر قدر من التقلبات ، لكن أرباحها مرتفعة جدًا أيضًا. أخيرًا ، كما هو متوقع ، لدى MVP الحد الأدنى من التباين وفي النهاية أقل الأرباح. ومع ذلك ، نظرًا لأن التباين منخفض للغاية ، فهو محفظة جيدة لأولئك الذين يريدون البقاء آمنين. يأتي الجزء الأكثر إثارة للاهتمام بعد ذلك ، دعنا نلقي نظرة على نتائج الاختبار الأمامية أو المستقبلية لهذه المحافظ.
هذه النتائج هي من 29 أبريل ، 2020 إلى 4 سبتمبر ، 2020. حققت محفظة Eigen الأفضل ولكنها كانت لديها أيضًا الكثير من التقلبات. علاوة على ذلك ، فإن معظم هذه العائدات ترجع إلى الصواريخ TSLA في الأشهر القليلة الماضية. بعد ذلك ، عملت خوارزمية GA الخاصة بنا بشكل فعال تمامًا حيث تغلبت على مؤشر السوق. مرة أخرى ، كما هو متوقع ، كان لدى MVP أدنى خطر ومكافأة وارتفع ببطء في 4-5 أشهر. يوضح هذا فعالية وقوة استراتيجيات تحسين المحفظة الخوارزمية هذه حيث قمنا بتطوير محافظ مختلفة لأنواع مختلفة من ملفات تعريف المخاطر والمكافآت.
يسعدنا مشاركة مجموعة الأدوات هذه مع مجتمع التداول ونأمل أن يعجب الناس ويساهمون في ذلك. كما هو الحال مع كل شيء في التداول ، فإن هذه الاستراتيجيات ليست مثالية ولكنها تستند إلى نظرية صارمة وبعض النتائج التجريبية العظيمة. يرجى الاهتمام عند التداول مع هذه الاستراتيجيات وإدارة مخاطرك دائمًا. لم يتم اختيار النتائج المذكورة أعلاه ، لكن السوق كان متفائلًا للغاية في الأشهر القليلة الماضية مما أدى إلى نتائج قوية موضحة أعلاه. نود أن يجرب المجتمع استراتيجيات مختلفة ومشاركتها معنا.
شكر خاص لمدونة سكوت روما. جاءت محافظ eigen والحد الأدنى من مفاهيم محفظة التباين من منشورات مدونته. تم الحصول على رمز تصفية قيم eigen لمصفوفة التغاير في الغالب من أحد منشوراته.
منتج من Tradytics
حقوق الطبع والنشر (ج) 2020-تقديم ، tradytics.com