AI量化:从入门到实战

大类资产配置类,实现七个策略,回测结果如下:

图片

大类资产配置分析:

从卡玛比率看(综合风险收益之后),风险平价最优,甚至优于中国版的全天候(毕竟参数会随时间变化),但其实差不多。

回撤率看,波动率模型最小。

收益率看,等权买入最佳,但回撤率达到23%。

图片

策略代码如下:

# 创建一个策略,等权买入,季度再平衡
# 这就是我非常喜欢这个框架的原因,这个代码很容易读懂,且不会出错。
s_equally = bt.Strategy('等权买入-季度再平衡', [
                       bt.algos.RunQuarterly(),
                       bt.algos.SelectAll(),
                       bt.algos.WeighEqually(),
                       bt.algos.Rebalance()])

weights = {
    '159928':0.03, # 消费ETF
    '510050':0.06,# 上证50ETF
    '512010':0.08,# 医药ETF
    '513100':0.05,# 纳指ETF
    '518880':0.1,# 黄金ETF
    '511220':0.32,# 城投债ETF
    '511010':0.26,# 国债ETF
    '161716':0.1,# 招商双债ETF
}

s_fix = bt.Strategy('中国版全天候', [
                       bt.algos.RunQuarterly(),
                       bt.algos.SelectAll(),
                       bt.algos.WeighSpecified(**weights),
                       bt.algos.Rebalance()])


s_erc = bt.Strategy('风险平价', [
                       bt.algos.RunAfterDays(20*6 + 1),
                       bt.algos.RunQuarterly(),
                       bt.algos.SelectAll(),
                       bt.algos.WeighERC(),
                       bt.algos.Rebalance()])

s_mvo = bt.Strategy('均值-方差优化', [
                       bt.algos.RunAfterDays(20*6 + 1),
                       bt.algos.RunQuarterly(),
                       bt.algos.SelectAll(),
                       bt.algos.WeighMeanVar(),
                       bt.algos.Rebalance()])

s_vol = bt.Strategy('波动率模型', [
                       bt.algos.RunAfterDays(20*6 + 1),
                       bt.algos.RunQuarterly(),
                       bt.algos.SelectAll(),
                       bt.algos.WeighInvVol(),
                       bt.algos.Rebalance()])


s_randomly = bt.Strategy('猴子掷飞镖', [
                       bt.algos.RunQuarterly(),
                       bt.algos.SelectAll(),
                       bt.algos.WeighRandomly(),
                       bt.algos.Rebalance()])

s_bench = bt.Strategy("benchmark-等权买入并持有",[
                        bt.algos.RunOnce(),
                        bt.algos.SelectAll(),
                        bt.algos.WeighEqually(),
                       bt.algos.Rebalance()])

s_list = [s_equally, s_fix, s_erc, s_mvo,s_vol, s_randomly,s_bench]
bkts = [bt.Backtest(s, df, progress_bar=True) for s in s_list]
res = bt.run(*bkts)

大类资产配置,在选择好战略资产候选集后,一般不再需要选股,因此使用SelectAll全选所有。大类资产配置的调仓周期一般较长,比如每季度调仓一次即可,因些使用RunQuarterly。重点是Weigh仓位管理。

风险平价在大类资产配置里确实是有效的。

代码与数据请前往星球下载:

图片

AI量化实验室——2024量化投资的星辰大海

吾日三省吾身

焦虑不安有时也未必完全是坏事。

好比小的伤病会激发人体的免疫系统一般。

之前分享过人生计划之”ABCZ”,这个仍然是周期波动,不确定时代,个人人生之总纲。

“七年一辈子”是个人特别喜欢的一个概念。

昨天说被误解的“运气动力学”,成功与财富自由,人生可以过差不多11辈子,前面几辈子可能没有得到特别大的运气加持,也没关系,来得及。人生永远有的选。

普通人家的孩子晚熟。——不要相信所谓“穷人的孩子早当家”。当家吃的那些苦,在现实世界并不能支持你去赢,只是支撑着你活下去罢了。

35岁左右,而立而不立,上有老下有小,少年轻狂不在,痛定思痛,有一部分人反思,觉醒,改变。

但来得及。

回顾一下“上辈子”,2017-2024,挺有意思。

2017年,正好35岁,有了孩子,家庭,责任;工作上了台阶,但管理岗位很少了,需要的综合素质也更高了。收获不少,但回归到ABCZ而言,前3年完成Z计划0-1的摸索,试水。后3年完成Z计划建仓,实战,目前基本完成,不需要花太多时间。

同时在后3年里,开始B计划的试水,尝试。目前完成从0-1或者说1-10的探索,找到一点感觉。后三年希望完成B计划的管道化,同时完成C计划的探索与从0到1。

大家看出来没有,七年一辈子,用“一辈子”去完成一件事情,同时还花20%的精力开始布局下一辈子。

”N阶行动计划“是我喜欢的另一个概念:1000天也就是3阶(10的三次方),完成一件事,布局一件事。这让你目前长远。多少事情,往前看三年,往后想三年,都是小事。什么争吵,矛盾,职场斗争都不是事。

100天(三个月,10的2次方)做具体计划,完成一个个阶段小目标。行动计划按季度做就好了。

(Z计划稳定运行中)下一个三年计划(下个半辈子):

A计划稳中求进,以稳为主。

B计划花三年时间管道化。

C计划在同一个三年从0到1(做一个研究者,学富五车,自由随心)。

历史文章:

AlphaGPT v0.1发布后答疑——基于大模型的智能因子挖掘框架(代码)

AI量化实验室——2024量化投资的星辰大海

发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/103398
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!

(0)
股市刺客的头像股市刺客
上一篇 2024 年 7 月 29 日
下一篇 2024 年 7 月 29 日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注