Python在金融和时间序列分析中的应用
1. 移动窗口函数
1.1 bottleneck库
bottleneck是Keith Goodman开发的Python库,它提供了对NaN友好的移动窗口函数的替代实现,根据具体应用场景,值得深入研究。
1.2 指数加权函数
与使用固定窗口大小和等权重观测值不同,指数加权函数通过指定一个恒定的衰减因子,为近期观测值赋予更高的权重。在数学上,如果$mat_t$是时间$t$的移动平均结果,$x_t$是所讨论的时间序列,那么结果中的每个值按以下公式计算:$mat_t = a * mat_{t - 1}+(1 - a) * x_t$,其中$a$是衰减因子。指定衰减因子的一种常用方法是使用跨度(span),这使得结果可与窗口大小等于跨度的简单移动窗口函数相比较。
由于指数加权统计量对近期观测值赋予更多权重,与等权重版本相比,它能更快地“适应”变化。以下是一个比较苹果股票价格60天简单移动平均线和跨度为60的指数加权移动平均线的示例:
import pandas as pd
import matplotlib.pyplot as plt
fig, axes = plt.subplots(nrows=2, ncols=1, sharex=True, sharey=True,
figsize=(12, 7))
aapl_px = close_px.AAPL['2005':'2009']
ma60 = pd.rolling_mean(aapl_px, 60, min_period
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



