作者在 Python 基本功系列中介绍了超好用的 Pandas 库:Victor 教量化:Python 基本功: 11. 初学 Pandas 库zhuanlan.zhihu.com
但是没有提到一个非常好用的函数:Groupby,这是一个可以把数据做自定义集合的函数,并且在股票,金融分析经常用到。所以今天在一篇 Python 金融系列的文章中,我们用 Groupby函数在 上证50ETF 上做一点文章。
那我们就开始吧!
教程需求:Mac OS (Windows, Linux 会略有不同)
安装了 Python 3.0 版本以上, Anaconda, Microsoft Office Excel
上证50ETF
截止2020年1月,A股有3700多支上市公司,并且持续的有新的IPO股上市。在这么大的一个池子里,难免有一些股票会拖累大盘的表现。我们已经看到A股在2020年重新站上3000点,而在2010年A股已经在3000点,这个长达10年的积累,指数却不为所动。
而上证50指数,则是从3700支上市公司中,挑选了50支盘子最大的股票,可以说是A股之核心。那么我们就来看看,如果投资上证50ETF,在长期来看,是不是会获得比投资A股更加优秀的收益呢?
这里作者挑选了 易方达基金发售的 上证50A(502049):上证50A(SH502049)基金行情_净值_新闻_公告_数据 - 雪球xueqiu.com
小伙伴也不妨可以试试其他 ETF,包括 上证50B,沪深300等,这里我就用这支ETF来做例子,代码是互通的,下面我们就在 Anaconda 上从 Tushare API 来抓取K线:
In [1]
import tushare as ts
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import scipy.optimize as sco
%matplotlib inline
In [2]:
stock_codes = ['502049']
num_