使用python 画全换手后筹码分布图
#参考:
#https://www.cnblogs.com/JuliaZhao/p/12034202.html
#简单示例(筹码分布图)
#%% 筹码分布图
#import mpl_finance as mpf
#import matplotlib.finance as mpf
import matplotlib.pyplot as plt
from matplotlib.finance import candlestick2_ohlc
cdata=DataAPI.MktEqudAdjGet(ticker=u"301037" , beginDate="20220101",endDate="20220602",tradeDate=u"",\
isOpen="1",field=u"ticker,secShortName,tradeDate,highestPrice,lowestPrice,openPrice,closePrice,turnoverRate,preClosePrice,turnoverVol,turnoverValue",pandas="1")
#按日期倒排序(最近在前),为了计算到今天endDate总的换手率大致到1(全部换手)开始那天
#均价
cdata['mean']=cdata.apply(lambda x:x.turnoverValue/x.turnoverVol, axis = 1)
cdata=cdata.sort(["tradeDate"],ascending=False)
print cdata.head()
#对换手率累计求和
cdata['turnoverRate_cumsum'] = cdata.turnoverRate.cumsum()
#只取近似全换手(<=1)前的数据,多的不要
cdata=cdata[cdata.turnoverRate_cumsum<=1.0]
#再按日期正排序
cdata=cdata.sort(["tradeDate"],ascending=True)
#再对换手率累计求和
cdata['turnoverRate_cumsum'] = cdata.turnoverRate.cumsum()
#必须重新排序,为了画K线图看到横坐标刻度
cdata=cdata.reset_index(drop=True)
print cdata.tail()
cdata=cdata.rename(columns={'tradeDate':'datetime','openPrice':'open','closePrice':'close','highestPrice':'high', 'lowestPrice':'low', 'turnoverVol':'volume','turnoverValue':'money'})
#print cdata.head(10)
cdata=cdata[['datetime','open','high','low','close','mean','volume','money']]
pricelst = sorted(set(list(cdata['mean'])))
volumelst = []
moneylst = []
#简单筹码分布
for i in pricelst:
volumelst.append(cdata[cdata['mean'] == i]['volume'].sum())
moneylst.append(cdata[cdata['mean'] == i]['money'].sum())
# 绘制
fig = plt.figure(figsize=(30, 10),dpi=100)
ax1 = plt.subplot2grid((1, 4), (0, 0))
ax2 = plt.subplot2grid((1, 4), (0, 1), colspan=3,sharey=ax1)
xlabel = pricelst
#print len(pricelst),pricelst
#print moneylst
ax1.barh(xlabel,moneylst,height=0.05,alpha=0.16) # 直方图
#mpf.candlestick2_ochl(ax2,cdata['open'],cdata['close'],cdata['high'],cdata['low'],
# width=0.8, colorup='red', colordown='blue',alpha=1.0) # K线图 z 这不对样
ax2.axes.get_yaxis().set_visible(False)#y轴不可见
candlestick2_ohlc(ax2,
cdata['open'].values,
cdata['high'].values,
cdata['low'].values,
cdata['close'].values,
width=0.4,
colorup='r',
colordown='b',
alpha=1)
ax2.set_xticks(range(0,len(cdata), 5)) #X轴刻度设定 每5天标一个日期
#修饰图片
# X-轴每个ticker标签都向右倾斜45度
print "ax2.get_xticks:",ax2.get_xticks()
for label in ax2.xaxis.get_ticklabels():
label.set_rotation(45)
label.set_fontsize(10) # 设置标签字体
ax2.set_xticklabels([cdata.ix[index, 'datetime'] for index in ax2.get_xticks()])
使用python 画全换手后筹码分布图相关推荐
- 使用Python画出ROC曲线后,如何在ROC曲线代码中增加95%CI?
使用Python画出ROC曲线后,如何在ROC曲线代码中增加95%CI? 计算AUC之后,大部文献都会给出95%CI,如何在代码中增加这一功能呢?希望有大神给出代码!!!! 代码如下: import ...
- python画椭圆形_手残党福音:用Python画出机器人Dev
你知道下面这张图片中的角色是谁吗? 猜猜我是谁 我相信,只要你参加了2020年第二届国际青少年编程大赛,就一定认识它! 没错,它就是比赛中的主角,人见人爱的超级机器人Dev! 这个造型讨喜的机器人陪伴 ...
- 用python画机器人_手残党福音:用Python画出机器人Dev~
今天带大家一起编写一个好玩的程序,你准备好了吗? 话不多说,让我们直接进去主题~ 你知道下面这张图片中的角色是谁吗?猜猜我是谁 猜猜我是谁我相信,只要你参加了2020年第二届国际青少年编程大赛,就一定 ...
- 当我给女同学用python画了个圣诞树后……
前言 嗨,彦祖们,不会过圣诞了还是一个人吧?今天我们来讲一下如何用python来画一个圣诞树,学会就快给那个她发过去吧,我的朋友圈已经让圣诞树刷屏了!这不就来给各位彦祖们教了,看完记得给个三连哦! 当 ...
- python画人民大会堂_太震撼了,我用python画出全北京的公交线路动图
原标题:太震撼了,我用python画出全北京的公交线路动图 今天教大家用pyecharts制作北京市公交线路动态图,这应该是全网唯一一篇能正常运行的教程 一.获取百度秘钥 首先,本项目需要引用百度地图 ...
- python 画八角形步骤_只需 45 秒,Python 给故宫画一组手绘图!
作者 | 丁彦军 责编 | 屠敏 13 日早晨,当北京市民拉开窗帘时发现,窗外雪花纷纷扬扬在空中飘落,而且越下越大,树上.草地.屋顶.道路上,都落满雪花.京城银装素裹,这是今冬以来北京迎来的第二场 ...
- 用python画函数的梯度图_只需45秒,用Python给故宫画一组雪景手绘图
原标题:只需45秒,用Python给故宫画一组雪景手绘图 导读:最近故宫总能"摊上事". 今天是元宵节,一批幸运鹅拿着在故宫门票预售网站瘫痪之前抢来的门票,夜游故宫,成为94年来第 ...
- Python(TensorFlow框架)实现手写数字识别系统
手写数字识别算法的设计与实现 本文使用python基于TensorFlow设计手写数字识别算法,并编程实现GUI界面,构建手写数字识别系统.这是本人的本科毕业论文课题,当然,这个也是机器学习的基本问题 ...
- Python TensorFlow框架 实现手写数字识别系统
手写数字识别算法的设计与实现 本文使用python基于TensorFlow设计手写数字识别算法,并编程实现GUI界面,构建手写数字识别系统.这是本人的本科毕业论文课题,当然,这个也是机器学习的基本问题 ...
最新文章
- 【C 语言】文件操作 ( 配置文件读写 | 框架搭建 | 头文件定义 | 头文件导入限制 | 兼容 C++ 语言 | 函数形参输入输出属性注释)
- python软件加密、固定机器使用_如何用Python进行最常见的加密操作?(附最新400集Python教程)...
- C#_List转换成DataTable
- 本周值得读的15篇AI论文,还有源码搭配服用
- python怎么删除列表创建_Python基础--列表创建访问删除
- VTK:Math之NormalizeVector
- mysql数据库连接失败,挑战大厂重燃激情!
- java字符串abcde_java aababcabcdabcde,获取字符串中每一个字母出现的次数
- 误差反向传播法(二)【神经网络以层的方式实现】
- python基于SMTP发送邮件(qq邮箱)
- C++ typeid输出类型
- vbs 窗体文字获取文档_MDI类型窗体设置背景图片
- mfc用数组怎么存储句柄_指南手机存储不足怎么办?用好这份清理指南你的手机还能再战三年...
- python 离线安装paramiko_离线安装 Python 2.7, paramiko 和 tornado
- 传感器 动态误差计算
- 作业四:结对编程项目--四则运算
- 【破解】PyCharm2018专业版激活(激活到2100年)
- 百度数据可视化Sugar BI — 表计算
- 中兴oltc320用户手册_中兴OLT常用命令
- WebView 拦截广告 简单实现
热门文章
- Linux 查看进程被杀死的详情
- CMCC协议开发(一)
- java jdbc updatedelete的实现
- ITSM-Ivanti体验报告
- 在PC上File Server (FTP)文件服务器搭建
- linux小主机用处,怎样用你的Linux主机未来规划的“用途”来决定你的Linux硬件设备...
- selenium原理python_Python Selenium的简单演示程序
- html调用其他网页内容
- 设计模式--工厂模式(六)
- 杭州区块链国际周 | 蚂蚁集团林逸飞:构建价值互联网,让信任释放更大价值...