Automatyzacja tradingu I
Automatyzacja elektronicznego handlu papierami wartościowymi, kontraktami terminowymi, opcjami, czy jakimkolwiek innym instrumentem finansowym jest jeszcze mało popularna w Polsce wśród retail traderów. No może poza tzw. Expert Advisors popularnymi wśród użytkowników MetaTrader’a. W związku z tym ilość bardzo dobrych informacji dostępnych w języku polskim jest ograniczona.
Na poziomie instytucjonalnym automatyzacja wygląda trochę inaczej – jest niejako standardem.
Handel automatyczny, a handel algorytmiczny
Najcześciej mylącym podejściem jest utożsamianie handlu algorytmicznego z handlem automatycznym. Handel algorytmiczny w głównej mierze opiera się na realizacji zleceń rynkowych za pośrednictwem stworzonego algorytmu, który może ale nie musi być zautomatyzowany. Na poziomie retail tradingu szczególnie w Polsce, handel algorytmiczny jest praktycznie nieobecny. Na poziomie instytucjonalnym jest to standard. Zjawisko wykorzystania wskaźników analizy technicznej i algorytmów na poziomie instytucjonalnym zostało oględnie przedstawione w artykule „Czy wskaźniki analizy technicznej działają”.
źródło: Algorithmic trading and Direct Market Access, Barry Johnson
W odróżnieniu od instytucji retail trader jest skazany sam na siebie i swoje umiejętności analityczne, matematyczne, intuicyjne itd. Czyli sam decyduje, czy swoje idee tradingowe należy zautomatyzować, czy też nie. Niemniej jednak wszelkiego rodzaju algorytmy oparte o wskaźniki analizy technicznej / fundamentalnej, dane mikro / makro itd. mogą posłużyć do predykcji przyszłych ruchów cenowych, czy podjęcia decyzji spekulacyjnej. Co w rezultacie może zakończyć się ręcznym lub automatycznym złożeniem zlecenia rynkowego.
Automatyzacja tradingu polega na całkowitym zautomatyzowaniu procesu decyzyjnego i realizacji zleceń rynkowych. Czyli stworzeniu programu wykonującego całą robotę za nas.
Dość częstym i błędnym podejściem jest przekonanie, iż automatyzacja pozwoli na uniknięcie wszystkich psychologicznych pułapek. Jeżeli mamy słabą strategię, a niepowodzenia zrzucamy na „psychikę”, automatyzacja tutaj niewiele pomoże. W świecie programistów jak mantra powtarzane jest „garbage in, garbage out”.
Tym samym bez obiektywnego podejścia do handlu, skuteczna automatyzacja decyzji spekulacyjnych jest praktycznie niemożliwa. Zostało to opisane w poniższych trzech artykułach.
- Obiektywizm vs subiektywizm w tradingu I
- Obiektywizm vs subiektywizm w tradingu II
- Obiektywizm vs subiektywizm w tradingu III
O ile obiektywizm umożliwia wyeliminowanie wielu pułapek psychologicznych, nie jest w stanie wyeliminować strachu związanego z utratą kapitału, gdy strategia wejdzie w okres strat. Także ten czynnik psychologiczny zawsze będzie obecny bez względu na sposób realizacji zleceń.
Wybór platformy i języka programowania
Automatyzację tradingu można zlecieć innej osobie mającej doświadczeniu w programowaniu/skryptowaniu lub samemu zabrać sie za temat. Bez względu, która ścieżka zostanie wybrana należy posiadać dobrze opisaną i przetestowaną strategię.
O przygotowaniach do budowy zyskownej strategi spekulacyjnej powstały cztery artykuły.
- Budujemy zyskowną strategię spekulacyjną I
- Budujemy zyskowną strategię spekulacyjną II
- Budujemy zyskowną strategię spekulacyjną III
- Budujemy zyskowną strategię spekulacyjną IV
W XXI wieku większość platform tradingowych umożliwia zarówno realizację zleceń jak i również tworzenie strategii, modelowanie, czy backtest.
Kartka papieru i długopis – najprostszy sposób na zapis swojej strategii, jej pseudo backtest, forward test itd. Ograniczenia w takim podejściu są oczywiste. Niemniej jednak papierowy zapis strategii można przekazać programiście i sprawdzić wyniki. Od czasu do czasu sam korzystam z tej metody.
Arkusze kalkulacyjne – umiejętność posługiwania się arkuszami kalkulacyjnymi (Microsoft Excel, OpenOffice Calc, Google Spreadsheet) w tradingu jest dużym atutem. Pozwala na chociażby efektywne zarządzanie kapitałem, ryzykiem i jego monitorowanie. Dodatkowo można wykorzystać arkusze kalkukacyjne do backtestu, czy walk forward’u. Arkusze kalkukacyjne w bardzo prosty sposób umożliwiają tworzenie przeróżnych wykresów (statyczne, dynamiczne, interaktywne).
Wielu brokerów oferuje możliwość handlu z poziomu Excel’a za pośrednictwem własnych API.
Arkusze kalkulacyjne oferują szereg możliwości backtestu, wycen jak chociażby symulacje Monte Carlo swoich strategii, czyli „co by sie stało, gdyby przeszłość była inna”.
źródło: Symulacje Monte Carlo jako metoda wyceny opcji, Katarzyna Ziętek-Kwaśniewska
Excel, czy Google Spreadsheet są dla mnie bardzo użyteczne i praktycznie dzień w dzień korzystam z funkcji oferowanych przez arkusze kalkulacyjne. Umiejętność programowania w VBA może zamienić Excel w potężne narzędzie wspomagające trading. Jednak z uwagi na swoją architekturę, jest zbyt wolnym narzędziem do przeprowadzania skomplikowanych testów strategii, czy obliczeń.
W tym zakresie polecam poniższe publikacje
T. Stridstan „Trading Systems and Money Management”
J. Walkenbach „Excel 2010 Power Programming with VBA”
M. Jackson, M. Staunton „Advanced Modelling in Finance using Excel and VBA”
Metatrader – produkt MetaQuotes, który zyskał sobie przychylność wśród retail traderów. Gigantyczna społeczność użytkowników, wsparcie i wiele innych udogodnień. Na potrzeby retail tradingu nadaje się do podstawowych i średnio zaawansowanych strategii. Wadą MT4/MT5 potocznie zwanym „Me too trader” jest jego wolny czas reakcji + dane obarczone błędem przeżywalności. To praktycznie dyskwalifikuje te narzędzie w stratagiach wykorzystujących bardzo niską latencję, czy wysoką częstotliwość realizacji zleceń. Wielu użytkowników MT4/5 nie jest tego świadomych i tym samym backtest’y przeprowadzone na danych obarczonych błędem przeżywalności nie są miarodajne/wiarygodne. Alternatywą jest zaimportowanie danych bez tego błędu jednak tego typu dane wymagają albo nakładu pieniężnego lub czasu (samodzielne przygotowanie danych). Tyczy się to głównie strategii na indeksach giełdowych i ich pochodnych.
Niemniej jednak „Me too trader” + MQL może stanowić świetny wstępniak do automatyzacji i profesjonalnego quant tradingu. Ostatnio widziałem, że chłopcy z Trading Jam Session porzucili XVIII-wieczne metody i sentymenty na rzecz nauki MQL, co mnie bardzo cieszy. W końcu tradingu XXI wieku to modelowanie i analiza szeregów czasowych, a nie jakies pitu pitu o Bóg wie czym….
NinjaTrader – narzędzie stosunkowo proste w obsłudze oferujące zdecydowanie większe możliwości backtestu, handlu aniżeli „Me too trader”. Osobiście nie korzystam z NinjaTrader.
AmiBroker – Platforma Amibrokera i Amibroker Formula Language sprawia, że jest to bardzo profesjonalne narzędzie do tworzenia i testowania swoich strategii, które znalazło uznanie zarówno na poziomie retail tradingu jak i instytucjonalnego. Z AmiBrokera korzystałem po zmianie systemu notowań GPW z WARSET na UTP i udostępnionym przez DM BOŚ – AmiBroker plugin. Mimo, iż wykorzystywany jest autorski język AFL, osoby ze znajomością języka programowania C, nie będa miały problemów z nauką AFL. Pełna licencja AmiBroker to wydatek rzędu 2000 zł. Do automatycznego handlu na GPW za pośrednictewm DM BOŚ jest to dla mnie nr. jeden. Być może istnieją jakieś alternatywy lepsze/gorsze, jednak przyzwyczajenie i znajomość przemawiają za pozostaniem przy tym rozwiązaniu.
MatLab – w 100% profesjonalne narzędzie do tworzenia i testowania strategii spekulacyjnych, modeli rynkowych, statystyki, machine learning, sieci neuronowych i wielu wielu innych kwestii związanych ze spekulacją i tradingiem. Zastosowanie na poziomie instytucjonalnym, akademickim. Z uwagi na koszty licencji, mało popularne wśród retail traderów. Koszt z wszystkimi dodatkami wynosi około 14 tys. zł. Studenci mają za free, więc zawsze można coś pokombinować po znajomych.
R, Python, C/C++ – Gdy w 2012 r. rozpoczynałem przygodę z automatyzacją swojego handlu na FW20, zaciekawiłem się językiem i środowiskiem do obliczeń statystycznych R– R-Project i biblioteką Quantmod – Quantitative Financial Modelling & Trading Framework for R. Język ten okazał sie na tyle przyjazny, iż w zaledwie 8 miesięcy udało się go opanować w stopniu pozwalającym na kodowanie własnych idei. Jest to język na tyle intuicyjny, iż absolutnie każdy jest w stanie się go nauczyć. A bogactwo bibliotek, społeczności, wsparcia sprawi, że użytkownik nie pozostanie sam na polu walki.
Polecane:
R-Bloggers
Gekko Quant – blog, który towarzyszy mi od początku mojej przygody z automatyzacją.
Niemniej to Python i C/C++ wiodą prym wśród handlu automatycznego, algo tradingu i szeroko pojętym researchu. Nauka tych języków programowania nie jest już na tyle łatwa jak w przypadku R. Jednak ich znajomość jest tak jakby kwintesencją wszystkich możliwych dostepnych rozwiązań.
Z racji tego, że Excel, R i Python są mi najbliższe, w kolejnych częściach postaram się opisać w miarę przystępny sposób poszczególne etapy automatyzacji zyskownej strategii spekulacyjnej z wykorzystaniem tych narzędzi.
Pzygotowanie do automatyzacji handlu
Mikrostruktura rynkowa – jej poznanie jest absolutnym minimum przy automatyzacji własnego handlu. Niekiedy brak wiedzy z zakresu mikrostruktury rynkowej może doprowadzić do tragedii portfelowej.
W tym zakresie polecam poniższe publikacje
Barry Johnson „Algorithmic trading and Direct Market Access”
Larry Harris „Trading and Exchanges: Market Microstructure for practitioners”
C.A. Lehalle, S. Laruelle „Market Microstructure in Practice”
Po przeczytaniu tych książek zdobędziemy wiedzę teoretyczną odnośnie mikrostruktury rynkowej, najpopularniejszych algorytmów i poznamy trochę psychologii rynkowej.
W poszukiwaniu ciekawej strategii mozna wykorzystać Internet. Oczywiście jest sporo firm/osób oferujących na swoich stronach internetowych płatne strategie/systemy inwestycyjne, jednak proszę uwierzyć, iż nie różnią się niczym od tych bezpłatnych.
I tak w poszukiwaniu bezpłatnych strategii można odwiedzić:
- Forex Forum Nawigator – Chyba najstarsza i najlepsza polska strona poświęcona rynkowi Forex. Można znaleźć tam wiele ciekawych strategii, które możemy wykorzystać dla siebie.
- Elite Trader – Anglojęzyczne Forum, kopalnia wiedzy, niczym „Snatch” z Bradem Pitem jako kopalnia przekleństw w języku angielskim :-)
Jest to pakiet minimum i pewnie większość osób stawiająca swoje pierwsze kroki wybierze fora internetowe, jednak z czasem przekonają się, że nie zastąpi to dobrej książki.
Wszystko pięknie ładnie, strategia jest i co dalej ? Jak testować algorytm ?
Jak modyfikować/optymalizować ?
Poniższy tutorial może mieć zastosowanie jeżeli nie chcemy korzystać z gotowych rozwiązań – webowych środowisk typu:
Powyższe platformy i ich wykorzystanie przeze mnie, ograniczenia oraz możliwości zostaną przedstawione w kolejnych częściach.
Na samym początku pisałem o języku „R”, Excell. Warto jednak uzbroić się również w możliwość korzystania z systemów z rodziny Linux.
Jeżeli mamy zainstalowane środowisko „R” na naszym Windowsowym komputerze, wypadałoby jeszcze dodać Linuxa. Do tego celu nie trzeba kupować nowego laptopa/desktopa, wystarczy nam środowisko wirtualne.
Uwaga ! Poniższe screeny są z tutoriala opublikowanego w 2013 r. Aktualna wersja Ubuntu to 17.X.. Niemniej jednak kontekst i poszczególne kroki są niezmienione.
W tym celu należy pobrać tzw. Virtual Box przeznaczony do wirtualizacji systemów. Oprogramowanie można pobrać ze strony producenta VirtualBox.org
Jeżeli działamy na system Windows należy pobrać VirtualBox 4.3.2 for Windows hosts x86/amd64
Kolejnym krokiem jest pobranie systemu Ubuntu ze strony Ubuntu.com. Pobieramy najnowszą wersję Desktopową 13.10.
Do wyboru będziemy mieć 32- i 64-bitową wersję. W tym przypadku pobieramy wersję 64-bitową.
Po ściągnięciu plików przystępujemy do instalacji, rozpoczynamy od Virtual Boxa. Sam proces instalacyjny zarówno Ubuntu jak i systemu do wirtualizacji jest bardzo prosty i nie wymaga skomplikowanej wiedzy technicznej.
Odpalamy plik instalacyjny:
3) Na końcu otrzymamy komunikat ostrzegający przed zresetowaniem interfejsu sieciowego i chwilowym brakiem dostępu do Internetu.
4) Po zakończeniu instalacji pojawi się okno VirtualBox Manager, w tym przypadku zainstalowane mam już 4 wirtualne maszyny, ale stworzę kolejną specjalnie przystosowaną tylko i wyłącznie do testowania strategii w handlu algorytmicznym. Uprzednio ściągnięty plik *.iso z Ubuntu należy wypalić na płycie, lub skorzystać z wirtualnych dysków za pomocą Daemon Tools Lite do pobrania stąd: http://www.disk-tools.com/download/daemon
5) Aby stworzyć nową „wirtualkę” klikamy na przycisk „New” w lewym górnym rogu. Wpisujemy nazwę naszego virtual box i przystępujemy do instalacji systemu.
6) Następnie określamy ilość pamięci RAM jaką przydzielimy dla naszego wirtualnego systemu. Ja przydzieliłem 2 GB, ale standardowe ustawienie 512 MB winno w zupełności wystarczyć. Należy jednak pamiętać, iż bardziej skomplikowane operacje będą bardziej „pamięciożerne”. Jeżeli mamy 4GB Ramu w laptopie/komputerze, przydzielenie 1-1,5 GB będzie optymalne. Kolejnym krokiem będzie wydzielenie miejsca dla dysku wirtualnego
Standardowe ustawienia są wystarczające, toteż w kolejnych oknach wystarczy klikać Next, a na końcu „Create”. Jeżeli wszystko przebiegło poprawnie powinniśmy zobaczyć takie o to okno:
Odpalamy Ubuntu, w tym celu należy nacisnąć przycisk Start. Jeżeli podczas uruchamiania otrzymamy taki oto błąd:
Należy zamknąć okno, a następnie wejść w ustawienia i wybrać 64-bitową wersję Ubuntu.
Gdy już to zostanie zmienione, można przystąpić do uruchumienia Ubunt i instalacji. W pierwszej kolejności pojawi nam się ekran powitalny z wyborem języka i tego co chcemy zrobić. Oczywiście klikamy na „Zainstaluj Ubuntu”.
W kolejnym oknie zostaniemy poproszeni o wybór aktualizacji. Warto zaznaczyć opcję „Pobranie aktualizacji podczas instalacji”, a następnie klikamy przycisk „Naprzód”. W kolejnym oknie pojawi się komunikat ostrzegawczy „Wyczyszczenie dysku i zainstalowanie Ubuntu. Uwaga ! Trwale usuwa z dysku wszystkie pliki”. Jako, że działamy na środowisku wirtualnym, nie trzeba się przejmować tym ostrzeżeniem, naszym plikom na dyskach nic się nie stanie. Klikamy Zainstaluj.
W kolejnych etapach proszeni będziemy o podanie naszej lokalizacji, układu klawiatury oraz tożsamość użytkownika:
Klikamy Naprzód. Może pojawić się okno z prośbą o logowanie do konta Ubuntu, ale w tym przypadku klikamy na „Zaloguj mnie później”. Rozpoczyna się proces instalacji, który troszkę potrwa. Po zakończeniu zostaniemy poproszeni o zrestartowanie naszego wirtualnego komputera.
Jeżeli wszystko przebiegło pomyślnie powinniśmy zalogować się do Ubuntu kontem stworzonym podczas instalacji.
Następnie musimy uruchomić terminal by zainstalować odpowiednie paczki, aktualizacje, etc. W tym celu należy wybrać Szukanie z lewego menu i wyszukać Terminal.
Ekran powinien wyglądać następująco:
Teraz w terminalu wykonujemy dwie komendy:
sudo apt-get -y update
sudo apt-get -y upgrade
Przystępujemy do instalacji środowiska obliczeniowego do testów naszych strategii inwestycyjnych.
sudo apt-get install python-pip python-dev
sudo pip install numpy
Proces ten trwa dość długo, więc można zająć się czymś innym w tym czasie.
Gdy już numpy zostanie zainstalowane, kolejnym krokiem jest wykonanie komendy, która zainstaluje kompilator GNU Fortran i biblioteki ATLAS.
sudo apt-get install libatlas-base-dev gfortran
Kolejną rzeczą, którą należy zainstalować jest SciPy:
sudo pip install scipy
Z racji tego, że w Pythonie będziemy tworzyć graficzne wykresy należy zainstalować bibliotek graficzne, czcionki typu „FreeType” no i oczywiście biblioteki obsługujące wykresy w Pythonie.
sudo apt-get install libjpeg8-dev libfreetype6-dev
sudo pip install matplotlib
W Windowsym R do obliczeń statystycznych korzystaliśmy z bibliotek quantmod. W Pythonie będziemy korzystać z bibliotek pandas i scikit-learn. Aby je zainstalować wykonujemy komendy:
sudo pip install -U scikit-learn
sudo pip install pandas
Mamy już praktycznie wszystko, pozostaje nam tylko lekko ulepszyć konsolę pythona, która sama w sobie wygląda mizernie. Programiści jednak przychodzą nam na pomoc z interpreterem Pythona o jakże ciekawej nazwie iPython.
sudo pip install ipython
Na sam koniec pozostało nam już zainstalowanie bibliotek środowiska Qt dedykowanego dla takich języków jak C++ oraz kilka dodatkowych paczek dla konsoli qt.
sudo apt-get install libqt4-core libqt4-gui libqt4-dev
sudo apt-get install libzmq-dev
sudo pip install pyzmq
sudo pip install pygments
I gotowe, mamy środowisko przygotowane do obliczeń statystycznych, testu strategii inwestycyjnych i tworzenia nowych algorytmów. Na podobnej konfiguracji działa większość dużych funduszy hedgingowych oraz osób tworzących skomplikowane algorytmy. Oczywiście dla bardzo dużych obliczeń potrzebna będzie osobna stacja robocza z odpowiednimi parametrami technicznymi, jednak do działań domowych oraz do nauki środowisko wirtualne zaspokaja wszelkie potrzeby.
Instalacja R na Windows
Poniższy fragment jest częścią tutoriala napisanego w 2013 r. także proszę wybaczyć dość „naiwne” słownictwo. Niemniej jednak kontekst jest zachowany.
Dlaczego R ? Dlaczego nie :-) a tak na poważnie… jest to potężne środowisko do obliczeń statystycznych, oczywiście ma swoje plusy i minusy, w niektórych aspektach jest o niebo lepsze od Pythona czy C++, w innych gorsze. Dla początkujących jest jak znalazł z uwagi na prostotę składni, co bardziej pozwala na poznanie całego mechanizmu działań algorytmów. Funkcje czy skrypty napisane w R bez problemu będzie można implementować w kodach źródłowych napisanych w innych językach, a następnie wykorzystywać je np. na platformach Meta Trader czy na systemach transakcyjnych oferowanych chociażby przez Bank Ochrony Środowiska. Dlaczego akurat wymieniłem ten bank ? Platformy transakcyjne BOŚ są mi najlepiej znane i pozwalają na handel algorytmiczny.
Środowisko R można pobrać ze strony Uniwersytetu Wrocławskiego
Ważna informacja !
Jeżeli R instalowany jest na komputerze 64 bitowym systemem operacyjnym Vista, do prawidłowego działania przedstawionych algorytmów, po instalacji należy uruchamiać środowisko z 64-bitowego pliku startowego.
Po uruchomienia pojawi się konsola
Nie będę rozpisywać się nad składnią, bo można przeczytać o niej chociażby na stronie domowej R, gdzie dostępna jest pełna dokumentacja. Tak czy inaczej będę starać się w miarę prosto opisywać co do czego służy. W tym wpisie przedstawię totalne podstawy i gotowy kod źródłowy do tworzenia gotowych wykresów, które później będą wykorzystywane…
Przed przystąpieniem do pisania czegokolwiek, należy zainstalować kilka bibliotek, bez których tworzenie algorytmów jest niemożliwe. Poniższe polecenia można wpisywać ręcznie do konsoli, ale wygodniej będzie skopiować tekst z tej strony i za pomocą ctrl + v lub shift + insert wkleić do konsoli. W kolejnych wpisach będę omawiać szczegółowo każdą z zainstalowanych bibliotek.
Najważniejsza z tych paczek to quantmod, czyli środowisko pozwalające na tworzenie różnego rodzaju statystycznych modeli pozwalających na wybór najlepszej strategi spekulacyjnej.
Więcej o tej paczce można przeczytać tutaj:
Quantitative Financial Modelling & Trading Framework for R skojarzenia z QE 3 ? Słusznie :-)
install.packages('quantmod')
install.packages('TTR')
install.packages('PerformanceAnalytics')
install.packages('RColorBrewer')
install.packages('ggplot2')
Pojawi się okno wyboru serwerów skąd mogą zostać pobrane repozytoria. Wybieramy Poland (Wroclaw). Repozytoria zostaną pobrane, rozpakowane i automatycznie zainstalowane. Powyższe biblioteki są już zainstalowane na moim komputerze, więc aby przedstawić jak wygląda okno wybory serwera, pobrałem u siebie przypadkową paczkę.
Gdy już wszystko zostanie zainstalowane, możemy sprawdzić podstawowe działanie.
W tym celu musimy pobrać historyczne dane np. dla kontraktów terminowych na WIG 20. Skorzystałem z danych udostępnionych na portalu stooq.pl http://stooq.pl/q/d/?s=fw20. Interwał dzienny, data początkowa 20 stycznia 1998. Kilkam w „Pobierz dane w pliku csv” i dane ściągnięte. Oczywiście można korzystać z innego źródła danych, co będzie przedstawione w późniejszych wpisach.
Otwieramy plik w OpenOffice lub Excel.
Jeżeli program zapyta o separator, należy wybrać „przecinek”.
Teraz należy zamienić nazwy nagłówków:
Otwarcie -> Open, Najwyższy -> High, Najniższy -> Low, Wolumen -> Volume
Kopiujemy kod i wklejamy do konsoli R:
dataFile < - "fw20_d.csv"
dataFile_strip < - "fw20.csv"
dataDir < - "C:/Stock"
file < - paste(dataDir,"/",dataFile,sep="")
file2 < - paste(dataDir,"/",dataFile_strip,sep="")
csv < - read.csv(file,header=TRUE,sep=",")
csv$row.names < - as.POSIXct(as.character(csv$row.names),tz="",format="%d.%m.%Y")
write.csv(csv[-7],file2,row.names=FALSE)
Jeżeli pojawi się błąd, można go zignorować.
Kopiujemy i wklejamy kod:
library(quantmod)
install.packages('zoo')
dataFile_strip < - "fw20.csv"
dataDir < - "C:/Stock"
file2 < - paste(dataDir,"/",dataFile_strip,sep="")
zz < - read.zoo(file2,sep=",",format="%d.%m.%Y",header=TRUE,cindex.column=1,colClasses=c("character",rep("numeric",5)))
head(zz)
xx < - as.xts(zz)
#dowolny zakres dat
FW20< -xx['2012-01::2013-02-15']
candleChart(FW20,theme='white', type='candles')
W przypadku wystąpienia błędów należy nacisnąć Enter. W kolejnych wpisach wyjaśnię te błędy i ich korekcję. Jeśli wszystko przebiegło zgodnie z instrukcją, pojawił się nam wykres kontraktów terminowych na WIG20
W kolejnym wpisie przedstawię modelowanie procesów decyzyjnych, sprawdzanie własnych predykcji rynkowych oraz podstawowe funkcje w Pythonie, wykorzystanie średnich kroczących do tworzenia prostych strategii podążania za trendem, mean reversion oraz momentum.
Pytania, komentarze mile widziane.
Pytania w komentarzach odnośnie aktualnej kondycji rynkowej, prognoz, czy pozycjonowania będą usuwane. Jest to wpis nt. automatyzacji.
U mnie wywala „BŁĄD: nie znaleziono obiektu ‚dataFile’