Erreurs, bugs, questions - page 2781

 
Sergey Dzyublik:

"Tous les hommes sont inexplicables, chacun dans sa propre perversité, dans son propre esprit, qui est sans égal et inimitable."

А. Naumkin, "Calagia".


ZZU OK, oublie ça. J'ai déjà trouvé les réponses que je suis venu chercher. Et je sais comment les mettre en œuvre dans le code. Je vais prendre congé.
Merci encore pour votre participation.

 

Les accès aux cartes seront améliorés, c'est notre faute.

Nous avons également lancé une révision complète de tous les lieux similaires.

 
MetaQuotes:

Les accès aux cartes seront améliorés, c'est notre faute.

Nous avons également lancé une révision complète de tous les lieux similaires.

Super !
Veuillez noter que le temps d'exécution des méthodes Get dépend de nombreux facteurs différents, par exemple la largeur des barres.
Cela semble être une chose étrange à faire.


Dossiers :
 
MetaQuotes:

Les accès aux cartes seront améliorés, c'est notre faute.

J'ai également commencé une révision complète de tous les lieux similaires.

Veuillez prêter attention au bogue le plus probable dans l'affichage de la mise en évidence des parenthèses. Dans la dernière version de l'éditeur (2489), les parenthèses ne sont pas surlignées en arrière-plan comme auparavant - elles ont maintenant une couleur autre que celle des caractères ASCII, qui est définie dans les paramètres de l'éditeur :


C'est très gênant - vous ne pouvez pas voir cette mise en évidence dans un grand nombre de lignes de code.

Настройки - Справка по MetaEditor
Настройки - Справка по MetaEditor
  • www.metatrader5.com
MetaEditor обладает множеством настроек, что позволяет организовать работу в среде разработки так, как это удобно именно вам. Чтобы открыть настройки, нажмите " Общие # — включить/выключить режим автоматического открытия прокручиваемого списка с именами встроенных и пользовательских функций при вводе первых символов их названия. Цвета # В блоке...
 

Peut-être que quelqu'un connaît la réponse à une question simple :

Il existe un tableau de la forme ENUM_TIMEFRAMES tf[]={PERIOD_M1,PERIOD_M15,PERIOD_H1} ;

Nous devons en extraire le premier élément et en faire une variable. Cette variable contiendra par exemple PERIOD_M1.

Pour stocker cette variable alors dans une construction bizarre qui a besoin d'un point :

bougie [PERIOD_M1] /les crochets ne sont PAS une erreur

Je n'arrête pas d'avoir des erreurs.

La construction de la bougie de la bibliothèque CCheckNewCandle, vérifie la présence d'une nouvelle bougie.

Je ne veux pas dupliquer le code pour chaque période de temps.

Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Периоды графиков
Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Периоды графиков
  • www.mql5.com
Все предопределенные периоды графиков имеют уникальные идентификаторы. Идентификатор PERIOD_CURRENT означает текущий период графика, на котором запущена mql5-программа.
 

Bugs, bugs, questions

Alexey Topounov, 2020.06.10 12:14

Chers développeurs !

Veuillez commenter cette question. Qu'est-il arrivé à la moyenne mobile standard ?

Moyenne mobile sur M1

C'est comme ça ?


Il est inutile de s'y attaquer. Je demande de l'attention de temps en temps depuis un an maintenant.

https://www.mql5.com/ru/forum/1111/page2522#comment_12650337

https://www.mql5.com/ru/forum/1111/page2625#comment_14611834

Il n'y a pas que la moyenne mobile. Tous les indicateurs tampons sur le graphique s'éteignent.

Le plus intéressant est de savoir qui a le conseiller expert sur les procès-verbaux. La personne ne comprendra pas pourquoi elle perd.

Ошибки, баги, вопросы
Ошибки, баги, вопросы
  • 2019.07.31
  • www.mql5.com
Общее обсуждение: Ошибки, баги, вопросы
 
Bonjour. Pour autant que je puisse voir, changer cette constanteCHART_CONTEXT_MENU pour MT4 ne fait rien, mais cela fonctionnera-t-il à l'avenir ? En d'autres termes, est-il prévu en principe de mettre à jour la plate-forme MT4 en corrigeant ce qui ne fonctionne pas ?
 

MT5 (buidl 2494) concernant la vitesse d'exécution de ChartGetXXXX/ChartSetXXXXXX
Mise à jour du code "steps to play":

long chart_id;

int OnInit(){
   for(int i = 0; i < 95; ++i){
      ChartOpen(_Symbol, _Period);
   }

   chart_id = ChartID();
   EventSetMillisecondTimer(250);
   return(INIT_SUCCEEDED);
}

void OnTimer(){
  ulong t=GetMicrosecondCount();
  ChartSetInteger(chart_id, CHART_AUTOSCROLL, rand() % 2);
  long autoscroll = ChartGetInteger(chart_id, CHART_AUTOSCROLL);
  
  if (autoscroll >= 0){
     ulong delay =(GetMicrosecondCount()-t)/1000;
     if (delay>0){
       Print("Execution delay: ",delay, " ms");
     }
  }
}


Les mêmes actions qui provoquent des blocages du graphique dans les deux versions (2494 et 2009) présentent des temps d'exécution ChartGetXXXXXX très différents :
Build 2494 - plus d'une seconde.
Construire 2009 - 10 ms.

Je soupçonne que les résultats étonnamment bons de la version 2009 n'ont rien à voir avec la vitesse d'exécution de la fonction ChartGetXXXXXX mais plutôt avec l'exécution spéculative du calcul du délai variable par le processeur.
Il se peut que le test de la version 2009 ne soit pas valide...

 
Sergey Dzyublik:

MT5 (buidl 2494) concernant la vitesse d'exécution de ChartGetXXXX/ChartSetXXXXXX
Mise à jour du code "steps to play":

Pourquoi la variable autoscroll n'est-elle utilisée nulle part ? Le compilateur pourrait facilement supprimer cette opération sans aucune exécution spéculative.
 
Alexey Navoykov:
Pourquoi la variable autoscroll n'est-elle utilisée nulle part ? Le compilateur pourrait facilement supprimer cette opération sans aucune exécution spéculative.

Non, il n'est pas coupé.
Si ChartGetInteger est explicitement exclu, la vitesse passe à 4 µs (1000x).
J'ai également mis à jour le code pour ajouter la vérification de l'autoscroll afin d'exclure la spéculation.