Akshare模块需要自行安装,请阅读官方文档。这里选用Akshare接口是因为Tushare需要注册账户,更加麻烦。
"""
Created on Thu May 13 23:02:01 2021
@author: Great World
"""
import akshare as ak
import pandas as pd
import matplotlib.pyplot as plt
# import re
start_day = '2020-01-01'
start_dat_2 = start_day[0:4] + start_day[5:7] + start_day[8:10]
end_day = None
# code_list_df = read_excel('')
code_list = ['000002','300759']
'''
最重要的问题是要解决个股停牌的数据缺失
解决方法如下:
创建几个个df分别存放计算指数需要的数据(如市值、价格、成交量)
其index是不会停牌的指数的日期
在这个index里存放全部股票的数据,向前填充缺失数据 ffill
然后用这个df来计算我们指数的结果
'''
# 大盘历史数据,用于提取所有交易日的日期作为df的index
sh_index_daily_df = ak.stock_zh_index_daily(symbol="sh000001") # get data
sh_index_daily_df = sh_index_daily_df