炒股自动化:交易接口API才是重点,券商官方散户可用的接口

2024-04-11 22:04

本文主要是介绍炒股自动化:交易接口API才是重点,券商官方散户可用的接口,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

上一篇我们用get_full_tick取到了数据,也讲了变量和字典的基本概念,这次我们向交易所发送订单试试。前面文章的链接放在文末了,需要的可以看一下

这些内容是给新手看的,找接口的大佬们直接拉到文末即可

取市场数据的方法很多,官方接口取到的要比第三方的准确及时,就如上一篇取的实时数据,我用普通100M的家庭宽带,延迟也就是30毫秒左右。

要实现程序交易,首先取数据,然后我们要判断市场数据是否符合某个条件,然后根据条件来决定是否执行交易。交易接口和行情接口不一样,行情接口可以直接调用,交易接口需要和交易中心建立连接,还要告诉交易所是你的账户发来的指令。

# 客户端的路径
客户端路径 = 'D:/程序交易客户端/userdata_mini'
# 随便输入一个整数
会话编号 = random.randint(100, 10000)
# 创建交易对象实例
交易对象 = XtQuantTrader(客户端路径, 会话编号)
# 启动交易对象
交易对象.start()
# 创建交易连接
连接返回值 = 交易对象.connect()
# 返回值是0就是连接成功,失败返回非0的值,一般是-1
print('连接状态:', 连接返回值)
# 创建账户对象,默认STOCK,表示股票账户,也支持港股通、期权、期货等
账户对象 = StockAccount('你的资金账号', 'STOCK')

首先指定客户端的路径,所有的接口调用都是Python层在和客户端交互,这里你去GPT①问一下,为什么Python中,\要换成/来表示路径的字符串。路径用字符串表示,并赋值给变量“客户端路径”;不同的策略要用不同的会话编号,这里先不用理解,复杂的需要保持连接或者多个策略运行的才需要注意。

创建交易对象API实例,之后所有交易和账户类的操作都要用到,GPT问一下:Python中的对象是什么?面向对象编程是个什么概念?暂时不理解没事,简单读一下就行,这里我们就把对象想象成一把多功能军刀,用到哪个工具就拿出来,不用的时候收起来,就是个对象。后面创建连接,输出连接状态看一下是否成功,还有创建账户对象这些就好理解了。

准备工作做好了,上一篇也取了实时数据,现在就要根据实时价格来判断是否执行交易,还是以平安银行为例,代码000001.SZ,假设今天的价格到了10.01,我们就认为可以建仓了,执行买入一手。

实时数据 = xtdata.get_full_tick(['000001.SZ'])
卖一价 = 实时数据['000001.SZ']['askPrice'][0]
if 卖一价 <= 10.01:订单号 = 交易对象.order_stock(账户对象,'000001.SZ',xtconstant.STOCK_BUY,100,xtconstant.FIX_PRICE,卖一价)print('订单号:', 订单号)
# 一直忘说了,Python的注释是行首加#号
'''
也可以这样用大段注释,三个引号,
Python会认为这是字符串,直接跳过
注释是给人看的,代码是给编译器读的
注释的作用是给别人解释你的代码,给自己做的笔记
代码越写越多,逻辑越来越复杂,
回头再来修改和复用的时候,多半会忘了这段代码的作用
有个段子讲,代码写完当天只有自己和上帝知道什么意思
第二天就只有上帝知道了
'''

这里是以卖一价为准,主要是为了确保吃单成交,如果用买一价报单,就要挂单等待成交,不方便之后演示。

函数还有两个参数,strategy_name和order_remark,主要用于策略中识别订单来源,这里简化了先不用,第三个参数“委托类型”,股票普通交易只有STOCK_BUY和STOCK_SELL两种,两融、期货和ETF还有很多种,这里用不到。第四参数就是“委托数量”,股票是100的整倍数,也就是一手。第五个参数“报价类型”,这里用指定价xtconstant.FIX_PRICE,也就是我们取到的卖一价下单,也可以是自定一个价格,不要超出价格笼子就行。

上面的代码执行后,不一定会输出订单号,因为价格没到,所以要加上循环判断,一直等到价格到了,就执行,当然也可用订阅数据的方式来判断,那个复杂点,后边慢慢讲到。

今天的分享就这里吧,字数挺多了,无心学这些的人也读不到这里,有心学的也要去GPT问问,加深一下理解,对股票量化程序化自动交易感兴趣的朋友可以关注我,有任何相关问题也可以留言讨论或者私信与我交流

前面的相关文章如下:

