Skip to content

DataStruct - 数据结构模块

阅读路径

角色阅读路径
🟢 新手入门README快速入门速查表使用指南案例库
🔵 开发者README技术架构设计原则API参考开发指南最佳实践
🟡 运维/安全README技术架构故障排查常见问题
🟠 架构师README技术架构设计模式技术权衡
📚 案例库案例库案例研究
📖 索引README变更日志

一句话总览

📌 FQuant 行情数据核心数据结构,提供统一的数据操作接口

⚠️ AI 开发必读

使用场景

应该使用

  • 场景1:获取股票日线数据并进行技术指标计算
  • 场景2:获取期货分钟数据并进行周期转换
  • 场景3:多数据源合并与筛选

不应该使用

  • 不应该使用:需要实时数据推送的场景
  • 不应该使用:需要直接连接数据库的场景

注意事项

  1. Mixin 类不能直接实例化

    • 说明:Mixin 类是功能组合层,需要与基类一起使用
  2. @lru_cache 在 property 上使用会导致序列化后缓存失效

    • 说明:已移除 property 上的 lru_cache 装饰器

已知限制

  • 限制1:仅支持 A 股、期货、债券等国内金融市场
  • 限制2:不支持实时数据推送,仅支持批量查询

依赖

依赖类型模块说明
必须fquant.fqbase基础工具
必须pandas数据处理
必须numpy数值计算

TL;DR

  • 解决什么问题:统一行情数据操作接口,支持多市场、多周期数据处理
  • 核心能力:数据筛选、指标计算、周期转换、序列化导出
  • 入门难度:🔵 中等

快速判断:当您需要处理股票、期货、债券等行情数据时,使用本模块。

知识脉络

🧑‍🎓 从零到精通的推荐学习顺序

  1. 快速入门 - 10 分钟上手
  2. 核心概念 - 理解基本概念
  3. 技术架构 - 理解设计思路
  4. 使用指南 - 深入使用
  5. 最佳实践 - 升华理解

⏱️ 预计学习时间:2 小时

前置知识

在开始学习本模块前,建议先掌握:

知识领域建议资源状态
Python 基础官方教程
Pandas 数据处理Pandas 教程

适用场景

推荐使用

  • 适用场景 1:股票、期货、债券等行情数据处理
  • 适用场景 2:数据技术指标计算
  • 适用场景 3:数据周期转换(日线、分钟线互转)

不推荐使用

  • 不适用场景 1:实时数据推送
  • 不适用场景 2:直接数据库操作

💡 与其他模块的关系

概述

DataStruct 是 FQuant 的核心数据结构模块,提供统一的行情数据操作接口。该模块采用 Mixin 模式,将数据操作功能(筛选、计算、序列化)分离为独立的 Mixin 类,然后通过多重继承组合到具体的数据类中。

核心特性

  • 多市场支持:股票、指数、期货、债券、可转债
  • 多周期支持:Tick、分钟、日线、周线、月线
  • 丰富的操作:数据筛选、指标计算、周期转换、序列化导出
  • 统一接口:通过 Mixin 模式提供一致的 API

子模块

子模块说明文档
_base.py核心基类 QuotationDataStructBaseL0文档
_indicators.py指标计算 MixinL0文档
_operations.py数据操作 MixinL0文档
_io.py序列化 IO MixinL0文档
stock.py股票数据类L0文档
index.py指数数据类L0文档
future.py期货数据类L0文档
bond.py可转债数据类L0文档
resample.py重采样功能L0文档
block.py股票板块数据L0文档
financial.py财务数据L0文档
indicator.py指标数据L0文档
realtime.py实时行情数据L0文档
security_list.py证券列表数据L0文档
series.py序列数据L0文档
transaction.py逐笔成交数据L0文档

L0 极简文档

本模块为以下单一文件模块生成了 L0 极简文档:

文件类型核心类/函数说明
_base.mdMixinQuotationDataStructBase行情数据核心基类
_indicators.mdMixinQuotationIndicatorsMixin统计指标计算
_operations.mdMixinQuotationOperationsMixin数据筛选操作
_io.mdMixinQuotationIOSMixin数据序列化导出
stock.mdDataClassStockDayData, StockMinData股票数据
index.mdDataClassIndexDayData, IndexMinData指数数据
future.mdDataClassFutureDayData, FutureMinData期货数据
bond.mdDataClassBond2StockDayData, Bond2StockMinData可转债数据
resample.mdFunctionstick_resample, min_to_day 等数据重采样
block.mdDataClassStockBlockData股票板块数据
financial.mdDataClassFinancialData财务数据
indicator.mdDataClassIndicatorData指标数据
realtime.mdDataClassRealtimeBase, StockRealtimeData实时行情数据
security_list.mdDataClassSecurityListData证券列表数据
series.mdDataClassSeriesData序列数据
transaction.mdDataClassStockTransactionData, IndexTransactionData逐笔成交数据

快速链接

文档说明
快速入门10分钟快速上手
术语表术语定义
核心概念核心概念详解
技术架构技术架构说明
API参考API参考文档
案例库案例库
最佳实践最佳实践

快速定位

我不知道这个,应该去哪找?

场景文档
我不了解这个术语术语表
遇到错误/问题故障排查
需要参考实际案例案例库

安装

bash
pip install fquant-fqdata

相关文档

类型文档链接
项目首页FQData 首页README
数据源数据源模块datasource
数据存储数据存储模块datastore
架构设计Mixin 模式分析mixin-analysis