haoliu1706 / test

first

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!

这是通达信技术指标编程 编程的参考

http://www.gupiaohelp.com/help/13_4.html python 可以参考调试 详细请官网
1.运行股票自动交易软件助手 前 ,,, 前提关闭360等,管理员运行 股票自动交易软件助手破解版 连接交易客户端 2.调用 py api 自己测试 写策 一切风险自担

############# qq群 : 561573421 ############# 通达信自动交易函数 ############## 1.只支持32位Python 2.Order.dll 要放在当前目录 3.助手和交易软件要打开

软件是下载别人破解的 风险自己承担

#股票自动交易助手 Python 自动下单使用 例子 #把此脚本和 StockOrderApi.py Order.dll 放到你自己编写的脚本同一目录

from StockOrderApi import *

#买入测试 #Buy(u"600000" , 100, 0, 1, 0)

#卖出测试,是持仓股才会有动作 #Sell(u"000100" , 100, 0, 1, 0)

#账户信息 print("股票自动交易接口测试") print("账户信息") print("--------------------------------")

arrAccountInfo = ["总资产", "可用资金", "持仓总市值", "总盈利金额", "持仓数量"]; for i in range(0, len(arrAccountInfo)): value = GetAccountInfo( u"" , i, 0) print ("%s %f "%(arrAccountInfo[i], value))

print("--------------------------------") print(" ")

print("股票持仓") print("--------------------------------") #取出所有的持仓股票代码,结果以 ','隔开的 allStockCode = GetAllPositionCode(0) allStockCodeArray = allStockCode.split(',') for i in range(0, len(allStockCodeArray)): vol = GetPosInfo( allStockCodeArray[i] , 0 , 0) changeP = GetPosInfo( allStockCodeArray[i] , 4 , 0) print ("%s %d %.2f%%"%(allStockCodeArray[i], vol, changeP))

print("--------------------------------") 股票自动交易软件助手提供了Order.dll , 扩展了大智慧,飞狐,通达信等公式语言的函数。利用这些函数,可以在公式里精细控制下单逻辑和交易策略。比如读取持仓数据,可用资金,指定下单数量等等。

需要注意的是,一般情况下,并不需要在公式里调用这些函数就能实现股票程序化的交易策略。对于一般用户,或者对大部分常用指标来说,使用公式预警条件单更加方便,简单,而不需要在公式里调用下单函数。只需要建立对应的助手预警条件单,并在大智慧,通达信等软件中设置好预警指标即可。只有在使用股票池自动交易或者图表交易,纯公式下单的情况下才需要这些函数。

要使用股票自动交易软件助手提供的交易函数,先把 order.dll 复制到 通达信目录 T0002\dlls 下面,然后还要绑定DLL,查看如何绑定DLL。通达信调用过Order.dll后,助手会在通达信目录下生成 “助手日志” 目录,里面有调用函数的日志信息,可以查看这个日志信息来确定调用是否正确,条件是否成立等等。一般条件成立了但是助手没反应,可以看这个日志来找出原因。如果这日志的显示是正常的,你可以进一步去助手的安装目录里查看助手日志进一步确定原因。

重要提示 股票自动交易软件助手提供的有些函数的参数,是 条件和变量的乘积,如 买入 函数的最后个参数就是 条件数量。表示在条件为1(即成立的情况下),买入对应数量的股票。比如 条件1000, 条件成立的情况下,条件就是1,乘以1000结果就是1000股,助手就会买入1000股,在条件不成立的情况下条件的数值就会等于0,乘以1000结果也是0,代表条件不成立,因此助手不会买入。注意:条件只能是逻辑判断值,1或者0,不能是其他运算的结果,例如 条件:=C >0;不要条件:=C;或条件:=MA(C,5)这样,前者是逻辑判断值,后面是数值计算。

重要提示2 通达信的调用外部dll函数的方式比较特别,首先需要绑定dll,绑定到第几号dll,函数调用的函数名就是 TDXDLL数字 ,我们一般绑定助手Order.dll为第一个dll,因此调用助手提供的函数的名字都是 TDXDLL1,表示调用第一个绑定的dll,也就是Order.dll。此外每个调用都必须指定调用的是dll里的第几个函数,Order.dll提供的买入函数是第一个函数,因此调用买入函数就像这样:买入股票:=TDXDLL1(1, STR2CON(CODE), 1, 100);其中第一个参数1,表示第一个函数就是买入函数。同理,卖出股票函数是第二个函数,因此调用卖出函数就像这样:卖出股票:TDXDLL1(2, STR2CON(CODE), 2, 100);其他函数余此类推。

另外,通达信的函数最多只能有4个参数,并且参数不能省略,而有些助手函数不需要那么多参数的,这时候只要填0就行。并且通达信的参数只能传递数值,因此股票要传递股票代码的时候调用 STR2CON(CODE), 这样来传递。由于最多只能传递4个参数,因此不能像大智慧一样指定助手编号,如果要指定助手编号,需要调用 选择账户1:=TDXDLL1(7, 1, 0, 0); 这样来调用。大部分情况下可以忽略不管助手编号。只有在对不同的助手(对应的不同交易软件的交易账户)使用不同的下单数量时才需要用到。如果你从来没改过助手设置里的助手编号,所有助手都会执行下单动作,在这种情况下,即使开了多个助手,也不需理会这个参数。

