refraction-ray / xalpha

基金投资管理回测引擎
MIT License
2.04k stars 437 forks source link

请问有查询连续的累计收益率,生成图表的api么? #99

Closed bobbypiggy closed 3 years ago

bobbypiggy commented 3 years ago

比如想比较2支基金,或者和基准hs300比较,从2020-01-01到2020-12-31累计收益率的曲线?

refraction-ray commented 3 years ago

累计收益率是指?如果直接画出20200101起点归一化的两条净值曲线呢,不知道是否是指这种需求。如果起点归一对齐到1,相应的净值曲线就恰好是从起点时间开始的累计收益率。可以试一下下面的代码是否是你想要的效果。

nfyy = xa.fundinfo("501018")
nfyy.bcmkset(xa.vinfo("SH000300", start="2020-01-01"))
nfyy.v_netvalue()
bobbypiggy commented 3 years ago

本来是想要http://fund.eastmoney.com/320007.html?spm=search 天天基金网类似的“累计收益率走势”,那如果归一化了,这样感觉也可以;

学习了,谢谢。

bobbypiggy commented 3 years ago

请教,如果想往这个api输出增加【年化收益率】,有什么参考代码么? sysopen.combsummary().sort_values(by="基金现值",ascending=False)

基金名称 基金代码 当日净值 单位成本 持有份额 基金现值 基金总申购 历史最大占用 基金持有成本 基金分红与赎回 换手率 基金收益总额 投资收益率
总计 total NaN NaN NaN 328671.27 300000.0 300000.0 300000.0 0.0 4.45122 28671.27 9.5571
交银新成长混合 519736 5.2040 4.3906 11388.03 59263.31 50000.0 50000.0 50000.0 0.0 4.45122 9263.31 18.5266
前海开源中国稀缺资产混合C 002079 3.9890 3.4582 14458.47 57674.84 50000.0 50000.0 50000.0 0.0 4.45122 7674.84 15.3497
交银定期支付双息平衡混合 519732 6.5000 5.9169 8450.42 54927.73 50000.0 50000.0 50000.0 0.0 4.45122 4927.73 9.8555
工银文体产业股票A 001714 3.7380 3.4672 14420.89 53905.29 50000.0 50000.0 50000.0 0.0 4.45122 3905.29 7.8106
泓德致远混合C 004966 2.0596 1.9973 25033.80 51559.61 50000.0 50000.0 50000.0 0.0 4.45122 1559.61 3.1192
交银优势行业混合 519697 5.8400 5.6875 8791.18 51340.49 50000.0 50000.0 50000.0 0.0 4.45122 1340.49 2.6810
refraction-ray commented 3 years ago
r = []
for f in sysopen.fundtradeobj:
    r.append(f.xirrrate())

然后在把 r 这一列添加到上边的表格就可以了,不过由于 xirrrate 需要解方程,如果初始值不好会报错无法收敛,因此需要写一些报错捕获和 guess 调整,代码才能比较通用

bobbypiggy commented 3 years ago

多谢!