Indicateurs: HTF Reversal Divergences

HTF Reversal Divergences:

Un indicateur multi-cadres qui présente la divergence RSI. + Signaux d'achat/de vente Inspiré de la vision du trading.

HTF Reversal Divergences

Author: Hammad Dilber

Bien vu ! Les traders peuvent sans aucun doute gagner quelques pips grâce aux signaux d'entrée de cet indicateur. 👍

J'ai toutefois rencontré cette erreur dans l'onglet « Experts ». (J'avais 2 autres graphiques et 2 EA en cours d'exécution dans le même terminal, donc...)

erreur

Ryan L Johnson #:

Bien vu ! Les traders peuvent sans aucun doute gagner quelques pips grâce aux signaux d'entrée de cet indicateur.👍

J'ai toutefois rencontré cette erreur dans l'onglet « Experts ». (J'avais deux autres graphiques et deux EA en cours d'exécution dans le même terminal, donc…)


Merci d'avoir partagé cette capture d'écran ! Cette erreur apparaît car votre terminal exécutait deux EA et plusieurs graphiques en même temps, ce qui a entraîné une charge CPU élevée sur votre PC. L'indicateur en lui-même fonctionne correctement. Essayez de le lancer sur un nouveau graphique sans aucun autre EA en cours d'exécution et voyez si l'erreur disparaît. Tenez-moi au courant si elle persiste !
Hammad Dilber #:
Merci d'avoir partagé cette capture d'écran !

Merci pour votre réponse rapide. Voici quelques captures d'écran supplémentaires :

Processeur

test

Hammad Dilber #:
Cette erreur apparaît car votre terminal exécutait simultanément deux EA et plusieurs graphiques, ce qui a entraîné une charge CPU élevée sur votre PC.

Vous trouverez ci-joint une capture d’écran de la charge du processeur sur le PC sur lequel j’ai exécuté l’indicateur. Bien que ce PC ne soit pas exactement à la pointe de la technologie, il est capable de gérer de nombreuses applications simultanément sans surcharger son processeur. Je suis donc presque certain que le problème provient de MT5 et non de Windows ni de limitations matérielles.

Hammad Dilber #:
L'indicateur en lui-même fonctionne correctement.

La capture d'écran de l'onglet « Experts » de MT5 montre quelques tests Print() utilisant TimeLocal() à l'adresse suivante :

  1. au début de la fonction OnInit(),
  2. à la fin de la fonction OnInit(),
  3. au début de la première exécution de OnCalculate(), et
  4. à la fin de la première exécution de OnCalculate().
Sans tenir compte des millisecondes, la première exécution de OnCalculate() a pris 3 secondes. C'est en effet le temps qu'il a fallu pour que le tampon et les objets de l'indicateur apparaissent sur le graphique.

Hammad Dilber #:
Veuillez essayer de l'exécuter sur un graphique vierge, sans aucun autre EA en cours d'exécution, et voir si l'erreur disparaît.

Le test ci-dessus a été effectué sans aucun autre code chargé dans MT5 et alors que le marché était fermé.

J’ai moi-même programmé bon nombre d’indicateurs qui dessinent des zones tampons et/ou des objets, et ceux qui dessinent de nombreux objets (en particulier ceux qui se mettent fréquemment à jour) sont les plus lourds pour MT5. Je ne dis pas que les graphiques et les EA que j’exécutais auparavant en même temps que votre indicateur n’ont eu aucun effet sur le problème, mais d’après mon expérience, MT5 est assez efficace pour identifier le programme le plus lent qui déclenche le drapeau d’arrêt — et le temps d’exécution unique de 3 secondes (illustré ci-dessus) n’est probablement pas une coïncidence.

Pour info… Je ne m’étendrais pas autant sur le sujet si je n’étais pas aussi intéressé par l’utilisation de votre indicateur.

حەمەد دڵبەر وێنەی # :
Merci pour le message d'erreur ! À ce sujet, j’ai effectué une ou deux opérations d’achat sur le terminal, ainsi que quelques opérations de vente, j'ai connecté mon PC à la console. C'est moi-même qui l'ai fait. J'ai effectué une nouvelle configuration de démarrage, mais je ne sais pas si les EA fonctionnent correctement ou non.si c’est net ou pas. Je vous tiendrai au courant dès que possible !
spas boblaw krdnawae shasha
henar #:
spas boblaw krdnawae shasha

Veuillez traduire en anglais sur DeepL Translate : le traducteur le plus précis au monde

Merci.

Le gros du problème réside dans la fonction personnalisée UpdateHTFData(), qui s'exécute à chaque tick et contient la fonction CopyRates(), plusieurs boucles et de nombreux tableaux.

test_2

Ryan L Johnson #:

La majeure partie du problème réside dans la fonction personnalisée UpdateHTFData(), qui s'exécute à chaque tick et contient la fonction CopyRates(), plusieurs boucles et de nombreux tableaux.


Merci pour ces tests détaillés et ces captures d’écran. Vous avez raison, le délai de 3 secondes provient de la fonction UpdateHTFData(), car elle s’exécute à chaque tick et contient la fonction CopyRates(), plusieurs boucles et des tableaux. Je vais l’optimiser pour qu’elle ne s’exécute qu’à l’apparition d’une nouvelle barre, plutôt qu’à chaque tick. Je partagerai bientôt la version mise à jour.
Hammad Dilber #:
Merci pour ces tests détaillés et les captures d’écran. Vous avez raison, le délai de 3 secondes provient de la fonction UpdateHTFData(), car elle s’exécute à chaque tick et contient la fonction CopyRates(), plusieurs boucles et des tableaux. Je vais l’optimiser pour qu’elle ne s’exécute qu’à l’apparition d’une nouvelle barre, plutôt qu’à chaque tick. Je partagerai bientôt la version mise à jour.

Génial !

Merci.

La version initiale ne fonctionnait pas avec EA car elle était très lourde. J'ai essayé de contribuer à la corriger afin qu'elle puisse fonctionner avec EA sans utiliser trop de mémoire du processeur.
Dossiers :
Dwi Anto #:
La version initiale ne fonctionnait pas avec EA car elle était très gourmande en ressources. J'ai essayé de contribuer à la corriger afin qu'elle puisse fonctionner avec EA sans utiliser trop de mémoire CPU.

Il s'agit d'un problème connu. Le développeur travaille déjà à sa résolution :

Forum consacré au trading, aux systèmes de trading automatisés et au test de stratégies de trading

Indicateurs : HTF_Reversal_Divergences

Hammad Dilber, 13/04/2026 à 06h30

Merci pour ces tests détaillés et les captures d'écran. Vous avez raison, le délai de 3 secondes provient de la fonction UpdateHTFData(), car celle-ci s'exécute à chaque tick et contient CopyRates(), plusieurs boucles et des tableaux. Je vais l'optimiser pour qu'elle ne s'exécute qu'à chaque nouvelle barre, et non plus à chaque tick. Je partagerai bientôt la version mise à jour.