RFNN – MT5

Název: REM-Neural

Verze: 1.16

Autor: Tomáš Bělák

Web: http://www.remind.cz

Popis:

Indikátor REM-Neural je nástroj využívající neuronovou síť pro predikci cenového pohybu na základě historických dat. Indikátor trénuje neuronovou síť s využitím zpětného šíření chyby (BPN) a zobrazuje predikce přímo v grafu pomocí vizuálních prvků, jako jsou rámečky a šipky.

Požadavky na instalaci:

Pro správnou funkčnost je nutné vytvořit adresář c:/NN/RFNN/ na vašem počítači. Do tohoto adresáře se budou ukládat trénované modely neuronové sítě.

Instalace indikátoru:

  1. Stáhněte soubor REM-Neural.ex5 a umístěte jej do složky Indicators vašeho MetaTrader 5 terminálu.
  2. Restartujte MetaTrader 5 nebo aktualizujte seznam indikátorů.
  3. Přidejte indikátor REM-Neural do grafu požadovaného instrumentu.

Nastavení indikátoru:

Při přidání indikátoru do grafu můžete upravit následující vstupní parametry:

  • Inputs (50): Počet vstupních svíček, které budou použity pro trénink neuronové sítě.
  • nn_hidden1 (200): Počet neuronů v první skryté vrstvě.
  • nn_hidden2 (200): Počet neuronů ve druhé skryté vrstvě.
  • Dataset_Size (500): Velikost datové množiny pro trénink.
  • PredictCount (20): Velikost predikčního okna (počet svíček, které se budou predikovat).
  • TimeShift (0): Časový posun pro predikci.
  • PIPS (50): Poměr risk/reward ratio pro vykreslování šipek.
  • TRAIL (200): Počet svíček pro stopu šipek.
  • Ratio (1000): Poměr ceny k hodnotám neuronové sítě (škálovací faktor).
  • Barvy: Nastavení barev pro různé grafické prvky (vstupní okno, výstupní data, predikce atd.).

Použití indikátoru:

  1. Spuštění tréninku:
    • Po přidání indikátoru do grafu se v horní části grafu objeví dvě tlačítka:
      • Training is: OFF/ON: Slouží k zapnutí nebo vypnutí tréninku neuronové sítě.
      • Chart Centre is: OFF/ON: Slouží k zapnutí nebo vypnutí automatického posouvání grafu během tréninku.
    • Kliknutím na tlačítko Training is: OFF změníte stav na ON a spustíte trénink neuronové sítě.
  2. Vizualizace tréninku:
    • Během tréninku se v grafu zobrazí rámečky a šipky:
      • Vstupní data: Označena rámečkem s barvou nastavenou v COLORINP.
      • Výstupní data: Označena rámečkem s barvou COLOROUT.
      • Predikce: Zobrazena pomocí rámečků a šipek s barvami COLOROUTBOX a COLORPREDICT.
  3. Ukončení tréninku:
    • Kliknutím na tlačítko Training is: ON změníte stav na OFF a zastavíte trénink.
    • Při ukončení tréninku (nebo při zavření grafu) se neuronová síť automaticky uloží do adresáře c:/NN/RFNN/.

Poznámky:

  • Ukládání modelu: Model neuronové sítě je automaticky ukládán po dokončení každé datové sady nebo při ukončení indikátoru.
  • Expirace demo verze: Indikátor obsahuje kontrolu data expirace. Po dosažení data 2024.12.31 00:00 indikátor přestane fungovat.
  • Výkon: Trénink neuronové sítě může být náročný na systémové prostředky. Doporučuje se nepoužívat příliš vysoké hodnoty pro Inputs, nn_hidden1, nn_hidden2 a Dataset_Size, pokud nemáte dostatečně výkonný počítač.
  • Resetování tréninku: Pokud chcete začít trénink od začátku nebo změnit parametry sítě, můžete smazat uložený model z adresáře c:/NN/RFNN/ nebo změnit název souboru v parametru Path v kódu (pokud jste pokročilý uživatel).

Časté dotazy:

  • Proč se mi nezobrazuje žádná predikce v grafu?
    • Ujistěte se, že jste spustili trénink kliknutím na tlačítko Training is: OFF a že indikátor běží dostatečně dlouho, aby natrénoval neuronovou síť.
  • Mohu používat indikátor na více grafech současně?
    • Ano, ale mějte na paměti, že každá instance indikátoru bude trénovat vlastní neuronovou síť, což může zvýšit nároky na výkon počítače.
  • Jak mohu zlepšit přesnost predikcí?
    • Experimentujte s různými hodnotami vstupních parametrů, jako jsou Inputs, nn_hidden1, nn_hidden2, Dataset_Size a Ratio. Vyšší počet neuronů a větší datová množina mohou zlepšit přesnost, ale také zvýší náročnost tréninku.

Upozornění:

Indikátor REM-Neural je určen pro vzdělávací a experimentální účely. Predikce poskytované indikátorem nejsou zaručené a neměly by být používány jako jediné kritérium pro obchodní rozhodnutí. Autor nenese odpovědnost za případné finanční ztráty vzniklé použitím tohoto indikátoru.

Kontakt:

Pokud máte dotazy nebo potřebujete pomoc s indikátorem, můžete kontaktovat autora na webové adrese: http://www.remind.cz

Tento článek představuje vývoj a implementaci indikátoru neuronových sítí určeného k analýze časových řad finančních dat. Implementace se zaměřuje na využití neuronových sítí s posuvným oknem pro trénink na historických datech s cílem dosáhnout vysoké přesnosti při predikci trendů. Indikátor je vyvíjen v prostředí MetaTrader 5 a využívá architekturu vícevrstvých sítí, aby zajistil přizpůsobení modelu složitým změnám v dynamice trhu.


1. Úvod

Časové řady ve finančních trzích představují specifickou výzvu kvůli své sezónní variabilitě, trendům a náhodným fluktuacím. Tradiční metody technické analýzy často nedokážou zachytit složitou povahu změn na trzích, což vede k potřebě sofistikovaných modelů, jako jsou neuronové sítě (NN). Tento článek se zaměřuje na implementaci neuronové sítě s posuvným tréninkovým oknem, která se učí a adaptuje na nová data z časových řad. Tato síť pak vytváří obchodní signály a odhaduje budoucí cenové trendy.


2. Charakteristika indikátoru a využití neuronové sítě

Indikátor využívá zpětnovazební neuronovou síť, jejímž cílem je predikce trendu na základě historických hodnot svíček (OHLC). Časová řada cen je použita k vytvoření sady tréninkových dat, která zahrnuje určité období, tzv. „posuvné okno“. Tímto přístupem lze dosáhnout pravidelného přetrénování sítě, díky čemuž se síť přizpůsobuje aktuálnímu vývoji trhu a lépe reaguje na nové vzorce v časové řadě.

V tréninkovém procesu jsou data postupně posouvána, takže starší hodnoty jsou nahrazeny novými, což zajišťuje, že síť reflektuje nejnovější podmínky na trhu. Tato metoda také přispívá k omezení nadměrného přizpůsobení historickým datům, což je častý problém u statických modelů.


3. Model neuronové sítě a její struktura

Pro analýzu časových řad využívá indikátor vícevrstvou neuronovou síť s plně propojenými vrstvami, přičemž každá vrstva má jinou úlohu. Síť se skládá z:

  • Vstupní vrstvy: zpracovává vstupní data zahrnující různé cenové hodnoty a technické indikátory.
  • Skrytých vrstev: zachycují a identifikují složité vzory v datech. Tato vrstva je klíčová pro rozpoznání trendů a krátkodobých i dlouhodobých anomálií.
  • Výstupní vrstvy: vytváří finální predikci směru nebo velikosti pohybu cen, což poskytuje obchodní signály na základě aktuálních vzorů v datech.

Sít se dále optimalizuje pomocí parciálně diferencovaných vah, což zajišťuje stabilitu modelu a konzistenci ve výsledcích.


4. Implementace a přístup k trénování

Použití posuvného tréninkového okna umožňuje sítě efektivně analyzovat nová data, aniž by docházelo ke ztrátě historických informací. V rámci tohoto přístupu se při každém cyklu trénování pracuje se specifickou podmnožinou časové řady, což snižuje zátěž paměti a zvyšuje efektivitu tréninkového procesu. V závislosti na aktuálním vývoji trhu tak síť může lépe předvídat změny trendů a upravovat predikce v reálném čase.

Tento přístup zajišťuje, že síť může reagovat na rychlé změny na trhu i na dlouhodobé trendy a sezónní efekty, které jsou ve finančních časových řadách běžné.


5. Výsledky a analýza predikcí

V rámci testování ukázal indikátor schopnost úspěšně rozpoznávat trendové změny v různých časových intervalech. Byly prováděny testy jak na reálných, tak simulovaných datech, kde síť ukázala schopnost přizpůsobit se měnícím se podmínkám. Síť vykazovala lepší stabilitu při predikci dlouhodobějších trendů, zatímco u krátkodobých výkyvů bylo dosaženo úspěšných výsledků při správně nastavených parametrech.

6. Závěr

Neuronová síť, implementovaná v indikátoru RFNN, nabízí efektivní nástroj pro predikci trendů a analýzu trhů v prostředí MetaTrader 5. Použití posuvného tréninkového okna se ukázalo jako zásadní pro přizpůsobení modelu dynamickým změnám v časových řadách. Tento přístup je příkladem řešení složitých problémů časových řad, čímž přispívá k výzkumu a vývoji adaptivních algoritmů pro finanční trhy.