ptrade从零开始学习量化交易第20期【ptrade策略API介绍之set_parameters - 设置策略配置参数】

设置函数

更加详细的调用方法,后续会慢慢整理。

也可找寻博主历史文章,搜索关键词使用方案,比如本文涉及函数set_parameters !

感谢关注,咨询免费开通量化回测与获取实盘权限,欢迎和博主联系!

set_parameters - 设置策略配置参数

set_parameters(**kwargs)
使用场景

该函数仅在回测、交易模块可用

接口说明

该函数用于设置策略中的配置参数。

注意事项:

1、该函数入参格式必须为a=b样式。

2、not_restart_trade、server_restart_not_do_before两个入参必须在initialize模块中设置

3、not_restart_trade入参配置说明(交易场景务必了解):

服务器环境重启拉起交易时,initialize和before_trading_start函数会被重复调用,请务必检查策略编写逻辑:

(1)避免在这两个函数中设置无法被系统持久化保存的变量,变量一旦被初始化会导致策略逻辑异常。

(2)避免在这两个函数中调用委托接口,造成重复委托。

您可将not_restart_trade入参设置为1,在交易时间段避免重复执行的问题,交易时间段默认为09:00-11:30、13:00-15:30,实际以券商的配置为准。

4、server_restart_not_do_before入参配置说明(交易场景务必了解):

服务器环境重启拉起交易时,before_trading_start函数默认会被调用,为了避免重复调用带来的一系列问题(同上),您可将server_restart_not_do_before入参设置为"1",即一个交易日内before_trading_start函数仅调用一次。

支持的参数

holiday_not_do_before:交易中节假日是否执行before_trading_start。缺省,执行;1,不执行。

tick_data_no_l2:tick_data中data是否包含order和transcation。缺省,包含;1,不包含。

receive_other_response:策略中是否接收非本交易产生的主推。缺省,不接收;1,接收。

receive_cancel_response:策略中是否接收撤单委托产生的主推。缺省,不接收;1,接收。

not_restart_trade:交易时间段若服务器重启,是否自动执行重新拉起本交易。缺省,执行;1,不执行。

server_restart_not_do_before:若服务器重启导致重拉交易,是否重复执行before_trading_start函数。缺省,执行;1,不执行。

返回

None

示例
def initialize(context):
    # 初始化策略
    g.security = "600570.SS"
    set_universe(g.security)
    # 设置非交易日不执行before_trading_start
    # 设置tick_data中data不包含order和transaction
    # 设置接收非本交易产生的主推
    # 设置接收撤单委托产生的主推
    set_parameters(holiday_not_do_before="1", tick_data_no_l2="1", receive_other_response="1",
                   receive_cancel_response="1", not_restart_trade="1", server_restart_not_do_before="1")

def before_trading_start(context, data):
    log.info("do before_trading_start")
    g.count = 0

def on_order_response(context, order_list):
    log.info("委托主推:%s" % order_list)

def on_trade_response(context, trade_list):
    log.info("成交主推:%s" % trade_list)

def tick_data(context, data):
    if g.count == 0:
        log.info(data[g.security])
        g.count += 1

def handle_data(context, data):
    pass

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值