3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在 ptrade 量化交易平台中,算法交易的实际委托数量有时并非您在代码中计算出的精确值,这主要是由于交易所的交易规则以及 ptrade 底层的自动圆整(取整)机制所决定的。
根据 ptrade API 文档,为了符合交易所的申报要求,平台在处理委托下单时会自动对数量进行取整:
以下常用的下单接口均受此圆整规则限制:
order(security, amount):按数量买卖order_target(security, amount):指定目标数量买卖order_value(security, value):指定目标价值买卖order_target_value(security, value):指定持仓市值买卖例如,如果您使用 order_value('600570.SS', 10000) 买入价值 10000 元的股票,假设当前股价为 33 元,理论数量为 303.03 股。ptrade 会自动将其圆整为 300 股进行委托。
圆整规则有一个重要的例外情况:当您卖出所有持仓(清仓)时,不受 100 股或 10 张的整数倍限制。这意味着您可以顺利卖出因分红送转等原因产生的“零股”。
例如,使用 order_target('600570.SS', 0) 或 order('600570.SS', -当前全部持仓量) 时,即使持仓量是 150 股,也会全部卖出。
为了避免圆整机制对您的策略逻辑产生意外影响(例如资金利用率不足或目标仓位偏差),建议在策略代码中:
order 等接口前,先在代码中计算好 100 的整数倍数量,做到心中有数。