Zastosowania sieci neuronowych -...
Transcript of Zastosowania sieci neuronowych -...
![Page 1: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/1.jpg)
Zastosowania sieci neuronowych
predykcja - giełda
LABORKA © Piotr Ciskowski
![Page 2: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/2.jpg)
INDEKS WIG20AKCJE
![Page 3: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/3.jpg)
• 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
![Page 4: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/4.jpg)
![Page 5: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/5.jpg)
![Page 6: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/6.jpg)
![Page 7: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/7.jpg)
PREDYKCJA „NAIWNA”FUNKCJE TOOLBOX’OWE
Przykład 1
![Page 8: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/8.jpg)
• Naucz sieć przewidywać przyszłe notowania indeksu WIG20na podstawie notowań przeszłych
• wejścia: wartość indeksu dziśwartość indeksu wczorajwartość indeksu przedwczoraj
• wyjście: wartość indeksu jutro
• Użyj funkcji toolbox’owych MATLABa
przykład 1. predykcja „naiwna” – funkcje toolbox’oweźródło: własne
![Page 9: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/9.jpg)
• 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
![Page 10: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/10.jpg)
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
![Page 11: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/11.jpg)
przykład 1. predykcja „naiwna” – funkcje toolbox’oweźródło: własne
0 500 1000 1500 2000 2500 30000
0.5
1
1.5
2
2.5
3x 10
4 Wszystkie dane uczace - indeksy
0 500 1000 1500 2000 2500 30000
5
10
15x 10
5 Wszystkie dane uczace - obroty
![Page 12: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/12.jpg)
przykład 1. predykcja „naiwna” – funkcje toolbox’oweźródło: własne
0 500 1000 1500 2000 2500 3000-0.5
0
0.5
1
1.5
2
2.5
3
3.5x 10
4 Odpowiedzi sieci - przed uczeniem
nr przykładu
indeks
![Page 13: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/13.jpg)
0 500 1000 1500 2000 2500 3000-3
-2
-1
0
1
2
3x 10
4 Odpowiedzi sieci - przed uczeniem
nr przykładu
indeks
przykład 1. predykcja „naiwna” – funkcje toolbox’oweźródło: własne
![Page 14: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/14.jpg)
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
![Page 15: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/15.jpg)
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
![Page 16: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/16.jpg)
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
![Page 17: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/17.jpg)
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
![Page 18: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/18.jpg)
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
![Page 19: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/19.jpg)
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
![Page 20: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/20.jpg)
PREDYKCJA „NAIWNA”FUNKCJE WŁASNE
Przykład 2
![Page 21: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/21.jpg)
• Naucz sieć przewidywać przyszłe notowania indeksu WIG20na podstawie notowań przeszłych
• wejścia: wartość indeksu dziśwartość indeksu wczorajwartość indeksu przedwczoraj
• wyjście: wartość indeksu jutro
• Użyj własnych funkcji do symulacji sieci: init2dzialaj2ucz2 - metoda najszybszego spadku
z momentumi adaptacyjnym współczynnikiem uczenia
- wykres błędu MSE podczas uczenia
przykład 2. predykcja „naiwna” – funkcje własneźródło: własne
![Page 22: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/22.jpg)
• 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 2. predykcja „naiwna” – funkcje własneźródło: własne
![Page 23: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/23.jpg)
PREDYKCJA PRZYROSTÓW
Przykład 3
![Page 24: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/24.jpg)
• Naucz sieć przewidywać zmiany przyszłych notowań indeksu WIG20na podstawie zmian notowań przeszłych
• wejścia: zmiana% wartości indeksu dziś-wczorajzmiana% wartości indeksu wczoraj-przedwoczrajzmiana% wartości indeksu przedwczoraj-przedprzedwczoraj
• wyjście: zmiana% wartości indeksu jutro-dziś
• Użyj funkcji toolbox’owych MATLABa
przykład 3. predykcja „sprytniejsza” – zmiany indeksuźródło: własne
![Page 25: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/25.jpg)
% -----------------------------------------------------------------------
% 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
![Page 26: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/26.jpg)
% -----------------------------------------------------------------------
% skalowanie danych- dla przyrostów nie trzeba
% - przecież one są w większości od -10 do +10
przykład 3. predykcja „sprytniejsza” – zmiany indeksuźródło: własne
![Page 27: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/27.jpg)
WALUTY, SUROWCE, INDEKSY
Forex
![Page 28: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/28.jpg)
FOREX - źródło danych: Centrum historii
![Page 29: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/29.jpg)
• 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
![Page 30: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/30.jpg)
UCZENIE STRATEGII
Przykład 4
![Page 31: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/31.jpg)
• 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óww ok. 47 dni
przykład 4. uczenie strategiiźródło: własne
![Page 32: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/32.jpg)
• wejścia sieci: średnia krótkookresowa (z historią)średnia długookresowa (z historią)
• żądane wyjście sieci sygnały: -1 – SPRZEDAJ0 – brak sygnału1 – 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
![Page 33: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/33.jpg)
• do uczenia sieci użyj funkcji toolbox’owych MATLABalub własnych funkcji
• wykorzystaj dane: EURUSD – D1, H1, …lub: GOLD - D1lub: W20 - D1lub: jakiekolwiek inne
przykład 4. uczenie strategiiźródło: własne
![Page 34: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/34.jpg)
• 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 4. uczenie strategiiźródło: własne
![Page 35: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/35.jpg)
UCZENIE SYGNAŁÓW
Przykład 5
![Page 36: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/36.jpg)
• Naucz sieć „przewidywać” poprawne sygnały:
– żądane wyjście sieci sygnały: -1 – SPRZEDAJ0 – brak sygnału1 – 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
przykład 5. uczenie sygnałówźródło: własne
![Page 37: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/37.jpg)
TESTER STRATEGII
ZANIM ZACZNIESZ
![Page 38: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/38.jpg)
• strategia Moving Average
- przykładowa w MetaTrader’ze
- parametry domyślne:
• MA – period: 12
• MA – shift: 6
• instrument: EURUSD
• interwał: D1
tester strategii
![Page 39: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/39.jpg)
tester strategii założenia, liczba otwartych zleceń
![Page 40: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/40.jpg)
tester strategii rozmiar zlecenia (zarządzanie kapitałem)
![Page 41: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/41.jpg)
tester strategii czy jest sygnał do otwarcia zlecenia?
![Page 42: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/42.jpg)
tester strategii czy trzeba zamknąć zlecenie
![Page 43: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/43.jpg)
tester strategii funkcja start
![Page 44: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/44.jpg)
tester strategii
![Page 45: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/45.jpg)
tester strategii podsumowanie - wykres
![Page 46: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/46.jpg)
tester strategii podsumowanie - raport
![Page 47: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/47.jpg)
DOBRE RADY
PODSUMOWANIE
![Page 48: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/48.jpg)
• 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
![Page 49: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/49.jpg)
• 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
![Page 50: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/50.jpg)
• 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.
![Page 51: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/51.jpg)
• 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
![Page 52: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/52.jpg)
• 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
![Page 53: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/53.jpg)
• 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ć
![Page 54: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/54.jpg)
• 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.
![Page 55: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/55.jpg)
• 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.
![Page 56: Zastosowania sieci neuronowych - staff.iiar.pwr.wroc.plstaff.iiar.pwr.wroc.pl/piotr.ciskowski/dydaktyka/sieci.neuronowe/L... · • jak można bawić się w sieci neuronowe na giełdzie:](https://reader031.fdocuments.net/reader031/viewer/2022022802/5c796be609d3f2d2178c4934/html5/thumbnails/56.jpg)
• 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…