Plugin bossaAB – automatyczne zlecenia w AmiBrokerze

„Wprowadzając możliwość automatycznego przekazywania zleceń na GPW z aplikacji AmiBroker wyszliśmy naprzeciw oczekiwaniom naszych aktywnych Klientów”.  Formułka stara i zgrana ale co napisać jeśli to prawda?

Wystarczy zajrzeć  do archiwum naszych blogów. Już w 2008 roku przy okazji udostępnienia pluginu z notowaniami do AmiBrokera,  pojawiły się komentarze zgłaszające zapotrzebowanie na api oraz cytując użytkownika GiełduGiełdu „moduł do automatycznego składania zleceń (np. wchodzącego w skład Amibrokera)”. Później w trakcie badania potrzeb naszych inwestorów okazało się, że API i moduły do automatyzacji zleceń są w czołówce „upragnionych zmian”.

Trochę to trwało ale w końcu w 2010 roku udostępniliśmy interfejs programowania aplikacji czyli w skrócie bossaAPI. Później  pierwsze aplikacje, które korzystają z bossaAPI (bossaTrader i bossaTraderPRO), aż wreszcie przyszedł czas na „moduł do automatycznego składania zleceń”.

Od 4.10.2011 r. można już chrupać orzeszki obserwując, jak zachowuje się nasza strategia, przekazując automatycznie zlecenia na GPW z AmiBrokera. Dodając łyżeczkę miodu, Plugin bossaAB, udostępnia również możliwość manualnego przekazywania zleceń, bez potrzeby używania automatów.


Dla kogo przeznaczony jest nasz plugin bossaAB?

Przede wszystkim dla osób, które mają do czynienia z językiem AFL. Znają jego podstawy na tyle, ażeby napisać najprostszy „system” np. dot. przecięć średnich kroczących:

srednia1 = 15;
srednia2 = 45;

Buy=Cross( MA(Close,srednia2) , MA(Close,srednia1) );
Sell=Cross( MA(Close,srednia1) , MA(Close,srednia2) );

Oczywiście nic nie stoi na przeszkodzie, ażeby posłużyć się jednym z wielu przykładów dostępnych w sieci. Aczkolwiek, jakby napisał Kathay – lepiej znać swoje narzędzie od środka, rozumieć go i być z nim w zgodzie.


Jak to wszystko działa ?

Plugin bossaAB rozszerza funkcjonalność języka AFL w AmiBrokerze o własne funkcje pozwalające na przekazywanie zleceń za pomocą bossaAPI na GPW. Jednakże, aby z nich skorzystać należy je ręcznie dopisać do naszego systemu.

Funkcja nolBuy przekazuje zlecenia kupna, np.:
nolBuy(„PGNIG”,””,1,0,0); – zlecenie kupna 1 szt. PGNiG z limitem PKC.

Funkcja nolSell zlecenia sprzedaży, np.:
nolBuy(„PGNIG”,””,1,0,0); – zlecenie sprzedaży 1 szt. PGNiG z limitem PKC.

 

Następnie przygotowaną strategię wystarczy jednym ruchem przeciągnąć na określony wykres.

film_bossaAB.png

 

Okno interfejsu graficznego pozwala na zarządzanie autotradingiem dla wybranych walorów oraz manualne składanie zleceń.

 

Możemy wyobrazić sobie sytuację w której mamy włączony autotrading dla wszystkich walorów na naszym rachunku, a jednocześnie istnieje potrzeba modyfikacji systemu dla jednego w walorów. Jak sobie w takiej sytuacji poradzić? Najprościej –  wyłączyć autotrading dla takiego waloru, pozostawiając sobie możliwość przekazania zlecenia ręcznie.

 

Po dokonanej modyfikacji w AFL, jednym ruchem, możemy przywrócić nasz automat do działania.

 

Mam system napisany w języku AFL, tylko nie wiem jak połączyć to wszystko z pluginem bossaAB?

Nasza propozycja zarówno dla początkujących jak i zaawansowanych użytkowników to:

skorzystać z aplikacji bossaABKreator.

 

Zadaniem aplikacji bossaABKreator jest przede wszystkim wspomaganie tworzenia kodu AFL, który korzystając z funkcji pluginu bossaAB, pozwoli na automatyczne przekazywanie zleceń na GPW.

Początkujący użytkownicy, dzięki kreatorowi poczują się jak „ryba w wodzie”, natomiast zaawansowani, dzięki komentarzom do generowanego kodu AFL, będą mogli zapoznać się w szczegółach ze sposobami wykorzystania pluginu bossaAB.

 

Co ciekawego oferuje bossaABKreator, skoro wszystko można zdefiniować samodzielnie w kodzie AFL?

Programiści, na co dzień zajmujący się tworzeniem systemów transakcyjnych w językach AFL czy MQL, z większością wyzwań poradzą sobie sami.

Dla  osób stawiających pierwsze kroki w AFL, bossaABKreator oferuje gotowe szablony związane z np.:

  • możliwością automatycznego odczytania waloru z wykresu,
  • automatycznie wybieranym numerem rachunku maklerskiego,
  • zabezpieczeniami tworzonego systemu transakcyjnego,
  • zarządzaniem wielkością pozycji,
  • określeniem limitów zleceń.

Proces budowania kodu AFL podzielony jest na etapy (kreator), co daje większą przejrzystość i ułatwia korzystanie z aplikacji. W każdym momencie można zapisać edytowany projekt by powrócić do niego w innej chwili.

 

Co to jest zabezpieczenie systemu transakcyjnego?

bossaABKreator pozwala na wprowadzenie dwóch rodzajów zabezpieczeń odnośnie zleceń, transakcji oraz interwału, mianowicie:

 

  • Następna transakcja odwrotna do poprzedniej – Tutaj w bardzo prosty sposób możemy określić, iż transakcje mają być realizowane naprzemiennie, czyli raz kupujemy, a następnie sprzedajemy.
  • Tylko jedno zlecenie w świeczce – Chyba każdy z praktyki wie, iż sygnał w danym interwale może zostać wygenerowany parę razy, szczególnie przy bardzo szybkich ruchach i dużej zmienności. Tym samym efektywność naszego systemu transakcyjnego mogłaby daleko odbiegać od oczekiwań. Ww. zabezpieczenie pozwala na przekazanie tylko jednego zlecenia w danym interwale po wystąpieniu sygnału kupna lub sprzedaży.
  • Interwał – To szczególne zabezpieczenie dla tych, którzy lubią często zmieniać interwały na wykresach. Po podłączeniu automatu mogłoby powodować niespodziewane transakcje (system przecięcia średnich godzinowych po przełączeniu na tiki stanie się systemem przecięcia średnich tikowych).
    Ustawienie na sztywno interwału w tym parametrze np. 5 min. zabezpiecza nas przed takimi niespodziankami.  Od teraz możemy oglądać wykres pod dowolnym kątem 😉 a system będzie pilnował zdefiniowanych sygnałów tylko dla wybranego interwału.

 

Czy jest możliwe użycie różnych strategii na różnych wykresach ?

Tak ale z jednym warunkiem. Każdy wykres musi posiadać unikalny identyfikator, tzw ChartID. Oznacza to, iż w AmiBrokerze nie możemy używać opcji [Default chart], gdyż nadaje ona wszystkim tworzonym wykresom to samo ChartID.

Każdy wykres powinien być tworzony za pomocą opcji [Blank Chart], a następnie uzupełniany o np. element [Basic Charts] -> [Price(all in one)].

 

 

Dlaczego muszę mieć uruchomionych tak dużo aplikacji?

Też nad tym bolejemy ale na tą chwilę żaden z dostawców nie jest idealny czytaj trzeba łączyć produkty kilku z nich. Do pełnego wykorzystania pluginu bossaAB potrzebujemy zatem uruchomionej aplikacji Notowania3PRO, która zasila AmiBrokera notowaniami oraz aplikację bossaNOL3, gdzie wykorzystywane jest bossaAPI. Oczywiście nie należy zapominać o zalogowaniu się na rachunek maklerski, inaczej nie będzie gdzie przekazywać zleceń.

