akshare分析涨停板股票数据
导入包,获取日期数据
import pandas as pd
import numpy as np
import akshare as ak
#画图
import matplotlib.pyplot as plt
#正确显示中文和负号
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
#处理时间
from dateutil.parser import parse
from datetime import datetime,timedelta#获取最新交易日期
#获取交易日历
trade_date = ak.tool_trade_date_hist_sina()
#print(trade_date)
trade_date=trade_date['trade_date'].apply(lambda x:x.strftime('%Y%m%d'))
trade_date
d1=datetime.now().strftime('%Y%m%d')
trade_date=np.array(trade_date)
n1=np.argwhere(trade_date==str(d1))[0][0]+1
#获取最近6年的交易日行情
dates=trade_date[-250*6:n1]
获取涨停版股票数据
import time
df=ak.stock_em_zt_pool(date=dates[0])
#print(df)
for date in dates[-100:]:print(date)df_tem=ak.stock_em_zt_pool(date=date)df_tem['date']=date#print(df)#time.sleep(60*1000/100/2)df=pd.concat([df,df_tem])#print(df)
df.to_csv('涨停分析.csv')
特征描述
df.iloc[:,1:].describe().round(2)
数据分段并绘图
def dy_zh(data, cut_points, labels=None): min_num = data.min() max_num = data.max() break_points = [min_num] + cut_points + [max_num]print(break_points)if not labels: labels = range(len(cut_points)+1)else: labels=[labels[i] for i in range(len(cut_points)+1)] dataBin = pd.cut(data,bins=break_points,labels=labels,include_lowest=True) return dataBin cut_points = [10,30,50]
labels=['10元以下', '10-30元','30-50元','50-100元']
df = df.sort_values(by='最新价')
print(df['最新价'])
#调用函数dy_zh,增加新列
df['价格区间'] = dy_zh(df['最新价'], cut_points, labels)
#查看标签列,取值范围前面加上了序号,是便于后面生成表格时按顺序排列
#df.head()group_price=df.groupby('价格区间')['date'].count()plt.figure(figsize=(12,5))
colors=['#1f77b4','#ff7f0e','#2ca02c','#d62728','#9467bd','#8c564b']
fig=plt.bar(group_price.index,group_price.values,color=colors[:5]);
#自动添加标签
def autolabel(fig):for f in fig:h=f.get_height()plt.text(f.get_x()+f.get_width()/2,1.02*h,f'{int(h)}',ha='center',va='bottom')
autolabel(fig)
查看涨停板数据
def plot_bar(group_data):plt.figure(figsize=(16,5))fig=plt.bar(group_data.index,group_data.values);autolabel(fig)plt.title('2016-2021涨停板排名前20',size=15);group_name=df.groupby('名称')['代码'].count().sort_values(ascending=False)[:20]
plot_bar(group_name)#分别剔除ST、*ST和新股(N开头)
df_st=df[-(df['名称'].str.startswith('ST') | df['名称'].str.startswith('*ST')|df['名称'].str.startswith('N'))]
group_name_st=df_st.groupby('名称')['代码'].count().sort_values(ascending=False)[:20]
plot_bar(group_name_st)#使用0.5.11版本的pyecharts
from pyecharts import Bar
count_=df.groupby('date')['date'].count()
attr=count_.index
v1=count_.values
bar=Bar('每日涨停板个数','2016-2021',title_text_size=15)
bar.add('',attr,v1,is_splitline_show=False,is_datazoom_show=True,linewidth=2)
bar
akshare分析涨停板股票数据相关推荐
- 【转】Python之获取每日涨停板股票数据并绘制K线图!
利用tushare财经数据接口获取股市进行数据分析.并可视化的案例 1.导入所需要的库 import os import pandas as pd import tushare as ts impor ...
- Python之获取每日涨停板股票数据并绘制K线图!
利用tushare财经数据接口获取股市进行数据分析.并可视化的案例 1.导入所需要的库 import os import pandas as pd import tushare as ts impor ...
- 分析mysql股票数据_股票数据分析(一)数据获取
前段时间开始做股票数据分析的业余项目,希望能提高自己对大型数据量的处理能力.目前大致的想法是用python的tushare模块获取数据,用Java的框架做发布. 1.Tushare模块的说明 tush ...
- AKSHARE 上获取股票数据用于盘后分析以及自己的交易模型的测试。
TUSHARE 不太好用 改成AKSHARE 以后感觉还行.对应的数据获取 根据AKSHARE的文档进行 import pandas as pd import matplotlib.pyplot ...
- python 股票分析api,2020-04-21 用python3 按周分析新浪接口股票数据(篇一:下载、存储篇)...
思路概览一:下载存储 股票数据量大,有一定的涨跌模式,为了节约看股时间,今天我们用python3,量化分析有关股票数据. 总体思路:使用通达信获得所有股票代码,然后通过requests 模块下载htt ...
- python画罗小黑_python股票数据聚类算法:罗小黑战记的股票_XAC配资之家
python股票数据聚类算法:罗小黑战记的股票 你好朋友,本文将为你分析python股票数据聚类算法怎么样以及罗小黑战记的股票的相关问题,如有任何疑问和留言咨询站长!有了尊严,我们的人生才会快乐.美好 ...
- A股全市场个股涨停板明细来袭!—股票数据远程下载服务升级
前言 创建知识星球<玩转股票量化交易>的初心是为了建立一个可以深入学习和交流的私有量化圈子,和志同道合的小伙伴们一起搭建私有的量化交易系统,并且不断迭代完善这个系统,从而能够帮助我们更高效 ...
- R获取股票数据并进行进行可视化分析
R获取股票数据并进行进行可视化分析 # 加载依赖的包 library(quantmod) library(ggplot2) library(magrittr) library(broom) # 设置计 ...
- Python爬虫应用实战-爬取股票数据做分析
01 本文涉及到的知识点 1.python字符串:分割.拼接.中文字符判断: 2.python正则表达式: 3.爬虫requests请求库.xpath获取数据.代理服务器: 4.selenium用法: ...
最新文章
- 100天59万行代码_如何抽出100天的代码时间
- 寒假——练车、脑力风暴和辅导初中生
- Android 简单记事本
- RabbitMQ Topic exchange
- 联想电脑怎么进入Android,联想电脑怎么连接手机
- python操作Excel的几种方式
- 设计模式C++实现(3)——装饰模式
- lync 2013 企业版部署 (四)安装office web app server
- CH BR8(小学生放假了-clock()/CLOCKS_PER_SEC-斜率优化常错集锦)
- 对程序员来说,创业公司和大公司应该怎么抉择?
- Google Web Brower
- 历年全国计算机二级c语言真题,历年全国计算机二级C语言真题
- JAVA输出希腊字母表
- 女人,百花千红你最美
- Arm 架构的过程调用标准
- 通信网实验_Kruskal算法_Mininet_Ryu
- php怎么使用sendcloud,SendCloud的介绍以及一些使用的注意事项
- matlab人脸识别样本库建立,facenet 人脸识别(二)——创建人脸库搭建人脸识别系统...
- LruCache缓存方法
- 中科院上海王二涛组招聘助理研究员1名-植物微生物组学
热门文章
- 做好外汇资金管理 高效的发挥资金的作用
- PMC:从小芯片看大世界
- 后台填充pdf数据后并下载 的实现
- 京东集团人才培养体系:47页京东人力资源管理体系,值得收藏
- 【正点原子MP157连载】第三章 STM32MP157开发板使用前准备-摘自【正点原子】STM32MP157快速体验
- 保存文件报错:Compilation unit name must end with .java, or one of the registered Java-like extensions
- 【通信】 OFDM通信系统仿真含Matlab源码
- 【MPS】Jetbrains MPS入门案例Shapes(一)
- 编辑制作照片墙Posterino
- 「芒果TV」叶静涛:芒果TV的Spinnaker多云持续交付实践