Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #SingleInstance Force
- Gui, Font, s8, Verdana
- Gui, Margin, 10, 10
- Gui, Add, Text, Section, Value 1:
- Gui, Add, Edit, vValue1 gFillInValue2 hwndHWND
- Gui, Add, Text, , `% Increase:
- Gui, Add, Edit, vPercentIncrease gFillInValue2 hwndHWND
- Gui, Add, Text, , `% Decrease:
- Gui, Add, Edit, vPercentDecrease hwndHWND
- Gui, Add, Text, , Value 2:
- Gui, Add, Edit, vValue2 hwndHWND Disabled
- Gui, Add, Button, wp gToggle hwndToggleHWND, Start
- Gui, Add, Button, wp gErase hwndHWND, Erase
- Gui, Add, ListView, YS h185 w550 , Time|Rate|Message
- Gui, Show,, GBP Rate Monitor
- Return
- Erase:
- SetTimer, GetRate, OFF
- GuiControl,,Value1, % ""
- GuiControl,,Value2, % ""
- GuiControl,,PercentIncrease, % ""
- GuiControl,,PercentDecrease, % ""
- LV_Delete()
- Return
- Toggle:
- Gui, Submit, NoHide
- If (!Value1 or !PercentIncrease or !PercentDecrease){
- InsertLV("N/A", "Entered values are invalid")
- Return
- }
- If (Toggle := !Toggle){
- SearchMode := 1
- SetTimer, GetRate, 1000
- }
- GuiControl, % (Toggle) ? "Disable" : "Enable", Value1
- GuiControl, % (Toggle) ? "Disable" : "Enable", PercentIncrease
- GuiControl, % (Toggle) ? "Disable" : "Enable", PercentDecrease
- GuiControl,, % ToggleHWND, % (Toggle ? "Starting..." : "Stopping...")
- If (Toggle)
- GoSub GetRate
- Return
- FillInValue2:
- Gui, Submit, NoHide
- GuiControl,,Value2, % Round(Value1 * (100 + PercentIncrease ) / 100, 2)
- Return
- ; SubmitGUI:
- ; Gui, Submit, NoHide
- ; If (!Value1 OR !PercentIncrease){
- ; GuiControl,,Value2, % ""
- ; Return
- ; }
- ; Value2 := Round(Value1 * (100 + PercentIncrease ) / 100, 2)
- ; GuiControl,,Value2, % Value2
- ; Return
- GetRate:
- If Rate
- RateOld := Rate
- Rate := GetRate()
- If Rate {
- If (SearchMode = 1){
- IF (Rate >= Value1){
- SearchMode := 2
- ; Click 1
- ; Click 2
- Value2 := Round(Value1 * (100 + PercentIncrease ) / 100, 2)
- GuiControl,,Value2, % Value2
- Message := "Rate was >= " Value1 " - Starting search for Rate <= " Value2
- } else
- Message := "Rate was not >= " Value1
- } else If (SearchMode = 2){
- If (Rate <= Value2){
- SearchMode := 1
- ; Click 1
- ; Click 2
- Value1 := Round(Value2 * (100 - PercentDecrease) / 100, 2)
- GuiControl,,Value1, % Value1
- Message := "Rate was <= " Value2 " - Starting search for Rate >= " Value1
- } else
- Message := "Rate was not <= " Value2
- }
- If RateOld
- Increase := ((Rate - RateOld) / RateOld) * 100
- } else {
- Message := "Could not find rate on page."
- }
- InsertLV(Rate, Message)
- GuiControl,, % ToggleHWND, % Toggle ? "Stop" : "Start"
- If (!Toggle)
- SetTimer, GetRate, OFF
- Return
- GuiClose:
- ExitApp
- Return
- GetRate(){
- URL := "https://www.binance.com/en/trade/ETH_USDT"
- whr := ComObjCreate("WinHttp.WinHttpRequest.5.1")
- whr.Open("GET", URL)
- whr.Send()
- RegExMatch(whr.ResponseText, "cdRUYO"">([\d\.]+)<", Match)
- Return Match1
- }
- InsertLV(Rate, Message){
- FormatTime, Time,, % "hh:mm tt"
- LV_Add(, Time, Rate, Message)
- Loop 3
- LV_ModifyCol(A_Index, "AutoHdr")
- }
- ^+a::
- MouseGetPos, OutputVarX, OutputVarY
- return
- !+a::
- Click, %OutputVarX%, %OutputVarY%
- return
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement