Zastosowania sieci neuronowych predykcja - giełda



Podobne dokumenty
Zastosowania sieci neuronowych

Strategia inwestycyjna oparta na korelacji w szeregach czasowych

Giełda. Podstawy inwestowania SPIS TREŚCI

Raport Tygodniowy. o sytuacji na rynkach finansowych. Rynek walutowy. Rynek akcji

Kontrakty terminowe i forex SPIS TREŚCI

System transakcyjny oparty na średnich ruchomych. ś h = gdzie, C cena danego okresu, n liczba okresów uwzględnianych przy kalkulacji.

Zastosowania sieci neuronowych

Oprogramowanie Systemów Obrazowania SIECI NEURONOWE

Giełda : podstawy inwestowania / Adam Zaremba. wyd. 3. Gliwice, cop Spis treści

Projektowanie systemu krok po kroku

Testy popularnych wskaźników - RSI

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

Strategie arbitrażowe w praktyce Tomasz Korecki

Cena Bid, Ask i spread

Obrona rozprawy doktorskiej Neuro-genetyczny system komputerowy do prognozowania zmiany indeksu giełdowego

Raport Tygodniowy. o sytuacji na rynkach finansowych. Rynek walutowy. Rynek akcji

System transakcyjny oparty na wskaźnikach technicznych

Zastosowania sieci neuronowych - automatyka identyfikacja sterowanie

Raport Tygodniowy. o sytuacji na rynkach finansowych. Rynek walutowy. Rynek akcji

Podstawy inwestowania na rynku Forex, rynku towarowym oraz kontraktów CFD

Podstawy przedsiębiorczości kolokwium zakres materiału

Biuletyn dzienny

DNA Rynków 11/ Kwartał z jajem. Prezentacja dostępna na stronie

Podstawy inwestowania na rynku Forex, rynku towarowym oraz kontraktów CFD

Kurs USD/PLN perspektywa długoterminowa, kurs z 22 maja 2015 roku = 3,7307

sieci jednowarstwowe w MATLABie LABORKA Piotr Ciskowski

Sieci neuronowe - dokumentacja projektu

Biuletyn dzienny

Raport Tygodniowy. o sytuacji na rynkach finansowych. Rynek walutowy. Rynek akcji

Wprowadzenie do rynków walutowych

Analiza danych w biznesie

Raport Tygodniowy. o sytuacji na rynkach finansowych. Rynek walutowy. Rynek akcji

Zulutrade. w pełni automatyczne inwestowanie. [Wersja 1.1]

Poradnik Inwestora część 4. Podstawy inwestowania na rynku Forex, rynku towarowym oraz kontraktach indeksowych

Biuletyn dzienny

STRATEGIE NA RYNKU OPCJI. KRÓTKI STELAŻ (Short Straddle)

Zastosowania sieci neuronowych predykcja - energia

Platforma Transakcyjna X-Trader, podstawy AT, zarządzanie wielkością pozycji.

Podsumowanie tygodnia

MATLAB Compiler. jak tworzyć aplikacje ze skryptów. LABORKA Piotr Ciskowski

POLSKI RYNEK AKCJI W 2014 ROKU

Podstawy inwestowania na rynku Forex, rynku towarowym oraz kontraktów CFD

Poradnik Inwestora część 3. Podstawy inwestowania na rynku Forex, rynku towarowym oraz kontraktach indeksowych

Kurs USD/PLN perspektywa długoterminowa, kurs z 29 maja 2015 roku = 3,7438

Biuletyn dzienny

Platforma Transakcyjna X-Trade obsługa, analiza, transakcje

Narzędzia analizy technicznej. Narzędzia analizy technicznej. Narzędzia analizy technicznej

Zarządzanie Kapitałem

Podstawy inwestowania na rynku Forex, rynku towarowym oraz kontraktów CFD

Podstawy inwestowania na rynku Forex, rynku towarowym oraz kontraktów CFD

Zarządzanie Kapitałem. Paweł Śliwa

Podstawy inwestowania na rynku Forex, rynku towarowym oraz kontraktów CFD

Do końca 2003 roku Giełda wprowadziła promocyjne opłaty transakcyjne obniżone o 50% od ustalonych regulaminem.

Budowa sztucznych sieci neuronowych do prognozowania. Przykład jednostek uczestnictwa otwartego funduszu inwestycyjnego

STRATEGIE NA RYNKU OPCJI. DŁUGI STELAŻ (Long Straddle)

Podstawy analizy technicznej

etrader Pekao Podręcznik użytkownika Portfel inwestycyjny

FOREX - DESK: Rynek zagraniczny ( r.)

Strategia Inwestycyjna DTFM Szybkiego i Łatwego Zwycięstwa

ZMIANY KONTRAKTY TERMINOWE I FOREX. TEORIA I PRAKTYKA. Jesteś tu: Bossa.pl KONTRAKTY TERMINOWE I FOREX. TEORIA I PRAKTYKA.

Pierwsze kroki na rynku Forex.

K O N T R A K T Y T E R M I N O W E

Jak poznać, że ktoś jest skutecznym traderem?

SIEĆ NEURONOWA DO OCENY KOŃCOWEJ PRZEDSIĘWZIĘCIA (PROJEKTU)

Analiza wpływu długości trwania strategii na proces optymalizacji parametrów dla strategii inwestycyjnych w handlu event-driven

MATLAB Neural Network Toolbox uczenie sieci (dogłębnie)

Systemy uczące się Lab 4

Prognozowanie kierunku ruchu indeksów giełdowych na podstawie danych historycznych.

Jak i gdzie zarabiać na spadkach?

Kurs USD/PLN perspektywa długoterminowa, kurs z 15 maja 2015 roku = 3,5292

Strategia Ichimokudla początkujących i zaawansowanych inwestorów. Analiza bieżącej sytuacji na rynkach.

Ćwiczenia ZPI. Katarzyna Niewińska, ćwiczenia do wykładu Zarządzanie portfelem inwestycyjnym 1

Raport Tygodniowy. o sytuacji na rynkach finansowych. Rynek walutowy. Rynek akcji

System transakcyjny NS Forex Instrukcja obsługi

8. Neuron z ciągłą funkcją aktywacji.

Podstawy inwestowania na rynku Forex, rynku towarowym oraz kontraktów CFD

Specyfikacja narzędzi analizy technicznej w projekcie

Raport Tygodniowy. o sytuacji na rynkach finansowych. Rynek walutowy. Rynek akcji

Optymalizacja parametrów w strategiach inwestycyjnych dla event-driven tradingu - metodologia badań

Biuletyn dzienny

Podstawy inwestowania na rynku Forex, rynku towarowym oraz kontraktów CFD

Raport Tygodniowy. o sytuacji na rynkach finansowych. Rynek walutowy. Rynek akcji

Podstawy inwestowania na rynku Forex, rynku towarowym oraz kontraktów CFD

OPCJE WARSZTATY INWESTYCYJNE TMS BROKERS

Przewodnik po kontraktach CFD

Biuletyn dzienny

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Forward kontrakt terminowy o charakterze rzeczywistym (z dostawą instrumentu bazowego).

Giełda, wolność i pieniądze SZCZEGÓŁOWY SPIS TREŚCI

Depozyt zabezpieczający wnoszony przez inwestora (waluty) - MPKR

Raport Tygodniowy. o sytuacji na rynkach finansowych. Rynek walutowy. Rynek akcji

STRATEGIE NA RYNKU OPCJI. SPRZEDAŻ OPCJI SPRZEDAŻY (Short Put)

PORADNIK INWESTOWANIA JEDNOSESYJNEGO. Paweł Pagacz, Bartłomiej Bohdan

Futures na Wibor najlepszy sposób zarabiania na stopach. Departament Skarbu, PKO Bank Polski Konferencja Instrumenty Pochodne Warszawa, 28 maja 2014

Giełda. Podstawy inwestowania. Wydanie II rozszerzone.

OPCJE MIESIĘCZNE NA INDEKS WIG20

Biuletyn dzienny

KROK 6 ANALIZA FUNDAMENTALNA

Raport Tygodniowy. o sytuacji na rynkach finansowych. Rynek walutowy. Rynek akcji

Transkrypt:

Zastosowania sieci neuronowych predykcja - giełda LABORKA Piotr Ciskowski

