
Vibe-Trading 实战Tushare fut_settle 每日结算参数接口完整指南【免费下载链接】Vibe-TradingVibe-Trading: Your Personal Trading Agent项目地址: https://gitcode.com/GitHub_Trending/vi/Vibe-Trading本篇技术指南以 Vibe-Trading 仓库内置的 Tushare 技能文档 每日结算参数 为骨架系统讲解fut_settle期货每日结算参数接口的积分门槛、输入输出字段语义、调用方式与数据解读并结合仓库中 中国期货回测引擎 的源码实现与测试用例说明结算价、保证金率、手续费率等参数在真实回测流程中的落点帮助读者把行情数据接口与定价建模衔接起来。接口总览fut_settle 是什么fut_settle是 Tushare 期货数据专题下的每日结算参数接口用于获取期货合约每日收盘后交易所公布的结算参数包括交易手续费、交割手续费以及买卖双向的套保/投机保证金率等。这些参数是期货交易成本核算、保证金占用估算与回测定价的核心输入。在原文档每日结算参数中接口的定位描述如下项目内容接口名fut_settle描述获取每日结算参数数据包括交易和交割费率等限量单次最大返回 1600 行数据可根据日期循环总量不限制积分用户需要至少 2000 积分才可以调取积分门槛调用该接口需要 Tushare 账号积分达到 2000 分具体积分获取办法参考 Tushare 官方积分文档。若积分不足调用会直接报错。限量与循环策略单次请求最多返回 1600 行。由于一个交易日全市场期货合约往往远多于 1600 行实际使用时需要按trade_date交易日期逐日循环抓取或按ts_code合约代码分批提取总量不受限制。在 Vibe-Trading 的技能体系中该文档挂载于 Tushare 技能入口 SKILL.md 的“期货数据”分类下接口 ID 141与 合约信息、日线行情、期货合约涨跌停价格 等接口文档并列构成一套覆盖“合约基础信息 — 日线行情 — 结算参数 — 涨跌停价格”的完整期货数据链路。输入参数详解fut_settle的输入参数均为可选非必选但接口要求trade_date与ts_code至少输入一个作为检索锚点。全部输入参数如下表名称类型必选描述trade_datestrN交易日期trade_date/ts_code至少需要输入一个参数ts_codestrN合约代码start_datestrN开始日期YYYYMMDD 格式下同end_datestrN结束日期exchangestrN交易所代码参数使用要点日期格式统一为 YYYYMMDD如20181114。这一约定与整个 Tushare 技能的参数格式规范一致——SKILL.md 中明确“日期YYYYMMDD如 20241231”。按日拉全市场只传trade_date可获取某交易日全部合约的结算参数是建立历史参数库的标准姿势配合 1600 行/次的限量按日循环即可覆盖全部历史。按合约拉单品种只传ts_code如CU1811.SHF可获取某合约全生命周期上市至交割的结算参数序列。日期区间传入start_date/end_date可限定范围exchange用于缩小到单一交易所如SHFE、DCE、CZCE、CFFEX、INE可显著降低单次返回行数。输出中的ts_code采用“合约代码.交易所后缀”形式例如CU1811.SHF表示上期所沪铜 1811 合约这与仓库其他期货接口如 期货合约涨跌停价格 中的A2503.DCE的代码规范一致。输出参数字段语义fut_settle的输出字段共 11 个覆盖结算价、费率、保证金率三大类下表为原文档完整字段清单名称类型默认显示描述ts_codestrY合约代码trade_datestrY交易日期settlefloatY结算价trading_fee_ratefloatY交易手续费率trading_feefloatY交易手续费delivery_feefloatY交割手续费b_hedging_margin_ratefloatY买套保交易保证金率s_hedging_margin_ratefloatY卖套保交易保证金率long_margin_ratefloatY买投机交易保证金率short_margin_ratefloatY卖投机交易保证金率offset_today_feefloatN平今仓手续费率exchangestrN交易所字段语义与回测建模的对应关系settle结算价交易所当日结算价。国内商品期货的涨跌停、保证金、当日盈亏均以“上一交易日结算价”为基准而非收盘价。这一点在 Vibe-Trading 的中国期货回测引擎 china_futures.py 中直接体现self.base_price_fields (pre_settle, pre_close)即期货涨跌停幅度带的计算基准取前一结算价pre_settle而非前收盘价。trading_fee_rate/trading_fee交易手续费率与交易手续费。二者取一即可——上期所沪铜CU类合约给出的是费率形式如 0.050即万分之 0.5 量级的比例沪铝AL类合约则给出固定金额如 3.0 元/手。Vibe-Trading 引擎用_COMMISSION表区分(rate, pct)按名义金额比例与(fixed, amount_per_lot)按手固定两种计费模式见 china_futures.py。delivery_fee交割手续费进入交割月、实际参与交割时需要支付的费用用于交割策略的成本测算。四档保证金率b_hedging_margin_rate买套保/s_hedging_margin_rate卖套保/long_margin_rate买投机/short_margin_rate卖投机。套保方向保证金率通常低于投机方向持仓性质决定了实际占用保证金是回测杠杆与爆仓模拟的关键输入。引擎侧通过get_margin_rate()与margin_rate_override支持按品种查表或整体覆盖见 china_futures.py 与 china_futures.py。offset_today_fee平今仓手续费率默认不显示的扩展字段用于区分“平昨仓”与“平今仓”的差异化手续费国内期货常见“平今翻倍”规则做日内高频回测时必须纳入。exchange交易所交易所标识便于跨所聚合统计。接口调用示例与运行环境原文档给出的最小调用示例为pro ts.pro_api(your token) df pro.fut_settle(trade_date20181114, exchangeSHFE)调用前的环境准备依据 Tushare 技能 SKILL.md 的快速上手流程# 安装 tushare推荐从清华 PyPI 镜像安装Python 3.7 pip install tushare -i https://pypi.tuna.tsinghua.edu.cn/simple # 在 Tushare 官网注册获取 token并配置环境变量 export TUSHARE_TOKENyour_token仓库内的 股票数据获取示例脚本 展示的 token 读取方式同样适用于期货接口优先从项目配置get_env_config().data.tushare_token读取其次回退到环境变量与ts.get_token()然后统一通过ts.pro_api(token)创建 pro 接口实例。结合 1600 行限量构建“逐日全市场结算参数库”的循环抓取骨架可以这样写import time import tushare as ts pro ts.pro_api(your token) # 按交易日逐日拉取规避单次 1600 行上限建议在交易所公布结算参数后每日盘后调用 for trade_date in [20181113, 20181114, 20181115]: df pro.fut_settle(trade_datetrade_date, exchangeSHFE) print(trade_date, df.shape) # 按需持久化df.to_csv(ffut_settle_{trade_date}.csv, indexFalse) time.sleep(0.2) # 注意控制频率避免触发服务端限流真实返回数据解读原文档给出了trade_date20181114、exchangeSHFE时上期所沪铜CU与沪铝AL系列合约的返回样例。对样例数据做横向观察前段列合约、日期、结算价、交易费率/手续费ts_code trade_date settle trading_fee_rate trading_fee 0 CU1811.SHF 20181114 48840.00 0.050 0.0 1 CU1812.SHF 20181114 48990.00 0.050 0.0 ... 12 AL1811.SHF 20181114 13695.00 0.000 3.0 13 AL1812.SHF 20181114 13770.00 0.000 3.0后段列交割费、套保/投机保证金率delivery_fee b_hedging_margin_rate s_hedging_margin_rate 0 2.00 0.20 0.20 1 2.00 0.10 0.10 ... 12 2.00 0.20 0.20 13 2.00 0.10 0.10 long_margin_rate short_margin_rate 0 0.20 0.20 1 0.10 0.10从中可以读出三条实战规律费率字段的“形态”随品种切换CU 系列走trading_fee_rate比例费率 0.050trading_fee为 0AL 系列走trading_fee固定金额 3.0 元/手trading_fee_rate为 0。建模时必须识别“按比例/按手”两种口径与引擎_COMMISSION表中(rate, pct)/(fixed, amount_per_lot)的二元结构一一对应。保证金率随合约月份阶梯变化当月合约1811保证金率 0.2020%次月18120.1010%远月1901 及以后0.077%——上期所按持仓时间梯度下调保证金。回测若按单一代偿近月/远月头寸的保证金占用会被系统性高估或低估。投机与套保保证金同值当日该品种样例中买/卖套保与买/卖投机四档均为同一数值说明当日该品种未启用套保优惠而实务中交易所常对套保持仓给予更低的保证金字段设计本身即为差异化预留了空间。从结算参数到回测定价仓库源码印证fut_settle提供的正是 Vibe-Trading 中国期货回测引擎定价所需的“数值真相”。引擎 china_futures.py 内置了品种维度的手工表保证金率表_MARGIN_RATEchina_futures.py覆盖 CFFEX 股指IF/IC/IH/IM 均为 0.12、国债T 0.03、TF 0.02、TS 0.015、TL 0.035、SHFE 金属cu 0.08、al 0.07、zn 0.08 等、能源化工与农产品与fut_settle的long_margin_rate/short_margin_rate语义对应。手续费结构表_COMMISSIONchina_futures.py以(rate, pct)与(fixed, amount_per_lot)两种元组形式存储对应接口的trading_fee_rate与trading_fee两种口径。回退默认值_DEFAULT_COMMISSION (fixed, 5.0)、_DEFAULT_MARGIN_RATE 0.10china_futures.py当某品种未收录时使用通用常数。这里存在一个值得注意的工程问题手工表必然滞后于交易所实际公告。仓库通过测试用例 test_china_futures_pricing_assumptions.py 明确要求当某个品种如pg2412.DCE在表中缺失、回退到默认保证金率 0.10 或默认手续费(fixed, 5.0)时回测结果必须通过pricing_assumptions诊断字段如实报告“该数值是假设值而非真实数据”见 china_futures.py 的_priced方法。这恰好是fut_settle接口的用武之地——用接口返回的真实long_margin_rate、trading_fee_rate/trading_fee逐品种回填或校验引擎内置表即可把“假设定价”升级为“真实定价”并消除pricing_assumptions中不必要的告警项。相关测试还包括 test_china_futures_engine.py 中对保证金率的断言如engine.get_margin_rate(IF2406.CFFEX) 0.12、get_margin_rate(cu2410.SHFE) 0.08以及margin_rate_override0.20的配置覆盖测试可作为接入fut_settle数据后回归验证的参照。与相邻期货接口的配合使用在 Vibe-Trading 的 Tushare 技能体系中fut_settle通常不是孤立使用的推荐与以下接口组合成完整的数据流水线全部位于 期货数据 目录接口文档用途组合场景fut_basic合约信息合约列表、上市/退市日期、合约乘数确定ts_code清单与合约乘数fut_daily日线行情每日开高低收、成交量、持仓量行情主表含pre_settle前结算价fut_settle每日结算参数结算价、手续费率、保证金率定价成本与保证金建模ft_limit期货合约涨跌停价格涨跌停价与最低保证金率涨跌停约束与极端行情处理trade_cal交易日历各交易所交易日历驱动逐日循环抓取典型的数据流是先用fut_basic拿到目标品种的合约代码集合与乘数再按trade_cal的交易日历逐日调用fut_settle构建结算参数历史库同时以fut_daily补足行情、以ft_limit校验涨跌停边界——最终把结算价、保证金率、手续费率注入 Vibe-Trading 的期货回测引擎得到成本口径与真实市场一致的净值曲线。使用注意事项与限制积分硬门槛fut_settle要求至少 2000 积分低于门槛的账号调用将失败积分不足时建议先提升账号权限或临时以 期货合约涨跌停价格 中的m_ratio最低保证金率作为低精度替代。单次 1600 行限量全市场单日数据大概率超限务必按日期/交易所/合约分批循环并做好去重与断点续抓。数据更新时点结算参数属盘后数据需在交易所当日结算完成后拉取跨交易日使用时注意trade_date对齐pre_settle。字段形态二义性trading_fee_rate与trading_fee在同一返回中互斥出现比例型品种给 rate、固定型品种给 fee解析时需按品种自适应勿把 0 值当作“免手续费”。手工表与接口数据的取舍引擎内置表适合离线回测的快速起步但涉及费用敏感的精细回测时应以fut_settle返回值为准并遵循仓库“假设值必须显式报告”的可观测性约定。小结fut_settle是 Tushare 期货数据矩阵中“成本与保证金”维度的权威接口以至少 2000 积分、单次 1600 行为约束通过trade_date/ts_code至少一个参数即可取回全市场或单合约的结算价、交易/交割手续费、四档保证金率与平今费率。在 Vibe-Trading 项目中它既是 中国期货回测引擎 中_MARGIN_RATE/_COMMISSION手工表的“数据来源”也是消除pricing_assumptions假设告警、让回测定价贴近交易所真实规则的“数据校准器”值得作为期货策略研究与回测流水线的标准组件接入。【免费下载链接】Vibe-TradingVibe-Trading: Your Personal Trading Agent项目地址: https://gitcode.com/GitHub_Trending/vi/Vibe-Trading创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考