โปรเจ็กต์นี้มอบกรอบการทำงานที่หลากหลายสำหรับการวิเคราะห์ความเชื่อมั่นในข้อมูลตลาดหุ้น ดำเนินการทดสอบย้อนหลังด้วย Backtrader และใช้ประโยชน์จากโมเดล AI เชิงสร้างสรรค์ เช่น ไปป์ไลน์ OpenAI, Llama และ Transformers สำหรับการวิเคราะห์ข้อมูลความเชื่อมั่น ประกอบด้วยฟังก์ชันสำหรับการดาวน์โหลดข้อมูลหุ้นจาก Yahoo Finance ดึงข้อมูลข่าวตลาดหุ้นโดยใช้ Alpaca API ประมวลผลข้อมูลความรู้สึกล่วงหน้า และดำเนินการทดสอบย้อนกลับด้วยกลยุทธ์ที่ปรับแต่งได้ การบูรณาการแบบจำลองภาษาขั้นสูงช่วยปรับปรุงกระบวนการวิเคราะห์ความรู้สึก ซึ่งช่วยให้เข้าใจความรู้สึกของตลาดได้ละเอียดยิ่งขึ้น
โครงการนี้มีจุดมุ่งหมายเพื่อให้ขั้นตอนการทำงานที่มีประสิทธิภาพสำหรับการวิเคราะห์ความเชื่อมั่นของตลาดหุ้นและการทดสอบกลยุทธ์การซื้อขายย้อนหลัง มันใช้ประโยชน์จาก Backtrader สำหรับการทดสอบย้อนหลังและ yfinance สำหรับการดาวน์โหลดข้อมูลหุ้น
requirements.txt
โคลนที่เก็บ:
git clone https://github.com/your-username/stock-sentiment-backtesting.git
cd stock-sentiment-backtesting
สร้างสภาพแวดล้อมเสมือน (เป็นทางเลือก แต่แนะนำ):
python -m venv venv
เปิดใช้งานสภาพแวดล้อมเสมือน:
บนวินโดวส์:
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'
รันสคริปต์หลักเพื่อรัน backtest:
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: ประกอบด้วยสคริปต์หลักสำหรับการรันการทดสอบย้อนกลับและการกำหนดกลยุทธ์
data: ไดเร็กทอรีสำหรับจัดเก็บไฟล์ข้อมูล รวมถึงข้อมูลหุ้นและข้อมูลความเชื่อมั่น
เอาท์พุต: ไดเร็กทอรีสำหรับบันทึกผลการทดสอบย้อนหลังและแปลง
llms: ประกอบด้วยไคลเอนต์ OpenAI และ Llama สำหรับการวิเคราะห์ความรู้สึก
ตัวประมวลผล: ประกอบด้วยตัวประมวลผลข้อมูลหุ้นสำหรับการประมวลผลข่าวหุ้นและข้อมูลความเชื่อมั่นล่วงหน้า
runner: ประกอบด้วยคลาสนักวิ่ง backtest สำหรับการทดสอบย้อนหลังโดยใช้ cerebro และ backtrader
sentiment_analysis: ประกอบด้วยไปป์ไลน์หม้อแปลงสำหรับการวิเคราะห์ความเชื่อมั่นในข้อมูลข่าว
กลยุทธ์: ประกอบด้วยโค้ดสำหรับกลยุทธ์ด้านเทคนิคเท่านั้น และทางเทคนิคพร้อมกลยุทธ์การวิเคราะห์ความรู้สึก
.gitignore: ระบุไฟล์และไดเร็กทอรีที่จะละเว้นโดยการควบคุมเวอร์ชัน
README.md: เอกสารประกอบโครงการ
Requirement.txt: รายการการพึ่งพาของ Python
ยินดีบริจาค! โปรดปฏิบัติตามแนวทางการบริจาค
โครงการนี้ได้รับอนุญาตภายใต้ใบอนุญาต MIT - ดูรายละเอียดในไฟล์ใบอนุญาต