Questions des débutants MQL4 MT4 MetaTrader 4 - page 40

 
Игорь:

Je l'ai placé sur un graphique vierge, tout s'affiche et compte comme il se doit.

Je ferme et démarre le terminal Capture d'écran 1

J'ai changé le TF et tout apparaît à nouveau et fonctionne jusqu'au prochain redémarrage.

Je veux juste éviter de cocher le TF parce que j'ai toujours des indices payants qui prennent 1 à 2 minutes pour recalculer.

J'ai essayé avec une fenêtre et sans fenêtre.

le problème se pose au démarrage

Je pense qu'il y a un problème avec le réglage de la marque de texte.

 
Игорь:

Problème au démarrage

Je suppose qu'il y a un problème avec la définition de l'étiquette du texte.

Une chose que je ne comprends pas est pourquoi vous avez toutes les variables initialisées dans votre code ?

comme ceci

double s = ....

Tout cela devrait être là avant init(), mais sans les expressions

double e,p,r,s,t ;


et le code ne contient que des expressions

void init()

{

s=...

}

void start()

{

r=...

t=...

}

Jouez un peu, reconstruisez le code correctement.

Et tout fonctionnera, je l'espère.

 
Renat Akhtyamov:

Une chose que je ne comprends pas : pourquoi toutes vos variables sont-elles initialisées dans votre code ?

comme ceci

double s = ....

Tout cela devrait être là avant init(), mais sans les expressions

double e,p,r,s,t ;


Je n'ai que des expressions dans le code.

void init()

{

s=...

}

void start()

{

r=...

t=...

}

Jouez un peu, reconstruisez le code correctement.

Et tout fonctionnera, je l'espère.

Je suis autodidacte et je n'ai pas écrit ce code, mais je l'ai volé sur son site

Il ne répondra pas à vos questions et ne corrige les bugs que contre rémunération.

le code fonctionne, je l'utilise depuis longtemps et j'ai écrit beaucoup d'informations utiles sur ce code.

mais tous ont le même problème après le redémarrage.

Je me bats avec depuis longtemps mais je vais essayer votre dernière version.

Je vous le ferai savoir !

 
Игорь:

Je suis autodidacte et je n'ai pas écrit ce code, programmeur professionnel KIMIV IGORI depuis son site

mais il ne répondra pas à vos questions et ne corrige les bugs que contre rémunération.

le code fonctionne, je l'utilise depuis longtemps et j'ai écrit beaucoup d'informations utiles sur ce code.

mais tous ont le même problème après le redémarrage.

Je me bats avec depuis longtemps mais je vais essayer votre dernière version.

Je vous en ferai part !

Je ne comprends pas pourquoi, mais au redémarrage il jure à cet endroit

DoubleToStr(s/AccountBalance()*100.0, 2)

error 2016.12.20 21:31:43.360 test USDCHF,H4 : zero divide in 'test.mq4' (93,26) - Division par zéro.


 
Sergey Gritsay:

Je ne sais pas encore pourquoi, mais lors du rechargement il jure à cet endroit

DoubleToStr(s/AccountBalance()*100.0, 2)

error 2016.12.20 21:31:43.360 test USDCHF,H4 : zero divide in 'test.mq4' (93,26) - Division par zéro.


Mettez une pause dans inite ou faites une sorte de vérification pour balance == 0, Expert Advisor se charge plus vite que le terminal se connecte au serveur et la balance est inconnue au moment du démarrage, c'est-à-dire zéro.
 

Bonjour à tous)

Je suis nouveau sur mql4 et je me débrouille tout seul... Je suis nouveau sur mql4 alors s'il vous plaît ne soyez pas trop dur avec moi).

Je veux automatiser ma stratégie de trading et je l'utilise pour écrire un conseiller expert.

Il est nécessaire dans la section"Commentaire" que l'information sur le tableau soit affichée avec une disposition en tableau. Disons que j'ai besoin de trois colonnes et d'environ 10 lignes.
S'IL VOUS PLAÎT ! !! comment faire ?

 
Sergey Gritsay:

Je ne sais pas encore pourquoi, mais lors du rechargement il jure à cet endroit

DoubleToStr(s/AccountBalance()*100.0, 2)

error 2016.12.20 21:31:43.360 test USDCHF,H4 : zero divide in 'test.mq4' (93,26) - Division par zéro.


Comme le graphique s'est chargé, mais ne s'est pas connecté au serveur, le résultat est une division par zéro.

Nous devons vérifier si : if(AccountBalance()== 0) { return(0) ; }

Remplacer la ligne :

// +"пипс "+DoubleToStr(s/AccountBalance()*100, 2)+"%", ecText, 130, 5, eiCorner);

+"пипс "+DoubleToStr(s/(AccountBalance()==0?1:AccountBalance())*100, 2)+"%", ecText, 130, 5, eiCorner);
 
Игорь:

Je suis autodidacte et je n'ai pas écrit ce code, programmeur professionnel KIMIV IGORI depuis son site

mais il ne répondra pas à vos questions et ne corrige les bugs que contre rémunération.

le code fonctionne, je l'utilise depuis longtemps et j'ai écrit beaucoup d'informations utiles sur ce code.

mais tous ont le même problème après le redémarrage.

Je me bats avec depuis longtemps mais je vais essayer votre dernière version.

Je vous le ferai savoir !

J'ai éliminé une erreur dans votre code et rendu l'affichage des informations un peu plus joli.
Dossiers :
test.mq4  56 kb
 
Sergey Gritsay:
Igor a éliminé une erreur dans votre code et a rendu l'affichage des informations un peu plus agréable.

Merci, gentilhomme, je vais être coincé avec le code pendant une semaine !

Votre photo est superbe !

Je vais l'utiliser !

J'aimerais utiliser le mien, il est clair et fonctionne !

Sans vouloir vous offenser, je vais utiliser le vôtre aussi - mais je n'ai pas encore beaucoup de temps !

Peut-être que quelqu'un utilisera le mien !

 
Vitaly Muzichenko:

Comme le graphique a été chargé mais qu'aucune connexion au serveur n'a eu lieu, le résultat est une division par zéro.

Nous devons mettre un chèque si : if(AccountBalance()== 0) { return(0) ; }

Remplacez la ligne :

// +"пипс "+DoubleToStr(s/AccountBalance()*100, 2)+"%", ecText, 130, 5, eiCorner);

+"пипс "+DoubleToStr(s/(AccountBalance()==0?1:AccountBalance())*100, 2)+"%", ecText, 130, 5, eiCorner);

Je n'ai pas eu d'erreurs, j'ai regardé !

UN ÉNORME MERCI tout a enfin fonctionné ! !!!

Je suis très heureux d'avoir enfin terminé tous mes travaux ! !!

Merci encore ! !!!!!!!!!!!!!!!!!!

Raison: