#参考:

#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 画全换手后筹码分布图相关推荐

  1. 使用Python画出ROC曲线后,如何在ROC曲线代码中增加95%CI?

    使用Python画出ROC曲线后,如何在ROC曲线代码中增加95%CI? 计算AUC之后,大部文献都会给出95%CI,如何在代码中增加这一功能呢?希望有大神给出代码!!!! 代码如下: import ...

  2. python画椭圆形_手残党福音:用Python画出机器人Dev

    你知道下面这张图片中的角色是谁吗? 猜猜我是谁 我相信,只要你参加了2020年第二届国际青少年编程大赛,就一定认识它! 没错,它就是比赛中的主角,人见人爱的超级机器人Dev! 这个造型讨喜的机器人陪伴 ...

  3. 用python画机器人_手残党福音:用Python画出机器人Dev~

    今天带大家一起编写一个好玩的程序,你准备好了吗? 话不多说,让我们直接进去主题~ 你知道下面这张图片中的角色是谁吗?猜猜我是谁 猜猜我是谁我相信,只要你参加了2020年第二届国际青少年编程大赛,就一定 ...

  4. 当我给女同学用python画了个圣诞树后……

    前言 嗨,彦祖们,不会过圣诞了还是一个人吧?今天我们来讲一下如何用python来画一个圣诞树,学会就快给那个她发过去吧,我的朋友圈已经让圣诞树刷屏了!这不就来给各位彦祖们教了,看完记得给个三连哦! 当 ...

  5. python画人民大会堂_太震撼了,我用python画出全北京的公交线路动图

    原标题:太震撼了,我用python画出全北京的公交线路动图 今天教大家用pyecharts制作北京市公交线路动态图,这应该是全网唯一一篇能正常运行的教程 一.获取百度秘钥 首先,本项目需要引用百度地图 ...

  6. python 画八角形步骤_只需 45 秒,Python 给故宫画一组手绘图!

    作者 |   丁彦军 责编 | 屠敏 13 日早晨,当北京市民拉开窗帘时发现,窗外雪花纷纷扬扬在空中飘落,而且越下越大,树上.草地.屋顶.道路上,都落满雪花.京城银装素裹,这是今冬以来北京迎来的第二场 ...

  7. 用python画函数的梯度图_只需45秒,用Python给故宫画一组雪景手绘图

    原标题:只需45秒,用Python给故宫画一组雪景手绘图 导读:最近故宫总能"摊上事". 今天是元宵节,一批幸运鹅拿着在故宫门票预售网站瘫痪之前抢来的门票,夜游故宫,成为94年来第 ...

  8. Python(TensorFlow框架)实现手写数字识别系统

    手写数字识别算法的设计与实现 本文使用python基于TensorFlow设计手写数字识别算法,并编程实现GUI界面,构建手写数字识别系统.这是本人的本科毕业论文课题,当然,这个也是机器学习的基本问题 ...

  9. Python TensorFlow框架 实现手写数字识别系统

    手写数字识别算法的设计与实现 本文使用python基于TensorFlow设计手写数字识别算法,并编程实现GUI界面,构建手写数字识别系统.这是本人的本科毕业论文课题,当然,这个也是机器学习的基本问题 ...

最新文章

  1. 【C 语言】文件操作 ( 配置文件读写 | 框架搭建 | 头文件定义 | 头文件导入限制 | 兼容 C++ 语言 | 函数形参输入输出属性注释)
  2. python软件加密、固定机器使用_如何用Python进行最常见的加密操作?(附最新400集Python教程)...
  3. C#_List转换成DataTable
  4. 本周值得读的15篇AI论文,还有源码搭配服用
  5. python怎么删除列表创建_Python基础--列表创建访问删除
  6. VTK:Math之NormalizeVector
  7. mysql数据库连接失败,挑战大厂重燃激情!
  8. java字符串abcde_java aababcabcdabcde,获取字符串中每一个字母出现的次数
  9. 误差反向传播法(二)【神经网络以层的方式实现】
  10. python基于SMTP发送邮件(qq邮箱)
  11. C++ typeid输出类型
  12. vbs 窗体文字获取文档_MDI类型窗体设置背景图片
  13. mfc用数组怎么存储句柄_指南手机存储不足怎么办?用好这份清理指南你的手机还能再战三年...
  14. python 离线安装paramiko_离线安装 Python 2.7, paramiko 和 tornado
  15. 传感器 动态误差计算
  16. 作业四:结对编程项目--四则运算
  17. 【破解】PyCharm2018专业版激活(激活到2100年)
  18. 百度数据可视化Sugar BI — 表计算
  19. 中兴oltc320用户手册_中兴OLT常用命令
  20. WebView 拦截广告 简单实现

热门文章

  1. Linux 查看进程被杀死的详情
  2. CMCC协议开发(一)
  3. java jdbc updatedelete的实现
  4. ITSM-Ivanti体验报告
  5. 在PC上File Server (FTP)文件服务器搭建
  6. linux小主机用处,怎样用你的Linux主机未来规划的“用途”来决定你的Linux硬件设备...
  7. selenium原理python_Python Selenium的简单演示程序
  8. html调用其他网页内容
  9. 设计模式--工厂模式(六)
  10. 杭州区块链国际周 | 蚂蚁集团林逸飞:构建价值互联网,让信任释放更大价值...