3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
set_commission 函数的使用场景根据 PTrade API 文档规定,set_commission 函数仅在回测模块可用。
如果您在交易(实盘/模拟盘)模块中调用了 set_commission,系统会抛出错误。这是因为:
initialize 函数中调用。在回测环境中,您可以通过该函数自定义佣金费率和最低佣金,以使回测结果更贴近您的实际交易成本。
接口说明:
set_commission(commission_ratio=0.0003, min_commission=5.0, type="STOCK")
参数说明:
commission_ratio:佣金费率,默认股票每笔交易的佣金费率是万分之三(0.0003),ETF基金、LOF基金每笔交易的佣金费率是万分之八。min_commission:最低交易佣金,默认每笔交易最低扣5元佣金。type:交易类型,默认为 "STOCK" (目前支持 "STOCK", "ETF", "LOF")。代码示例(回测环境):
def initialize(context):
g.security = '600570.SS'
set_universe(g.security)
# 将佣金费率设置为万分之三,将最低手续费设置为3元(仅回测生效)
set_commission(commission_ratio=0.0003, min_commission=3.0)
def handle_data(context, data):
pass
在 PTrade 回测中,手续费的计算公式为:手续费 = 佣金费 + 经手费
min_commission,则按最低佣金收取)。总结:如果您正在编写准备用于实盘交易的策略,请直接删除或注释掉 set_commission 相关的代码,实盘交易会自动按照您账户的实际费率进行扣费。