助手函数列表 买入函数 TDXDLL1(1, 股票代码, 公式编号,条件数量) 条件成立时(即 条件:=1),买入指定数量的股票 卖出函数 TDXDLL1(2, 股票代码, 公式编号,条件数量) 条件成立时(即 条件:=1),卖出指定数量的股票 查询持仓数量 TDXDLL1(3, 股票代码, 类型, 0) 查询当前股票持仓数量,单位(股) 查询可卖数量 TDXDLL1(3, 股票代码, 类型, 0) 查询当前股票可卖数量,单位(股) 查询成本价 TDXDLL1(3, 股票代码, 类型, 0) 查询当前股票的成本价 查询盈利金额 TDXDLL1(3, 股票代码, 类型, 0) 查询当前股票的盈利金额(元) 查询盈利百分比 TDXDLL1(3, 股票代码, 类型, 0) 查询当前股票的盈利百分比(%),盈利5.5%,返回5.5 查询持仓市值 TDXDLL1(3, 股票代码, 类型, 0) 查询当前股票的持仓市值 下单天数 TDXDLL1(3, 股票代码, 类型, 0) 查询当前股票的下单天数,即上次助手下单离现在的天数 持仓天数 TDXDLL1(3, 股票代码, 类型, 0) 查询当前股票的持仓天数 上次买入价 TDXDLL1(3, 股票代码, 类型, 0) 查询当前股票的上次买入价 查询可撤买单 TDXDLL1(4, 股票代码,下单类型, 查询类型) 查询当前股票的可撤买单数量(股) 查询可撤买单时间 TDXDLL1(4, 股票代码,下单类型, 查询类型) 查询当前股票的可撤买单的时间离现在的秒数(秒) 查询可撤卖单 TDXDLL1(4, 股票代码,下单类型, 查询类型) 查询当前股票的可撤卖单数量(股) 查询可撤卖单时间 TDXDLL1(4, 股票代码,下单类型, 查询类型) 查询当前股票的可撤卖单的时间离现在的秒数(秒) 撤买单 TDXDLL1(6, 股票代码, 条件类型) 条件成立时撤销当前股票的买入单 撤卖单 TDXDLL1(6, 股票代码, 条件类型) 条件成立时撤销当前股票的卖出单 账户总资产 TDXDLL1(5, 类型) 查询当前账户的总资产(元) 账户可用资金 TDXDLL1(5, 类型) 查询当前账户的可用资金(元) 账户持仓市值 TDXDLL1(5, 类型) 查询当前账户的账户持仓总市值(元) 账户总盈利 TDXDLL1(5, 类型) 查询当前账户的账户总盈利(元) 持仓个数 TDXDLL1(5, 类型) 查询当前账户的持仓股票数量 清仓 TDXDLL1(9, 股票代码, 条件清仓类型) 条件成立时执行清仓操作 清半仓 TDXDLL1(9, 股票代码, 条件清仓类型) 条件成立时执行清半仓操作 启动交易 TDXDLL1(12, 股票代码, 条件) 条件成立时启动助手自动交易,相当于按下启动按钮 停止交易 TDXDLL1(13, 股票代码, 条件) 条件成立时停止助手自动交易,相当于按下停止按钮 启用条件 TDXDLL1(10, 股票代码, 条件) 条件成立时启用当前股票的条件单或止损设置 禁止条件 TDXDLL1(11, 股票代码, 条件) 条件成立时禁用当前股票的条件单或止损设置 刷新持仓 TDXDLL1(14, 股票代码, 条件) 条件成立时刷新持仓数据 设置买入价 TDXDLL1(15, 股票代码, 类型, 价格) 如果要指定买入价需在调用买入函数前调用 设置卖出价 TDXDLL1(15, 股票代码, 类型, 价格) 如果要指定卖出入价需在调用买入函数前调用 日志函数 TDXDLL1(16, 股票代码, 数值) 把数值写到当前日志文件里,方便调试 MsgBox函数 TDXDLL1(16, 股票代码, 数值) 把数值以消息框的形式弹出来,方便调试 指定助手编号和账户编号 TDXDLL1(7, 助手编号, 账号编号) 指定助手编号和账户编号 发送邮件,QQ信息 TDXDLL1(18, 股票代码, 发送方式, 条件消息类型) 条件成立时(即 条件:=1),以指定的发送方式发送指定类型的消息 更多函数将完善 函数说明 TDXDLL1(1, 股票代码, 公式编号,条件数量) 条件成立时(即 条件:=1),买入指定数量的股票

参数 1 1,第一个函数是买入函数,因此填1 股票代码 股票代码,一般写成 STR2CON(CODE) 就行 公式编号 用来区分是哪个公式或者转移条件买入的,买入和卖出的编号不要相同 条件数量 条件,条件变量;数量,买入数量,如果填1,按助手条件单里的指定量买入 例子 {上穿5日均线买入1000股} 条件:Cross(C, MA(C,5)); 买入股票:=TDXDLL1(1, STR2CON(CODE), 1, 条件1000); TDXDLL1(2, 股票代码, 公式编号,条件*数量) 条件成立时(即 条件:=1),卖出指定数量的股票

About

first


Languages

Language:Jupyter Notebook 98.3%Language:Python 1.7%