Risk Parity 和 Rebalance Portfolio 的小工具

前段时间看到没姐介绍,自己可以开个人的HSA账户,便把我目前的employee HSA转到fidelity 开了个户。 交易策略就选用物理粉介绍的Adapter Risk Parity

然而,第一次买完之后发现,fidelity实在是不如M1 方便,不能一键rebalance。于是放置了一个多月,直到前两天才爬起来写了代码来算rebalance。代码放在了google colab上,顺带hide code,做成了比较直观的形式,方便广大不会python的朋友。这样没有绿卡不能申请M1的朋友也可以方便的自己rebalance了。

点这里直达 colab notebook

代码参考了 Zebing LinInverse volatility , 顺带重写了部分,改成了我喜欢的python格式 :crazy_face:

如果你发现有bug或者有想要的新功能,欢迎反馈或二次开发。
码代码不易,请点个赞再走吧。(话说啥时候能变白金啊。)

10赞

考虑一下Blended fund和退休账户呗

我之前写过一个 taxable 和ira 一起rebalance, 但是taxable 只买不卖.

也是fork 最开始Zebing Line

具体一下呗 有啥需求?

Rebalance这个确实是个需求,我fork的时候也写过,输入当前position,自动round到目标整数share

很多人401k里只有target funds, 包含stock, bond, international stock, international bond. Rebalance的时候希望尽可能接近target asset allocation.

Tax-advantaged account比较适合放high dividend的bond, taxable尽量放dividend很少的stock fund, 所以rebalance的时候不能分开rebalance.

看了一下两个版本结果不一致
Any idea?

— yours —
Portfolio: [‘UPRO’, ‘TMF’], as of 2020-10-21 (window size is 20 days)
UPRO allocation ratio: 35.32% (anualized volatility: 56.50%, performance: -12.82%)
TMF allocation ratio: 64.68% (anualized volatility: 30.85%, performance: 4.20%)
— inverse —
Portfolio: [‘UPRO’, ‘TMF’], as of 2020-10-21 (window size is 20 days)
UPRO allocation ratio: 39.35% (anualized volatility: 49.50%, performance: 21.40%)
TMF allocation ratio: 60.65% (anualized volatility: 32.11%, performance: -10.11%)

十分感谢。这么久我都没发现这个bug。
不知怎么的 丢了一行 prices.reverse()
现在已经更新好了。
多谢。

这个策略玩久了你就会发现,rebalance就是玄学。window size就是调参。如果不是严格按照schedule进行Rebalance, 自己选日子整Rebalance其实也就是time the market。

对 挺玄学的 好在最后的回报率跟参数的依赖关系并不算太敏感 还是相当robust的