AKCJE INDEKS WIG20

plik giełda-wig.xlsx : dane: indeks WIG od 1991 do 2005 ok. 3000 sesji bez ostatniej szalonej hossy dla każdej sesji: - indeks open/high/low/close + zmiana% - obroty + zmiana% analiza: wykresy długie i krótkie, z całości i z części proste podsumowanie statystyczne: min, max, średnia itp. skąd brać dane: z biur maklerskich, np. www.bossa.pl - dane tekstowe w formacie Metastocka z programów platform transakcyjnych, np. Metatrader Centrum historii

Przykład 1 PREDYKCJA NAIWNA FUNKCJE TOOLBOX OWE

przykład 1. predykcja naiwna funkcje toolbox owe źródło: własne Naucz sieć przewidywać przyszłe notowania indeksu WIG20 na podstawie notowań przeszłych wejścia: wyjście: wartość indeksu dziś wartość indeksu wczoraj wartość indeksu przedwczoraj wartość indeksu jutro Użyj funkcji toolbox owych MATLABa

przykład 1. predykcja naiwna funkcje toolbox owe źródło: własne skrypt wigstudpredykcjanaiwnafunkcjetoolbox.m : dane: indeks WIG od 1991 do 2005 dla każdej sesji: - indeks open/high/low/close + zmiana% - obroty + zmiana% wskazówki, co w jakiej kolejności robić: wybór danych wejściowych preprocessing / skalowanie danych przygotowanie zbioru uczącego podział danych uczących na ciągi: uczący, sprawdzający i testujący wybór architektury sieci utworzenie / inicjalizacja sieci nauka sieci na ciągach: uczącym/sprawdzającym sprawdzenie działania sieci na ciągu testującym

przykład 1. predykcja naiwna funkcje toolbox owe źródło: własne clear all; WIG = [... % DATA OPEN HIGH LOW CLOSE zmiana% VOL zmiana% 19910416 1000.00 1000.00 1000.00 1000.00 0.00 3.960 0.0 ; 19910423 967.70 967.70 967.70 967.70-3.23 54.630 1279.55 ;... 20050131 25858.64 26010.14 25804.16 25992.99 0.78 387246.372-38.03 ; 20050201 25988.00 26313.54 25978.94 26297.25 1.17 675357.745 7 ] ; % ----------------------------------------------------------------------- % predykcja naiwna % % - wejścia sieci: - notowanie dziś % - notowanie wczoraj % - notowanie przedwczoraj % - żądane wyjście: - notowanie jutro

przykład 1. predykcja naiwna funkcje toolbox owe źródło: własne 3 x 104 Wszystkie dane uczace - indeksy 2.5 2 1.5 1 0.5 0 0 500 1000 1500 2000 2500 3000 15 x 105 Wszystkie dane uczace - obroty 10 5 0 0 500 1000 1500 2000 2500 3000

przykład 1. predykcja naiwna funkcje toolbox owe źródło: własne 3.5 x 104 Odpowiedzi sieci - przed uczeniem 3 2.5 2 indeks 1.5 1 0.5 0-0.5 0 500 1000 1500 2000 2500 3000 nr przykładu

przykład 1. predykcja naiwna funkcje toolbox owe źródło: własne 3 x 104 Odpowiedzi sieci - przed uczeniem 2 1 indeks 0-1 -2-3 0 500 1000 1500 2000 2500 3000 nr przykładu

przykład 1. predykcja naiwna funkcje toolbox owe sieć 1 źródło: własne Podaj liczbę neuronów w warstwie ukrytej: 10 Podaj maksymalną liczbę epok uczących: 1000 Podaj docelowy błąd MSE: 0.001

przykład 1. predykcja naiwna funkcje toolbox owe sieć 1 źródło: własne Podaj liczbę neuronów w warstwie ukrytej: 10 Podaj maksymalną liczbę epok uczących: 1000 Podaj docelowy błąd MSE: 0.001

przykład 1. predykcja naiwna funkcje toolbox owe sieć 2 źródło: własne Podaj liczbę neuronów w warstwie ukrytej: 10 Podaj maksymalną liczbę epok uczących: 1000 Podaj docelowy błąd MSE: 0.00001

przykład 1. predykcja naiwna funkcje toolbox owe sieć 2 źródło: własne Podaj liczbę neuronów w warstwie ukrytej: 10 Podaj maksymalną liczbę epok uczących: 1000 Podaj docelowy błąd MSE: 0.00001

przykład 1. predykcja naiwna funkcje toolbox owe sieć 2 źródło: własne Podaj liczbę neuronów w warstwie ukrytej: 10 Podaj maksymalną liczbę epok uczących: 1000 Podaj docelowy błąd MSE: 0.00001

przykład 1. predykcja naiwna funkcje toolbox owe sieć 2 źródło: własne Podaj liczbę neuronów w warstwie ukrytej: 10 Podaj maksymalną liczbę epok uczących: 1000 Podaj docelowy błąd MSE: 0.00001

Przykład 2 PREDYKCJA NAIWNA FUNKCJE WŁASNE

przykład 2. predykcja naiwna funkcje własne źródło: własne Naucz sieć przewidywać przyszłe notowania indeksu WIG20 na podstawie notowań przeszłych wejścia: wyjście: wartość indeksu dziś wartość indeksu wczoraj wartość indeksu przedwczoraj wartość indeksu jutro Użyj własnych funkcji do symulacji sieci: init2 dzialaj2 ucz2 - metoda najszybszego spadku z momentum i adaptacyjnym współczynnikiem uczenia - wykres błędu MSE podczas uczenia

przykład 2. predykcja naiwna funkcje własne źródło: własne skrypt wigstudpredykcjanaiwnafunkcjewlasne.m : dane: indeks WIG od 1991 do 2005 dla każdej sesji: - indeks open/high/low/close + zmiana% - obroty + zmiana% wskazówki, co w jakiej kolejności robić: wybór danych wejściowych preprocessing / skalowanie danych przygotowanie zbioru uczącego podział danych uczących na ciągi: uczący, sprawdzający i testujący wybór architektury sieci utworzenie / inicjalizacja sieci nauka sieci na ciągach: uczącym/sprawdzającym sprawdzenie działania sieci na ciągu testującym

Przykład 3 PREDYKCJA PRZYROSTÓW

przykład 3. predykcja sprytniejsza zmiany indeksu źródło: własne Naucz sieć przewidywać zmiany przyszłych notowań indeksu WIG20 na podstawie zmian notowań przeszłych wejścia: wyjście: zmiana% wartości indeksu dziś-wczoraj zmiana% wartości indeksu wczoraj-przedwoczraj zmiana% wartości indeksu przedwczoraj-przedprzedwczoraj zmiana% wartości indeksu jutro-dziś Użyj funkcji toolbox owych MATLABa

przykład 3. predykcja sprytniejsza zmiany indeksu źródło: własne % ----------------------------------------------------------------------- % wybranie danych % w drugiej kolumnie jest indeks - otwarcie % w trzeciej indeks - high % w czwartej indeks - low % w piątej indeks - zamknięcie % w szóstej indeks - zamknięcie zmiana od dnia poprzedniego % w siódmej obroty % w ósmej obroty - zmiana od dnia poprzedniego indeks = WIG(:,6); obroty = WIG(:,8);

przykład 3. predykcja sprytniejsza zmiany indeksu źródło: własne % ----------------------------------------------------------------------- % skalowanie danych- dla przyrostów nie trzeba % - przecież one są w większości od -10 do +10

Forex WALUTY, SUROWCE, INDEKSY

FOREX - źródło danych: Centrum historii

plik dane.forex.2009.rar : dane (prn): EURUSD MN, W1, D1, H1 EURPLN D1 GBPUSD D1 USDJPY D1 USDPLN D1 GOLD D1, H4 OIL D1, H4 US500,100,30 D1 W20 D1, H1 plik dane.forex.2013.7z : dane (csv): EURUSD MN, W1, D1, H1, M30, M15, M5, M1 EURPLN, USDPLN W1, D1, H1 GOLD, OIL W1, D1, H1 W20 W1, D1, H1

Przykład 4 UCZENIE STRATEGII

