![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Peut-être que Renat peut voir ce que l'on peut apprendre de cela. Il est tout à fait possible que la nouvelle spécification donne de meilleures performances dans MQL5 également, n'est-ce pas ?
Quant à C#/C++, si besoin est, on peut aussi le laisser tomber. L'essentiel est d'obtenir le rendement maximal possible. ;)
J'ai testé certains des scripts de ce fil de discussion sur une telle machine :
CPU-Z
CUDA-Z
Pour chaque script, je fournirai un lien vers l'article où il a été publié afin que d'autres puissent le trouver rapidement, exécuter les tests et comparer les résultats si nécessaire.
Test 1
Test 2
Test 3
échelle = 1000
Test 4
Test 5
Test 6
Test7
Test 8
J'ai également essayé de tester l'indicateurqpu_EMA-Rainbow de MetaDriver.
Sur le CPU, le résultat est parfois jusqu'à 2x meilleur. Voici le résultat :
//---
Volodya(MetaDriver), montrez-moi vos résultats ?
P.S. J'ai changé mon type dans le code du noyau dans les paramètres de la fonction gpuEMA de__global à__local. Un peu plus rapide, mais toujours plus lent que sur le CPU.
J'ai également essayé de tester l'indicateurqpu_EMA-Rainbow de MetaDriver.
Sur le CPU, le résultat est parfois jusqu'à 2x meilleur. Voici le résultat :
Volodya(MetaDriver), montrez-moi vos résultats ?
P.S. Changement dans le code du noyau des paramètres de la fonction gpuEMA de__global à__local. Un peu plus rapide, mais toujours plus lent que sur le CPU.
J'ai des résultats similaires. Cela a été discuté depuis longtemps, et c'est logique - la tâche est trop simple, le transfert de mémoire vers et depuis la carte vidéo n'est pas rentable. L'avantage du GPU apparaît dans des tâches plus complexes.
Un exemple d'utilisation de l'accélération GPU pour le trading (produits dérivés).
Mark Joshi - célèbre pour ses livres sur les mathématiques financières, en particulier sur les produits dérivés et le commerce des options, a rendu compte ici de son travail :
http://ssrn.com/abstract=2388415
Il a traduit son travail de style OOP en GPU CUDA. Il a commencé en 2010, puis a fait une pause, et de 2011 à l'été 2014, il est parvenu à la version 0.3. Il a réussi à atteindre une accélération de 100X... 137X fois - et cela avec un algorithme extraordinaire, ce qui est difficile.
Le travail a utilisé la bibliothèque QuantLib en C++, qu'il admet lui-même avoir dû retravailler dans le sens "POO ->-> approche procédurale" - afin de faire fonctionner le tout sur le GPU CUDA.
Il écrit :
"J'ai mis en œuvre la tarification de Monte Carlo de l'IRD avec le LMM sur le GPU avec les moindres carrés pour les caractéristiques de l'exercice précoce.
Vous pouvez obtenir le code de kooderive.sourceforge.net en C++ et CUDA. Le document est disponible à l'adresse suivante : ......
J'ai utilisé un code complètement différent pour CUDA de celui que j'avais précédemment utilisé pour C++. En substance, je traite les données comme le concept central et j'utilise le code pour agir sur les données. Le style est très fonctionnel. Cela m'a demandé beaucoup de travail car mes précédentes implémentations C++ étaient orientées objet."
Son projet lui-même est open source :
http://sourceforge.net/projects/kooderive/