Słowniczek pojęć - boty MT5 i prop firmy
Pojęcia, które pojawiają się w artykułach na stronie, wyjaśnione krótko i na przykładach. Gdzie pojęcie jest opisane szerzej, pokazuje skorowidz. Przykłady liczbowe zakładają konto 10 000 USD i ryzyko 100 USD na transakcję, chyba że napisano inaczej.
Algo Trading
Przycisk w terminalu MT5, który pozwala botom wysyłać zlecenia albo tego zabrania. Wyłączony blokuje też zamykanie pozycji przez bota, więc nie zastępuje blokady w kodzie.
ATR
Average True Range: średni zakres świecy z ostatnich N świec. Używany do ustawiania stop lossa i filtrów zależnych od zmienności.
ATR (average true range)
Wskaźnik zmienności: średni zakres świecy z ostatnich N świec. Na wykresie D1 mówi, ile rynek zwykle przechodzi w ciągu dnia. Boty używają go do filtrów i do odległości stop lossa.
ATR D1
Average True Range liczony z wykresu dziennego. Jedna wartość na dobę, używana jako miara zmienności niezależna od interwału bota.
Backtest
Test bota na danych historycznych w testerze strategii MT5. Pokazuje, jak bot handlowałby w przeszłości. Wynik zależy od jakości danych (tiki albo świece M1) i od brokera.
Bezpiecznik ryzyka
Mechanizm w bocie, który nie otwiera pozycji, gdy realna strata do SL dla lota, który pójdzie, przekracza zadany wielokrotny plan ryzyka (u mnie 1,5).
Błędny tik
Pojedynczy tik w historii ceny, który odbiega od rynku o wielokrotność typowej zmienności i wraca po sekundach. Psuje wykonanie SL/TP w Testerze.
Bot wielostrategiowy
EA z kilkoma strategiami w jednym pliku: gospodarz pilnuje zabezpieczeń konta, a każda strategia ma własny magic i jedną pozycję naraz.
Break even
Przesunięcie stop lossa na cenę wejścia, czyli “pozycja na zero”. Jeśli cena wróci, transakcja kończy się bez straty (nie licząc spreadu i prowizji).
Break-even
Przesunięcie stopa na cenę wejścia po osiągnięciu zadanego zysku (np. 1R), tak aby pozycja nie zakończyła się stratą.
Cache optymalizacji (.opt)
Pliki w folderze Tester cache, w których MT5 zapisuje wyniki optymalizacji dla bota, symbolu, interwału i okresu. Przy tej samej kombinacji Tester wznawia stary cache zamiast liczyć od nowa.
Calmar
Średni roczny zwrot podzielony przez maksymalny drawdown z tego samego okresu. Mówi, ile zysku przypada na jednostkę najgorszego spadku.
Changelog
Osobny plik z historią zmian bota lub biblioteki: wersja, data, co się zmieniło i dlaczego. W nagłówku kodu zostaje tylko numer wersji.
Cichy błąd testu
Test, który się nie wykonał (brak konta, aktualizacja terminala, stary plik), a narzędzie i tak raportuje wynik. Groźny, bo liczba wygląda wiarygodnie.
Cienka powłoka EA
Bot, który ma tylko własne wejścia i logikę sygnału, a lot, limity, filtry i raportowanie bierze z klas wspólnej biblioteki.
C-Score
Consistency score w wersji SpiceProp. Udział najlepszego dnia w całym zysku, np. najlepszy dzień 400 USD przy zysku 500 USD daje 80%. Żeby dostać wypłatę z konta funded, musi być poniżej 30%. Na challenge SpiceProp tylko go pokazuje, nie jest potrzebny do zaliczenia. Opis: C-Score w SpiceProp.
CFD
Kontrakt na różnicę kursową. Większość prop firm na forex daje konta na CFD (waluty, złoto, indeksy), część oferuje już kontrakty futures.
Challenge
Egzamin w prop firmie: trzeba osiągnąć cel zysku (np. 8-10%), nie przekraczając limitów straty. Bywa jednoetapowy (1-Step) albo dwuetapowy (2-Step). Po zaliczeniu dostajesz konto fundowane.
Częściowe zamknięcie
Zamknięcie części pozycji (np. połowy) po osiągnięciu zysku o zadanej wielokrotności ryzyka R, reszta zostaje w rynku.
Częściowy zysk (partial profit)
Zamknięcie części pozycji z zyskiem, a reszta zostaje otwarta, np. połowa przy 1R. Często razem z przesunięciem SL na cenę wejścia.
Dane brokera docelowego
Historia serwera, na którym bot będzie handlował. Wynik z cudzych danych jest tylko wskazówką, ostateczny test robię na tych.
Dolna granica Wilsona
Pesymistyczny koniec przedziału ufności odsetka sukcesów. Odróżnia 10/10 od 100/100, mimo że oba dają 100%.
Drawdown
Spadek konta od szczytu albo od salda startowego, w USD albo w procentach. Maksymalny drawdown (max loss) to granica, poniżej której equity nie może spaść. Przy limicie 10% na koncie 10 000 USD to 9 000 USD.
Drawdown statyczny
Granica maksymalnej straty stoi w miejscu, liczona od salda początkowego. Przy 10% na koncie 10 000 USD zawsze 9 000 USD.
Drawdown trailing
Granica maksymalnej straty idzie w górę za najwyższym poziomem konta i nigdy nie spada. Odmiany: intraday (za equity na żywo) i end-of-day (za saldem na koniec dnia).
Dziennik Eksperci
Zakładka Skrzynki narzędzi MT5 z komunikatami botów i systemu o ich pracy. Plik na dobę w folderze Logs bota; osobno jest dziennik terminala i dziennik Testera.
Dziennik i Eksperci (zakładki terminala)
Dwa logi w oknie Narzędzia MT5. Eksperci pokazuje komunikaty botów, Dziennik to, co robi sam terminal: połączenie, wysłane zlecenia, odmowy serwera.
EA (Expert Advisor)
Bot w MetaTrader 5, program w języku MQL5 uruchomiony na wykresie. W artykułach “bot” i “EA” znaczą to samo.
End-of-day (EOD)
Sposób liczenia, w którym liczy się tylko saldo na zamknięciu dnia. Przy drawdownie trailing EOD granica przesuwa się raz dziennie.
Enum (input)
Typ wyliczeniowy w ustawieniach bota: lista nazwanych wartości, po których Tester potrafi przechodzić w optymalizacji. Każda wartość powinna mieć czytelny komentarz.
ESMA
Europejski Urząd Nadzoru Giełd i Papierów Wartościowych. W 2018 roku ograniczył sprzedaż CFD klientom detalicznym (limity dźwigni, ochrona przed ujemnym saldem, ostrzeżenie z procentem strat).
Expectancy
Średni wynik jednej transakcji w jednostkach ryzyka R: win rate x średni zysk w R minus (1 - win rate) x średnia strata w R.
Filtr kierunku dnia
Reguła blokująca nowe wejścia przeciw kierunkowi wyznaczonemu z wyższego interwału (np. kanału SMMA na H4). W teście musi zostać oceniona na wielu latach, bo w jednym miesiącu spadku zawsze wygląda dobrze.
Filtr (w bocie)
Dodatkowy warunek, który musi być spełniony, żeby bot otworzył pozycję, np. kierunek trendu, godzina albo zmienność. Filtr zmniejsza liczbę transakcji, więc jego wpływ sprawdza się, porównując wynik z botem bez filtra.
Forward test
Test bota na żywo, na koncie demo albo małym koncie rzeczywistym, po zakończeniu backtestów. Pokazuje, czy wynik z testera powtarza się na bieżących cenach.
Equity
Saldo plus wynik otwartych pozycji. Saldo 10 000 USD i otwarta pozycja na -300 USD daje equity 9 700 USD. Prop firmy sprawdzają limity zwykle po equity, na żywo.
Freeze level
Odległość od ceny, w której broker blokuje zmianę lub usunięcie zleceń i pozycji.
FVG (fair value gap)
Luka między trzema kolejnymi świecami: krawędzie świec pierwszej i trzeciej się nie stykają, bo środkowa świeca była bardzo silna.
GTC, DAY
Czas ważności zlecenia oczekującego: GTC żyje do odwołania, DAY wygasa z końcem dnia handlowego (kasuje je serwer brokera, nie bot).
Hasło inwestora
Drugie hasło do konta MT5, tylko do odczytu. Pozwala oglądać konto i historię, nie pozwala wysyłać zleceń.
Histereza filtra
Dwa progi zamiast jednego: blokada włącza się przy wyższym, a wyłącza przy niższym, żeby filtr nie przełączał się co świecę.
Hook pre-commit
Skrypt uruchamiany przez git tuż przed commitem. Może zablokować commit albo ostrzec, np. gdy plik kodu ma złe kodowanie.
Input
Parametr bota ustawiany w oknie wykresu albo w testerze strategii, np. ryzyko w USD albo godzina
zamknięcia. Zestaw inputów zapisuje się w pliku .set.
In-sample / out-of-sample
In-sample to starsza część historii, na której dobieram parametry. Out-of-sample to młodsza część zostawiona nietkniętą jako kontrola; odpalam ją raz, po wyborze zestawu.
Intraday
W ciągu dnia, na żywo. Drawdown trailing intraday śledzi najwyższe equity co tik, razem z niezrealizowanym zyskiem.
Kalendarz ekonomiczny MT5
Wbudowana baza wydarzeń makro w terminalu, podająca czas w czasie serwera brokera. Przesunięcie jest brane z chwili odczytu, więc plik zapisany przed zmianą czasu ma newsy o godzinę obok.
Kanał Donchiana
Wskaźnik z najwyższym szczytem i najniższym dołkiem z ostatnich N świec oraz linią środkową. Klasycznie służy do wybić, w moim bocie długi kanał wyznacza trend, a krótki miejsce wejścia przy cofnięciu.
Keepalive (konto)
Minimalna transakcja robiona co określoną liczbę dni, żeby firma nie zamknęła konta z powodu braku aktywności.
KNN (najbliżsi sąsiedzi)
Metoda klasyfikacji: bieżący układ cech porównuje się z historycznymi i sprawdza, do jakiej klasy należała większość najbliższych z nich.
Kod 10027
Odmowa zlecenia, gdy handel algorytmiczny jest wyłączony po stronie terminala (przycisk Algo Trading). Dotyczy bota i Pythona, także zamykania pozycji.
Kod zwrotny (retcode)
Liczbowa odpowiedź serwera brokera na zlecenie bota. 10009 oznacza wykonanie, pozostałe kody mówią, dlaczego prośba nie przeszła.
Kompilacja
Zamiana kodu źródłowego bota (plik .mq5) na plik wykonywalny .ex5, który uruchamia terminal MT5. Robi to MetaEditor, z okna (F7) albo z linii poleceń.
Konto raw (ECN)
Konto z surowym, bardzo niskim spreadem i osobną prowizją za lot. Konto standard ma szerszy spread i zwykle brak prowizji; łączny koszt bywa podobny.
Kontrakt futures
Umowa giełdowa na instrument (indeks, złoto, ropę) o stałej wielkości. Handluje się całymi kontraktami, bez ułamków jak lot w MT5. Mikro kontrakt to 1/10 zwykłego. Opis: mikro kontrakty.
Konto demo
Konto z wirtualnymi pieniędzmi. Ceny są zbliżone do prawdziwych, ale wykonanie zleceń jest łatwiejsze niż na koncie rzeczywistym: bez prawdziwego poślizgu i odrzuceń.
Konto fundowane (funded)
Konto, które dostajesz od prop firmy po zaliczeniu challenge. Z zysku na nim firma wypłaca Ci ustaloną część.
Korekta Fibonacciego
Cofnięcie ceny po impulsie, mierzone jako ułamek impulsu (38,2%, 50%, 61,8%, 78,6%). Poziomy służą do wyznaczania wejścia i stop lossa.
Koszt całkowity transakcji
Suma spreadu, prowizji i swapu przeliczona na ten sam lot i walutę, używana do porównania kont i strategii.
Koszt w R
Koszt transakcji (np. spread) podzielony przez odległość stopa, czyli wyrażony w jednostkach ryzyka.
Kwotowania opóźnione
Ceny akcji z opóźnieniem (np. 15 min), typowe dla niektórych kont demo. Bot oparty na świeżości danych zachowuje się na nich inaczej niż na realu.
Licznik siły trendu EMA
Liczba zamkniętych świec z rzędu po tej samej stronie średniej EMA. Pierwsze zamknięcie po drugiej stronie kończy serię i może służyć jako ostrzeżenie dla pozycji.
Limit dzienny straty
Najwyższa strata, jaką można mieć jednego dnia, np. 5% salda, czyli 500 USD. Przekroczenie na koncie prop oznacza utratę konta.
Lista kont (źródło prawdy)
Jeden plik z kontami (firma, serwer, saldo startowe, komputer, boty), z którego czytają wszystkie narzędzia. Zawiera hasła, więc leży poza repozytorium.
Luka cenowa (gap)
Różnica między ostatnią ceną przed przerwą w handlu (noc, weekend) a pierwszą ceną po niej. W tym zakresie nie było cen, więc SL wykonuje się dopiero po pierwszej dostępnej cenie. Opis: luka cenowa i SL.
Limit (zlecenie limit)
Zlecenie oczekujące, które wypełnia się po ustalonej cenie albo lepszej. Kupno limit leży poniżej bieżącej ceny, sprzedaż limit powyżej. Opis: OHLC kontra prawdziwe tiki.
Lot
Wielkość pozycji. Na EURUSD 1 lot to 100 000 EUR, a 1 pips przy 1 locie to około 10 USD. Bot liczy lot z ryzyka w USD i odległości do stop lossa, żeby strata na SL wynosiła np. 100 USD.
Luka weekendowa
Różnica między ceną zamknięcia w piątek a ceną otwarcia w niedzielę wieczorem. Stop loss w luce wykonuje się po cenie otwarcia, więc strata może być większa niż planowana.
Margin
Depozyt zabezpieczający zablokowany na czas pozycji: lot x wielkość kontraktu x cena / dźwignia (forex i większość CFD). Nie jest ryzykiem na transakcję, tylko częścią kapitału zajętą przez pozycję.
Market closed (rynek zamknięty, błąd 10018)
Odpowiedź serwera na zlecenie wysłane poza godzinami handlu symbolu. W przerwie dobowej i w weekend nie da się otworzyć ani zamknąć pozycji. Opis: przerwa dobowa indeksów i złota.
Lot minimalny i krok lota
Najmniejsza pozycja, jaką przyjmie broker (zwykle 0,01 lota), i najmniejsza zmiana jej wielkości. Wyliczony lot trzeba do nich zaokrąglić. Opis: zaokrąglenie lota.
Magic (numer magic)
Numer, którym bot oznacza swoje zlecenia. Dzięki niemu kilka botów na jednym koncie odróżnia swoje pozycje i liczy własny wynik.
Martwy filtr
Filtr wejścia, który po włączeniu daje wynik identyczny z bazą, bo nie odrzuca żadnego wejścia. Znaczy, że próg jest za luźny albo warunek nigdy się nie spełnia.
MCP (Model Context Protocol)
Otwarty protokół, przez który program AI wywołuje narzędzia innej aplikacji. Terminal MT5 od buildu 6316 ma wbudowany serwer MCP z narzędziami do wykresów, Testera i handlu.
Mediana dni do PASS
Środkowa liczba dni od startu challenge’u do jego zaliczenia, liczona z wielu startów tego samego bota. Mówi, jak szybko bot zwykle dochodzi do celu.
MetaEditor
Edytor kodu MQL5 instalowany razem z MT5. Pisze się w nim i kompiluje boty, wskaźniki i skrypty.
MetaQuotes-Demo
Serwer demo producenta MT5. Konto zakłada się w terminalu w minutę, bez brokera. Akcje USA mają tam ceny opóźnione o 15 minut. Opis: MetaQuotes-Demo.
Minimalna liczba dni handlowych
Wymóg firmy prop, by przed zaliczeniem etapu handlować w określonej liczbie osobnych dni. Nie jest limitem czasu; definicja dnia i liczba różnią się między firmami.
Monte Carlo
Wielokrotne przetasowanie kolejności transakcji z backtestu (np. 1 000 razy). Pokazuje, jaki drawdown może się zdarzyć przy innej kolejności tych samych wyników.
Monte Carlo transakcji
Wielokrotne przetasowanie kolejności transakcji z backtestu, żeby zobaczyć rozkład drawdownu i serii strat zamiast jednego wyniku.
MQL_TESTER
Stała MQL5 mówiąca, że program działa w Testerze strategii. Rozgałęzienia handlowe oparte na niej psują porównywalność testu i konta.
NinjaTrader
Platforma do handlu kontraktami futures, popularna w prop firmach futures. Strategie pisze się w niej w języku NinjaScript (C#).
No prices
Odpowiedź serwera (kod 10021), gdy symbol nie ma bieżących kwotowań. Mija po nowym tiku.
Nowa świeca (wykrycie)
Zmiana czasu otwarcia świecy zerowej względem zapamiętanego. Wykrywa się ją raz na świecę, osobnym detektorem na każdy interwał, a nie licznikiem tików.
Numer magic
Liczba dopisywana przez bota do zleceń i pozycji, dzięki której każdy bot widzi tylko własne. Pozycje ręczne mają numer zerowy. Sprawdza się go zawsze razem z symbolem.
NY-close
Układ czasu serwera, w którym tydzień kończy się w piątek o 17:00 w Nowym Jorku. Serwer zmienia czas razem z USA (zima GMT+2, lato GMT+3), a różnica NY - serwer to zawsze 7 godzin.
Okno startowe
Dzień (tydzień), od którego liczę przebieg challenge w teście. Szansa zaliczenia zależy od okna, nie od średniej rocznej.
Okno wejść
Przedział godzin, w którym bot może otwierać pozycje. U bota wybiciowego na złocie jego początek i koniec zmieniły wynik bardziej niż filtry.
OnInit / OnDeinit
Funkcje bota wywoływane przez terminal przy starcie (OnInit) i przy zdjęciu bota z wykresu (OnDeinit). Zmiana interwału lub parametrów wywołuje obie, więc stan w zmiennych bota ginie.
OnTimer
Funkcja bota wywoływana cyklicznie przez timer, niezależnie od tików. Przydatna do zadań czasowych, gdy rynek stoi.
Osobny zły okres
Ciąg kolejnych dat startu, które kończą się porażką. Sąsiednie starty dzielą transakcje, więc liczę okresy, nie pojedyncze starty.
Overfitting (dopasowanie do historii)
Ustawienia bota dobrane tak, że pasują do konkretnej historii, a nie do powtarzalnej przewagi. Rośnie przy małej liczbie transakcji i wielu parametrach.
Paczka dystrybucyjna
Skompilowany plik bota i ustawienia z numerem wersji w nazwie, zbudowane z repozytorium skryptem i rozsyłane na konta.
Parabolic SAR
Wskaźnik rysujący kropki pod ceną w trendzie wzrostowym i nad ceną w spadkowym; kropka przyspiesza za ceną. Używany jako ruchomy stop i sygnał odwrócenia.
PASS / FAIL
Wynik testu challenge: PASS to konto zaliczone, FAIL to konto stracone. Przy botach na konta prop to dla mnie ważniejsza ocena niż sam profit factor.
OHLC (1 minuta OHLC)
Tryb testera strategii, w którym z każdej świecy M1 brane są tylko cztery ceny: otwarcia, najwyższa, najniższa i zamknięcia, a spread z jednego pola świecy. Szybki, ale mniej dokładny niż test na tikach. Opis: spread w backteście.
Optymalizacja
Seria backtestów tego samego bota z różnymi ustawieniami, żeby znaleźć najlepsze. Łatwo w niej dopasować bota do przeszłości (overfitting). Opis: pułapka najlepszego wiersza.
Overfitting (przeoptymalizowanie)
Dopasowanie ustawień bota do przypadkowych cech danych historycznych. W teście wynik jest świetny, na nowych danych znika.
Percentyl
Wartość, poniżej której mieści się dany procent wyników. 95. percentyl dziennego wyniku to poziom, którego nie przekracza 95% dni.
Pine Script
Język skryptów platformy TradingView. Wskaźniki i strategie z Pine można przenosić do MQL5, uważając na indeksy, strefę godzin i wyższe interwały.
Plateau parametrów
Szeroki obszar siatki, w którym sąsiednie ustawienia dają podobny wynik. Daje większe zaufanie niż pojedynczy najlepszy wiersz, który może być szumem.
Plik blokady handlu
Mały plik JSON na konto, zapisywany przez panel i odczytywany przez bota; ważny do północy czasu komputera, blokuje tylko nowe pozycje.
Plik .chr
Plik wykresu w profilu terminala: symbol, interwał, wskaźniki i wartości wejściowe bota. To on, a nie plik .set, jest prawdą o tym, z czym bot działa.
Plik wykresu (.chr)
Plik w profilu terminala, w którym zapisane są wykres i wartości inputów bota. Działający bot czyta ustawienia z niego, nie z pliku .set.
_Point
Najmniejszy krok ceny symbolu wynikający z liczby cyfr po przecinku (np. 0,00001 na EURUSD, 0,01 na złocie); nie jest pipsem.
Pokrycie danych
Sprawdzenie, czy dla każdego miesiąca historii są komplety świec i tików. Data pierwszej świecy nie wystarcza, bo w środku mogą być dziury.
Poślizg (slippage)
Różnica między ceną zlecenia a ceną, po której broker je wykonał. Przy newsach i lukach strata na SL bywa większa niż planowane 100 USD.
Próg rentowności (win rate)
Skuteczność, przy której oczekiwana wartość transakcji wynosi zero: 1 / (RR + 1), a z kosztem c w R: (1 + c) / (RR + 1).
Prop firma
Firma, która za opłatą daje dostęp do konta z jej kapitałem (np. 10 000 USD) na swoich zasadach. Tracisz najwyżej opłatę za konto, zarabiasz część zysku po zaliczeniu challenge.
Przerwa w handlu (sesja)
Czas, w którym broker nie kwotuje symbolu. Indeksy i złoto mają zwykle 1-2 godziny przerwy dziennie, waluty krótką przerwę około północy serwera, a wszystkie rynki weekend. Godziny są w MT5 w specyfikacji symbolu. Opis: przerwa dobowa indeksów i złota.
Profit factor (PF)
Suma zysków podzielona przez sumę strat. PF 1,5 oznacza, że na każde 100 USD straty bot zarobił 150 USD.
Przesunięcie okna testu
Powtórka tego samego ustawienia bota na zakresie dat przesuniętym o miesiąc. Odróżnia się od re-optymalizacji, która szuka nowych wartości parametrów.
Przewaga (edge)
Dodatni średni wynik na transakcję liczony w R. Przykład: 40% wygranych po 2R i 60% strat po 1R daje +0,2R na transakcję.
R (1R)
Jednostka ryzyka: tyle, ile tracisz na jednej transakcji, gdy cena dojdzie do stop lossa. Przy ryzyku 100 USD wynik 3R to 300 USD zysku, a -2R to 200 USD straty.
Real kontra test
Porównanie transakcji z konta z tym samym okresem w Testerze na realnych tikach, parowane jedna do jednej. Różnice dzieli się na przyczyny: blokada dzienna, błędny tik, wiadomości, poślizg.
Reguła konsekwencji (consistency rule, consistency score)
Zasada prop firmy, że jeden dzień nie może dać za dużej części całego zysku (np. najwyżej 30-50%). Po angielsku consistency rule, a wynik liczony przez firmę to consistency score. Przykład: C-Score w SpiceProp. Wzór i przykłady: jak ją liczyć.
Rejestr zdarzeń
Jeden wiersz na jedno dziwne zdarzenie (serwer, data, godzina, co się stało, skutek). Dzięki niemu podobny przypadek po miesiącu szuka się w rejestrze, a nie w pamięci.
Retest
Powrót ceny do poziomu lub średniej, którą przed chwilą opuściła, zanim ruch w kierunku trendu się wznowi.
Risk of ruin (ryzyko utraty konta)
Prawdopodobieństwo, że konto dojdzie do limitu straty. Zależy od udziału wygranych, stosunku zysku do ryzyka i ryzyka na transakcję.
Rolowanie kontraktu
Zamknięcie pozycji na wygasającym kontrakcie futures i otwarcie na następnym. Cena następnego kontraktu bywa inna, co daje lukę.
Rozjazd zmiany czasu
Kilka tygodni w roku, gdy USA i Europa mają różne przesunięcie czasu letniego: wiosną ok. 3 tygodnie, jesienią ok. tydzień.
Ryzyko łączne
Suma ryzyka wszystkich pozycji, które mogą być otwarte naraz na koncie; pozycje skorelowane liczy się jak jedną.
Saldo
Stan konta po zamkniętych transakcjach, bez wyniku otwartych pozycji.
Saldo początkowe
Kwota, od której startuje konto prop (np. 10 000 USD). Od niej firma liczy limity procentowe. W botach ustawiane w inputach, nie może zostać 0.
Saldo początkowe (w bocie)
Kwota, od której bot liczy limity procentowe symulatora zasad firmy; musi odpowiadać rozmiarowi konta, nie bieżącemu saldu.
Seria strat
Kilka przegranych transakcji z rzędu. Jej typowa długość wynika z udziału wygranych i liczby transakcji, np. przy 40% wygranych i 250 transakcjach to ok. 9 strat.
Serwer brokera (czas serwera)
Zegar serwera, na którym działa konto. Od niego liczy się dzień handlowy i limity dzienne. Zwykle GMT+2 albo GMT+3, czyli o godzinę lub dwie przed czasem polskim.
Skrypt kontrolny reguł kodu
Skrypt czytający kod bota i zgłaszający złamanie zasad (zakazane funkcje, brak sprawdzenia magic, różne wersje). Wynik to raport do przejrzenia, nie autopoprawka.
SMMA
Smoothed Moving Average, średnia wygładzona: reaguje wolniej niż EMA tego samego okresu. W bocie używam jej jako kanału z dwóch linii, liczonej z maksimów i z minimów świec.
Specyfikacja symbolu
Okno w MT5 z warunkami handlu symbolu u danego brokera: wielkość kontraktu, minimalny lot, swap i godziny sesji dla każdego dnia tygodnia. Okno rynku, prawy przycisk na symbolu, Specyfikacja.
Spread
Różnica między ceną kupna a sprzedaży. Przy newsach i otwarciu rynku rośnie, a razem z nim koszt wejścia i wyjścia.
Spread ważony czasem
Średni spread, w którym każdy poziom liczy się proporcjonalnie do czasu jego trwania, a nie do liczby tików. Mniej zniekształcony przez gęste tiki w krótkich skokach.
Średni zakres dzienny (ADR)
Średnia odległość między najwyższą i najniższą ceną dnia z ostatnich dni. Pokazuje typowy ruch dzienny instrumentu.
Średnia strata (próg)
Średnia strata przegrywających transakcji wyrażona w USD albo w części ryzyka. Gdy wynosi mniej niż połowę ryzyka, bot prawdopodobnie ucina pozycje sygnałem, a stop loss prawie nie pracuje.
Standard testu
Ten sam wzór testu dla każdego bota: ostatnie 12 miesięcy, 52 starty tygodniowe, konto 10 tysięcy, model OHLC, a w wyniku wersja kodu i odcisk pliku ustawień. Dzięki temu wyniki są porównywalne.
Stop loss (SL)
Zlecenie zamykające pozycję ze stratą, gdy cena dojdzie do ustalonego poziomu. Ustawiony u brokera działa nawet wtedy, gdy terminal jest wyłączony. Nie jest gwarantowany: po dojściu ceny zamienia się w zlecenie rynkowe, więc przy luce albo poślizgu strata bywa większa niż planowana.
Stops level
Minimalna odległość SL/TP od bieżącej ceny, jaką dopuszcza broker dla symbolu. Zbyt ciasny stop kończy się odrzuceniem zlecenia.
Sufiks symbolu
Końcówka dodana przez brokera do nazwy instrumentu (np. kropka z literą, m, pro), oznaczająca rodzaj konta lub wykonania. Każdy symbol z sufiksem ma własną specyfikację.
Suma PASS/FAIL
Łączna liczba zaliczonych i oblanych challenge’y z testu tego samego ustawienia u kilku brokerów. Jedna liczba do porównywania kolejnych zmian bota.
Swap
Opłata (czasem dopłata) za przeniesienie pozycji na następny dzień. Raz w tygodniu naliczana potrójnie, za weekend.
Sweep daty startu
Seria przebiegów Testera tego samego bota, w której zmienia się tylko dzień rozpoczęcia challenge. Pokazuje, jaki procent startów kończy się porażką.
Swing low / swing high
Lokalny dołek (swing low) albo szczyt (swing high) ceny, np. najniższy Low z ostatnich kilku świec. Używany jako poziom, za którym stawia się stop loss.
Take profit a cel zysku
Take profit zamyka jedną pozycję na ustalonej cenie. Dzienny cel zysku (daily profit target) to próg wyniku całego dnia, po którym bot przestaje otwierać nowe pozycje. Różnica: dzienny cel zysku.
Take profit (TP)
Zlecenie zamykające pozycję z zyskiem na ustalonej cenie.
Symbol
Nazwa instrumentu u danego brokera, np. XAUUSD, US30, NAS100. Ten sam rynek ma u różnych brokerów różne nazwy i dopiski. Opis: Nasdaq i Dow w MT5.
Test regresyjny
Porównanie wyniku przed i po zmianie kodu na tym samym okresie i ustawieniach; zaliczony tylko przy identycznej liczbie transakcji i zysku.
Test rok po roku
Osobny przebieg Testera na każdy rok kalendarzowy zamiast jednego na cały okres. Pokazuje, czy bot zarabiał w każdym roku, czy wynik zrobił jeden dobry okres.
Tester strategii
Narzędzie w MetaTrader 5 do backtestów i optymalizacji botów (menu Widok - Tester strategii).
Tick (futures)
Najmniejszy możliwy ruch ceny kontraktu, np. 0,25 punktu na S&P 500. Wartość ticka to zysk albo strata jednego kontraktu przy takim ruchu (MES 1,25 USD, MNQ 0,50 USD).
Tick Replay
Opcja NinjaTrader, która odtwarza dane historyczne tick po ticku, żeby strategia w backteście działała tak jak na żywo. Odpowiednik testu na prawdziwych tikach w MT5.
Tik
Pojedyncza zmiana ceny. Backtest “na tikach” jest dokładniejszy niż na świecach M1 (OHLC), ale trwa dłużej. W testerze: tryb “Każdy tik na podstawie realnych ticków”.
Top 10 wyników
Tabela dziesięciu najlepszych wierszy optymalizacji z inputami, zyskiem, spadkiem kapitału i liczbą transakcji. Robię ją po każdej optymalizacji, bo pojedynczy najlepszy wiersz bywa szumem.
Trailing po swingach
Przesuwanie stop lossu za ostatni potwierdzony dołek (long) lub szczyt (short), np. dwie świece z każdej strony, tylko w stronę zysku.
Trailing stop
Przesuwanie stop lossa za ceną, żeby zabezpieczyć część zysku. To coś innego niż drawdown trailing.
Tryb portable
Sposób uruchomienia MT5 (przełącznik /portable), w którym terminal trzyma wszystkie dane w swoim folderze zamiast w profilu użytkownika Windows. Ułatwia kopie i kilka terminali na jednym komputerze.
Tryb /portable
Uruchomienie MT5 z przełącznikiem /portable: program, dane, boty i ustawienia leżą w jednym folderze zamiast w profilu użytkownika Windows.
Tryb take profitu
Sposób wyznaczenia celu pozycji w bocie: poziom z rynku (ekstremum dnia lub tygodnia), stała wielokrotność ryzyka (RR) albo brak TP, gdzie pozycję zamyka SL, sygnał lub godzina.
Tryb wypełnienia (filling mode)
Sposób realizacji zlecenia wymagany przez brokera dla danego symbolu, np. FOK albo IOC. Zlecenie wysłane w trybie, którego symbol nie obsługuje, serwer odrzuca.
Twardy stop awaryjny
Odległy stop loss ustawiony u brokera (np. 3-4 R od wejścia) jako ostatnia ochrona na wypadek awarii bota, internetu albo luki cenowej.
Typy wypełnienia (FOK, IOC, Return)
Sposób, w jaki serwer ma potraktować zlecenie, gdy nie ma pełnej ilości po żądanej cenie: FOK wypełnia całość albo nic, IOC wypełnia, ile się da, i anuluje resztę, Return zostawia resztę na rynku. Nieobsługiwany tryb daje błąd 10030.
UAC
Okno systemu Windows z prośbą o zgodę na podniesienie uprawnień. Aktualizator MT5 czeka na nie, blokując automatyczne testy.
Udział wygranych (win rate)
Procent transakcji zakończonych zyskiem. Sam nie mówi, czy bot zarabia: 35% wygranych przy zysku 3R na wygranej daje zysk, 70% przy małych wygranych i dużych stratach może dawać stratę.
UTF-16
Kodowanie tekstu po dwa bajty na znak; git traktuje taki plik kodu jako binarny, dlatego kod MQL5 trzymam w UTF-8.
VPS
Wynajęty komputer w serwerowni, włączony całą dobę, na którym pracują terminale MT5 z botami. Zastępuje domowy komputer, ale tak samo wymaga pilnowania restartów i aktualizacji.
Wielkość kontraktu (contract size)
Liczba jednostek instrumentu stojąca za jednym lotem, zapisana w specyfikacji symbolu. Różni się między symbolami i brokerami.
Wirtualny stop loss
Poziom stopu znany tylko botowi: u brokera stop wynosi zero, a pozycja jest zamykana po zamknięciu świecy wybranego interwału za poziomem. Knoty jej nie wybijają, ale strata może przekroczyć 1 R.
Własne kryterium optymalizacji (Custom max)
Tryb Testera MT5, w którym optymalizacja maksymalizuje liczbę zwróconą przez funkcję bota po teście, np. wynik symulacji challenge’u.
Wolny margin
Equity minus margin zajęty przez otwarte pozycje. Jego spadek poniżej poziomu ustalonego przez brokera prowadzi do ostrzeżenia, a niżej do zamknięcia pozycji (stop out).
Wyjście czasowe
Reguła bota zamykająca każdą otwartą pozycję o stałej godzinie czasu serwera, niezależnie od ceny.
Zakres otwarcia (opening range)
Najwyższa i najniższa cena z pierwszych minut sesji, np. z pierwszej świecy M15 po otwarciu giełdy w Nowym Jorku. Strategie ORB (opening range breakout) grają wybicie ceny poza ten zakres.
Zamknięcie czasowe
Ustawienie bota, które zamyka pozycje o stałej godzinie, np. przed końcem sesji albo w piątek przed weekendem, niezależnie od wyniku.
Zlecenie limit
Zlecenie wejścia po cenie równej lub lepszej niż zadana. W odróżnieniu od rynkowego nie daje gwarancji wypełnienia, ale eliminuje poślizg.
Zlecenie oczekujące (pending)
Zlecenie stop albo limit zapisane na serwerze brokera, które otworzy pozycję, gdy cena dojdzie do wskazanego poziomu. Wypełnia się bez udziału bota, także gdy terminal jest wyłączony.
Zmienna globalna terminala
Wartość zapisywana przez bota w terminalu MT5, która zostaje po restarcie bota. Na dysk trafia dopiero przy zamknięciu terminala, więc po awarii zasilania może zniknąć.
Zniesienie Fibonacciego
Poziom cofnięcia liczony jako część wcześniejszego ruchu, np. 50% to połowa drogi między początkiem i końcem ruchu. Boty używają go jako ceny wejścia po wybiciu.
Zysk do ryzyka (RR)
Stosunek planowanego zysku do planowanej straty w transakcji. 2:1 oznacza take profit dwa razy dalej od wejścia niż stop loss, czyli wygraną 2R.