Dokumentacja konfiguracji
Pełne wyjaśnienie pól konfiguracyjnych
Bot transakcyjny ByNinja używa wielu modułów konfiguracyjnych, aby rozdzielić obowiązki między wykonywaniem transakcji, łącznością z giełdą a komunikacją Telegram.
System konfiguracji jest celowo lekki i oparty na plikach, co pozwala na łatwe wdrożenie, szybką edycję i przewidywalne zachowanie podczas uruchamiania.
Konfiguracja Telegrama
Moduł konfiguracyjny Telegrama zawiera wszystkie parametry wymagane do komunikacji z API Bota Telegram i integracji TCP.
TELEGRAM_BOT_TOKEN
TELEGRAM_BOT_TOKEN = "your_telegram_bot_token"Token bota Telegram używany do uwierzytelniania w API Bota Telegram.
Ten token jest generowany przez BotFather w Telegramie i jednoznacznie identyfikuje instancję bota.
Obowiązki:
- •Uwierzytelnia żądania API
- •Umożliwia wysyłanie powiadomień
- •Umożliwia odbieranie poleceń użytkownika
- •Daje dostęp do funkcji bota Telegram
Ważne:
- •Nigdy nie ujawniaj tokena publicznie
- •Nigdy nie zatwierdzaj go w publicznych repozytoriach
- •Traktuj go jako prywatny klucz
TELEGRAM_CHAT_ID
TELEGRAM_CHAT_ID = "your_private_telegram_chat_id"Prywatny identyfikator czatu Telegram, na który dostarczane są powiadomienia i alerty transakcyjne.
Bot używa tego identyfikatora, aby ograniczyć komunikację tylko do autoryzowanego właściciela.
Obowiązki:
- •Kieruje alerty i powiadomienia
- •Ogranicza nieautoryzowany dostęp
- •Umożliwia wykonanie prywatnych poleceń
Typowe zastosowanie:
- •Osobiste powiadomienia transakcyjne
- •Zdalne zarządzanie botem
- •Monitorowanie wykonania transakcji
TCP_SERVER_PORT
TCP_SERVER_PORT = 55110Definiuje port TCP używany do komunikacji między serwerem Telegram a botem transakcyjnym.
Obie aplikacje muszą używać tej samej wartości portu.
Obowiązki:
- •Transport wiadomości TCP
- •Routing zdalnych poleceń
- •Przekazywanie logów w czasie rzeczywistym
Ważne:
- •Port musi być dostępny w systemie
- •Reguły zapory sieciowej mogą wymagać dostosowania
- •Oba procesy muszą mieć identyczną konfigurację
Konfiguracja Binance
Moduł konfiguracyjny Binance zawiera dane uwierzytelniające giełdy i ustawienia komunikacji transakcyjnej.
BINANCE_API_KEY
BINANCE_API_KEY = "your_binance_api_key"Publiczny klucz API wygenerowany z konta Binance.
Używany do uwierzytelniania żądań do usług Binance.
Obowiązki:
- •Dostęp do danych rynkowych
- •Uprawnienia do składania zleceń
- •Dostęp do informacji o koncie
Zalecenia bezpieczeństwa:
- •Włącz ograniczenia IP, jeśli to możliwe
- •Używaj uprawnień tylko do handlu
- •Unikaj włączania uprawnień do wypłat
BINANCE_API_SECRET
BINANCE_API_SECRET = "your_binance_api_secret"Prywatny sekret API powiązany z kluczem API Binance.
Używany do podpisywania żądań i weryfikacji uwierzytelniania.
Ważne:
- •Musi pozostać ściśle prywatny
- •Nigdy nie ujawniaj publicznie
- •Nigdy nie wysyłaj przez logi lub zrzuty ekranu
TCP_SERVER_PORT
TCP_SERVER_PORT = 55110Definiuje port komunikacji TCP używany przez klienta TCP bota transakcyjnego.
Ta wartość musi być zgodna z konfiguracją serwera Telegram.
Konfiguracja transakcyjna
Moduł konfiguracji transakcyjnej określa alokację kapitału, pary handlowe, zachowanie strategii i zarządzanie ryzykiem portfela.
INITIAL_CAPITAL
INITIAL_CAPITAL = 1000.0Określa wirtualny lub śledzony kapitał początkowy dla systemu transakcyjnego.
Używane do:
- •Obliczeń wyników
- •Obliczeń spadków
- •Śledzenia ekspozycji portfela
- •Statystyk zarządzania ryzykiem
Wartość wyrażona jest w USDT.
TRADING_PAIRS
TRADING_PAIRS = [
"AVAXUSDT",
"LINKUSDT",
"DOTUSDT",
"XRPUSDT",
"ATOMUSDT"
]Lista symboli kryptowalut monitorowanych i przedmiotem handlu systemu.
Każdy symbol musi również istnieć w słowniku TRADING_PARAMETERS
Obowiązki:
- •Definiuje aktywne rynki handlowe
- •Kontroluje subskrypcje symboli
- •Umożliwia realizację strategii dla poszczególnych symboli
Profesjonalna wskazówka: Użyj edytora kodu
Dla znacznie lepszego doświadczenia podczas edycji plików konfiguracyjnych zalecamy użycie profesjonalnego edytora kodu, takiego jak Visual Studio Code.
Download VS Code ↗Dokumentacja parametrów transakcyjnych
Każda para handlowa zawiera niezależny profil konfiguracji strategii.
Ten projekt pozwala każdemu rynkowi używać niestandardowych parametrów zmienności, trendu i ryzyka.
lot_size
"lot_size": 0.5Minimalna wielkość zamówienia dla pary handlowej.
Wartość musi być zgodna z wymogami Binance dotyczącymi wielkości partii.
Cel:
- •Zapobiega nieprawidłowym rozmiarom zleceń
- •Zapewnia zgodność z giełdą
- •Kontroluje minimalną precyzję transakcji
position_size
"position_size": 18.0Maksymalna alokacja kapitału w USDT dla pojedynczego wejścia transakcyjnego.
Cel:
- •Kontroluje ekspozycję pozycji
- •Ogranicza ryzyko na transakcję
- •Zapobiega nadmiernej alokacji
Wyższe wartości zwiększają:
- •Potencjalny zysk
- •Potencjalną stratę
- •Ekspozycję portfela
take_profit_percent
"take_profit_percent": 2.81Docelowy procent zysku w stosunku do ceny wejścia.
Gdy rynek osiągnie ten poziom, bot zamyka pozycję z zyskiem.
Cel:
- •Blokuje zyski
- •Określa cel nagrody
- •Standaryzuje wyjścia
Przykład:
- •Wejście po 100 USDT
- •Take profit na 2.81%
- •Cel wyjścia = 102.81 USDT
stop_loss_percent
"stop_loss_percent": 1.41Maksymalny dopuszczalny procent straty poniżej ceny wejścia.
Pozycja jest automatycznie zamykana, jeśli rynek porusza się przeciwko transakcji.
Cel:
- •Ogranicza ryzyko spadku
- •Chroni kapitał transakcyjny
- •Zapobiega dużym spadkom
Przykład:
- •Wejście po 100 USDT
- •Stop loss na 1.41%
- •Wyjście po 98.59 USDT
trail_activation_percent
"trail_activation_percent": 1.3Próg zysku wymagany przed aktywacją systemu trailing stop.
Przed aktywacją:
- •Używany jest standardowy stop loss
Po aktywacji:
- •Rozpoczyna się dynamiczna ochrona trailing
Cel:
- •Chroni dochodowe transakcje
- •Pozwala zyskom rosnąć
- •Zmniejsza przedwczesne wyjścia
trail_distance_percent
"trail_distance_percent": 0.8Odległość między bieżącym maksimum rynku a poziomem trailing stop.
Cel:
- •Chroni niezrealizowane zyski
- •Pozwala na naturalny ruch rynku
- •Tworzy dynamiczne wyjścia
Mniejsze wartości:
- •Bliższa ochrona
- •Szybsze wyjścia
- •Bardziej wrażliwe zachowanie
Większe wartości:
- •Więcej elastyczności
- •Dłuższy czas trwania transakcji
- •Zwiększona tolerancja na cofnięcia
trail_tight_distance_percent
"trail_tight_distance_percent": 0.5Krótsza odległość trailing stop używana w silniejszych warunkach oporu lub odwrócenia.
Cel:
- •Agresywna ochrona zysków
- •Szybsze wyjścia z transakcji w pobliżu oporu
- •Zmniejszone oddawanie zysków
min_ema200_3m_slope
"min_ema200_3m_slope": -0.008Minimalne dopuszczalne nachylenie wskaźnika EMA200 w 3-minutowym interwale.
Używane jako filtr trendu w wyższym przedziale czasowym.
Cel:
- •Unika handlu podczas silnych trendów spadkowych
- •Filtruje słabą strukturę rynku
- •Poprawia zgodność z trendem
min_ema20_1m_slope
"min_ema20_1m_slope": 0.01Minimalne nachylenie wymagane dla wskaźnika EMA20 w 1-minutowym interwale.
Używane do potwierdzenia krótkoterminowego impetu.
Cel:
- •Wykrywa przyspieszenie wzrostowe
- •Potwierdza byczy impet
- •Filtruje płaskie warunki rynkowe
min_ema50_1m_slope
"min_ema50_1m_slope": 0.005Minimalne nachylenie wymagane dla wskaźnika EMA50 w 1-minutowym interwale.
Działa jako dodatkowe potwierdzenie trendu.
Cel:
- •Potwierdza średnioterminowy kierunek
- •Zmniejsza fałszywe sygnały
- •Poprawia jakość wejścia
volume_spike_coeff
"volume_spike_coeff": 1.2Wymagany mnożnik wolumenu w stosunku do średniego wolumenu.
Bot wchodzi w transakcje tylko wtedy, gdy bieżący wolumen przekracza skonfigurowany próg.
Cel:
- •Wykrywa silny udział rynku
- •Unika wejść o niskiej płynności
- •Potwierdza siłę wybicia
Przykład:
- •Średni wolumen = 1000
- •Współczynnik = 1.2
- •Wymagany wolumen = 1200+
max_candle_size
"max_candle_size": 0.8Maksymalny dopuszczalny procentowy rozmiar świecy przed zablokowaniem wejścia.
Cel:
- •Unika wchodzenia po zbyt dużych świecach
- •Zapobiega gonieniu za wyczerpanymi ruchami
- •Zmniejsza wejścia FOMO
min_ema50_ema200_distance
"min_ema50_ema200_distance": 0.06Minimalna procentowa odległość wymagana między EMA50 a EMA200.
Cel:
- •Potwierdza separację trendu rynkowego
- •Filtruje słabe trendy
- •Weryfikuje strukturę trendu
Wyższe wartości odległości ogólnie wskazują na silniejsze trendy.
min_ema20_ema50_distance
"min_ema20_ema50_distance": 0.10Minimalna odległość wymagana między wskaźnikami EMA20 i EMA50.
Cel:
- •Potwierdza siłę krótkoterminowego impetu
- •Filtruje słabe wejścia
- •Poprawia jakość sygnału
Dokumentacja parametrów ryzyka
System zarządzania ryzykiem chroni zarówno pojedyncze symbole, jak i cały portfel.
max_portfolio_exposure
"max_portfolio_exposure": 90.0Maksymalny procent kapitału portfela, który może być jednocześnie alokowany na otwarte pozycje.
Cel:
- •Zapobiega nadmiernej ekspozycji
- •Utrzymuje rezerwową płynność
- •Zmniejsza ryzyko systemowe
max_consecutive_losses
"max_consecutive_losses": 10Maksymalna liczba kolejnych przegranych transakcji dozwolona przed wstrzymaniem handlu dla symbolu.
Cel:
- •Wykrywa niestabilne warunki rynkowe
- •Zapobiega emocjonalnemu nadmiernemu handlowi
- •Ogranicza okresy degradacji strategii
max_daily_drawdown_per_symbol
"max_daily_drawdown_per_symbol": 3.0Maksymalny dopuszczalny dzienny procent straty dla indywidualnej pary handlowej.
W przypadku przekroczenia:
- •Handel dla symbolu jest tymczasowo wstrzymany
Cel:
- •Ogranicza szkody specyficzne dla symbolu
- •Zapobiega powtarzającym się stratom na niestabilnych rynkach
max_total_drawdown_per_symbol
"max_total_drawdown_per_symbol": 6.0Maksymalny dopuszczalny skumulowany procent straty dla pary handlowej we wszystkich sesjach.
Cel:
- •Wykrywa konsekwentnie słabo działające symbole
- •Zapobiega długoterminowej erozji kapitału
max_daily_drawdown
"max_daily_drawdown": 5.0Maksymalny dopuszczalny dzienny procent straty portfela.
W przypadku przekroczenia:
- •Cała aktywność handlowa zostaje wstrzymana
Cel:
- •Chroni portfel podczas ekstremalnych warunków rynkowych
- •Ogranicza katastrofalne dzienne straty
max_total_drawdown
"max_total_drawdown": 10.0Maksymalny skumulowany spadek portfela w całym cyklu życia handlowego.
Cel:
- •Działa jako ostateczny mechanizm ochrony kapitału
- •Zapobiega całkowitej awarii strategii
- •Wymusza długoterminową dyscyplinę ryzyka
Po osiągnięciu:
- •Operacje handlowe powinny pozostać wyłączone do czasu ręcznego przeglądu.