国泰君安期货山东分公司:数据库导入与查询
1. 数据导入与数据库构建
负责了每日交易数据的导入流程,具体包括以下几个方面:
- 读取 Excel 数据:使用 pandas 从 Excel 表格(如“交易所期货结算保证金率(指定日).excel”)中读取期货合约的每日结算数据。
- 数据清洗与选择:筛选所需字段,包括交易日、合约代码,以及投机、套利、套保的多头与空头资金数据。
- SQLite 数据库管理:建立本地 SQLite 数据库 futures_data.db。创建表格 daily_contract_data,使用交易日和合约代码作为联合主键以保证数据唯一性。插入或更新数据,通过 INSERT OR REPLACE 实现每日数据的自动覆盖。支持表结构初始化与历史数据清空,以适应每日更新需求。
2. 数据查询系统设计与实现
还开发了一个命令行交互式查询系统:
- 用户输入接口:提示用户输入交易日和合约代码,如 CY504 和 20250224。
- 数据库查询逻辑:从表 daily_contract_data 中根据用户输入查询对应记录。查询结果包含:投机多头/空头、套利多头/空头、套保多头/空头资金数据。
- 格式化输出:使用 dict(zip(...)) 结合列名输出清晰的结果展示。
- 异常处理:如无匹配数据,提示用户“没有找到相关记录”。