Uprzedzając pytania – kiedy będzie inaczej? Jak tylko okaże się, że jest wystarczająca liczba chętnych do używania automatów. Być może już liczba uczestników Rankingu Automatów w konkursie Forex bossafx, wskaże, że jest to kierunek wart inwestycji?

Póki co dziękujemy testerom i autorowi oprogramowania za wspólny wysiłek. A wszystkich inwestorów zapraszamy do obejrzenia co Plugin bossaAB oraz bossaABKreator potrafi. Jak zawsze wszelka informacja zwrotna mile widziana 😉

Tych którzy wolą zobaczyć plugin w akcji, zapraszamy do śledzenia strony szkolenia online, gdzie w ciągu tygodnia będzie można zapisać się na webinar omawiający możliwości Pluginu bossaAB i aplikacji bossaABKreator.

4 Komentarzy

  1. vinc

    http://www.technologyreview.com/blog/arxiv/27222/

    jesteście zsynchronizowani? jak cykady? tylko wtedy macie wiekszą szansę:)
    bo jak nie to żaden plugin wam nie pomoże..

  2. Mariposa

    Brawo bossa!

    Na czym można grać – na futures, walutach ?

    Pozdrawiam
    M

  3. mwojciechowski

    @Mariposa
    Na wszystkich instrumentach notowanych na GPW.
    Do instrumentów forexowych (CFD na waluty, towary, indeksy) używa się MQL’a, który jest dostępny na platformie bossafx .
    Na stronie Automatyzacja handlu pokazujemy sporo przykładów jak to zrobić.

  4. ZKARWAT

    Proszę o kontakt na mój email Pana Remigiusza.

Skomentuj Mariposa Anuluj pisanie odpowiedzi

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *


Opinie, założenia i przewidywania wyrażone w materiale należą do autora publikacji i nie muszą reprezentować poglądów DM BOŚ S.A. Informacje i dane zawarte w niniejszym materiale są udostępniane wyłącznie w celach informacyjnych i edukacyjnych oraz nie mogą stanowić podstawy do podjęcia decyzji inwestycyjnej. Nie należy traktować ich jako rekomendacji inwestowania w jakiekolwiek instrumenty finansowe lub formy doradztwa inwestycyjnego. DM BOŚ S.A. nie udziela gwarancji dokładności, aktualności oraz kompletności niniejszych informacji. Zaleca się przeprowadzenie we własnym zakresie niezależnego przeglądu informacji z niniejszego materiału.

Niezależnie, DM BOŚ S.A. zwraca uwagę, że inwestowanie w instrumenty finansowe wiąże się z ryzykiem utraty części lub całości zainwestowanych środków. Podjęcie decyzji inwestycyjnej powinno nastąpić po pełnym zrozumieniu potencjalnych ryzyk i korzyści związanych z danym instrumentem finansowym oraz rodzajem transakcji. Indywidualna stopa zwrotu klienta nie jest tożsama z wynikiem inwestycyjnym danego instrumentu finansowego i jest uzależniona od dnia nabycia i sprzedaży konkretnego instrumentu finansowego oraz od poziomu pobranych opłat i poniesionych kosztów. Opodatkowanie dochodów z inwestycji zależy od indywidualnej sytuacji każdego klienta i może ulec zmianie w przyszłości. W przypadku gdy materiał zawiera wyniki osiągnięte w przeszłości, to nie należy ich traktować jako pewnego wskaźnika na przyszłość. W przypadku gdy materiał zawiera wzmiankę lub odniesienie do symulacji wyników osiągniętych w przeszłości, to nie należy ich traktować jako pewnego wskaźnika przyszłych wyników. Więcej informacji o instrumentach finansowych i ryzyku z nimi związanym znajduje się w serwisie bossa.pl w części MIFID: Materiały informacyjne MiFID -> Ogólny opis istoty instrumentów finansowych oraz ryzyka związanego z inwestowaniem w instrumenty finansowe.

Proszę podać wartość CAPTCHA: *