繁体   English   中英

使用python计算每日/每周/每月的增长

[英]Calculate a daily / weekly / monthly growth with python

我有一个非常复杂的问题,根本不知道如何解决:我正在尝试计算某些数据的每日/每周/每月增长。

困难在于我要随机收集数据点。 这样我们就可以得到像这样的数据:

Date | orders

2017-01-12 |  1992
2017-01-13 |  2912
2017-02-10 |  3912
2017-02-11 |  4112
2017-02-12 |  4412
2017-02-16 |  5112
2017-03-01 |  8112

我有大量的数据,所以我认为如果不创建一个临时表来存储结果以避免长时间的等待,就不可能真正地构建它。

因此,我想创建一个增长表(使用google dataStore),然后...困在那儿。 如何解决...

任何帮助表示赞赏!

我只是为此开了枪,因为您没有太多回应...或我看到的任何回应。

from pandas_datareader import data

s = data.get_data_yahoo('SBUX', start='2016-01-02',end='2017-12-04')['Adj Close']
monthly = s.resample('BM', how=lambda x: x[-1])
print(monthly)

这是获取时间序列数据的另一种方法。

from pandas_datareader import data
import datetime as dt
import pandas as pd
ticker = 'MSFT'
begdate = '2016-11-11'
enddate = '2017-12-04'
data1 = data.DataReader(ticker,'yahoo',dt.datetime(2014,11,11),dt.datetime(2016,11,11))
print(data1)

以下是一些准则和总体经验法则。

当我们进行投资时,我们将资金投资于不同的资产,并在不同的时间段内获得收益。 例如,短期国库券的投资将持续3个月。 我们可能会投资股票并在一周后几天退出。 为了使这些不同投资的收益具有可比性,我们需要对收益进行年度化。 因此,所有每日,每周,每月或每季度的回报都将转换为年度回报。 年度化收益的过程如下:

基本思想是将收益复合为一年。 因此,如果我们有月度回报,那么我们知道一年中有12个月,同样有52周,4个季度和365天。 我们将收益与全年的期数相乘。

让我们举几个例子来理解这一点。

示例1:季度收益

假设我们有5%的季度回报率。 由于一年中有四个季度,因此年收益为:

Annual returns = (1+0.05)^4 – 1 = 21.55%

示例2:月度报表

假设我们有2%的月度回报。 由于一年中有12个月,因此年收益为:

Annual returns = (1+0.02)^12 – 1 = 26.8%

示例3:每周收益

假设我们每周收益为0.5%。 由于一年有52周,因此年收益为:

Annual returns = (1+0.005)^52 – 1 = 29.6%

示例4:每日收益

假设我们的每日收益为0.1%。 由于一年中有365天,因此年收益为:

Annual returns = (1+0.001)^365 – 1 = 44.02%

示例5:100天退货

实际上,我们可以获得任意天数的收益并将其转换为年化收益。 假设我们在100天内获得了6%的回报。 年度收益为:

Annual returns = (1+0.06)^(365/100) – 1 = 23.69%

但是,年化收益率有一个局限性-他们假设我们将能够以相同的比率对这笔资金进行再投资。 但是,这并不总是可能的。 如果我们在一个季度中获得5%的收入,则不能保证我们能够在一年的后三个季度中复制这些收益。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM