带你详细了解PTrade的API(第一篇)设置类API详解

QUANT 2025-12-31 14:05:51 7 举报

在前面的系列文章中,我们已经完整地学习了PTrade策略框架的四大核心函数,掌握了策略的基本框架


从本文开始,我们将进入一个全新的系列,深入探索PTrade丰富的API工具箱而让我们先来那些为策略奠定基础的设置类API函数

1. 设置类API的核心定位
设置类API,通常以set_作为函数名前缀,它们的核心任务是配置策略运行的全局环境和规则

这些设置直接影响回测结果的真实性和策略行为的一致性。由于这些规则一旦设定便在整个策略生命周期中保持不变

因此,它们几乎总是且只在initialize()函数中被调用(根据自己实际操作总结的规律)

2. 核心设置类API详解
下面我们详细介绍四个最核心、最常用基础的设置类API函数


3. 代码示例
让我们通过一个完整的initialize函数,来看看这些API在实际代码中如何使用

def initialize(context):
    set_benchmark("000300.SS")

    try:
        set_commission(commission_ratio=0.0003, min_commission=5.0, type="STOCK")
        set_slippage(slippage=0.0024)
    except Exception as e:
        log.info(f"提示:当前环境可能不支持 set_commission/set_slippage:{e}")

    g.security_list = ["600519.SS", "000001.SZ"]
    set_universe(g.security_list)

    log.info("策略全局环境设置完毕。")


日志如下:


注意事项


• 调用时机:再次强调,所有set_系列函数都应在initialize()中调用在策略的其他部分调用它们可能会导致不可预知的行为或直接报错(重中之重!!!)
• 参数准确性:务必确保传入的参数格式和类型正确,例如证券代码需要包含后缀(.SH或.SZ),费率应为小数形式


PTrade免费申请

PTrade免费领取学习案例

PTrade落地辅助

需要的朋友欢迎联系 ~~~


尊重知识,尊重市场 1

著作权归文章作者所有。

最新回复 ( 0 )
发新帖
0
DEPRECATED: addslashes(): Passing null to parameter #1 ($string) of type string is deprecated (/data/user/htdocs/xiunophp/xiunophp.min.php:48)