Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 1074

 
jarikn:
J'ai un tel problème.
J'ai besoin d'ouvrir un ordre lorsque le prix Ask croise par exemple une MA mobile, c'est-à-dire Ask==MA. Est-ce possible ? Ou si le prix est supérieur à la MA de 3 points par exemple. Veuillez me conseiller

La condition correcte pour le passage de bas en haut, Ask était en dessous ou égal à la MA et est devenu plus haut. Soit il était sur la barre précédente et est devenu sur la barre actuelle, soit par ticks, le tick précédent et le dernier.

 
Alexey Viktorov:

La condition correcte serait une condition de croisement ascendant, la demande était inférieure ou égale à la MA et est devenue plus élevée. Soit il était sur la barre précédente et est devenu sur la barre actuelle, soit par ticks, tick précédent et dernier tick.

Merci. Il sera du type Open[0]<MA && Close[0]>MA ? ??? sinon, veuillez me montrer un exemple.
 
jarikn:
Merci. Ce sera comme Open[0]<MA && Close[0]>MA ? ??? si non, veuillez me montrer un exemple.

C'est exactement comme ça, sauf que ça ne prend pas en compte l'option que si le prix est égal à la MA. Au fil du temps, vous réaliserez vous-même de nombreuses variations.

Vous pouvez remplacer Open[0] par Close[1] et cela peut être encore plus raisonnable. Après tout, Close[1] peut être en dessous de la MA et Open[0] est déjà au-dessus.

Close[0] == SymbolInfoDouble(_Symbol, SYMBOL_BID), mais cela n'a pas vraiment d'importance.

 
Alexey Viktorov:

C'est exactement comme ça, sauf que ça ne prend pas en compte l'option que si le prix est égal à la MA. Avec le temps, vous comprendrez par vous-même un grand nombre d'options.

Open[0] peut être remplacé par Close[1] et est probablement plus raisonnable. En effet, Close[1] peut être en dessous de la MA et Open[0] est au-dessus de celle-ci.

Close[0] == SymbolInfoDouble(_Symbol, SYMBOL_BID), mais cela n'a pas beaucoup d'importance.

Je l'ai. Merci beaucoup.
 
S'il y a 2 contrôles ou plus, lequel est le plus rapide avecswitch ouif ?
 
Après avoir testé le conseiller expert avec différents courtiers sur MT5 avec une qualité de simulation de 99-100% avec les mêmes paramètres d'entrée, j'ai obtenu des résultats complètement différents : des profits cosmiques aux pertes. Avant cela, j'ai volontairement laissé MT4 car il est plus difficile d'y atteindre la même qualité de modélisation. Quel a été le résultat ? Comment le conseiller expert se comporterait-il en situation réelle ? Peut-être que quelqu'un me donnera un bon tuyau ?
 
ganri:
Après avoir testé le conseiller expert avec différents courtiers sur MT5 avec une qualité de simulation de 99-100% avec les mêmes paramètres d'entrée, j'ai obtenu des résultats complètement différents : des profits cosmiques aux pertes. Avant cela, j'ai volontairement laissé MT4 car il est plus difficile d'y atteindre la même qualité de modélisation. Quel a été le résultat ? Comment le conseiller expert se comporterait-il en situation réelle ? Peut-être que quelqu'un me donnera un bon tuyau ?

Essayez de le tester sur de vraies tiques.

 
Alexey Viktorov:

Essayez de tester sur de vraies tiques.

Même histoire : le bénéfice net 2019 diffère par un facteur de 12,9 ! !! Peut-être cela dépend-il de la latence du signal reçu chez chaque courtier ? C'est le seul indicateur qui diffère dans le testeur. Toutefois, le fait de définir une valeur de retard fixe ne change pas la situation. Peut-être qu'il suffit de choisir le "meilleur" courtier et de ne pas s'en soucier ?

 

Que signifie cet avertissement et quel est le risque pour l'EA ?


la taille des variables locales est trop importante (plus de 512kb)

 
Viatcheslav Pashkov:

Que signifie cet avertissement et quel est le risque pour l'EA ?


la taille des variables locales est trop importante (plus de 512kb)

Et si les développeurs ne se souciaient pas de la taille de la pile, et que celle-ci est de 1 Mo par défaut, le tableau (est-ce bien cela ?) déclaré sur la pile en prenait immédiatement la moitié. Ce n'est donc pas un gros problème, mais si le robot se plante en cours d'exécution avec une erreur de dépassement de pile, vous connaissez maintenant l'une des raisons possibles))).

Raison: