Prognozowanie rynku walutowego za pomocą sieci neuronowych


10

Chciałbym użyć ANN do automatyzacji walut handlowych, najlepiej USD / EUR lub USD / GBP. Wiem, że jest to trudne i może nie być proste. Przeczytałem już kilka artykułów i przeprowadziłem eksperymenty, ale bez większego szczęścia. Chciałbym uzyskać poradę od EKSPERTÓW, aby to zadziałało.

Oto co dotychczas zrobiłem:

  1. Mam dane tyknięcia według miesiąca lipca 2013. Ma licytację / zapytaj / wielkość licytacji / ilość zapytań.
  2. Wyodrębniono wszystkie tiki w przedziale czasowym od 12 do 14 dla wszystkich dni.
  3. Na podstawie tych danych utworzono zestaw danych, w którym każdy wpis składa się z n wartości wartości w kolejności.
  4. Wykorzystano te dane do wyszkolenia ANN z wejściami n-1, a wynikiem jest prognozowana n-ta wartość oferty.
  5. ANN miał n-1 neuronów wejściowych, (n-1) * 2 + 1 ukryty i 1 neuron wyjściowy. Warstwa wejściowa miała liniowy TF, ukryty miał log TF, a wyjściowy liniowy TF.
  6. Przeszkoliłem sieć z propagacją wsteczną najpierw z n-125, a następnie 10.

W obu przypadkach MSE nie spadło poniżej 0,5 i pozostało na tej wartości podczas pełnego treningu. Zakładając, że może to być spowodowane tym, że szeregi czasowe są całkowicie losowe, użyłem pakietu R, aby znaleźć częściową autokorelację w zbiorze danych (pacf). Dało to niezerowe wartości tylko dla 2 i 3 opóźnień.

Pytanie 1: Co to dokładnie znaczy?

Następnie użyłem wykładnika Hurst do oceny losowości. W R hurst (wartości) pokazał wartości powyżej 0,9.

Pytanie 2: To ma być prawie losowe. Czy powinna mieć wartość bliższą 0,5?

Powtórzyłem trening ANN przy n = 3. ANN został przeszkolony i był w stanie uzyskać dość niską wartość dla MSE. Jednak obliczona wydajność z tego ANN nie różni się znacznie od (n-1) wartości oferty. Wygląda na to, że ANN bierze ostatnią ofertę jako następną! Próbowałem różnych struktur sieciowych (wszystkie percepcje wielowarstwowe), różnych parametrów szkolenia itp., Ale wyniki są takie same.

Pytanie 3: Jak mogę poprawić dokładność? Czy istnieją inne metody szkolenia niż propagacja wsteczna?


Nie jestem pewien, czy poradzisz sobie lepiej niż przewidywanie szumu 1 / f przy użyciu przeszłych wartości jako wskaźników dla przyszłych. scholarpedia.org/article/1/f_noise#Stock_markets_and_the_GNP - dotychczasowe wyniki wydają się z tym zgodne. Prawdopodobnie powinieneś spojrzeć na inne możliwe cechy, które mają jakiś powód, aby skorelować się z przyszłymi kursami walutowymi. Gdyby to było łatwe, byłoby więcej bogatych naukowców zajmujących się danymi.
Neil Slater,

tak, może inne zmienne przyczyniają się do następnej wartości bardziej niż wartości szeregów czasowych, które sam… Ja też z tym eksperymentuję. Dziękuję za wskazówki.
user1300,

Odpowiedzi:


6

Wyniki, które widzisz, nie są produktem ubocznym twojego produktu treningowego, ale raczej neural netsnie są doskonałym wyborem do tego zadania. Neural netssą skutecznie środkiem do tworzenia nieliniowej funkcji wysokiego rzędu poprzez skomponowanie szeregu prostszych funkcji. Jest to często bardzo dobra rzecz, ponieważ pozwala sieci neuronowej dopasowywać bardzo złożone wzory.

Jednak na giełdzie każdy skomplikowany wzór szybko się rozpadnie. Wykrywanie skomplikowanego wzoru na ogół nie generuje użytecznych wyników, ponieważ zazwyczaj są to złożone wzorce w krótkim okresie. Ponadto, w zależności od wybranej metryki, istnieje wiele sposobów na uzyskanie dobrych wyników, które w rzeczywistości się nie opłacą (np. Przewidywanie ostatniej wartości w twoim przykładzie).

Ponadto giełda jest zaskakująco chaotyczna, co może prowadzić do neural netprzeregulowania. Oznacza to, że wzorce, których się uczy, będą słabo uogólnione. Coś w stylu obserwowania spadku zapasów w ciągu dnia i jednolitego decydowania, że ​​zapasy zawsze będą spadać tylko dlatego, że zaobserwowano je w stosunkowo krótkim okresie. Zamiast tego techniki takie jak ridgei robust regression, które będą identyfikować bardziej ogólne, mniej złożone wzorce, działają lepiej.

Zwycięzca podobnej konkurencji Kaggle zastosowanej robust regressionz tego właśnie powodu. Prawdopodobnie zobaczysz lepsze wyniki, jeśli przełączysz się na płytki model uczenia się, który znajdzie funkcje niższego rzędu wielomianów, nad głębokimi złożonymi funkcjami sieci neuronowej.


wielkie dzięki. Ocenię solidną regresję i zobaczę, jak pójdzie.
user1300

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.