Dane z innego brokera do testu bota: kiedy ma to sens, a kiedy fałszuje wynik
W skrócie: Tester używa historii serwera, na którym jestem zalogowany. Konto prop często ma tylko rok czy dwa tików, a inny broker potrafi mieć ich osiem. Test na cudzych danych jest dobry do pytania “czy pomysł w ogóle działa na dłuższej historii”, ale nie zastępuje testu na danych brokera, na którym bot ma pracować. Ostatnie słowo ma zawsze ten drugi.
Dlaczego w ogóle o tym myślę
Z moich zestawień tego, co terminale mają pobrane: Darwinex ma tiki indeksu Nasdaq od stycznia 2018 roku (ponad dwa gigabajty), a prop firmy zwykle tylko rok lub dwa wstecz (złoto u jednego z nich od stycznia 2024, u innych od kwietnia i listopada 2024). Zastrzeżenie: to dane, które terminal już pobrał, nie maksimum, jakie udostępnia broker. Przy takiej różnicy kuszące jest, żeby badać pomysł na ośmiu latach z jednego brokera, a wdrażać na innym.
Kiedy ma sens
- Pytanie o pomysł, nie o wynik w dolarach. Czy strategia ma przewagę w kilku reżimach rynku, nie tylko w ostatnim roku.
- Instrument jest ten sam. Nasdaq jako NDX100, NAS100 albo USTEC to ten sam rynek pod inną nazwą, więc logikę da się porównać, o ile dopasuję symbole i sesje.
- Godziny handlu i czas serwera są dopasowane. Przed testem sprawdzam, kiedy zaczyna się dzień u źródła danych.
Kiedy wynik jest fałszywy
- Inny spread i koszt. Konto, na którym bot ma pracować, ma inny spread. Wynik z cudzego trzeba przeliczyć na jego koszty.
- Inne świece dobowe. Brokerzy liczą dzień od innej godziny, więc D1 i filtry dzienne dają inne sygnały.
- Zły czas w danych. W jednym z rejestrów mam przypadek złota, gdzie przez około rok i dwa miesiące czas świec był przesunięty o godzinę względem reszty (bez końca w kodzie bota, tylko w danych). Test godzinowy na takim pliku pokazuje zupełnie inny wzorzec sesji.
- Błędne tiki. Każdy serwer ma własne, patrz rejestr błędnych tików.
- Jakość tików. Generowane tiki różnią się od prawdziwych, o czym piszę w artykule o OHLC i tikach.
Jak postępuję
- Pomysł badam na najdłuższej historii dostępnej u któregokolwiek brokera, na wybranym przeze mnie okresie.
- Jeśli wynik jest obiecujący, powtarzam test na brokerze docelowym na jego własnych danych, choćby krótszych.
- Porównuję oba wyniki: kierunek powinien się zgadzać, dolary nie muszą.
- Dopiero wtedy ustalam ustawienia na brokerze docelowym, z jego spreadem i jego sesjami.
Jeśli kierunek nie zgadza się na własnych danych, wierzę własnym, bo to na nich bot będzie handlował.
Checklista
- Czy ten sam instrument, pod inną nazwą, jest naprawdę tym samym instrumentem?
- Czy dopasowałem godziny sesji i czas serwera?
- Czy sprawdziłem czas świec w pliku źródłowym (czy początek tygodnia jest tam, gdzie powinien)?
- Czy koszty (spread, prowizja) są przeliczone na konto docelowe?
- Czy powtórzyłem test na danych brokera docelowego?
- Czy traktuję wynik z cudzych danych tylko jako wskazówkę?
Powiązane
- Ile miejsca zajmują tiki i świece i jak sprawdzić dane na dysku
- Nasdaq i Dow w MT5: nazwy symboli i historia u brokerów
- Złoto w MT5: kto ma najdłuższą historię
- Real różni się od testu bez przyczyny w kodzie: checklista danych
- OHLC kontra prawdziwe tiki
- Pojęcia: słowniczek, skorowidz
Ostrzeżenie: artykuł ma charakter edukacyjny i nie jest poradą inwestycyjną. Wyniki z przeszłości nie gwarantują przyszłych. Handel na rynkach finansowych wiąże się z ryzykiem utraty kapitału.