外观
A 股回测
支持 .SH/.SZ/.BJ 代码的 A 股,使用 asset_type="cn_stock" 和 stock 账户,框架证券类型为 CS。完整操作从日频示例开始;盘中交易读取股票基金分钟说明。
基准选择统一见按策略选择基准。
数据加载
python
from localquant.mod.localquant_mod_seeddata_source import load_framework_data
bundle = load_framework_data(
["600000.SH", "000001.SZ"], "2024-05-27", "2024-06-07",
base_url="http://127.0.0.1:28637", asset_type="cn_stock",
index_codes=["000300.SH"], include_yield_curve=False,
)股票账户附加基金时传 etf_codes,具体边界见基金加载。基准、预热和注册方法见数据加载。
| 内容 | 数据来源 |
|---|---|
| 不复权日线 | cn_stock_daily_basic_data |
| 后复权收盘 | cn_stock_hfq_quotes |
| 涨跌停 | cn_stock_limit_data |
| 分红与送转 | cn_stock_dividend |
| 基础信息 | cn_stock_basic_info |
价格与公司行动
撮合、普通 bar 和账户估值使用不复权价格。成交量单位为股,成交额为元。日线 history_bars 的 "pre" 与 "none" 都返回不复权行情;"post" 只支持 "close" 或 ["datetime", "close"]。分钟不复权;指数使用原始价格。准确字段及昨收区别见行情字段。
停牌按无日线 bar 表示,skip_suspended=False 也不会补出停牌行。历史查询只返回已有记录;订阅成员不代表当日有行情。ST、行业、涨跌停缺口等限制见数据限制。
已实施现金分红、送转/拆股、退市返现由框架处理,策略不得重复调整现金或数量。现金分红按税前额加载,除息日记应收、发放日到账。分红再投资会产生实际成交和交易费用,生成的股份豁免当日 T+1;普通买入不豁免。
配股未支持:除权跳空直接计入净值,可能表现为亏损。研究包含配股的标的时,应在解释结果前确认这一暴露;不要手工补收益掩盖模型差异。
交易单位与持仓
数量接口单位为股,手数接口按合约 round_lot 转换。当前数据源将所有股票的 min_order_quantity/order_step_size/round_lot 统一设为 100,未按板块区分申报规则,包括科创板与北交所;这是回测模型限制。策略可读取这些属性执行数量取整,但不能据此验证真实交易所申报合规性。清仓碎股由下单接口处理。
默认 T+1,买入当日不可卖;活动卖单占用可平量。使用 get_position(code).closable 判断本次可卖数量,不以总数量代替。下单接口见股票基金订单,账户字段见账户与持仓。
账户设置
T+1、再投资、红利税和退市返现等开关见股票基金账户配置。默认关闭再投资和差异化红利税;策略模板可以采用不同配置,模板选择不是框架默认值。
交易费用
佣金采用股票基金共享设置。股票卖出另计印花税,买入不计;以下配置位于 mod.sys_transaction_cost:
| 键 | 默认值 | 含义 |
|---|---|---|
tax_multiplier | 1 | 印花税倍率 |
pit_tax | False | 关闭时税率恒为 0.0005;开启时 2023-08-28 前为 0.001,自该日起为 0.0005 |
这里列的是发行包的计算模型。需要固定历史税费口径时,应显式设置并保存运行参数。
结果
股票与同账户基金共同出现在 stock_account/stock_positions,成交单位分别是股/份。现金可能尚未包含应收分红,不能简单用可用现金加持仓市值重算总权益。保存与导出见报告操作,表结构见结果参考。