🚀 AI 一键生成 ptrade 策略代码
立即体验
👉 AI 生成代码 👈

PTrade量化平台set_slippage函数按比例设置滑点详解

ptrade | 发布时间: 2026/6/2
以下内容由 EasyQuant 生成。

问题描述

PTrade中set_slippage函数的参数应该怎么设置?

想用比例方式设置滑点

解决方案

在PTrade量化平台中,如果您希望以比例方式设置滑点,可以使用 set_slippage 函数。滑点在真实交易场景中是不可避免的,在回测中设置合理的滑点有利于让回测结果更逼近真实场景。

函数说明

set_slippage(slippage=0.1)
  • 使用场景:仅在回测模块可用。
  • 参数解析
    • slippage (float):滑点比例。它表示委托价格与最后成交价格之间的价差比例。默认值为 0.1

滑点计算公式

这个价差是当时价格的一个百分比。例如,如果您设置 slippage = 0.2(即0.2%),在撮合成交时,委托价格会加减当时价格的0.1%(即一半)。

最终成交价格 = 委托价格 ± 委托价格 * slippage / 2

  • 买入时:成交价会比委托价(委托价格 + 委托价格 * slippage / 2)
  • 卖出时:成交价会比委托价(委托价格 - 委托价格 * slippage / 2)

Python 代码示例

您需要在策略的 initialize (初始化) 函数中调用此接口进行设置:

def initialize(context):
    g.security = '600570.SS'
    set_universe(g.security)
    
    # 将滑点比例设置为0.2 (即0.2%)
    # 假设买入委托价为10元,则实际成交价为 10 + 10 * 0.2 / 2 = 10.1元
    set_slippage(slippage=0.2)

def handle_data(context, data):
    # 策略逻辑
    pass

注意事项

  • 如果您想设置固定金额的滑点(例如固定加减0.02元),请使用另一个函数 set_fixed_slippage(fixedslippage=0.02)
  • 合理设置滑点可以有效评估策略在真实市场流动性下的抗冲击能力,避免回测出现“虚高”的收益。