przykład 4. uczenie strategii źródło: własne Naucz sieć prostej strategii opartej na średnich ruchomych: (źródło poniższej: J.J. Murphy. Analiza techniczna rynków finansowych) o średnia krótkookresowa: 5 okresów o średnia długookresowa: 20 okresów o sygnał KUP: - przecięcie od dołu średniej 20 przez średnią 5 o sygnał SPRZEDAJ: - przecięcie od góry średniej 20 przez średnią 5 zysk ok. 4000 pipsów w ok. 47 dni

przykład 4. uczenie strategii źródło: własne wejścia sieci: średnia krótkookresowa (z historią) średnia długookresowa (z historią) żądane wyjście sieci sygnały: -1 SPRZEDAJ 0 brak sygnału 1 KUP lub: -1 SPRZEDAJ - cały czas gdy średnia krótka pod długą 1 KUP - cały czas gdy średnia krótka nad długą o strategia typu zawsze na rynku = zawsze otwarte zlecenie o zlecenie KUP zamyka otwarte wcześniej zlecenie SPRZEDAJ i otwiera KUP o zlecenie SPZREDAJ zamyka otwarte wcześniej zlecenie KUP i otwiera SPRZEDAJ sygnał ma się pojawiać na początku bieżącej świeczki, więc na wejściach mogą się pojawić tylko wielkości z poprzedniej świeczki i z wcześniejszych

przykład 4. uczenie strategii źródło: własne do uczenia sieci użyj funkcji toolbox owych MATLABa lub własnych funkcji wykorzystaj dane: EURUSD D1, H1, lub: GOLD - D1 lub: W20 - D1 lub: jakiekolwiek inne

przykład 4. uczenie strategii źródło: własne sprawdź przydatność innych średnich zastanów się, co podawać na wejście sieci zastanów się nad lepszym wyjściem z transakcji wyeliminuj mało przydatne sygnały

Przykład 5 UCZENIE SYGNAŁÓW

przykład 5. uczenie sygnałów źródło: własne Naucz sieć przewidywać poprawne sygnały: żądane wyjście sieci sygnały: -1 SPRZEDAJ 0 brak sygnału 1 KUP wg założonej strategii wejścia sieci: wg uznania przykładowe założenia strategii: dla zlecenia KUP poziom SL będzie ustawiony na min. cenie z 5 poprzednich świeczek dla zlecenia SPRZEDAJ na max. cenie z 5 poprzednich świeczek sygnał KUP/SPRZEDAJ gdy w przyszłych 5 świeczkach stosunek zysk/ryzyko będzie >= 3 sygnał ma się pojawiać na początku bieżącej świeczki, więc na wejściach mogą się pojawić tylko wielkości z poprzedniej świeczki i z wcześniejszych

ZANIM ZACZNIESZ TESTER STRATEGII

tester strategii strategia Moving Average - przykładowa w MetaTrader ze - parametry domyślne: MA period: 12 MA shift: 6 instrument: EURUSD interwał: D1

tester strategii założenia, liczba otwartych zleceń

tester strategii rozmiar zlecenia (zarządzanie kapitałem)

tester strategii czy jest sygnał do otwarcia zlecenia?

tester strategii czy trzeba zamknąć zlecenie

tester strategii funkcja start

tester strategii

tester strategii podsumowanie - wykres

tester strategii podsumowanie - raport

PODSUMOWANIE DOBRE RADY

jak można bawić się w sieci neuronowe na giełdzie: za bardzo się nie napalać nie oczekiwać kokosów maszynki do zarabiania czarnej skrzynki nie przeceniać sieci to, że sieć daje ładne wykresy / mały błąd MSE, nie oznacza jeszcze, że dobrze działa po ich przybliżeniu może się okazać, że sieć zachowuje się jak zwykły filtr MA z akcentem na ostatnią próbkę więc sieć przewiduje po prostu, że jutro będzie to, co było dziś ale wykres wygląda ładnie może nawet i błąd wyjdzie nie za duży poczytać o giełdzie pograć samemu, a dopiero potem wysyłać na parkiet sieci neuronowe

jak można bawić się w sieci neuronowe na giełdzie: nie przesadzać nie używać bardzo dużych sieci nie podawać wszystkich dostępnych danych na wejścia

