[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 585

 
Utiliser ObjectCreate() et ObjectSet()
 

Bonjour à tous. Pouvez-vous conseiller un utilisateur inexpérimenté ? J'utilise l'indicateur "123" et j'aime beaucoup la façon dont il dessine les niveaux. Je n'ai jamais essayé avant, je n'ai jamais essayé avant. Le problème est le suivant : j'ai inséré l'indicateur dans le graphique et il a dessiné des niveaux, mais dix minutes plus tard, le prix a rebondi de 70 points et les niveaux n'ont pas changé. Je dois désactiver et réactiver l'indicateur à chaque fois que le prix bouge et il continue à dessiner de nouveaux niveaux. S'il vous plaît, conseillez-nous si vous pouvez introduire quelques paramètres dans le programme de l'indicateur pour qu'il se désactive et se réactive toutes les dix minutes avec des niveaux déjà mis à jour. Je ne suis pas doué pour la programmation, alors veuillez m'expliquer si et comment cela peut être fait. Merci d'avance à tous.


Dossiers :
123.mq4  15 kb
 

L'ishimoku redessiné est-il un indicateur pour les professionnels ?)

Je suppose que puisque le "développeur" n'a jamais terminé son indicateur, il n'a pas été d'une grande utilité :)

 
alsu:

L'ishimoku redessiné est-il un indicateur pour les professionnels ?)

Je suppose que puisque le "développeur" n'a jamais terminé son indicateur, il n'a pas été d'une grande utilité :)


Vous pensez donc qu'il n'y a aucun moyen d'automatiser cet indicateur ? Je sais que ce n'est pas un indicateur super cool, mais j'aime les niveaux qu'il dessine. Je me demande s'il est possible d'ajouter une fonction permettant de mettre à jour les niveaux automatiquement.
 
alsu:
Utiliser ObjectCreate() et ObjectSet()

Dessine des flèches, mais sur chaque barre, si nécessaire seulement lorsque la première bougie a été cassée.

https://www.mql5.com/ru/forum/111497/page583

.

 
mazan:

Vous pensez donc qu'il est impossible d'automatiser cet indicateur ? Je sais que ce n'est pas un indicateur super-duper mais j'aime les niveaux qu'il dessine et je sais les utiliser, mais le problème est que je dois parfois rafraîchir les niveaux manuellement. Je me demande s'il est possible d'ajouter une fonction permettant de mettre à jour les niveaux automatiquement.

Voici la version corrigée. Les niveaux sont mis à jour à chaque tick.


Et même maintenant, il supprime ses propres objets lorsque l'indicateur lui-même est supprimé du graphique. "Développeur" fi.

Dossiers :
123_1.mq4  16 kb
 
gince:

Il dessine des flèches, mais sur chaque barre, lorsque cela est nécessaire, seulement lorsque la première bougie est cassée.

https://www.mql5.com/ru/forum/111497/page583

.

Il est nécessaire d'analyser uniquement les barres formées, car sur le zéro High et Low sont constamment mis à jour.

Essayez de compter non pas pour(shift=0 ; ..., mais pour(shift=1 ; ..., alors il n'y aura pas de recalcul sur la barre de zéro. Et déplacez les barres analysées de 0,1,2 à 1,2,3.

 
alsu:

Vous ne devez analyser que les barres formées, car le High et le Low sont constamment mis à jour sur la barre zéro.

Essayez de compter non pas pour(shift=0 ; ..., mais pour(shift=1 ; ..., alors sur la barre de zéro aucun recalcul ne se produit. Inversez les barres analysées de 0,1,2 à 1,2,3.

Désolé, je n'ai pas compris.

Vos conditions de vie sont déréglées. C'est en haut :

      if (d1_h1 < d1_h2 && d1_l1 > d1_l2  && d1_l1 > d1_l0) 

et il devrait être

      if (d1_h1 < d1_h2 && d1_l1 > d1_l2  && d1_h1 < d1_h0) 
et de même avec la flèche vers le bas
 
alsu:

Voici la solution. Les niveaux sont mis à jour à chaque tick.


Et même maintenant, il supprime ses propres objets lorsque l'indicateur lui-même est supprimé du graphique. "Développeur" fi.


Merci infiniment, je l'ai mis dans le tableau, tout fonctionne, merci encore. Un pro est un pro. Respect !
 

Bonjour, j'essaie de comprendre comment écrire un EA. J'ai pris le modèle d'EA de l'article sur le site de mql4, j'ai ajouté mes propres conditions pour comprendre le débogage et la fonctionnalité, et j'ai entré les conditions d'ouverture des positions :

        MyATR = ((High[0] - Low[0])/Low[0]);
	 BT = Open[0] + Open[0]*iMAOnArray(MyATR ,0,PerB,0,MODE_SMA,1);
        ST = Open[0] - Open[0]*iMAOnArray((MyATR ,0,PerS,0,MODE_SMA,1);

   if (Ask >=  BT)                       // Если разница между
     {                                          // 
      Opn_B=true;                               // Критерий откр. Buy
      Cls_S=true;                               // Критерий закр. Sell
     }
   if (Bid <= ST)                       // Если разница между
     {                                          // 
      Opn_S=true;                               // Критерий откр. Sell
      Cls_B=true;                               // Критерий закр. Buy
     }

J'ai ajouté mes propres conditions (ou modifié les conditions existantes) pour que les ordres soient exécutés une fois.

Raison: