AI EA bez Pythonu: LSTM neuronová síť akcelerovaná přes GPU (CUDA) jako DLL pro MT5.

1. Proč nejít cestou Pythonu

Python je skvělý pro výzkum. Pro provoz v MetaTraderu 5 je ale často zbytečně křehký: další runtime, bridge, latence při přenosu dat a problém „funguje mi to jen u mě“. U EA platí jednoduché pravidlo: co nemáš pod kontrolou, to tě jednou zradí.

Proto dávám přednost řešení, které běží přímo v ekosystému MT5: MQL5 + C++ DLL. Výpočet je nativní, extrémně rychlý díky GPU a bez externích interpretů. Výsledek není „demo“, ale nástroj pro dlouhodobý live trading.


2. Co přesně je moje knihovna (MQL5GPULibrary_LSTM)

Je to high-performance LSTM engine běžící nad NVIDIA CUDA, zabalený jako DLL pro Windows x64. Je navržen specificky pro potřeby tradingu:

  • Výkon GPU: Výpočty (Forward i Backprop) běží na grafické kartě, což je pro rekurentní sítě (LSTM) nutnost.
  • Asynchronní trénink: Klíčová vlastnost – učení sítě běží v odděleném vlákně, takže nezamrzne terminál MT5 ani při náročných výpočtech.
  • Robustní API: Jednotné __stdcall rozhraní, žádné C++ výjimky přes hranici DLL.
  • Persistence: Možnost uložit stav sítě (váhy, kontext) a pokračovat po restartu terminálu.
  • Žádný Python: Čisté C++/CUDA řešení.

3. Jak se to používá v MQL5

EA nebo indikátor v MQL5 připraví trénovací dávku (batch), odešle ji do DLL a spustí asynchronní trénink. Mezitím terminál normálně funguje. Jakmile je hotovo, síť se aktualizuje.

// Vytvoření sítě a definice vrstev
int net = DN_Create("MyLSTM_Model");
DN_AddLayer(net, LAYER_LSTM, 128, ACTIVATION_TANH);
DN_AddLayer(net, LAYER_DENSE, 64, ACTIVATION_RELU);
DN_AddLayer(net, LAYER_DENSE, 3, ACTIVATION_SIGMOID); // Buy/Sell/Hold

// Načtení dat a spuštění asynchronního tréninku (neblokuje graf!)
DN_LoadBatch(net, trainData, labels, batchSize);
DN_TrainAsync(net, 0.001, 0.9, 100); 

// Predikce v reálném čase
double prediction[];
DN_Predict(net, currentFeatures, prediction);

// Úklid
DN_Free(net);

MQL5 zůstává mozkem strategie (risk management, exekuce), zatímco DLL slouží jako masivní výpočetní motor na pozadí.


4. Hardwarové požadavky

Na rozdíl od jednoduchých CPU sítí, tato knihovna vyžaduje hardware, který to „utáhne“. Pro běh je nutná grafická karta NVIDIA s podporou CUDA. Odměnou je rychlost tréninku, která je na CPU nedosažitelná.


5. Závěr

Pokud to s AI v MT5 myslíte vážně a narazili jste na limity výkonu procesoru nebo nestabilitu Python bridge, toto je řešení. Kompletní zdrojový kód i zkompilovanou DLL najdete na mém GitHubu.

→ Přejít na GitHub repozitář RemindCZ/MQL5GPULibrary_LSTM