专注于ETF的AI量化投资/投资系统。确定下方向,一是基础数据,二是衍生指标。然后需要的回测平台我们基本搭建好了,我需要把它变成可以配置的方式。就是使用配置文件,这样传递策略就不必用notebook或者代码了。当然可以加密的方式。
从大类资产配置开始,战略资产配置到战术资产配置,然后加行业轮动,这样一个框架。
大类资产配置从宽基开始。
国债ETF(511010.SH),上证50ETF(510050.SH),纳指ETF(513100.SH),标普500(513500.SH),黄金ETF(518880.SH);沪深300ETF(510300.SH),中证500ETF(510500.SH),创业板50ETF(159949.SZ),创业板ETF(159915),中证1000(512100),科创50ETF(588000),恒生指数(159920),德国ETF(513030),日经ETF(513520),法国CAC40(513080)。
其实足够了。
对于这些宽基,我们要做相关性分析。相关性高的,取有代表性的即可。
选择期中几支,做等权组合,风险平价组合,作为benchmark。
而后引入动量,基本面,北上等等多因子模型进行加减权重的依据。
再次对A股权益类,引入行业轮动来增厚收益。
大类资产配置,每季度调仓,全选标的池里的标的,等权分配。
symbols = [ '510300.SH',# 沪深300ETF '511260.SH', # 十年国债ETf '518880.SH', # 黄金ETF '511880.SH', #银华日利货币ETF #'510500.SH', # 中证500 #'513520.SH', # 日经ETF #'513030.SH', # 德国 #'513080.SH', # 法国CAC ] names = ['close'] fields = ['$close'] from engine.bt_engine import BacktraderEngine from datetime import datetime e = BacktraderEngine(init_cash=100000, start=datetime(2010, 1, 1)) e.add_features(symbols, names, fields) from engine.strategy.algos import RunQuarterly, SelectAll, WeightEqually e.run_algo_strategy([RunQuarterly(), SelectAll(), WeightEqually()]) e.analysis(pyfolio=False)
风险平价策略:
symbols = [ '511260.SH', # 国债 '518880.SH', # 黄金 '510300.SH', # 沪深300 '511880.SH', # 货币 # '510500.SH', # 中证500 # '513520.SH', # 日经ETF # '513030.SH', # 德国 # '513080.SH', # 法国CAC ] names = ['close'] fields = ['$close'] from engine.bt_engine import BacktraderEngine from datetime import datetime from engine.datafeed.dataloader import Dataloader loader = Dataloader(symbols,names=['return'], fields=['$close/Ref($close,1)-1']) df = loader.load_one_df() print(df) df_returns = df.pivot_table(index='date', columns=['code'], values=['return']) df_returns.dropna(inplace=True) print(df_returns) e = BacktraderEngine(init_cash=100000, start=datetime(2018, 1, 1)) e.add_features(symbols, names, fields) from engine.strategy.algos import RunQuarterly, SelectAll, WeightRP e.run_algo_strategy([RunQuarterly(), SelectAll(), WeightRP(returns_df=df_returns)]) e.analysis(pyfolio=False)
由于ETF成立的时间有长有短,指数的数据比较全,计算起来也比较简单。明天基于全球指数进行计算,包括动量之类的也没有问题。然后在A股的权益市场部分,可以考虑动量轮动来增厚收益。
发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/104200
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!