MetaTrader 4 Build 529 beta publié avec un nouveau compilateur - page 123

 
Wahoo:

Sur le même compte de démonstration (graphique en direct) avec le même ensemble, des transactions ouvertes, pas de requotes...

Demo n'est pas un testeur. Vous devez écrire des EAs robustes pour qu'ils passent les tests même avec des requotes =)
 
komposter:
La démo n'est pas un testeur. Vous devriez écrire des EAs robustes pour qu'ils passent les tests même avec des requotes =)

Il y a quelque chose de suspect là-dedans. Erreur 138. Dans le testeur, il apparaît généralement lorsque vous essayez d'ouvrir un ordre en attente sur le marché, ou vice versa - définir un ordre de marché comme un ordre en attente.

 
Wahoo:

Suis-je le seul à avoir des citations dans le testeur :) ?

Comment vivre plus loin ?

Sur le même compte de démonstration (graphique en direct) avec le même ensemble de transactions ouvertes, sans requotes...

Qu'est-ce que vous avez dans votre code dans la fonction d'ouverture ?
 

Si vous écrivez le nom du programme en russe, il y a des problèmes avec l'affichage de ce nom :

//+------------------------------------------------------------------+
//|                                            Из справки пример.mq4 |
//|                               Copyright 2013, Artyom A. Trishkin |
//|                       https://www.mql5.com/ru/users/artmedia70 |
//+------------------------------------------------------------------+

Est-ce que cela reste, ou est-il possible de l'ajuster ? Juste pour une référence future.

 

L'erreur doit se trouver dans la section d'aide sous Fonctions --> Fonctions de traitement des événements. Il y a une ligne dans l'exemple de l'indicateur :

int bars=Bars(Symbol(),0);

Le compilateur ne connaît pas cette fonction. iBars insérés pour compiler l'exemple.

 
Wahoo:


Mon SymbolSelect() ne fonctionne pas


Pouvez-vous expliquer la signification physique de votre code ?

Le symbole est déjà sélectionné si son graphique est ouvert, ce qui est le cas de ce conseiller expert.

Vous ne pouvez pas re-sélectionner un symbole déjà sélectionné. Vous ne pouvez pas masquer un symbole dont le graphique est ouvert.

 
artmedia70:

L'erreur doit se trouver dans la section d'aide sous Fonctions --> Fonctions de traitement des événements. Il y a une ligne dans l'exemple de l'indicateur :

Le compilateur ne connaît pas cette fonction. iBars a été inséré pour compiler l'exemple.


Bars est une variable prédéfinie dans quadruple. Il contient le nombre de barres de la période de symbole actuelle, sur le graphique duquel l'indicateur expert-script fonctionne.

Nous avons déjà implémenté la première variante de la fonction CopyXXX. Elles sont conçues pour être compatibles avec F5 (en fait, la sémantique des fonctions elles-mêmes devrait très bien s'adapter à F4).

Nous réfléchissons maintenant à ce que nous allons faire de la fonction Bars, puisque nous voulons une compatibilité maximale du code source avec MQL5.

 
stringo:

Bars est une variable prédéfinie dans foursquare. Contient le nombre de barres de la période de symbole actuelle, sur le graphique sur lequel le script Expert Advisor fonctionne.

Nous avons déjà implémenté la première version de la fonction CopyXXX. Elles sont conçues pour être compatibles avec F5 (en fait, la sémantique des fonctions elles-mêmes devrait très bien s'adapter à F4).

Nous réfléchissons maintenant à ce que nous allons faire de la fonction Bars, puisque nous voulons une compatibilité maximale du code source avec MQL5.

Ainsi, à l'avenir, Bars ne sera pas seulement une variable prédéfinie, mais aussi une fonction portant le même nom : Bars() ?
 

Bonjour !

Nous avons trouvé le problème suivant.

Nous insérons le bloc de passage des cotations à 4 chiffres à celles à 5 chiffres (le code fonctionne absolument bien, il a été testé sur des dizaines d'Expert Advisors) :

int init()
{

/**************************/
/* ПЕРЕХОД НА 5-ЗНАК      */ 
/**************************/
    
   int _digits = (int)MarketInfo(Symbol(), MODE_DIGITS);
   if (_digits == 5 || _digits == 3)
   {
      TakeProfit  *= 10;
      Dist        *= 10;
      slip        *= 10;
      Step        *= 10;
      InitPipStep *= 10;
   }
   
/**************************/

De là, vous pouvez voir ce qui suit.

Nous faisons apparaître les paramètres d'entrée de l'Expert Advisor en appuyant sur F7, tout est correct :

Appuyez sur OK, puis appuyez à nouveau sur F7 :

Appuyez sur OK, puis appuyez à nouveau sur F7 :

Appuyez sur OK, puis appuyez à nouveau sur F7 :

Et ainsi de suite......

Ce bogue ne disparaît pas avec les mises à jour. Apparaît de la même manière chez différents utilisateurs. Sujet abordé ici

 
artmedia70:

Si vous écrivez le nom du programme en russe, il y a des problèmes avec l'affichage de ce nom :

Cela reste-t-il ou est-il possible de le corriger ? Juste pour une référence future.


Vous feriez mieux de tout écrire en anglais, si votre code arrive chez un commerçant étranger, il ne comprendra rien...