finmarketpy هي مكتبة مبنية على لغة Python تمكنك من تحليل بيانات السوق وأيضًا اختبار استراتيجيات التداول باستخدام واجهة برمجة التطبيقات (API) سهلة الاستخدام، والتي تحتوي على قوالب معدة مسبقًا لتتمكن من تحديد الاختبار الخلفي. المدرجة في المكتبة
نرحب بالمساهمين في المشروع، انظر أدناه!
لقد قمت سابقًا بكتابة مكتبة PyThalesians المالية مفتوحة المصدر (والتي تم دمجها مع هذه - حتى تتمكن من التركيز على الحفاظ على مجموعة واحدة من المكتبات). تحتوي مكتبة finmarketpy الجديدة هذه على
نقاط يجب ملاحظتها:
حساب العوائد التراكمية لاستراتيجية التداول تاريخياً (راجع finmarketpy_examples/tradingmodelfxtrend_example.py)
رسم نفوذ الاستراتيجية مع مرور الوقت
رسم عوائد التجارة الفردية
حساب الموسمية لأي أصل: نعرض هنا موسمية تقلبات الذهب والعملات الأجنبية (انظر الأمثلة/seasonality_examples.py)
حساب دراسة الأحداث المتعلقة بأحداث الأصول (راجع الأمثلة/events_examples.py)
المتطلبات الرئيسية
للحصول على تعليمات التثبيت التفصيلية لـ finmarketpy ومكتبات Python المرتبطة بها، انتقل إلى https://github.com/cuemacro/finmarketpy/blob/master/INSTALL.md (الذي يتضمن تفاصيل حول كيفية إعداد بيئة Python بأكملها).
ألقِ نظرة أيضًا على https://github.com/cuemacro/teaching/blob/master/pythoncourse/installation/installing_anaconda_and_pycharm.ipynb من الدورة التدريبية لورشة عمل Python للتمويل، حيث أحتفظ بملاحظات خاصة حول إعداد بيئة Anaconda الخاصة بك لعلم البيانات (بما في ذلك ملفات findatapy/chartpy/finmarketpy)، بما في ذلك ملفات YAML وما إلى ذلك.
يمكنك تثبيت المكتبة باستخدام ما يلي (من الأفضل الحصول على الإصدار الأحدث من الريبو، بدلاً من الإصدارات).
بعد التثبيت:
pip install git+https://github.com/cuemacro/finmarketpy.git
ولكن يرجى التأكد مسبقًا من أنك قمت بالفعل بتثبيت كل من Chartpy وfindatapy وأي تبعيات أخرى. في Chartpy، ستحتاج إلى تغيير ملف Chartconstants.py (لإضافة مفتاح Plotly API) وبالنسبة إلى findatapy، ستحتاج أيضًا إلى تغيير ملف dataconstants.py لإضافة Quandl API (وربما تغيير إعدادات التكوين الأخرى هناك أو إضافة datacred.py في مجلد util، وبدلاً من ذلك سيُطلب منك في أول تشغيل لك إدخال مفتاح API الذي سيتم تثبيته). إذا قمت بإجراء النقطة باستخدام git، فستحصل على الالتزام الأخير.
pip install git+https://github.com/cuemacro/chartpy.git
pip install git+https://github.com/cuemacro/findatapy.git
ومع ذلك، يمكنك أيضًا تثبيت النقاط للحصول عليها من PyPI (قد يكون إصدارًا أقدم قليلاً من ذلك الموجود على GitHub)
pip install chartpy
pip install findatapy
لاحظ أنه إذا كنت تستخدم خيار تسعير الخيارات/إجمالي العوائد، فقد تحتاج إلى الحصول على أحدث إصدار من FinancePy من GitHub https://github.com/domokane/FinancePy/ بدلاً من PyPI
pip install git+https://github.com/domokane/FinancePy/FinancePy.git
يمكنك تشغيل بعض دفاتر ملاحظات Jupyter في Binder بشكل تفاعلي في متصفحك للتجول باستخدام finmarketpy. قد يستغرق الأمر بضع دقائق حتى يبدأ مثيل Binder. نحن نعمل حاليًا على توفير المزيد من دفاتر الملاحظات في Binder، لذا تابعونا!
لاحظ أنك ستحتاج إلى الحصول على مفتاح Quandl API لتنزيل بيانات السوق لاستخدام بعض منها، ويمكنك التسجيل للحصول على حساب مجاني على https://www.quandl.com.
لقد وجدت هذه المقالة مفيدة لشرح كيفية تحديث الشوكة الخاصة بك لتتناسب مع التغييرات الرئيسية.
نرحب دائمًا بالمساهمين في finmarketpy وfindatapy وchartpy. إذا كنت ترغب في المساهمة، فقم بإلقاء نظرة على الميزات المخططة للمناطق التي نبحث عن المساعدة فيها. أو إذا كان لديك أي أفكار لتحسين المكتبات فيرجى إخبارنا بها أيضًا!
لقد أمضينا سنوات عديدة في كتابة مكتبات finmarketpy وغيرها من المكتبات مفتوحة المصدر في Cuemacro، ونحن حريصون على القيام بذلك لسنوات عديدة في المستقبل.
إذا كنت تستخدم مكتباتنا وتهتم برعاية مكتبات Cuemacro مفتوحة المصدر، فيمكنك القيام بذلك من خلال صفحة رعاية GitHub على https://github.com/sponsors/cuemacro
كما نقدم أيضًا خدمات تجارية لمكتبات Cuemacro الخاصة بنا، والتي تشمل:
إذا كنت مهتمًا بخدماتنا التجارية، فيرجى الاتصال بـ [email protected]
كل مصادر التمويل هذه، سواء كانت رعاية أو خدماتنا التجارية، تساعدنا في الحفاظ على مكتبات Cuemacro، حتى نتمكن من تحسين مكتباتنا مفتوحة المصدر للمجتمع.
تحت finmarketpy يستخدم Financepy للقيام بتسعير الخيارات. ويستخدم Numba لتسريع الحساب.
قد تواجه أحيانًا أخطاء Numba مثل Failed in nopython mode pipeline (step: nopython frontend)
إحدى الطرق الممكنة لإصلاح ذلك هي حذف مجلدات __pycache__
الموجودة أسفل أي مكان تم تثبيت Financepy فيه:
على سبيل المثال. إذا كنت تستخدم بيئة py38class
، وإذا قمت بتثبيت Anaconda في C:Anaconda3
، فقد تجد المجلد Financepy في الموقع أدناه
C:Anaconda3envspy38classLibsite-packagesfinancepy
في finmarketpy/examples ستجد العديد من الأمثلة، بما في ذلك بعض نماذج التداول البسيطة
نهاية المذكرة