[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 149

 
avatara:

J'utilise toujours un certain +/-epsilon=Point*0.01 lorsque je compare les prix.

Multiplier par 1.000.000 ne fera rien. Croyez-moi.

Je ne comprends pas bien pourquoi il y aurait un problème <- bug ?

Dans la documentation :

digits   -   Precision format, number of digits after decimal point (0-8). 

Par exemple, il y a un maximum de 8 décimales, et la question en mentionnait 10 - peut-être est-ce là le problème ?

 
Elenn:

Lors de la comparaison de deux variables de type double, on obtient parfois un résultat incorrect. Cela est probablement dû au fait que l'une des variables peut être légèrement plus grande ou plus petite que l'autre (par exemple, de 10 chiffres). L'utilisation de la fonction NormalizeDouble n'est pas utile dans la plupart des cas. Certaines personnes conseillent de soustraire une variable d'une autre, mais dans ce cas, comment construire le plus correctement possible une expression if(a>=b), en soustrayant une variable d'une autre ? Ou peut-être y a-t-il un autre moyen ?

Je me suis souvenu d'un problème que j'avais moi-même observé il y a longtemps (peut-être que quelque chose a changé depuis, je ne sais pas) :

a=5 et c=4.0.

Du point de vue de MQ, il n'est pas nécessairement vrai que a>c dans ce cas particulier.

Ce serait vrai si a=5,0 et c=4,0, ou a=5 et c=4.

 

Bonjour !

Supposons que nous ayons deux nombres 1,4451 et 1,4429.

Comment prendre le dernier chiffre de 1.445[1] et 1.442[9] à partir de ces nombres ?

 
TEXX:

Bonjour !

Supposons que nous ayons deux nombres 1,4451 et 1,4429.

Comment prendre le dernier chiffre de 1.445[1] et 1.442[9] à partir de ces nombres ?

x = (10000 * y) % 10
 
Zhunko:
x = (10000 * y) % 10


et peut-on l'écrire avec des chiffres pour les idiots...

Merci d'avance ! !!

 

Bonjour ! Puis-je me répéter ? J'utilise MACDAC comme un filtre de tendance dans mon EA, est-il possible de faire en sorte que mon EA commence à analyser les signaux uniquement à partir d'une certaine barre sur un macdak et ensuite quand la tendance change, tout change à nouveau ? Par exemple MAKDAK>0 début d'une tendance, commencer à analyser les signaux seulement après la 15ème mesure d'un Makdak qui est supérieur à zéro ?

MERCI !

 
TEXX:


Peut-on l'écrire avec des chiffres, pour que les idiots...

Merci d'avance ! !!


1.Référence MQL4 (MetaEditor)-->Les bases du langage-->Opérations et Expressions-->Opérations arithmétiques
2.Tutorial -->https://book.mql4.com/ru/basics/expressions
x = (10000 * 1.4451) % 10, où "%" est l'opération arithmétique "reste de la division" (dans notre cas par "10"), "*" est l'opération arithmétique "multiplication des valeurs".
 
SeALALex:

Bonjour, puis-je me répéter ? J'utilise MACDAC comme filtre de tendance dans mon EA, est-il possible de faire en sorte que mon EA commence à analyser les signaux uniquement à partir d'une certaine barre sur le macdak et, si la tendance change, recommence à analyser les signaux ? Par exemple, MACD>0 commence une tendance, commencer à analyser les signaux seulement après la 15ème barre du macdak qui est supérieur à zéro ?.

MERCI !

Quel est le problème ? Rappelez-vous de la barre (heure) où le MACD passe par 0, et pour chaque nouvelle barre, comparez la distance qui l'en sépare. Si Delta>15 => allez-y.

 

Veuillez me dire ce qui ne va pas !



avatar
1
smith 06.09.2011 13:08
J'ai créé un tipster, par stratégie je dois placer un ordre par heure au prix de l'open bar (h1) par rapport au prix de l'open bar. Lorsqu'il est testé sur la barre résultante, tout est OK, mais lorsqu'il est testé sur toutes les échelles de temps (cependant, comme dans la transaction réelle), à chaque changement de prix, il place un ordre l'un après l'autre (comment puis-je le contrôler ?). Je l'ai essayé sur mt4 et mt4 terminal aussi. Veuillez suggérer une fonction pour ce type de problème, de préférence avec un exemple.
 
sergeev:

Veuillez me dire ce qui ne va pas !



1
smith 06.09.2011 13:08
J'ai créé un tipster, par stratégie je dois placer un ordre par heure au prix de l'open bar (h1) par rapport au prix de l'open bar. Lorsqu'il est testé sur la barre résultante, tout va bien, mais lorsqu'il est testé sur toutes les échelles de temps (cependant, comme dans la transaction réelle), à chaque changement de prix, il place un ordre l'un après l'autre (comment puis-je le contrôler ?). Je l'ai essayé sur mt4 et mt4 terminal aussi. Veuillez suggérer une fonction pour ce type de problème, de préférence avec un exemple.

.. Lors d'un test utilisant la méthode "Tous les tics".

La variable globale est définie au début (avant start() ) :

datetime TimeHandle = 0;

start() {
   i = 0;                        // Для Советников
   if(TimeHandle!=Time[i]) {
      TimeHandle = Time[i];

   . . . 

   }
}