Go to file
2025-11-02 19:36:26 +08:00
config update1 2025-11-02 10:41:17 +08:00
crontab update1 2025-11-02 10:41:17 +08:00
docs 更新 2025-10-01 09:58:52 +08:00
examples 更新 2025-10-01 09:58:52 +08:00
scripts 更新 2025-10-01 09:58:52 +08:00
src update1 2025-11-02 10:41:17 +08:00
web update1 2025-11-02 10:41:17 +08:00
.dockerignore add docker 2025-09-18 20:54:30 +08:00
.env.example 更新 2025-10-01 09:58:52 +08:00
.gitignore 更新 2025-10-01 09:58:52 +08:00
CRYPTO_README.md update1 2025-11-02 10:41:17 +08:00
crypto_scanner.py update1 2025-11-02 10:41:17 +08:00
docker-compose.yml update1 2025-11-02 10:41:17 +08:00
docker-start.sh 更新 2025-10-01 09:58:52 +08:00
Dockerfile update1 2025-11-02 10:41:17 +08:00
main.py 更新 2025-10-01 09:58:52 +08:00
market_scanner.py update1 2025-11-02 10:41:17 +08:00
README_Docker.md update 2025-09-23 16:12:18 +08:00
README_MySQL.md update 2025-09-23 16:12:18 +08:00
README.md update1 2025-11-02 10:41:17 +08:00
requirements.txt u0date 2025-11-02 19:36:26 +08:00
start_crypto_scanner.sh update1 2025-11-02 10:41:17 +08:00
start_market_scanner.sh update1 2025-11-02 10:41:17 +08:00
start_mysql_web.py update 2025-09-23 16:12:18 +08:00
STRATEGY_USAGE.md 更新 2025-10-01 09:58:52 +08:00
USAGE.md 更新 2025-10-01 09:58:52 +08:00

A股量化交易系统

一个基于Python的A股市场监控和选股量化程序使用TuShare数据源。

功能特性

  • 📈 实时数据获取: 使用TuShare获取A股实时行情数据
  • 🔍 舆情分析: 北向资金、融资融券、热点股票、龙虎榜数据分析
  • 📊 股票筛选: 基于技术指标和基本面的智能选股
  • 💰 市场监控: 实时监控价格变动、成交量异常、资金流向
  • 💹 策略回测: 历史数据验证交易策略效果
  • ⚙️ 灵活配置: 支持通过配置文件自定义参数

项目结构

TradingAI/
├── main.py                 # 程序入口
├── requirements.txt        # 依赖包列表
├── config/
│   └── config.yaml        # 配置文件
├── src/                   # 源代码
│   ├── data/              # 数据获取模块
│   │   ├── __init__.py
│   │   ├── tushare_fetcher.py   # A股行情数据获取
│   │   ├── binance_fetcher.py   # 加密货币数据获取
│   │   └── stock_pool_manager.py # 股票池管理
│   ├── strategy/          # 策略模块
│   │   ├── kline_pattern_strategy.py # K线形态策略
│   │   └── crypto_kline_pattern_strategy.py # 加密货币K线策略
│   ├── database/          # 数据库模块
│   │   └── mysql_database_manager.py
│   ├── execution/         # 执行模块
│   │   ├── strategy_executor.py # 策略执行器
│   │   └── task_scheduler.py    # 任务调度器
│   └── utils/             # 工具模块
│       ├── __init__.py
│       ├── config_loader.py
│       └── notification.py
├── logs/                  # 日志文件
└── data/                  # 数据文件

环境要求

  • Python 3.8+
  • 依赖包见 requirements.txt

快速开始

1. 克隆项目

git clone <your-repo-url>
cd TradingAI

2. 创建虚拟环境

python -m venv venv
source venv/bin/activate  # Linux/Mac
# or
venv\Scripts\activate     # Windows

3. 安装依赖

pip install -r requirements.txt

4. 运行程序

python main.py

配置说明

配置文件位于 config/config.yaml,包含以下主要配置:

  • trading: 交易相关配置(交易时间、风险控制等)
  • data: 数据源配置(更新频率、存储格式等)
  • strategy: 策略配置(技术指标参数、选股条件等)
  • monitor: 监控配置(报警阈值等)
  • logging: 日志配置

使用示例

获取实时行情

from src.data.tushare_fetcher import TushareFetcher

fetcher = TushareFetcher()
# 获取单只股票实时数据
data = fetcher.get_realtime_data("000001.SZ")

# 获取多只股票实时数据
data = fetcher.get_realtime_data(["000001.SZ", "000002.SZ"])

舆情分析

from src.data.sentiment_fetcher import SentimentFetcher

sentiment_fetcher = SentimentFetcher()

# 获取北向资金流向
north_flow = sentiment_fetcher.get_north_flow_current()

# 获取热门股票排行
hot_stocks = sentiment_fetcher.get_popular_stocks_east_100()

# 获取龙虎榜数据
dragon_tiger = sentiment_fetcher.get_dragon_tiger_list_daily()

# 分析单只股票舆情
analysis = sentiment_fetcher.analyze_stock_sentiment("000001.SZ")

搜索股票

# 搜索包含"平安"的股票
results = fetcher.search_stocks("平安")

获取历史数据

# 获取历史日线数据
hist_data = fetcher.get_historical_data(
    stock_code="000001.SZ",
    start_date="2023-01-01",
    end_date="2023-12-31"
)

命令行界面

程序启动后提供交互式命令行界面:

  • help - 显示帮助信息
  • status - 显示系统状态
  • market - 显示市场概况
  • search <关键词> - 搜索股票
  • sentiment - 显示市场舆情综合概览
  • hotstock - 显示热门股票排行
  • northflow - 显示北向资金流向
  • dragon - 显示龙虎榜数据
  • analyze <股票代码> - 分析单只股票舆情
  • quit - 退出程序

舆情分析功能

数据来源

  • 北向资金: 沪深股通资金流向数据
  • 融资融券: 两融余额和变化趋势
  • 热点股票: 东方财富、同花顺人气排行
  • 龙虎榜: 每日异动股票上榜数据
  • 风险扫描: 个股风险评估

主要指标

  • 资金流入流出情况
  • 市场热度排名
  • 机构席位动向
  • 个股异动原因

开发计划

  • 基础数据获取功能
  • 舆情数据分析模块
  • 技术指标计算模块
  • 选股策略实现
  • 实时监控功能
  • 回测系统
  • Web界面
  • 报警通知系统

Docker部署

项目支持Docker容器化部署包含Web界面和定时扫描功能

启动服务

# 启动所有服务
docker-compose up -d

# 仅启动Web服务  
docker-compose up -d trading-web

# 仅启动市场扫描服务
docker-compose up -d trading-market-scanner

服务说明

  • trading-web: Web界面服务 (端口8080)
  • trading-market-scanner: 定时市场扫描服务 (每晚8点执行)

查看日志

# 查看Web服务日志
docker-compose logs -f trading-web

# 查看扫描服务日志  
docker-compose logs -f trading-market-scanner

注意事项

  1. 首次使用需要确保网络连接正常TuShare需要从网络获取数据
  2. 请合理使用数据接口,避免频繁请求
  3. 本系统仅供学习和研究使用,不构成投资建议
  4. 实盘交易请谨慎,注意风险控制
  5. 确保配置文件中的TuShare Token和数据库连接信息正确

许可证

MIT License

贡献

欢迎提交Issue和Pull Request