作者: 阿布
阿布量化版权所有 未经允许 禁止转载
abu量化系统github地址(欢迎+star)
本节ipython notebook
之前的章节无论讲解策略优化,还是针对回测进行滑点或是手续费都是针对一支股票进行择时操作。
本节将示例讲解多支股票进行择时策略的实现,依然使用AbuFactorBuyBreak做为买入策略,其它四个卖出策略同时生效的组合。
from abupy import AbuFactorBuyBreak, AbuFactorSellBreakfrom abupy import AbuFactorAtrNStop, AbuFactorPreAtrNStop, AbuFactorCloseAtrNStopfrom abupy import ABuPickTimeExecute, AbuBenchmark, AbuCapital# buy_factors 60日向上突破,42日向上突破两个因子buy_factors = [{xd: 60, class: AbuFactorBuyBreak}, {xd: 42, class: AbuFactorBuyBreak}]# 四个卖出因子同时并行生效sell_factors = [{xd: 120,class: AbuFactorSellBreak},{stop_loss_n: 0.5,stop_win_n: 3.0,class: AbuFactorAtrNStop},{class: AbuFactorPreAtrNStop,pre_atr_n: 1.0},{class: AbuFactorCloseAtrNStop,close_atr_n: 1.5}]benchmark = AbuBenchmark()capital = AbuCapital(1000000, benchmark)
1. 多支股票使用相同的因子进行择时
选择的股票如下所示:
choice_symbols = [‘usTSLA’, ‘usNOAH’, ‘usSFUN’, ‘usBIDU’, ‘usAAPL’,
‘usGOOG’, ‘usWUBA’, ‘usVIPS’]
备注:本节示例都基于美股市场,针对A股市场及港股市场,比特币,期货市场后在后面的章节讲解
# 我们假定choice_symbols是我们选股模块的结果,choice_symbols = [usTSLA, usNOAH, usSFUN, usBIDU, usAAPL,usGOOG, usWUBA, usVIPS]
使用ABuPickTimeExecute.do_symbols_with_same_factors()函数对多支股票使用相同的买入因子,卖出因子
%%timecapital = AbuCapital(1000000, benchmark)orders_pd, action_pd, all_fit_symbols_cnt = ABuPickTimeExecute.do_symbols_with_same_factors(choice_symbols,benchmark,buy_factors,sell_factors,capital,show=False)
CPU times: user 18.5 s, sys: 264 ms, total: 20.1 sWall time: 19.2 s
运行完毕,使用了ipython的magic code %%time去统计代码块运行时间,显示运行了19.2 s,本节最后会使用多进程模式运行相同的回测ÿ
如果觉得《量化投资:第4节 多支股票择时回测与仓位管理》对你有帮助,请点赞、收藏,并留下你的观点哦!