看了论坛里面很多塔友提供的自动化实现方式,这里我也把我的在这里向大家全部展示出来。
先说下为什么要这么做吧,之前我也是每日手动开启软件,后来因为公司采用机房的模式,所有程序都必须要放到机房里,机房进去时很麻烦的,然而金字塔无法进行长时间运作,大概一个星期以上,就无法正常运作了。官方建议是每日重启一次。所以基于此做了这个东西。
我这个也是仿照论坛中一位塔友做出来的。不过我将部分进行了分割,方便后面的人进行修改,而且将程序进行了最大的优化,也是为了方便修改。
准备工作:autoit,一个幸福小助手就够了。
第一步写程序:
1.1 首先设置好一些金字塔本身就可以完成的自动部分,保存登陆账号和密码,选择10秒自动登陆,登陆隐藏,行情服务器设置好自动连接,连接后自动隐藏,软件升级关闭掉。这里大家用的时候只要修改一下你的金字塔保存路径就可以了。在工具启动中,选择好要进行交易的图标框架。
;打开保存在固定目录下的金字塔exe文件
Run("D:\SOFTER\新晟傻傻\新晟一.exe")
;交易账号和密码已经保存好了,这是我们需要登录交易系统
WinWaitActive("欢迎使用金字塔决策交易系统","",20)
ControlFocus("欢迎使用金字塔","","Button1")
ControlClick("欢迎使用金字塔","","Button1") ;点击‘登录’按钮
Sleep(6000)
WinActivate("金字塔")
ControlFocus("金字塔","您的使用","Button1")
ControlClick("金字塔","您的使用","Button1")
;强制退出,导致第二次开启金字塔时会出现的异常登录
WinActivate("异常恢复")
ControlFocus("异常恢复","系统检测","Button2")
ControlClick("异常恢复","系统检测","Button2")
Sleep(2000)
;处理登录热键被占用问题
if WinWaitActive("金字塔","VBA停止",20) = 1 Then
ControlFocus("金字塔","","Button1")
ControlClick("金字塔","","Button1")
Endif
Sleep(2000)
;专业版用户登录,后台一般都会出现,VIP用户提示,这个时候需要处理掉
If WinExists("提示") Then
WinActivate("提示")
ControlFocus("提示","VIP","Button1")
ControlClick("提示","VIP","Button1")
EndIf
sleep(1000)
1.2 登陆成功了,开启程序化交易
WinActivate("金字塔决策交易系统 - [100000760] - [组合]")
sleep(1000)
Send("!OB")
sleep(1000)
WinActivate("图表程式化交易 - 组合 - 已停止")
ControlFocus("图表程式化交易 - 组合 - 已停止","","Button3")
ControlClick("图表程式化交易 - 组合 - 已停止","","Button3")
sleep(1000)
WinActivate("金字塔")
ControlFocus("金字塔","为防止重复下单","Button2")
ControlClick("金字塔","为防止重复下单","Button2")
Sleep(1000)
WinActivate("金字塔")
ControlFocus("金字塔","ENTERLONG","Button1")
ControlClick("金字塔","ENTERLONG","Button1")
sleep(1000)
1.3、交易结束了,这时候我们需要关闭金字塔,退出。新建图标框架保存名字是:组合。大家根据自己取名字进行修改。
WinActivate("金字塔决策交易系统 - [100000760] - [组合]")
WinClose("金字塔决策交易系统 - [100000760] - [组合]")
ControlFocus("金字塔","是否退出","Button1")
ControlClick("金字塔","是否退出","Button1")
sleep(1000)
WinActivate("金字塔")
ControlFocus("金字塔","框架中的","Button1")
ControlClick("金字塔","框架中的","Button1")
1.4、由于是无人登陆,我们登陆时候无法对K线个数进行限制,所以我们设置金字塔默认保存K线数500根,退出软件之后自动删除数据,第二天登陆之后他会默认恢复500根K线数据,以此保证交易速度。
DirRemove("D:\SOFTER\新晟傻傻\Data",1)
以上1.1、1.2、1.3、1.4大家可以线尝试性的使用一遍,正常之后,生成exe可执行文件,挂到幸福小助手上面,1.1、1.2这两个可执行文件时间间隔最好超过3分钟,因为每个exe运行之后会自动关闭,但是时间长短并不确定,所以如果第一个运行还没有自动关闭,第二个接着运行就会出现问题,时间设置长一点,保证前一个正常关闭,否则可能会出现问题。
以上便是我实现自动化无人值守的方式方法。希望能够帮助大家。
同时金字塔最新推出的版本,已经支持手机监控,这时候再把手机监控安装上,就再也不用担心出了问题自己却不知道了。从而避免了风险。
顶!强悍! 虽然还是搞不懂