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

 
Igor Makanu:

datetime o_open = OrderOpenTime() ;

MqlDateTime dt_struct ;

TimeToStruct( o_open, dt_struct;)

int min = dt_struct.min ;

Senx.
 
Ai-je bien compris que de nouvelles feuilles ne peuvent pas être créées lors de l'écriture dans le csv (de manière programmatique, à partir du terminal) ?
 
Yevhenii Levchenko:
nouvelles feuilles lors de l'écriture en csv
Déconcerté. J'ai essayé d'enregistrer un livre avec 3 feuilles en csv à partir d'Excel :

.


Il n'y a que des séparateurs de colonnes dans le csv, je ne pense pas qu'il y ait d'autres balises.
 
Aleksei Stepanenko:
Déconcertant. J'ai essayé d'enregistrer un livre de 3 feuilles en csv à partir d'Excel :


Il n'y a que des séparateurs de colonnes dans le csv, il n'y a pas d'autres balises.

Oups ! Je ne savais pas que c'était une caractéristique du format. Moi, quand j'essaie d'enregistrer un livre avec plusieurs feuilles, ça ne se désinscrit pas comme ça... Il efface simplement la feuille précédente et en enregistre une nouvelle vierge

Merci !

 
Yevhenii Levchenko:

Vous êtes les bienvenus :)

 
Bonne journée. S'il vous plaît dites-moi s'il vous plaît, j'aiécrit un indicateur avec Alert (messages et sorties sonores dans certaines conditions), tout fonctionne, mais chaque fois que je change de graphique Timeframe, il donne un signal à nouveau. Comment puis-je le réparer ? Le code d'alerte est placé dans une fonction séparée qui est appelée pour vérifier depuis OnCalculate. Si c'est juste un EA, cela fonctionne bien, mais j'ai besoin d'une représentation graphique comme je l'ai fait, sans déclencher à nouveau lors d'un changement de délai.
Как самому создать советника или индикатор - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
Как самому создать советника или индикатор - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
  • www.metatrader5.com
Для разработки торговых систем в платформу встроен собственный язык программирования MetaQuotes Language 5 (MQL5), среда разработки MetaEditor и инструменты тестирования стратегий. Любую информацию о разработке торговых стратегий на языке MQL5 можно найти на официальном сайте MQL5.community. На этом же сайте в разделе Code Base могут быть...
 
Progaus:
Bon après-midi. Pouvez-vous me dire s'il vous plaît, j'aiécrit un indicateur avec Alert (messages et sorties sonores dans certaines conditions), tout fonctionne, mais chaque fois que vous changez de timeframe graphique, donne à nouveau un signal. Comment puis-je le réparer ? Le code d'alerte est placé dans une fonction séparée qui est appelée pour vérifier depuis OnCalculate. Si c'est juste un EA, cela fonctionne bien, mais j'ai besoin d'une représentation graphique comme je l'ai fait, sans se déclencher à nouveau lors d'un changement de période.

Lorsque l'on change de cadre temporel, l'indicateur repart de 0.

En conséquence, nous devrions lui apprendre à se souvenir qu'Alert a déjà été émis - de manière fiable, en stockant cette information dans des variables globales du terminal ou dans un fichier temporaire, et il semble possible (je ne l'ai pas utilisé moi-même) de faire simplement une variable statique.

Par exemple, vous pouvez enregistrer l'heure de la dernière alerte et ne pas siffler une nouvelle alerte si moins de 2 secondes se sont écoulées.

 
Maxim Kuznetsov:

Il semble possible (je ne l'ai pas utilisé moi-même) de créer simplement une variable statique.

Lorsque vous changez de TF, une nouvelle copie de l'indicateur est créée et l'ancienne est supprimée.

pour EA il est possible (et nécessaire ?) d'utiliser des variables statiques (ou déclarées globalement) ... il y a cependant quelques nuances, mais en général il n'y a pas de problèmes

Maxim Kuznetsov:

lorsque vous changez de cadre temporel, l'indicateur repart de 0.

prev_calculé sera remis à zéro lors du premier appel de OnCalculated().



c'est-à-dire créer une variable globale du terminal ou un objet graphique comme marqueur que l'indicateur était déjà sur ce graphique et chercher cet objet graphique lors du premier appel.

 
Chers collègues, je vous prie de bien vouloir m'excuser pour cette question élémentaire, c'est juste que je ne suis pas devant mon ordinateur en ce moment, mais je dois le faire.
Quel est le meilleur moyen de connaître l'heure actuelle en minutes ?
 
Aleksey Masterov:
Chers collègues, excusez-moi tout de suite pour cette question élémentaire, je n'ai tout simplement pas d'ordinateur, mais je dois le faire.
Quel est le meilleur moyen de connaître l'heure actuelle en minutes ?

TimeCurrent()https://www.mql5.com/ru/docs/dateandtime/timecurrent

Utiliser la deuxième version de la signature de cette fonction :

datetime  TimeCurrent(
   MqlDateTime&  dt_struct      // переменная типа структуры
   );


ZS : Je devrais le dire tout de suite - cela fonctionne dans MT4, je l'ai utilisé ;)

UPD : dans MT4 j'ai aussi utilisé Hour() et Minute() - je ne les utilise plus depuis longtemps, mais ils devraient donner le dernier temps du serveur en heures et en minutes

Raison: