Język AFL w Amibrokerze jest potężnym narzędziem konstruowania systemów inwestycyjnych. Można też przeprowadzić bardzo rozbudowane testy zanim zainwestuje się prawdziwe pieniądze. Jednak te kilka błędów może spowodować, że wszystkie testy będą przekłamane, a Twoja inwestycja będzie zagrożona. Zobacz jak się przed tym uchronić.

Błąd szósty polega na braku płynności waloru. Możesz go popełnić przy testowaniu na danych giełdowych za pomocą dowolnego programu. Choć trzeba przyznać, że niektóre z nich zabezpieczą Cię lepiej, inne gorzej. Na szczęście Amibroker należy do tych pierwszych. Jednak nawet przy jego użyciu dużo zależy od Ciebie.

W kolejnych etapach tworzenia systemu inwestycyjnego najczęściej zaczyna się jego konstruowanie od zasad wejścia w rynek i wyjścia z niego. Dobra praktyka twórcy jest taka, aby dokładał on i doskonalił  kolejne składowe dopiero po skonstruowaniu poprzednich.

Tak więc na początku najczęściej brakuje zarządzania kapitałem. Dla instrumentów z dźwignią zazwyczaj również pomija się ją i pierwsze testy przeprowadza się bezpośrednio na punktach lub pisach.

Nadchodzi jednak moment w którym nad zarządzaniem kapitałem należy pomyśleć. Dla wspomnianych walorów z dźwignią przejdziesz na obliczenia w prawdziwych pieniądzach. I tu kryje się pułapka. Bowiem jeżeli nie przypilnujesz, wyniki testu mogą wyjść całkowicie niezgodne z rzeczywistymi możliwościami jakie na rynku istniały.

Jeżeli test zaczynasz np. z kapitałem 100 tys. zł i w momencie zawierania transakcji Twój system przewiduje zainwestowanie 50% posiadanych pieniędzy, możesz mieć problem. Wystarczy, że walor na którym testujesz ma średni obrót na sesję 20 tys. zł. Oczywiście przy braku kontroli program przyjmie zakup za 50 tys. zł i nie zaprotestuje. Jednak ten wynik jest już oderwany od rzeczywistości. Nawet gdyby średni obrót był równy potrzebnym 50 tys. zł, to i tak nie możesz zakładać, że jednego dnia rynek będzie należał wyłącznie do Ciebie.

Jak poradzić sobie z tym problemem? Metody jak zwykle są dwie.

Po pierwsze możesz przewidzieć i zaprogramować taką sytuację w kodzie AFL. Jednak jest to rozwiązanie trudniejsze i nie do końca skutecznie.

Jednak drugi sposób jest prosty i uniwersalny. Otóż przy zaawansowanych testach które wykonasz Amibrokerem włącz sobie najpierw okienko "Backtester Settings" i tam w zakładce "Portfolio" znajdziesz dwie pozycje.

"Limit Trade size as % of entry bar volume" oznacza Twoje niezbędne ograniczenie inwestycji. Podajesz tu jaki procent wolumenu słupka możesz użyć dla swojej transakcji. Wartość 0 oznacza brak takiego limitu. Natomiast wartości (0;100> dają faktyczne ograniczenie. Sam musisz uznać jak dużym graczem chcesz być na danym walorze, ale zazwyczaj lepiej testować to z wartościami 20% lub mniej.

Dodatkowo jeszcze musisz przypilnować, żeby wyłączone pozostało "Disable trade size limit when bar volume is zero". Jego włączenie spowodowało by bowiem ignorowanie pierwszego warunku dla danych o zerowym obrocie. Jest to potrzebne w specyficznych sytuacjach, ale np. dla polskiej giełdy może jedynie generować błędy.

Licencja: Creative Commons