http://炒股自动化:申请官方API接口,散户也可以icon-default.png?t=N7T8https://mp.csdn.net/mp_blog/creation/editor/136907158炒股自动化:官方API接口,Python程序员炒股利器,散户可用icon-default.png?t=N7T8https://mp.csdn.net/mp_blog/creation/editor/137236078简版:

python炒股自动化(0),申请券商API接口icon-default.png?t=N7T8https://mp.csdn.net/mp_blog/creation/editor/135455065python炒股自动化(1),量化交易接口区别icon-default.png?t=N7T8https://mp.csdn.net/mp_blog/creation/editor/134665080Python炒股自动化(2):获取股票实时数据和历史数据icon-default.png?t=N7T8https://mp.csdn.net/mp_blog/creation/editor/136244006Python炒股自动化(3):分析取回的实时数据和历史数据icon-default.png?t=N7T8https://mp.csdn.net/mp_blog/creation/editor/136347285Python炒股自动化(4):通过接口向交易所发送订单icon-default.png?t=N7T8https://mp.csdn.net/mp_blog/creation/editor/136620466Python炒股自动化(5):通过接口查询订单,查询账户资产icon-default.png?t=N7T8https://mp.csdn.net/mp_blog/creation/editor/136812940①:chatGPT、迅飞星火、通义千问、文心一言等等AI大模型,在之后都会用GPT表示,随便哪个都能协助编程,就普通的默认版本足够,不用付费买高级版本。很多很多人,主要是对编程完全没概念的人,认为GPT可以一劳永逸,完全不用懂编程,想多了,目前还做不到

这篇关于炒股自动化:交易接口API才是重点,券商官方散户可用的接口的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/895299

相关文章

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

go中空接口的具体使用

《go中空接口的具体使用》空接口是一种特殊的接口类型,它不包含任何方法,本文主要介绍了go中空接口的具体使用,具有一定的参考价值,感兴趣的可以了解一下... 目录接口-空接口1. 什么是空接口?2. 如何使用空接口?第一,第二,第三,3. 空接口几个要注意的坑坑1:坑2:坑3:接口-空接口1. 什么是空接

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

Python实现自动化接收与处理手机验证码

《Python实现自动化接收与处理手机验证码》在移动互联网时代,短信验证码已成为身份验证、账号注册等环节的重要安全手段,本文将介绍如何利用Python实现验证码的自动接收,识别与转发,需要的可以参考下... 目录引言一、准备工作1.1 硬件与软件需求1.2 环境配置二、核心功能实现2.1 短信监听与获取2.

Python实现Microsoft Office自动化的几种方式及对比详解

《Python实现MicrosoftOffice自动化的几种方式及对比详解》办公自动化是指利用现代化设备和技术,代替办公人员的部分手动或重复性业务活动,优质而高效地处理办公事务,实现对信息的高效利用... 目录一、基于COM接口的自动化(pywin32)二、独立文件操作库1. Word处理(python-d

Python使用DrissionPage中ChromiumPage进行自动化网页操作

《Python使用DrissionPage中ChromiumPage进行自动化网页操作》DrissionPage作为一款轻量级且功能强大的浏览器自动化库,为开发者提供了丰富的功能支持,本文将使用Dri... 目录前言一、ChromiumPage基础操作1.初始化Drission 和 ChromiumPage

Python实现自动化表单填写功能

《Python实现自动化表单填写功能》在Python中,自动化表单填写可以通过多种库和工具实现,本文将详细介绍常用的自动化表单处理工具,并对它们进行横向比较,可根据需求选择合适的工具,感兴趣的小伙伴跟... 目录1. Selenium简介适用场景示例代码优点缺点2. Playwright简介适用场景示例代码

如何用java对接微信小程序下单后的发货接口

《如何用java对接微信小程序下单后的发货接口》:本文主要介绍在微信小程序后台实现发货通知的步骤,包括获取Access_token、使用RestTemplate调用发货接口、处理AccessTok... 目录配置参数 调用代码获取Access_token调用发货的接口类注意点总结配置参数 首先需要获取Ac

讯飞webapi语音识别接口调用示例代码(python)

《讯飞webapi语音识别接口调用示例代码(python)》:本文主要介绍如何使用Python3调用讯飞WebAPI语音识别接口,重点解决了在处理语音识别结果时判断是否为最后一帧的问题,通过运行代... 目录前言一、环境二、引入库三、代码实例四、运行结果五、总结前言基于python3 讯飞webAPI语音

MyBatis-Plus中Service接口的lambdaUpdate用法及实例分析

《MyBatis-Plus中Service接口的lambdaUpdate用法及实例分析》本文将详细讲解MyBatis-Plus中的lambdaUpdate用法,并提供丰富的案例来帮助读者更好地理解和应... 目录深入探索MyBATis-Plus中Service接口的lambdaUpdate用法及示例案例背景