Questions des débutants MQL5 MT5 MetaTrader 5 - page 1393

 

J'ai une question.

Il existe une classe dans la bibliothèque standard CButton - un bouton. Est-il possible de définir son apparence ? Par exemple, est-il possible de le rendre tridimensionnel (pour qu'il ne soit pas un simple rectangle qui change de couleur, mais qui ressemble à un bouton) ?

 
MQL_User #:

J'ai une question.

Il existe une classe dans la bibliothèque standard CButton - un bouton. Est-il possible de définir son apparence ? Par exemple, est-il possible de le rendre tridimensionnel (pour qu'il ne soit pas un simple rectangle qui change de couleur, mais qui ressemble à un bouton) ?

Vous pouvez utiliser une autre classe :CBmpButton- vous pouvez y placer votre propre image. Dessinez une image de l'état du bouton et elle sera belle.

Документация по MQL5: Стандартная библиотека / Панели и диалоги / CBmpButton
Документация по MQL5: Стандартная библиотека / Панели и диалоги / CBmpButton
  • www.mql5.com
CBmpButton - Панели и диалоги - Стандартная библиотека - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Vladimir Karputov #:

Une autre classe vous convient :CBmpButton- vous pouvez y placer votre propre image. Dessinez une image de l'état du bouton et elle sera belle.

Vladimir, merci. Ce serait une variante intéressante.

Mais cela nécessiterait d'avoir deux fichiers bmp à portée de main - un pour le bouton pressé et l'autre pour le bouton relâché. Et la bonne taille. Si plusieurs boutons sont utilisés et qu'ils ont tous une taille différente, je dois avoir deux fichiers bmp pour chacun d'eux. Et tout cela doit être stocké quelque part...

L'idée est donc intéressante, mais elle n'est pas sans inconvénients.

Je pensais que la classe CButton avait une sorte de propriété qui définissait si le bouton était volumineux ou plat...

 
Bonjour, pourriez-vous me dire où et comment je peux obtenir des données historiques M1 sur une longue période (depuis 2015) à utiliser dans le testeur MT5 pour des instruments tels que les indices, les futures sur matières premières, l'énergie, les métaux ?
 
Rost17 #:
Bonjour, Pouvez-vous me dire où et comment je peux obtenir des données historiques M1 pour une longue période (depuis 2015) à utiliser dans le testeur MT5 pour des instruments tels que les indices, les futures sur matières premières, l'énergie, les métaux ?

Dans MetaTrade 5, vous n'avez pas besoin de "prendre quelque chose de quelque part" - dès que vous vous connectez au serveur de trading, tout l'historique est à votre disposition.

L'autre problème - et il s'agit d'une mission à faire soi-même : vous devez trouver un courtier qui fournit cet historique.

 
Comment puis-je obtenir le nombre de sessions (sessions de négociation/de cotation) ? Je vois les méthodes SymbolInfoSessionQuote() et SymbolInfoSessionTrade() où l'indice de session est le paramètre. Mais comment obtenir le nombre de sessions ?
 

Comment puis-je savoir que la fonction Bars() a renvoyé la valeur correcte (finale) ?

La particularité est la suivante.

Si l'indicateur reste dans la fenêtre lorsque le terminal est éteint, lors de la prochaine mise sous tension, pendant la période d'exécution initiale.

la fonction Bars() renvoie le nombre actuel de barres, par exemple, 5000 barres sur les 20000 spécifiées dans les paramètres.

Comment puis-je savoir que le processus d'approximation est déjà terminé ?

 
leonerd #:
Combien de sessions (négociation / cotation) à obtenir ? Je vois les méthodes SymbolInfoSessionQuote() et SymbolInfoSessionTrade() où l'indice de session est le paramètre. Mais comment obtenir le nombre de sessions ?

On ne sait pas du tout comment utiliser ces méthodes, s'il est impossible de savoir exactement quelle session demander, combien il y en a, etc.

Erreur 4307 lors de la demande d'une session qui n'existe pas. Il s'avère que pour connaître le nombre de sessions, il faut passer par tous les index, en commençant par 0 jusqu'à cette erreur.

 

Bonjour.

Question sur la documentation.

exemple à partir de là :

//--- бесконечный цикл 
void OnStart() 
  { 
   uchar  u_ch;
 
   for(char ch=-128;ch<128;ch++) 
     { 
      u_ch=ch; 
      Print("ch = ",ch," u_ch = ",u_ch); 
     } 
  }

Résultat :

   ch= -128  u_ch= 128 
   ch= -127  u_ch= 129 
   ch= -126  u_ch= 130 
   ch= -125  u_ch= 131 
   ch= -124  u_ch= 132 
   ch= -123  u_ch= 133 
   ch= -122  u_ch= 134 
   ch= -121  u_ch= 135 
   ch= -120  u_ch= 136 
   ch= -119  u_ch= 137 
   ch= -118  u_ch= 138 
   ch= -117  u_ch= 139 
   ch= -116  u_ch= 140 
   ch= -115  u_ch= 141 
   ch= -114  u_ch= 142 
   ch= -113  u_ch= 143 
   ch= -112  u_ch= 144 
   ch= -111  u_ch= 145 
    ... 

Veuillez expliquer pourquoi

   ch= -127  u_ch= 129 

au lieu de

   ch= -127  u_ch= 127 

?

 
Sergey #:

Bonjour.

Question sur la documentation.

exemple à partir de là :

Résultat :

Veuillez expliquer pourquoi

au lieu de

?

Représentation des nombres négatifs dans le code supplémentaire. https://ru.wikipedia.org/wiki/%D0%94%D0%BE%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9_%D0%BA%D0%BE%D0%B4_(%D0%BF%D1%80%D0%B5%D0%B4%D1%81%D1%82%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B0)

Raison: