3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在 PTrade 量化平台中,如果你希望在回测时不受真实市场成交量的限制(即不限流),可以通过在 initialize 初始化函数中调用 set_limit_mode 函数,并将其参数设置为 'UNLIMITED' 来实现。
set_limit_mode(limit_mode='LIMIT')
'LIMIT':默认值,限制成交数量(受真实市场成交量影响)。'UNLIMITED':不限制成交数量(即你所需要的不限流模式)。以下是一个完整的策略示例,展示了如何设置回测不限流:
def initialize(context):
# 设置我们要操作的股票
g.security = '600570.SS'
set_universe(g.security)
# 核心设置:回测中不限制成交数量
set_limit_mode('UNLIMITED')
def handle_data(context, data):
# 在不限流模式下,这里的委托数量即使超过了真实市场的成交量,也会被全部撮合成交
order(g.security, 1000000)
'UNLIMITED' 后,实际撮合成交量是可以大于该时间段的实际成交总量的。这虽然方便了低频策略(如按月调仓)的回测,但对于高频策略或资金量极大的策略,可能会导致回测结果严重失真(忽略了流动性冲击和滑点)。请根据你的策略类型谨慎使用。