量化投资04:python数据分析上证综指

前言

上一节给大家分享了Tushare提供的免费数据接口,可以获取金融数据,本节给大家分享其更多的指标数据。不过有些接口数据Tushare需要积分才能使用,估计是Tushare服务器压力太大,才出此策略。今天我为了使用一些接口数据,一口气注册了4个邮箱,不过这个不是太大问题。废话不多说,下面就让我们来以大A股上证指数为例做一些分析吧。
import tushare as ts
import pandas as pd
from sqlalchemy import create_engine
import matplotlib.pyplot as plt
import seaborn as sns

#设置token,只需要在第一次调用或者token失效时设置
#设置完成后,之后就不再需要这一个命令了
#ts.set_token('*******')

pro = ts.pro_api()
stock_daily = pro.index_daily(ts_code="000001.SH")#获取交易数据
print(stock_daily)
stock_daily_basic = pro.index_dailybasic(ts_code='000001.SH')
print(stock_daily_basic)#获取指标数据

#导入mysql,储存以备后用
engine = create_engine("mysql+pymysql://{}:{}@{}/{}?charset={}".format('root', 'root', 
'localhost', 'feng','utf8'))

con = engine.connect()#创建连接  

stock_daily.to_sql("stock_daily",con=engine,index=False,if_exists="append",chunksize=100000)
stock_daily_basic.to_sql("stock_daily_basic",con=engine,index=False,if_exists="append",chunksize=100000)
con.close()

可以看到mysql已经储存有我们的数据了
(1)交易数据:stock_daily


image.png

字段解释:


image.png

(2)指标数据:stock_daily_basic


image.png

字段解释:


image.png

2、数据处理

stock_daily.index = pd.to_datetime(stock_daily['trade_date'])#时间格式处理

3、绘制历史收盘价曲线

df.plot(y="close")
image.png

4、绘制均线

下面以60日均线为例

df_daily = df_daily.sort_index(ascending=True)
plt.figure(figsize=(12, 6))
df_daily.close['20150101':].plot()
df_daily.close.rolling(60).mean()['20150101':].plot()
image.png

5、计算估值水平

plt.figure(figsize=(12, 6))
sns.distplot(stock_daily_basic.pe_ttm, bins=100) 
plt.axvline(x=stock_daily_basic.pe_ttm[0],color='red')
image.png

可以看到,目前的动态市盈率处于比较低水平,当然也可以看到有很多天的动态市盈率低于目前水平,我们再看下更低水平都出现在哪些时期:

stock_daily_basic.index = pd.to_datetime(stock_daily_basic["trade_date"])
plt.figure(figsize=(12, 6))
plt.plot(stock_daily_basic.pe_ttm)
plt.axhline(y=stock_daily_basic.pe_ttm[0], color="red")
image.png

可以看出,14、15年为底部期间,上证的估值水平比现在还要低。我们来估算一下达到那个位置的跌幅:

now = stock_daily_basic.pe_ttm[0]
min = stock_daily_basic.pe_ttm.min()
ratio = (now - min) / nowprint("ratio:{0:.2f}%".format(ratio * 100))

输出结果:

ratio: 31.38%
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容