#Persistent
; wait until next hour
Sleep (60 * (60 - A_Min) - (60 - A_Sec)) * 1000
; install hourly timer
SetTimer, HourlyTask, 3600000
Return
HourlyTask:
; do nothing if TWS is not running
SetTitleMatchMode RegEx
IfWinNotExist, Interactive Brokers Trader Workstation
Return
If (A_Hour = 1)
{
; set logoff time to 4:00 AM
SetTitleMatchMode RegEx
IfWinExist, Interactive Brokers Trader Workstation
{
WinActivate
MouseClick, left, 475, 40
MouseClick, left, 475, 60
WinWait Trader Workstation Configuration
MouseClick, left, 60, 150
MouseClick, left, 255, 305, 3
Send 04:00
MouseClick, left, 315, 305
MouseClick, left, 375, 640
MouseClick, left, 275, 640
}
}
If (A_Hour = 3)
{
; set logoff time to 2:00 AM
SetTitleMatchMode RegEx
IfWinExist, Interactive Brokers Trader Workstation
{
WinActivate
MouseClick, left, 475, 40
MouseClick, left, 475, 60
WinWait Trader Workstation Configuration
MouseClick, left, 60, 150
MouseClick, left, 255, 305, 3
Send 02:00
MouseClick, left, 315, 305
MouseClick, left, 375, 640
MouseClick, left, 275, 640
}
}