《中文Python穿云箭量化平台二次开发技术05》获取国内期货、港股、外盘实时行情模块HP_tdxex的说明、代码格式转换及应用示例【下载期货1分钟K线实时行情示例】

117 篇文章 122 订阅
115 篇文章 108 订阅

中文Python穿云箭量化平台》是纯Python开发的量化平台,因此其中很多Python模块,我们可以自己设计新的量化工具,例如自己新的行情软件、新的量化平台、以及各种量化研究工具。
穿云箭自带指标公式源码运行模块,可以为其他量化平台提供量化功能扩展或量化功能增强效果。
HP_tdxex模块是对pytdx的二次封装,同时简化的一些接口,方便用户获取行情。这个模块主要用在小白量化和穿云箭量化平台中,获取实时期货数据。
HP_tdxex不是开源模块,无法用pip安装,包含在穿云箭量化平台中。
HP_tdxex以元组方式构成代码名称“(市场,代码)”。市场代码表如下:
在这里插入图片描述
下面列出常见的品种的代码构成。
香港主板市场代码31,小米集团的代码是(31,’01810’)
上海股票期权市场代码8, 300ETF购6月3446A,代码是(8,’ 10004699’)
中金所期货市场代码47,上证2306 ,代码是(47,’ IH2306’)
郑州商品市场代码28,郑棉2306 ,代码是(28,’ CF2309’)
大连商品市场代码29,豆油主连,代码是(29,’ YL8’)
大连商品市场代码29,豆二2309,代码是(29,’ B2309’)
上海期货市场代码30,白银2308,代码是(30,’ AG2308’)
纽约商品市场代码16, COMEX钢卷2309 ,代码是(16,’ EHR23U’)
纽约石油市场代码17, MYMEX原油2309,代码是(17,’ CL23U’)
芝加哥谷市场代码18, 2年美国债2309,代码是(18,’ TU23U’)

下面给出行情接口说明。
1、引入模块
在程序开始,引入模块。
import HP_tdxex as htdxe #量化扩展行情模块

2、连接扩展行情服务器
htdxe.TdxexInit(ip=‘106.14.95.149’,port=7727)
其中ip是扩展服务器ip。port是端口。

3、断开服务器连接
htdxe.disconnect()

4、获取市场代码
htdxe. get_markets()
返回所有市场的代码。

5、查询市场中商品数量
get_instrument_count()

6、查询市场中全部商品
htdxe.GetSecurityList()

7、获取买卖盘口
htdxe.get_instrument_quote(nMarket=28, sStockCode=“PF2301”)

8、分时行情
htdxe.get_minute_time_data(nMarket=28, sStockCode=“PF2301”)

9、查询历史分时成交
htdxe.get_history_minute_time_data(nMarket=47, sCode=‘IFL0’, nDate=20200110, nStart=0)
#参数 市场ID,证券代码,日期,开始数据

10、获取分笔成交
htdxe. get_transaction_data(nMarket = 31,code=“00020”)
其中nMarket是市场编码,code是交易品种。

11、查询历史分笔成交
htdxe.get_history_transaction_data(nMarket=47, sCode=‘IFL0’, nDate=20200110, nStart=0)

12、查询k线数据
htdxe.get_instrument_bars(nCategory=9,nMarket = 31,code=“00020”,
nStart=0, nCount=100)
#参数: K线周期, 市场ID, 证券代码,起始位置, 数量
#参数:
#nCategory -> K 线种类
#0 5 分钟K 线
#1 15 分钟K 线
#2 30 分钟K 线
#3 1 小时K 线
#4 日K 线
#5 周K 线
#6 月K 线
#7 1 分钟
#8 1 分钟K 线
#9 日K 线
#10 季K 线
#11 年K 线
#nMarket -> 市场代码0:深圳,1:上海
#sStockCode -> 证券代码;
#nStart -> 指定的范围开始位置;
#nCount -> 用户要请求的K 线数目,最大值为800。

13、天勤品种转通达信
tqtotdx(symbol)

14、通达信转天勤品种
tdxtotq(m,c)

15、获取全部K线数据
get_all_bar(nCategory,nMarket,sCode)

下面给出一个获取期货甲醇1分钟实时K线全部数据的示例。

import datetime
import matplotlib.pyplot as plt
import pandas as pd
from pandas.plotting import register_matplotlib_converters
register_matplotlib_converters()
import HP_tdx as htdx
import HP_global as g 
import HP_tdxex as htdxe #量化扩展行情模块
#开发者信息
#独狼荷蒲qq:2775205
#中文Python学习群:983815766
#电话微信:18578755056
m,security=(28,"MA2501")
hq=htdx.TdxInit()  ##初始化行情
hqe=htdxe.TdxexInit(ip='113.108.212.57',port=7721) ##初始化扩展行情
nCategory=7
num=700
nStart=0
nCount=700
m,c=m,security
df =htdxe.get_instrument_bars(nCategory=nCategory,nMarket = m,sCode=c,nStart=nStart,nCount=nCount)
while num>=nCount:
    nStart+=nCount
    df1 =htdxe.get_instrument_bars(nCategory=nCategory,nMarket = m,sCode=c, nStart=nStart, nCount=nCount)
    #df1=tdxapi.to_df(result)
    num=len(df1)
    df = pd.concat([df1,df],ignore_index=True)
df=df.reset_index(level=None, drop=True ,col_level=0, col_fill='')
print('数据长度',len(df))  
print(df)
df.to_csv('ls.csv' , encoding= 'gbk') 

![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/4866e8fa0343430cb06a5c1dcc127ac5.png
好了,欢迎继续关注我的博客。后面我们介绍更多的二次开发技术。

超越自己是我的每一步!我的进步就是你的进步!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荷蒲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值