Wskaźniki na TradingView w Pine Script: wskaźnik, strategia i alerty
W skrócie: na TradingView ten sam pomysł można zapisać na dwa sposoby: jako wskaźnik (rysuje strzałki i wysyła alerty) albo jako strategię (otwiera transakcje i daje raport). Wskaźnik jest szybszy do sprawdzenia na wykresie, strategia daje liczby, ale ma własne domyślne założenia, które mocno różnią się od mojego Testera w MT5. Dlatego wynik z TradingView traktuję jako szkic, a nie jako dowód.
Dwa pliki do jednej logiki
Dla jednej logiki (kanał SMA z High i Low, EMA, Parabolic SAR, potwierdzenie z wyższego interwału) mam w repo dwa pliki Pine. Pierwszy to wskaźnik: rysuje linie, strzałki BUY i SELL, znaczniki wyjść (SL, TP, powrót do kanału) i ma gotowe warunki alertów. Drugi to strategia z tą samą logiką, ale z transakcjami i raportem Strategy Tester platformy. Komentarz w nagłówku mówi to wprost: logika jest wspólna, strategia dodaje tylko wykonanie.
Praktyka: logikę sygnału piszę raz we wskaźniku, a strategię dodaję dopiero, gdy wykres wygląda sensownie. Jeśli oba pliki zaczną się rozjeżdżać, wynik strategii nie opisuje już strzałek, które widzisz.
Co robi wskaźnik
- Strzałki rysuje funkcja znacznika w miejscu świecy (nad lub pod nią). Strzałka powinna powstawać tylko na zamkniętej świecy, inaczej znika i wraca w trakcie jej trwania.
- Alerty to osobna deklaracja warunku z komunikatem, do którego można wstawić symbol i interwał. Alert musisz jeszcze utworzyć w TradingView ręcznie, kod go nie włącza.
- Godziny wejść mają własną strefę czasową, wybieraną w ustawieniach. Przy porównaniu z MT5 pamiętaj o czasie serwera brokera (zmiana czasu USA i Europy).
- Wyższy interwał pobierasz specjalną funkcją i musisz wziąć wartość zamkniętej świecy, inaczej wskaźnik zmienia przeszłość (repaint). Opis tego problemu przy przenoszeniu do MQL5 jest w artykule Pine Script do MQL5.
Co zmienia strategia
Strategia ma kilka domyślnych założeń, które trzeba przeczytać w nagłówku, zanim zaufasz raportowi:
| Ustawienie w moim pliku | Skutek |
|---|---|
| kapitał początkowy 10 000 | raport w tej walucie, bez skalowania z ryzykiem w USD |
| wielkość: 10% kapitału | pozycja nie wynika z odległości SL, więc ryzyko jest inne niż w moich botach |
| prowizja 0 | wynik bez kosztów (spread, prowizja) |
| wejście na otwarciu następnej świecy | sygnał na zamkniętej świecy, SL i TP liczone od jej zamknięcia |
| bez pyramidingu | jedna pozycja naraz |
Z tych powodów wynik strategii z TradingView nie jest porównywalny z Testerem, w którym lot wynika z ryzyka w dolarach i odległości SL (wzór na lot), a koszty pochodzą od brokera (spread w backteście).
Jak z tego korzystam
- Pomysł rysuję we wskaźniku Pine i oceniam sygnały okiem na kilku wykresach.
- Jeśli ma sens, przenoszę wskaźnik do MQL5 i porównuję listę strzałek.
- Wynik oceniam dopiero w Testerze MT5, na danych brokera, z prawdziwym lotem i kosztami.
Raport strategii z TradingView zostawiam tylko jako orientację, czy pomysł w ogóle ma przewagę.
[DO UZUPEŁNIENIA: czy publikujesz wskaźniki Pine publicznie (konto, biblioteka) i jak z nich korzystają odbiorcy]
Checklista
- logika sygnału w jednym miejscu, wskaźnik i strategia z tego samego kodu,
- sygnał tylko na zamkniętej świecy,
- wyższy interwał z zamkniętej świecy,
- strefa godzin ustawiona jak serwer brokera,
- alerty utworzone w TradingView, nie tylko zadeklarowane w kodzie,
- prowizja, wielkość pozycji i kapitał w strategii przeczytane przed oceną wyniku,
- ostateczny test w Testerze MT5.
Powiązane
- Przeniesienie wskaźnika z Pine Script do MQL5
- AI pisze bota MT5: co działa, a co trzeba pilnować
- Różnice Tester i live w kodzie bota
- Pojęcia z artykułu: słowniczek, skorowidz
Ostrzeżenie: handel CFD i forex wiąże się z wysokim ryzykiem utraty kapitału. Artykuł ma charakter edukacyjny i nie jest rekomendacją inwestycyjną.