enable_profile 性能分析函数

enable_profile 性能分析函数

首页角色扮演代号梦蝶重生测试版更新时间:2024-06-06
调用方法:

enable_proFile(func_list) 释义:

enable_profile是性能分析函数,获取策略中各个函数的运行时间 参数:

参数

含义

详细内容

func_list

所需分析函数的名称

一般根据实际需求填写需要分析的函数名,不填默认分析所有函数

注意事项:

1.该函数定义在函数之外,不需要依靠函数. 2.该函数在日志的最后部分显示. 3.func_lisr参数如果不填写,则默认为分析所有函数. 示例:

#将初始双均线策略进行函数性能分析. #初始化账户 def init(context): #设置要交易的证券(600519.SH 贵州茅台) context.security = '600519.SH' #设置买卖条件,每个交易频率(日/分钟/tick)调用一次 def handle_bar(context,bar_dict): #获取证券过去20日的收盘价数据 close = history(context.security, ['close'], 20, '1d') #计算五日均线价格 MA5 = close.values[-5:].mean() #计算二十日均线价格 MA20 = close.values.mean() #如果五日均线大于二十日均线 if MA5 > MA20: #使用所有现金买入证券 order_target_percent(context.security,1) #如果五日均线小于二十日均线,并且目前有头寸 if MA5 < MA20: #卖出所有证券 order_target(context.security,0) #整个策略的函数性能分析 enable_profile() 注:性能分析函数定义在函数之外,只需要最后输入enable_profile(),这行代码即可. 示例返回结果:

Timer unit: 1e-06 s Total time: 1e-06 s File: backtest_code.py Function: initialize at line 2 Line # Hits Time Per Hit % Time Line Contents ============================================================== 2 def init(context): 3 #设置要交易的证券(600519.SH 贵州茅台) 4 1 1 1.0 100.0 context.security = '600519.SH' Total time: 0.02361 s File: backtest_code.py Function: handle_bar at line 6 Line # Hits Time Per Hit % Time Line Contents ============================================================== 6 def handle_bar(context,bar_dict): 7 #获取证券过去20日的收盘价数据 8 1 17895 17895.0 75.8 close = history(context.security, ['close'], 20, '1d') 9 #计算五日均线价格 10 1 68 68.0 0.3 MA5 = close.values[-5:].mean() 11 #计算二十日均线价格 12 1 49 49.0 0.2 MA20 = close.values.mean() 13 #如果五日均线大于二十日均线 14 1 1 1.0 0.0 if MA5 > MA20: 15 #使用所有现金买入证券 16 1 5596 5596.0 23.7 order_target_percent(context.security,1) 17 #如果五日均线小于二十日均线,并且目前有头寸 18 1 1 1.0 0.0 if MA5 < MA20: 19 #卖出所有证券 20 order_target(context.security,0)

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved