jqdata pyechart: 用grid双图实现k线带图成交 — by QUANTAXIS

from jqdatasdk import *
from pyecharts import  Kline,Bar,Grid

首先我们先应JQDATA 的活动演示一下如何调用pyecharts 画图

auth('acc','password')
data=get_price('000001.XSHE')
auth success

先打印下 data 我们可以看到 jqdata返回的格式是 一个单index的Dataframe

data.head()
  open close high low volume money
2015-01-05 10.53 10.55 10.72 10.27 434357784.0 4.565388e+09
2015-01-06 10.44 10.39 10.79 10.24 328971478.0 3.453446e+09
2015-01-07 10.25 10.19 10.42 10.08 258163619.0 2.634796e+09
2015-01-08 10.21 9.85 10.25 9.81 213761656.0 2.128003e+09
2015-01-09 9.81 9.93 10.45 9.69 380916192.0 3.835378e+09

在画K线图的时候, 我们需要的是上下两个部分 jqdata pyechart: 用grid双图实现k线带图成交 — by QUANTAXIS_第1张图片

# 因此我们初始化2个部分

kline=Kline(width=1360, height=700, page_title='000001')

bar = Bar()

然后我们需要对数据进行初步的处理:

  • 首先处理横坐标轴(时间轴)
  • 分别处理 价格轴/量轴
import numpy as np
import pandas as pd

# 做横轴的处理
datetime = np.array(data.index.map(str))
ohlc = np.array(data.loc[:, ['open', 'close', 'low', 'high']])
vol = np.array(data.volume)

将数据加载到kline和bar中

kline.add('000001', datetime, ohlc, mark_point=[
      "max", "min"], is_datazoom_show=False, datazoom_orient='horizontal')

bar.add('000001', datetime, vol,
        is_datazoom_show=True,
        datazoom_xaxis_index=[0, 1])

使用Grid组合两个图

grid = Grid(width=1360, height=700, page_title='QUANTAXIS')
grid.add(bar, grid_top="80%")
grid.add(kline, grid_bottom="30%")
grid.render('000001_plot.html')

使用 webbrowser 打开并渲染这个图 jqdata pyechart: 用grid双图实现k线带图成交 — by QUANTAXIS_第2张图片

import webbrowser
webbrowser.open('000001_plot.html')
True
"""
以上是jqdata和pyecharts的结合, 不过QUANTAXIS已经对于这些进行了封装  只需要转化jqdata获取回来的数据为QADataStruct即可
"""
'\n以上是jqdata和pyecharts的结合, 不过QUANTAXIS已经对于这些进行了封装  只需要转化jqdata获取回来的数据为QADataStruct即可\n'
import QUANTAXIS as QA
qads=QA.QAData.QA_DataStruct_Stock_day(data.assign(date=data.index,code='000001').set_index(['date','code']))
qads
< QA_DataStruct_Stock_day with 1 securities >
qads.plot('000001')
QUANTAXIS>> The Pic has been saved to your path: .\QA_stock_day_000001_bfq.html

你可能感兴趣的:(jqdata pyechart: 用grid双图实现k线带图成交 — by QUANTAXIS)