首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >熊猫,如何从回报中获得接近的价格?

熊猫,如何从回报中获得接近的价格?
EN

Stack Overflow用户
提问于 2018-03-18 20:33:48
回答 1查看 2.5K关注 0票数 3

我试图将返回转换为价格指数,以模拟ffn库的收盘价,但没有成功。

代码语言:javascript
运行
复制
import pandas as pd

times = pd.to_datetime(pd.Series(['2014-07-4',
'2014-07-15','2014-08-25','2014-08-25','2014-09-10','2014-09-15']))

strategypercentage = [0.01, 0.02, -0.03, 0.04,0.5,-0.3]
df = pd.DataFrame({'llt_return': strategypercentage}, index=times)

df['llt_close']=1
df['llt_close']=df['llt_close'].shift(1)*(1+df['llt_return'])

df.head(10)


        llt_return  llt_close
2014-07-04  0.01    NaN
2014-07-15  0.02    1.02
2014-08-25  -0.03   0.97
2014-08-25  0.04    1.04
2014-09-10  0.50    1.50
2014-09-15  -0.30   0.70

我怎么才能把这件事纠正过来?

EN

回答 1

Stack Overflow用户

发布于 2018-03-18 23:20:50

您可以使用return-relatives.的累积积。

回归亲属是一天的回报。

代码语言:javascript
运行
复制
>>> start = 1.0
>>> df['llt_close'] = start * (1 + df['llt_return']).cumprod()

>>> df
            llt_return  llt_close
2014-07-04        0.01     1.0100
2014-07-15        0.02     1.0302
2014-08-25       -0.03     0.9993
2014-08-25        0.04     1.0393
2014-09-10        0.50     1.5589
2014-09-15       -0.30     1.0912

这假设价格指数在2014-07-04交易日结束时从start开始。

在7-04年,回报率为1%,价格指数收于1* (1 + .01) = 1.01。

在7-15日,回报率为2%,收盘价为1.01 * (1 + .02) = 1.0302.

当然,这是不完全现实的,因为你正在形成一个基于不规则频率数据的价格索引(缺失日期),但希望这能回答你的问题。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49352551

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档