开拓者 TB【升级】用AUTOIT和TB打造国内期货无人值守全自动交易系统[开拓者公式]
- AUTORUN_config.ini --基础配置文件
AUTORUN_holiday.ini --法定节假日定义,这个手动输入,软件函数可以判断是否工作日,但无法判断法定节假日,这个外部定义。
AUTORUN_notes.ini --日志文件,看自己是否使用了,
功能介绍:主要是我定义了3个配置文件,这样使用还是比较方便的
1、节假日,以及周六周末不打开运行交易开拓者,只交易日运行。
2、交易日上午08:50运行,自动启动交易开拓者,并运行自动交易,11:31自动关闭自动交易,并关闭交易开拓者
3、交易日下午13:20运行,自动启动交易开拓者,并运行自动交易,15:15自动关闭自动交易,并关闭交易开拓者
自用代码,分享给大家,有部分估计大家也用不到看着也眼花就删除了,
在此特感谢hyjok的分享,这个是在hyjok的分享的方法上进行修改的
// www.cxh99.com
#cs ----------------------------------------------------------------------------
AutoIt Version: 3.3.6.1
Author:小平常心
Script Function:
Template AutoIt script.
#ce ----------------------------------------------------------------------------
;Script Start - Add your code below here
;程序文件:TradeBlazer.exe
;软件名称:交易开拓者平台
;版本:4, 2, 1, 0
;更新:2011-09-05
#Include <Date.au3>
#include <Excel.au3>
#include <Array.au3>
#include <String.au3>
#include <Timers.au3>
#include <Math.au3>
#include <process.au3>
#include <GuiConstantsEx.au3>
#include <GuiListView.au3>
#include <GuiImageList.au3>
#include <WindowsConstants.au3>
#NoTrayIcon ;托盘不显示exe文件的图标
Dim $result,$tmp1,$tmp2,$tmp3,$tmp4
Dim $path,$TBloginname,$TBloginpassword,$record
Global $tmp01,$tmp02,$tmp03,$tmp04,$tmp05,$tmp06,$tmp07,$tmp08,$tmp09,$tmp10
Global $tmp50,$tmp51,$tmp52,$tmp53,$tmp54,$tmp55
Global $temp01,$temp02,$temp03,$temp04,$temp05
Global $temp11,$temp12,$temp13,$temp14,$temp15
Global $temp20,$temp21,$temp22,$temp23,$temp24,$temp25,$temp26,$temp27,$temp28,$temp29
Global $temp31,$temp32,$temp33,$temp34,$temp35,$temp36,$temp37,$temp38,$temp39
Global $temp40,$temp41,$temp42,$temp43,$temp44
Sleep(30000)
$path="D:\temp\TradeBlazerV4\" ;TB默认安装路径,如非默认安装,这里需要更改为你TB安装路径
$TBloginname="***" ;用你的TB登陆账号替换***
$TBloginpassword="***" ;用你的TB登陆密码替换***
$tmp05=FileOpen("D:\temp\AUTORUNWHALL\AUTORUN_config.ini",0) ;//根据情况修改,基本配置文件
$tmp06 =Number(FileReadLine($tmp05, 2)) ;状态
$tmp07 =Number(FileReadLine($tmp05, 4)) ;启动Mytrader2011
$tmp08 =Number(FileReadLine($tmp05, 6)) ;启动博易大师
$tmp09 =Number(FileReadLine($tmp05, 8)) ;启动TB自动交易下单
$tmp10 =Number(FileReadLine($tmp05, 10)) ;重新启动文化WH3
$tmp51 =Number(FileReadLine($tmp05, 20)) ;启动WH3
$tmp52 =Number(FileReadLine($tmp05, 22)) ;自动下单
$tmp53 =Number(FileReadLine($tmp05, 24)) ;保留配置
$tmp54 =Number(FileReadLine($tmp05, 26)) ;保留配置
FileClose($tmp05)
$temp20=FileOpen("D:\temp\AUTORUNWHALL\AUTORUN_holiday.ini",0) ;//根据情况修改,国家法定节假日配置文件
$temp21 =Number(FileReadLine($temp20, 01))
$temp22 =Number(FileReadLine($temp20, 02))
$temp23 =Number(FileReadLine($temp20, 03))
$temp24 =Number(FileReadLine($temp20, 04))
$temp25 =Number(FileReadLine($temp20, 05))
$temp26 =Number(FileReadLine($temp20, 06))
$temp27 =Number(FileReadLine($temp20, 07))
$temp28 =Number(FileReadLine($temp20, 08))
$temp29 =Number(FileReadLine($temp20, 09))
$temp31 =Number(FileReadLine($temp20, 10))
$temp32 =Number(FileReadLine($temp20, 11))
$temp33 =Number(FileReadLine($temp20, 12))
$temp34 =Number(FileReadLine($temp20, 13))
$temp35 =Number(FileReadLine($temp20, 14))
$temp36 =Number(FileReadLine($temp20, 15))
$temp37 =Number(FileReadLine($temp20, 16))
$temp38 =Number(FileReadLine($temp20, 17))
$temp39 =Number(FileReadLine($temp20, 18))
FileClose($temp20)
;循环开始
While 1
$temp11 = (@WDAY>1 and @WDAY<7) ;工作日
$temp12 = (@WDAY=1 Or @WDAY=7) ;周末
$temp01=((@HOUR=08 And @MIN>=50) Or @HOUR>08) And ((@HOUR =11 And @MIN<=31) Or @HOUR <11) And $temp11=1; //上午程序运行时段: 8:50 -- 11:31
$temp02=((@HOUR=12 And @MIN>=50) Or @HOUR>12) And ((@HOUR =15 AND @MIN<=01) Or @HOUR <15) And $temp11=1; //下午程序运行时段: 13:20 -- 15:15
Sleep(1000)
$temp40=@YEAR&@MON&@MDAY ;
$temp41 =($temp40=$temp21 or $temp40=$temp22 or $temp40=$temp23 or $temp40=$temp24 or $temp40=$temp25 or $temp40=$temp26)
$temp42 =($temp40=$temp27 or $temp40=$temp28 or $temp40=$temp29 or $temp40=$temp31 or $temp40=$temp32 or $temp40=$temp33)
$temp43 =($temp40=$temp34 or $temp40=$temp35 or $temp40=$temp36 or $temp40=$temp37 or $temp40=$temp38 or $temp40=$temp39)
$temp44 =($temp41=1 or $temp42=1 or $temp43=1) ;判断是否节假日
If ProcessExists("TradeBlazer.exe") And WinExists("交易开拓者平台(旗舰版) - ") = 0 Then
ProcessClose("TradeBlazer.exe")
ProcessClose("TBDataCenter.exe")
Sleep(3000)
EndIf
If WinExists("交易开拓者平台(旗舰版) - ") = 0 And ($temp01=1 Or $temp02=1 Or $tmp06=1) And $temp44=0 Then ;>=8:50且小于15:00如果TB未开则打开TB
$result=0
FileDelete($path&"data\__db.001")
FileDelete($path&"data\__db.002")
FileDelete($path&"data\__db.003")
Run($path&"TradeBlazer.exe",$path)
Sleep(10000)
WinWaitActive("欢迎登录交易开拓者平台(旗舰版)","",20)
WinActivate("交易开拓者平台(旗舰版)")
;ControlFocus("欢迎登录交易开拓者平台(旗舰版)","","Edit1")
;ControlSetText("欢迎登录交易开拓者平台(旗舰版)","","Edit1",$TBloginname) ;保存帐号,可以不用再输入了
ControlFocus("欢迎登录交易开拓者平台(旗舰版)","","Edit2")
ControlSetText("欢迎登录交易开拓者平台(旗舰版)","","Edit2",$TBloginpassword)
ControlFocus("欢迎登录交易开拓者平台(旗舰版)","","Button1")
Sleep(1000)
ControlClick("欢迎登录交易开拓者平台(旗舰版)","","Button1")
WinWaitActive("交易开拓者平台(旗舰版) - ","",30)
Sleep(5000)
WinActivate("交易开拓者平台(旗舰版) - ")
If WinExists("系统消息") Then
WinActivate("系统消息")
Sleep(1000)
WinClose("系统消息")
Sleep(1000)
EndIf
;_record0("交易开拓者启动完成")
;************TB自动登陆*****结束***********************
Sleep(2000)
WinActivate("交易开拓者平台(旗舰版) - ")
if ($tmp09=1) then ;启动工作区内所有自动交易
$result=WinMenuSelectItem("交易开拓者平台(旗舰版) - ","","文件(&F)", "启动所有自动交易");启动工作区内所有自动交易
EndIf
Sleep(2000)
If $result=0 Then
WinActivate("交易开拓者")
Sleep(1000)
;WinClose("交易开拓者")
Sleep(2000)
EndIf
WinSetState("交易开拓者平台(旗舰版) -","",@SW_MINIMIZE)
MouseMove(650, 550, 10) ;
Sleep(1000)
EndIf
If WinExists("交易开拓者") And ($temp01=0 And $temp02=0 And $tmp06=0) Then ;非交易时间关闭TB;11:31后收盘时间 以及>=15:10后关闭都TB
ProcessClose("TradeBlazer.exe")
ProcessClose("TBDataCenter.exe")
;_record0("关闭交易开拓者")
EndIf
Sleep(5000)
WEnd;循环结束
;//记录运行状态函数 ---这里你可以自己定义其他函数,比如给自己发送短信什么的,这个就看自己怎么扩展了
Func _record0($record)
Sleep(500)
$fileHand = FileOpen("D:\temp\AUTORUNWHALL\AUTORUN_notes.ini",1) ;不清除原来的内容
FileWrite($fileHand,_NowCalc()& " " &$record&@crlf) ;把数据写入tt.txt
FileClose($fileHand) ;关闭文本文件
Sleep(500)
EndFunc
- TB技术人员: 本帖最后由 小平常心 于 2013-7-21 12:15 编辑
AUTORUN_TB.au3
AUTORUN_TB.rar (2.31 KB, 下载次数: 7) 2013-7-21 12:15:38 上传下载次数: 7
holiday.ini
AUTORUN_notes.ini
AUTORUN_config.ini
三个配置文件如下:
AUTORUN_holiday.rar (161 Bytes, 下载次数: 30) 2013-7-20 19:24:48 上传下载次数: 30
文件格式
AUTORUN_notes.rar (214 Bytes, 下载次数: 28) 2013-7-20 22:13:23 上传下载次数: 28
-
AUTORUN_config.rar
2013-7-20 21:21:14 上传
下载次数: 6
370 Bytes, 下载次数: 6
- TB客服: 本帖最后由 小平常心 于 2013-7-20 21:44 编辑
小平常心 发表于 2013-7-20 19:25
AUTORUN_holiday.ini
程序定型后,以后都不用再重新编译整个程序,仅手动修改配置文件即可,给不会编程的人用也方便哈
注意,AUTORUN_holiday.ini的前18个日期有效,不限顺序,这个已经足够了
1年的法定节假日基本就这么多,1年基本修改一次就行了,
比如某日有事不打算运行,你也可以加进去,让电脑休息哈{ www.cxh99.com }
- 网友回复: 本帖最后由 小平常心 于 2013-7-20 21:39 编辑
小平常心 发表于 2013-7-20 19:26
可以手动修改配置文件即可,不用再重新编译整个程序
声明:
这个是在hyjok的分享的方法上进行修改的,原贴地址如下:
用AUTOIT和TB打造国内期货无人值守全自动交易系统
http://bbs.tb18.net/forum.php?mo ... 0%E4%BA%BA%E5%80%BC - 网友回复: 非常实用!顶一个。
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 1145508240 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容