Martingale cBot¶
Przegląd strategii ¶
Martingale cBot to robot handlowy, który implementuje strategię Martingale, klasyczny system obstawiania zaadaptowany na rynki finansowe. Odkryta przez francuskich matematyków w XVIII wieku strategia Martingale szybko stała się popularna wśród graczy w kasynach.
Przykład
Aby zrozumieć mechanikę strategii Martingale, rozważmy scenariusz, w którym rzuca się monetą w grze orzeł czy reszka, zaczynając od zakładu o wartości 1 USD.
Moneta ma 50/50 szans na wypadnięcie orła lub reszki. Każde rzucenie monetą jest niezależne - wynik jednego rzutu nie wpływa na następny.
Jeśli zakład zostanie podwojony po każdej przegranej, ewentualna wygrana odzyska wszystkie straty, a także przyniesie zysk w wysokości 1 USD.
Tworzenie cBota ¶
Dowiedz się, jak tworzyć cBoty, używając C# lub Pythona, w naszych szczegółowych przewodnikach.
Kod Martingale cBot jest dostępny w naszych publicznych repozytoriach C# i Python. Ten sam kod jest dostępny jako szablon w kreatorze tworzenia algorytmów w aplikacji cTrader Windows lub Mac, lub możesz po prostu skopiować i użyć poniższego fragmentu kodu:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | |
Integracja wskaźnika ¶
Martingale cBot nie używa żadnego modelu predykcyjnego ani wskaźnika technicznego do prognozowania kierunku rynku. Zamiast tego opiera się na losowej szansie przy podejmowaniu decyzji o kupnie i sprzedaży, co skutkuje nieprzewidywalnymi wynikami (zysk lub strata) dla każdej transakcji.
Logika ¶
Losowy kierunek transakcji ¶
-
cBot losowo wybiera, czy złożyć zlecenie kupna, czy sprzedaży za pomocą metody
GetRandomTradeType(). -
Metoda
ExecuteOrder()składa zlecenie rynkowe z wolumenem, stop loss i take profit zdefiniowanymi w parametrach.
Mechanizm Martingale ¶
- cBot wykrywa zamknięcie pozycji za pomocą procedury obsługi zdarzeń
OnPositionsClosed(). - Jeśli zamknięta pozycja przynosi zysk, cBot resetuje się i otwiera nową transakcję z początkowym rozmiarem lota i losowym kierunkiem transakcji.
- Jeśli zamknięta pozycja przynosi stratę, cBot podwaja wolumen następnej transakcji, ale zachowuje ten sam kierunek transakcji (kupno lub sprzedaż) co poprzednia transakcja.
Zarządzanie ryzykiem ¶
- cBot opiera się na strategii Martingale polegającej na podwajaniu wielkości pozycji po każdej przegranej transakcji, aby odzyskać straty i osiągnąć zysk po udanej transakcji.
- Domyślne wartości stop-loss i take-profit mają na celu zrównoważenie ryzyka i zysku w każdej transakcji.
Wykonanie i zakończenie ¶
Jeśli cBot napotka błąd z powodu niewystarczających środków (NoMoney), cBot przestaje próbować zawierać transakcje.
Parametry ¶
| Parametr | Jednostka | Definicja | Wskazówki |
|---|---|---|---|
| Ilość | Lot | Wolumen (pierwszej) transakcji w każdym cyklu Martingale. | Ustawienie wysokiej wartości zwiększa wielkość pozycji dla pierwszej transakcji. W konsekwencji, po zakończeniu udanego cyklu transakcji, zysk będzie duży. Jednak w przypadku przegranej transakcji wielkość następnej transakcji podwoi się, co wykładniczo zwiększa ryzyko. Ustawienie niskiej wartości zmniejsza wielkość pozycji dla pierwszej transakcji. W konsekwencji, po zakończeniu udanego cyklu transakcji, zysk będzie niewielki, ale ekspozycja jest zminimalizowana podczas przedłużającej się serii strat. |
| Stop loss | Pip | Odległość od ceny otwarcia, przy której przegrana transakcja zostanie automatycznie zamknięta. | Duży stop loss pozwala rynkowi poruszać się dalej przeciwko transakcji przed jej zamknięciem. Może to zapobiec przedwczesnemu zamykaniu transakcji podczas tymczasowych wahań, ale naraża Twoje konto na większe straty, jeśli rynek będzie nadal poruszał się w niewłaściwym kierunku. Mały stop loss zamknie stratne transakcje szybciej, zmniejszając potencjalną stratę na transakcję. Zwiększa to jednak również ryzyko zbyt wczesnego zamknięcia pozycji z powodu krótkoterminowej zmienności, co częściej wyzwala cykl podwajania Martingale. |
| Take profit | Pip | Odległość od ceny otwarcia, przy której transakcja zostanie zamknięta po osiągnięciu określonego poziomu zysku. | Ustawienie wysokiej wartości Take profit pozwala uzyskać duże zyski, gdy rynek porusza się znacząco na Twoją korzyść. Oznacza to jednak również, że zamknięcie transakcji może potrwać dłużej lub mogą one odwrócić się przed osiągnięciem docelowego zysku, co może skutkować utraconymi możliwościami. Mniejszy poziom Take profit prowadzi do szybszego zamykania transakcji, zabezpieczając mniejsze, ale częstsze zyski. Takie podejście może zmniejszyć prawdopodobieństwo utraty zyskownych możliwości, ale ogranicza potencjał wzrostu każdej transakcji. |
Aplikacja ¶
Rynki ograniczone zakresem lub boczne ¶
Martingale cBot sprawdza się doskonale na rynkach poruszających się bocznie, gdzie nie ma dominującego trendu wzrostowego ani spadkowego. Na rynkach w konsolidacji ceny wahają się między poziomami wsparcia i oporu, co sprawia, że cBot prawdopodobnie szybko odzyska straty po stratnych transakcjach.
Przypadek użycia
Rozważ scenariusz, w którym EURUSD handluje w wąskim zakresie od 1,1000 do 1,1050 przez kilka dni. Martingale cBot może wykorzystać odbijanie się ceny między tymi poziomami, ostatecznie osiągając zyski, gdy rynek odwróci się po niewielkich cofnięciach.
Najlepsza praktyka
Używaj cBota na symbolach z wyraźnymi, dobrze zdefiniowanymi ruchami cen, gdzie rynek oscyluje w przewidywalny sposób. Główne pary walutowe podczas spokojnych godzin handlowych są dobrym przykładem.
Rynki o niskiej zmienności ¶
cBot może być używany w warunkach niskiej zmienności, gdzie ruchy cen są mniej skłonne do wyzwalania kolejnych stop lossów, zapobiegając szybkiemu wzrostowi pozycji. Takie warunki pozwalają strategii Martingale działać dobrze dzięki stopniowym odwróceniom cen.
Przypadek użycia
Jeśli handlujesz towarem takim jak złoto (XAUUSD) w okresie niskiej aktywności informacyjnej, cena może pozostać w wąskim zakresie. cBot może skorzystać z tego środowiska, ponieważ ceny są bardziej skłonne do powrotu w ramach krótkich ruchów cenowych, umożliwiając zyskowne transakcje przy niższym ryzyku dużych spadków.
Najlepsza praktyka
Unikaj uruchamiania cBota w okresach, gdy spodziewane są istotne wydarzenia gospodarcze lub publikacje wiadomości, ponieważ powodują one wysoką zmienność.
Aktywa powracające do średniej ¶
Symbole, które często powracają do średniego poziomu ceny, są dobrze dopasowane do Martingale cBot, ponieważ często doświadczają odwróceń przed utworzeniem długoterminowego trendu. W takich warunkach cBot może szybciej odzyskać straty i osiągnąć zyski, zwiększając wielkość pozycji po stratach.
Przypadek użycia
Rozważ handel walutami powracającymi do średniej, takimi jak EURGBP. Te typy symboli często powracają do swojej średniej ceny po tymczasowych wzrostach lub spadkach, zapewniając idealne warunki i możliwości dla cBota do zamykania stratnych pozycji z zyskiem po powrocie ceny.
Najlepsza praktyka
Unikaj używania cBota na silnych, przedłużających się rynkach trendowych, gdzie ceny mogą poruszać się w jednym kierunku przez długi okres. Ryzyko dużych strat przed odzyskaniem jest wyższe na takich rynkach.
Podsumowanie ¶
Martingale cBot to zautomatyzowany algorytm handlowy, który implementuje popularną strategię Martingale. Ten cBot opiera swoje decyzje kupna i sprzedaży wyłącznie na przypadku, rezygnując z modeli predykcyjnych lub wskaźników technicznych, co prowadzi do niepewnych wyników każdej transakcji.
Działając przy założeniu, że rynki ostatecznie będą sprzyjać traderowi, Martingale cBot podwaja wielkość transakcji po stratach, aby odzyskać je jedną zyskowną transakcją. Ten cBot może być skuteczny na określonych rynkach, szczególnie gdy użytkownicy są dobrze poinformowani o ryzykach i mają wystarczające zasoby, aby wytrzymać przedłużające się spadki.