Bot handlowy Selenium
Zadanie: Opracowano skrypt Python z wykorzystaniem Selenium do automatyzacji procesu kopiowania zleceń między dwoma rachunkami brokera na platformie. Bot imituje pracę przeglądarki, wykonuje autoryzację na rachunkach, śledzi otwarte zlecenia na rachunku nr 1 i kopiuje je na rachunek nr 2, przestrzegając określonych parametrów.
Podstawowa funkcjonalność:
Emulacja pracy przeglądarki:
Wykorzystanie Selenium WebDriver z maskowaniem śladów webdrivera (navigator.webdriver).
Ustawienie User-Agent jak w Google Chrome.
Kopiowanie zleceń:
Monitorowanie rachunku nr 1 pod kątem nowych zleceń (z częstotliwością 1 sekunda, konfigurowane w pliku konfiguracyjnym).
Kopiowanie zleceń na rachunek nr 2 z takimi parametrami:
Para walutowa.
Czas zakończenia zlecenia (świeca, time).
Kierunek (Buy/Sell).
Określony wolumen zlecenia (wprowadzony przez formularz).
Autoryzacja:
Ręczne wprowadzenie loginu, hasła i captcha.
Przejście do Traderoom po pomyślnej autoryzacji.
Ustawienia:
Poprzez plik konfiguracyjny:
Proxy dla rachunków nr 1 i nr 2 (HTTP lub SOCKS, sprawdzone i potwierdzone).
Loginy i hasła dla obu rachunków.
Częstotliwość zapytań do monitorowania rachunku nr 1.
Czas oczekiwania na otwarcie zlecenia na rachunku nr 2.
Poprzez formularz:
Wprowadzenie wolumenu zlecenia (amount) z możliwością aktualizacji.
Dodatkowe opcje:
Powiadomienia w Telegramie:
Pomyślne zamknięcie transakcji na rachunku nr 1.
Błędy w pracy (wylogowanie, ponowne uruchomienie bota, utrata dostępu do rachunku nr 1 lub nr 2).
Pominięcie zlecenia, jeśli czas do zakończenia świecy jest zbyt krótki (obliczono dopuszczalny czas oczekiwania).
Cykliczność pracy:
Ciągłe monitorowanie rachunku nr 1 i kopiowanie zleceń na rachunek nr 2.
Wszystkie zapytania o monitorowanie i zamykanie transakcji są realizowane tylko dla rachunku nr 1.
Dla rachunku nr 2 wysyłane są zapytania wyłącznie o otwarcie zleceń.
Technologie:
Python – główny język programowania.
Selenium WebDriver – do automatyzacji pracy przeglądarki.
Telegram API – do wysyłania powiadomień.
Pliki konfiguracyjne – do wygodnego ustawiania parametrów.
Wynik:
Opracowano i przetestowano bota, który zapewnia bezpieczną automatyzację kopiowania zleceń, zachowując wszystkie niezbędne parametry. Praca została zrealizowana zgodnie z wymaganiami technicznymi, przetestowana na rzeczywistych przypadkach, w tym weryfikacja proxy, obsługa captcha i zachowanie czasu realizacji zleceń.
Podstawowa funkcjonalność:
Emulacja pracy przeglądarki:
Wykorzystanie Selenium WebDriver z maskowaniem śladów webdrivera (navigator.webdriver).
Ustawienie User-Agent jak w Google Chrome.
Kopiowanie zleceń:
Monitorowanie rachunku nr 1 pod kątem nowych zleceń (z częstotliwością 1 sekunda, konfigurowane w pliku konfiguracyjnym).
Kopiowanie zleceń na rachunek nr 2 z takimi parametrami:
Para walutowa.
Czas zakończenia zlecenia (świeca, time).
Kierunek (Buy/Sell).
Określony wolumen zlecenia (wprowadzony przez formularz).
Autoryzacja:
Ręczne wprowadzenie loginu, hasła i captcha.
Przejście do Traderoom po pomyślnej autoryzacji.
Ustawienia:
Poprzez plik konfiguracyjny:
Proxy dla rachunków nr 1 i nr 2 (HTTP lub SOCKS, sprawdzone i potwierdzone).
Loginy i hasła dla obu rachunków.
Częstotliwość zapytań do monitorowania rachunku nr 1.
Czas oczekiwania na otwarcie zlecenia na rachunku nr 2.
Poprzez formularz:
Wprowadzenie wolumenu zlecenia (amount) z możliwością aktualizacji.
Dodatkowe opcje:
Powiadomienia w Telegramie:
Pomyślne zamknięcie transakcji na rachunku nr 1.
Błędy w pracy (wylogowanie, ponowne uruchomienie bota, utrata dostępu do rachunku nr 1 lub nr 2).
Pominięcie zlecenia, jeśli czas do zakończenia świecy jest zbyt krótki (obliczono dopuszczalny czas oczekiwania).
Cykliczność pracy:
Ciągłe monitorowanie rachunku nr 1 i kopiowanie zleceń na rachunek nr 2.
Wszystkie zapytania o monitorowanie i zamykanie transakcji są realizowane tylko dla rachunku nr 1.
Dla rachunku nr 2 wysyłane są zapytania wyłącznie o otwarcie zleceń.
Technologie:
Python – główny język programowania.
Selenium WebDriver – do automatyzacji pracy przeglądarki.
Telegram API – do wysyłania powiadomień.
Pliki konfiguracyjne – do wygodnego ustawiania parametrów.
Wynik:
Opracowano i przetestowano bota, który zapewnia bezpieczną automatyzację kopiowania zleceń, zachowując wszystkie niezbędne parametry. Praca została zrealizowana zgodnie z wymaganiami technicznymi, przetestowana na rzeczywistych przypadkach, w tym weryfikacja proxy, obsługa captcha i zachowanie czasu realizacji zleceń.