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

 
Igor Zakharov:
indirectement par la longueur des lignes et la taille des caractères.

Vous voulez dire ça ?

bool  TextGetSize( 
   const string       text,          // строка текста 
   uint&               width,        // ширина буфера в точках 
   uint&               height        // высота буфера в точках 
   );
 
Alexey Viktorov:

Vous voulez dire ça ?

mais il y a une police manquante.

 
Roman Sharanov:

mais il y a une police manquante.

Il faut donc l'associer à ça.

bool  TextSetFont( 
   const string  name,            // имя шрифта или путь к файлу шрифта на диске 
   int           size,            // размер шрифта 
   uint          flags,           // комбинация флагов 
   int           orientation=0    // угол наклона текста 
   );

Je ne l'ai pas utilisé en dehors des ressources, mais je pense qu'il ne devrait pas y avoir de problèmes.

Il y a un texte, le nom, la taille et le type de police sont spécifiés. La ligne de code suivante définit la hauteur et la largeur du texte. Et personne ne s'intéresse à l'utilisation prochaine de ces valeurs... Je pense que oui.

 
Alexey Viktorov:

Il faut donc l'associer à ceci

Je ne l'ai pas utilisé en dehors des ressources, mais je pense qu'il ne devrait pas y avoir de problèmes.

Il y a du texte, le nom, la taille et le type de police sont spécifiés. La ligne de code suivante définit la hauteur et la largeur du texte. Et personne ne s'intéresse à l'utilisation prochaine de ces valeurs... Je pense que oui.

Je l'ai vérifié, ça marche.

void TextSize( uint     &width,
               uint     &height,
               string   text, 
               string   fontName, 
               uint     flags, 
               int      fontSize, 
               int      orientation=0){
   TextSetFont(fontName,fontSize,flags,orientation);
   TextGetSize(text,width,height);
}
 

Un script de vérification :

//+------------------------------------------------------------------+
//|                                            Script Text Width.mq5 |
//|                                                   Copyright 2019 |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2019"
#property link      "https://www.mql5.com"
#property version   "1.00"
#property script_show_inputs

input string Text="Some text";

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart(){
   uint w, h;
   TextSize(w,h,Text,"Courier New",FW_NORMAL,14);
   Comment(
      Text,"\n",
      "Width: ",w,"\n",
      "Height: ",h
   );
}
//+------------------------------------------------------------------+
void TextSize( uint     &width,
               uint     &height,
               string   text, 
               string   fontName, 
               uint     flags, 
               int      fontSize, 
               int      orientation=0){
   TextSetFont(fontName,fontSize,flags,orientation);
   TextGetSize(text,width,height);
}
 

Je l'ai, merci.

Une autre question : comment définir le TF pour le débogage des données réelles ? Je comprends pour le symbole - mettez-le en haut de la fenêtre d'aperçu du marché, mais quoi que vous fassiez, le TF ouvre H1

 
Roman Sharanov:

Je l'ai, merci.

Une autre question, comment régler le TF pour le débogage des données réelles ? Je comprends pour le symbole - mettez-le en haut de la fenêtre d'aperçu du marché, mais quoi que vous fassiez, le TF ouvre H1

Service->Réglages et le symbole n'aura pas besoin d'être déplacé...


 
Qu'est-ce qui peut être mauvais ?

Je crée un synthétique en utilisant la formule ask(EURUSD)-bid(EURUSD), toutes les barres sont nulles sauf la barre actuelle.

 
SEM:
Qu'est-ce que je suis censé faire de travers ?

Je crée un synthétique en utilisant la formule ask(EURUSD)-bid(EURUSD), toutes les barres sauf la barre actuelle sont à zéro.

L'erreur peut provenir du nombre de chiffres après la virgule :


 
EA de rupture de bandes de Bollinger avec des paramètres par défaut, c'est-à-dire que si je ne change rien, il affiche des pertes dans le testeur. J'ai modifié (réduit) certains des paramètres d'entrée dans les colonnes Value et Start, je n'ai pas touché à Step et Stop, je ne sais pas - il a arrêté de négocier du tout, à zéro. S'il vous plaît, donnez moi les paramètres ou donnez moi le fichier du jeu.