Skip to content

FQuant 系统架构总览

架构分层图

┌─────────────────────────────────────────────────────────────────────┐
│                         FQuant.Server                               │
├────────────────┬────────────────┬────────────────┬────────────────┤
│    FQConfig    │    FQCore      │   FQDataSource │   FQDataStore │
│   (配置中心)     │   (核心抽象层)   │   (数据源适配)   │   (存储适配)   │
├────────────────┴────────────────┴────────────────┴────────────────┤
│                      FQDataStruct                                │
│                      (数据结构层)                                  │
├──────────────────────────────────────────────────────────────────┤
│                         FQAlgorithm                              │
│              (算法体系: 指标 + 因子 + 过滤器 + 信号)                │
├──────────────────────────────────────────────────────────────────┤
│                         FQMarket                                 │
│              (市场层: 策略 + 回测 + 实时分析)                       │
├──────────────────────────────────────────────────────────────────┤
│                         FQServer                                 │
│                   (服务层: Celery + Flask)                       │
├──────────────────────────────────────────────────────────────────┤
│                      FQNotification                             │
│                      (通知服务: 微信/Server酱)                     │
├──────────────────────────────────────────────────────────────────┤
│                         FQUtil                                   │
│                    (跨模块工具: 日志/异常/指标)                      │
└──────────────────────────────────────────────────────────────────┘

核心模块说明

✅ FQBase - 基础模块(已完成)

模块说明状态
FQConfig配置中心:路径、市场常量、Redis、日志配置✅ 已完成
FQCore核心抽象:数据结构基类、验证器、缓存、事件总线、转换器✅ 已完成
FQDataSource数据源抽象:TdxAdapter、AkShareAdapter、EFinanceAdapter✅ 已完成
FQDataStore存储抽象:MongoDBAdapter、RedisAdapter、连接池、事务管理✅ 已完成
FQDataStruct数据结构:Stock、Index、Future、Bond、Block、Financial✅ 已完成
FQDate日期算法:交易日判断、时间戳转换(8555个交易日数据)✅ 已完成
FQNotification通知服务:企业微信、Server酱、PushBear✅ 已完成
FQUtil跨模块工具:统一日志、异常处理、编解码、并行计算、SQL工具✅ 已完成

✅ FQAlgorithm - 算法体系(已完成)

模块说明状态
Indicators指标库:趋势(MA,MACD)、动量(KDJ,RSI)、波动(BOLL,ATR,CCI)、量价(OBV)✅ 已完成
Factors因子库:Alpha因子、风险因子、市场因子✅ 已完成
Filters过滤器:基类、管道、价格/成交量/技术/风险过滤器✅ 已完成
Signals信号生成:信号生成器、复合信号✅ 已完成
Evaluators评估器:绩效评估、风险指标、参数优化(遗传算法)✅ 已完成
preprocessing数据预处理:缺失值填充、异常值处理、标准化✅ 已完成
feature_engineering特征工程:特征生成、特征选择✅ 已完成
model_evaluator模型评估:回测评估器✅ 已完成

🔄 FQMarket - 市场层(部分完成)

模块说明状态
StrategyPools策略池:55+策略文件(sp_, bs_✅ 已完成
Simulate回测系统:CPoolsSimulate 回测引擎✅ 已完成
FQUtil/Tools工具模块:BBlock、MonitorMarket、ToolsGetData 等✅ 已完成
AnalysisTools分析工具:市场数据、概念数据、行业数据等✅ 已完成

✅ FQServer - 服务层(已完成)

模块说明状态
Celery任务调度:15个定时任务、支持 tasks.yaml 多环境配置✅ 已完成
FlaskAPI服务:K线图表等✅ 已完成
FileSync文件同步服务✅ 已完成
FTPFTP服务✅ 已完成

🔄 FQFactor - 因子层(已完成)

模块说明状态
Indicator25个技术指标:MACD、KDJ、RSI、BOLL、BIAS等✅ 已完成
BaseFunction公共函数库✅ 已完成
Analysis分析工具✅ 已完成

🔄 FQData - 数据层(已完成)

模块说明状态
QAData数据结构:QADataStruct、base_datastruct✅ 已完成
QAFetch数据获取:QATdx、AkShare、同花顺等✅ 已完成
QASU数据存储:save_tdx、save_financialfiles 等✅ 已完成
QAUtil工具层:日期、代码转换、缓存等✅ 已完成

项目目录结构

FQuant.Server/
├── FQBase/                      # ✅ 基础模块
│   ├── FQBase/
│   │   ├── FQConfig/           # ✅ 配置中心
│   │   ├── FQCore/             # ✅ 核心抽象
│   │   ├── FQDataSource/       # ✅ 数据源适配
│   │   ├── FQDataStore/        # ✅ 存储适配
│   │   ├── FQDataStruct/       # ✅ 数据结构
│   │   ├── FQDate/             # ✅ 日期算法
│   │   ├── FQNotification/     # ✅ 通知服务
│   │   ├── FQUtil/             # ✅ 工具库
│   │   └── FQAlgorithm/        # ✅ 算法体系
│   └── setup.py

├── FQData/                       # ✅ 数据层
│   ├── FQData/
│   │   ├── QAData/            # 数据结构
│   │   ├── QAFetch/           # 数据获取
│   │   ├── QASU/              # 数据存储
│   │   └── QAUtil/            # 工具层
│   └── requirements.txt

├── FQFactor/                     # ✅ 因子层
│   ├── FQFactor/
│   │   ├── Indicator/         # 25个技术指标
│   │   ├── Factor/            # 因子
│   │   ├── Analysis/          # 分析工具
│   │   └── BaseFunction.py    # 公共函数
│   └── requirements.txt

├── FQMarket/                     # 🔄 市场层
│   ├── FQMarket/
│   │   ├── FQUtil/            # 工具模块
│   │   ├── StrategyPools/     # 55+策略文件
│   │   ├── Simulate/          # 回测系统
│   │   └── RealTime/          # 实时分析
│   └── requirements.txt

├── FQServer/                     # ✅ 服务层
│   ├── Celery/                 # Celery任务
│   ├── Flask/                   # Flask API
│   ├── FileSync/               # 文件同步
│   └── FTP/                    # FTP服务

├── FQAlgorithm/                  # ✅ 算法体系
├── docs/                         # 设计文档
└── .env                          # 环境变量

技术栈

类别技术
语言Python 3.11+
数据处理pandas, numpy
数据库MongoDB, Redis
任务调度Celery
Web服务Flask
数据源Tdx (通达信), AkShare, EFinance, 同花顺
量化指标TALib (可选), pandas-ta
配置管理YAML, dotenv
日志logging.yaml

实施阶段

阶段内容状态
阶段一基础设施重构(FQConfig/FQCore/FQUtil)✅ 已完成
阶段二数据源与存储抽象(FQDataSource/FQDataStore)✅ 已完成
阶段三算法体系重构(FQAlgorithm)✅ 已完成
阶段四回测系统增强🔄 进行中
阶段五预警与复盘系统(FQAlert/FQReport)🔄 未开始
阶段六任务调度与API服务🔄 未开始
阶段七FQMarket 工具层重构🔄 未开始
阶段八FQData 数据层重构🔄 未开始