1 个回答
一、数据来源与导出
- 通达信软件内导出:通过系统→数据导出功能,选择目标股票、时间范围(日线/分钟线)及导出格式(CSV/TXT),支持单只或批量股票数据导出。
- 接口扩展获取:若需自动化批量数据,可通过通达信开放API(如TDX接口)或第三方工具(如Tushare、聚宽)对接,获取结构化行情/财务数据。
二、数据清洗核心步骤
1. 格式转换与导入
- 将导出的文本数据(CSV/TXT)导入Python的pandas库,转换为DataFrame结构,统一列名(如日期、开盘价、收盘价、成交量、成交额)。
- 处理日期格式:将字符串型日期转换为datetime类型,确保时间序列连续性。
2. 缺失值处理
- 日期连续性检查:对停牌导致的缺失日期,采用前向填充(ffill)或后向填充(bfill)补全价格数据;对关键字段(如收盘价)缺失的行直接删除。
- 过滤无效记录:剔除成交量为0、价格为0或字段为空的异常行。
3. 异常值与复权处理
- 除权除息修正:使用通达信导出的前复权/后复权数据,或通过公式计算复权因子(复权价格=原价格×复权因子),消除分红拆股对价格的影响。
- 极端值过滤:通过3σ原则(剔除均值±3倍标准差外的值)或分位数法(如删除99%分位以上/1%分位以下的值)处理价格跳变异常。
三、数据处理与特征工程
1. 技术指标计算
- 利用TA-Lib库或自定义公式,生成常用指标:
2. 数据标准化
- 收益率转换:将价格数据转换为日收益率((今日收盘价-昨日收盘价)/昨日收盘价),降低价格绝对值波动影响。
- 归一化处理:对连续型特征(如成交量、指标值)采用Min-Max归一化(缩至0-1区间)或Z-score标准化(均值为0,标准差为1),适配量化模型输入要求。
四、数据存储与复用
- 结构化存储:将清洗后的数据集保存为CSV文件或存入数据库(如SQLite、MySQL),便于策略回测与实盘调用。
- 自动化更新:编写Python脚本定期同步通达信最新数据,确保数据时效性(如每日收盘后自动导出并清洗)。
注意:通达信量化交易需结合其公式系统或第三方量化平台(如聚宽、JoinQuant),数据处理后可直接用于策略编写与回测。
请 登录 后参与回答