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

PTrade 中 set_fixed_slippage 函数如何计算最终成交价?

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

问题描述

PTrade中set_fixed_slippage函数如何计算最终成交价?

想了解固定滑点的具体计算方式

解决方案

在 PTrade 量化交易平台的回测模块中,set_fixed_slippage 函数用于设置固定滑点,以使回测结果更逼近真实的交易场景。

最终成交价计算公式

根据 PTrade API 文档,固定滑点的最终成交价格计算公式如下:

最终成交价格 = 委托价格 ± (fixedslippage / 2)

具体来说,买卖方向会决定是加还是减:

  • 买入时(做多):最终成交价格 = 委托价格 + (fixedslippage / 2)
  • 卖出时(做空/平仓):最终成交价格 = 委托价格 - (fixedslippage / 2)

计算示例

假设您在策略中设置了固定滑点为 0.02 元:

set_fixed_slippage(fixedslippage=0.02)

如果此时触发了一笔买入交易,且当时的委托价格(例如市价)为 10.00 元:

  • 买入成交价 = 10.00 + (0.02 / 2) = 10.01 元

如果触发了一笔卖出交易,委托价格同样为 10.00 元:

  • 卖出成交价 = 10.00 - (0.02 / 2) = 9.99 元

代码示例

以下是在策略初始化中设置固定滑点的完整示例:

def initialize(context):
    g.security = '600570.SS'
    set_universe(g.security)
    
    # 将滑点设置为固定的0.2元
    # 即原本买入交易的成交价为10元,则设置之后成交价将变成10.1元
    # 卖出交易的成交价为10元,设置后成交价将变成9.9元
    set_fixed_slippage(fixedslippage=0.2)

def handle_data(context, data):
    pass

注意事项

  1. set_fixed_slippage 仅在回测模块可用,实盘交易中滑点由真实市场盘口决定。
  2. 默认情况下,固定滑点 fixedslippage 的值为 0.0
  3. 设置合理的滑点对于评估策略在真实市场中的抗冲击成本能力至关重要。