jak można bawić się w sieci neuronowe na giełdzie: podawać na wejścia sieci nie surowe dane, lecz przetworzone co najmniej wyskalowane najlepiej starannie wybrane zamiast wartości indeksu przyrosty zamiast danych z całego tygodnia średnią albo kombinacje: ten tydzień dokładnie + średnia z tygodnia + średnia z miesiąca zamiast/oprócz cen wskaźniki analizy technicznej itd.

jak można bawić się w sieci neuronowe na giełdzie: a może dodać na wejścia dane towarzyszące (kontekstowe) np. kurs EURUSD obrazujący stan gospodarki amerykańskiej/europejskiej albo kurs ropy obrazujący również sytuacje polityczną na świecie albo np. stopy procentowe itp. dane makroekonomiczne porę roku, dzień tygodnia byle nie za dużo i z sensem nie podawać na wejścia sieci czegoś, czego w danej chwili nie znamy! przez przypadek

jak można bawić się w sieci neuronowe na giełdzie: odpowiednio wykorzystywać ciąg uczący: odpowiednio podzielić na ciąg uczący, sprawdzający i testujący - hossa, bessa i stagnacja równo reprezentowane w każdym z nich odpowiednio pokazywać przykłady w trakcie uczenia: - lepiej losowo niż sekwencyjnie - kilka przykładów w jednym kroku, poprawki skumulowane

jak można bawić się w sieci neuronowe na giełdzie: a może zmienić zadanie dla sieci, np. predykcja klasyfikacja nie wymagać od sieci, żeby przewidywała dokładnie wartość instrumentu za 5 dni - niech tylko przewiduje, czy wzrośnie, czy spadnie wyjścia -1 1 - np. czy w ciągu tych 5 dni wzrośnie o co najmniej 5%, czy nie wzrośnie - wyjścia 0 1 czy w ciągu tych 5 dni spadnie o co najmniej 5%, czy nie spadnie - wyjścia 0 1 - jednocześnie nie spadając / nie rosnąc o więcej niż 1% (stosunek TP/SL > 3:1) wymyśleć sobie strategię inwestycyjną - pod nią przygotować dane uczące - wejścia: wybrane wielkości, wskaźniki itp. - żądane wyjścia: sygnały kup / sprzedaj / nic nie rób wyjścia np. 1/ -1 / 0 - skonstruować i nauczyć sieć - pod każdą strategię przygotować nowe dane i nową sieć

jak można bawić się w sieci neuronowe na giełdzie: a może zmienić zadanie dla sieci, np. predykcja rozpoznawanie wzorców nauczyć sieć rozpoznawać formacje analizy technicznej: M, W, podwójne dna i szczyty, ramiona-głowa-ramiona nauczyć kilka sieci rozpoznawać daną formację w różnych horyzontach czasowych nauczyć kilka sieci rozpoznawać różne formacje w tym samym horyzoncie rozpoznawać formacje za pomocą map samoorganizujących spróbować architektur hybrydowych: np. wyjście takiej mapy podać jako jedno z wielu wejść na sieć MLP podejmującą ostateczną decyzję: kup / sprzedaj na inne wejścia np. wartości instrumentu, średnie, wskaźniki techniczne itp. na inne wejścia np. wyjścia sieci rozpoznających formacje itp.

jak można bawić się w sieci neuronowe na giełdzie: stosować odpowiednie miary jakości działania sieci sieć jest tylko częścią decyzyjną - systemu transakcyjnego równie ważne, jeśli nie najważniejsze, jest zarządzanie kapitałem ważne jest także zarządzanie transakcją/wielkością pozycji sam błąd sieci (MSE) nie wystarczy do oceny systemu należy przetestować cały system na danych historycznych (backtest), a najlepiej przez jakiś czas na żywo (forward test) i obliczyć jego parametry: oczekiwaną stopę zwrotu stosunek zysków do strat największe obsunięcie kapitału itp.

jak można bawić się w sieci neuronowe na giełdzie: spróbować innych instrumentów - forex: giełda amerykańska: S&P500 (USBCASH) waluty: EURUSD, GPBUSD, USDJPY surowce: GOLD, OIL oraz powiązań między nimi zagrać na próbę w konkursie wygrać Porsche, Mercedesa itd