يوفر هذا المشروع إطارًا متعدد الاستخدامات لتحليل المشاعر في بيانات سوق الأسهم، وإجراء اختبار رجعي باستخدام Backtrader والاستفادة من نماذج الذكاء الاصطناعي التوليدية مثل OpenAI وLlama وخط أنابيب Transformers لتحليل بيانات المشاعر. وهو يشمل وظائف تنزيل بيانات الأسهم من Yahoo Finance، وجلب بيانات أخبار سوق الأسهم باستخدام Alpaca APIs، والمعالجة المسبقة لبيانات المشاعر، وإجراء الاختبارات الخلفية باستخدام استراتيجيات قابلة للتخصيص. يؤدي دمج نماذج اللغة المتقدمة إلى تعزيز عملية تحليل المشاعر، مما يسمح بفهم أكثر دقة لمشاعر السوق.
يهدف هذا المشروع إلى توفير سير عمل مبسط لتحليل معنويات سوق الأسهم واختبار استراتيجيات التداول. إنه يستفيد من Backtrader لإجراء الاختبار الخلفي والتمويل لتنزيل بيانات الأسهم.
requirements.txt
استنساخ المستودع:
git clone https://github.com/your-username/stock-sentiment-backtesting.git
cd stock-sentiment-backtesting
إنشاء بيئة افتراضية (اختياري ولكن يوصى به):
python -m venv venv
تفعيل البيئة الافتراضية:
على نظام التشغيل Windows:
venv S cripts a ctivate
على نظام التشغيل MacOS/Linux:
source venv/bin/activate
تثبيت التبعيات:
pip install -r requirements.txt
قم بتحرير معلمات التكوين في main.py
لتخصيص المخزون ونطاق التاريخ والإعدادات الأخرى لتحليلك.
STOCK_TICKER = 'AAPL'
START_DATE = '2022-03-21'
END_DATE = '2022-12-31'
SENTIMENT_DATA_PATH = 'data/stock_sentiment_data.csv'
قم بتنفيذ البرنامج النصي الرئيسي لتشغيل الاختبار الخلفي:
python main.py
سيتم عرض نتائج الاختبار الخلفي، بما في ذلك مقاييس الأداء، في وحدة التحكم.
algotrading-sentimentanalysis-genai/
├── alpaca/
│ └── client.py
├── data/
│ └── stock_sentiment_data.csv
│ └── ...
├── llms/
│ └── llama_llm.py
│ └── openai_llm.py
├── processor/
│ └── stock_data_processor.py
├── runner/
│ └── backtest_runner.py
├── sentiment_analysis/
│ └── sentiment_analysis_pipeline.py
├── strategies/
│ └── technical_only_strategy/
│ └── technical_with_sentiment_strategy/
├── output/
│ └── ...
├── .gitignore
├── README.md
├── requirements.txt
├── main.py
└── venv/
└── ...
تثبيت مكتبة Alpaca Python:
pip install alpaca-trade-api
استخدم مفتاح API في التعليمات البرمجية الخاصة بك:
from alpaca_trade_api import REST
alpaca_api_key = "YOUR_API_KEY"
alpaca_secret_key = "YOUR_SECRET_KEY"
rest_client = REST ( alpaca_api_key , alpaca_secret_key )
قم بتثبيت مكتبة OpenAI الرسمية:
pip install openai
قم بتعيين مفتاح API الخاص بك كمتغير بيئة:
export OPENAI_API_KEY= " YOUR_API_KEY "
وبدلاً من ذلك، قم بتوفيره مباشرةً في التعليمات البرمجية الخاصة بك:
import openai
openai . api_key = "YOUR_API_KEY"
تثبيت المكتبات اللازمة:
pip install transformers
قم بتعيين رمز Hugging Face الخاص بك كمتغير بيئة:
export HF_ACCESS_TOKEN= " YOUR_TOKEN "
توخي الحذر عند التعامل مع مفاتيح API والرموز المميزة. تجنب كشفها في المستودعات العامة أو مشاركتها دون اتخاذ التدابير الأمنية المناسبة.
لا تتردد في تضمين هذه المعلومات في ملف README الخاص بك للحصول على تعليمات الإعداد الشاملة.
main.py: يحتوي على البرنامج النصي الرئيسي لتشغيل الاختبارات الخلفية وتعريف الإستراتيجية.
البيانات: دليل لتخزين ملفات البيانات، بما في ذلك بيانات الأسهم والميول.
الإخراج: دليل لحفظ نتائج الاختبار الخلفي والمؤامرات.
llms: تحتوي على عملاء OpenAI وLlama لتحليل المشاعر.
المعالج: يحتوي على معالج بيانات الأسهم للمعالجة المسبقة لأخبار الأسهم وبيانات المشاعر.
runner: يحتوي على فئة عداء backtest للاختبار الخلفي باستخدام cerebro وbacktrader.
تحليل المشاعر: يحتوي على خط أنابيب محول لتحليل المشاعر على بيانات الأخبار.
الاستراتيجيات: تحتوي على رمز للاستراتيجية الفنية فقط والتقنية مع استراتيجية تحليل المشاعر.
.gitignore: يحدد الملفات والأدلة التي سيتم تجاهلها بواسطة التحكم في الإصدار.
README.md: وثائق المشروع.
المتطلبات.txt: قائمة تبعيات بايثون.
المساهمات هي موضع ترحيب! يرجى اتباع إرشادات المساهمة.
هذا المشروع مرخص بموجب ترخيص MIT - راجع ملف الترخيص للحصول على التفاصيل.