Python最近几年的热度越来越高,其在多个领域都得到了广泛的使用,尤其是在量化分析方面,最近几年可以说是得到了飞速发展,现在说它是量化分析第一语言也不为过,笔者今天就介绍一下Python在量化分析中的一些基本使用操作。
今天讲的操作共有4种,都是我们经常用到的,而这4种操作都要用到pandas
库,因为是量化分析,所以也要用到一些股票数据,我们就用“宇宙第一大股”苹果公司的股票数据来作为演示。
首先还是导入各种库。
import pandas as pd
import numpy as np
import yfinance as yf
这里我们稍微介绍一下yfinance
,yfinance
是使用Yahoo! Finance数据源的一个库,这个库的优点是下载速度快(没有被墙)、免费,同时导出来的数据就是pandas.DataFrame
格式,非常好用。然后就是下载我们所需的苹果公司的股票数据,这里我们下载过去5年的数据,即2015年1月1日到2019年12月31日的数据,代码如下。
df = yf.download('AAPL', start='2015-01-02', end='2020-01-01', progress=False) #progress是进度显示条,最好关闭
yfinance
的时间参数有些不同,其是滞后一天的,所以我们要下载第一天2015年1月1日的数据,则要设置为'2015-01-02'
,截止时间也同样延后一天,同时设置progress=False
,以关闭下载进度条。下载好的数据大致如图1所示。
图1. 苹果股价数据示例
有了数据,我们就开始介绍一下这4种基本操作。
一、rolling window
rolling window是对某个窗口期内的数据进行操作,其原理和我们常用的groupby有些类似,不过是在窗口期内进行操作,其使用方法如下。