stringo: Il s'agit d'une erreur dans la documentation. La numérotation des jours d'une année commence à partir de 0. Merci.
Je comprends que c'est plus compliqué, mais cela semble plus familier (pour le profane, mais pas pour le programmeur). Le 1er janvier est un jour de l'année. Je pense que la référence est correcte.
Prival: Je comprends que c'est plus compliqué, mais cela semble plus familier (pour le profane. Pour le programmeur, c'est bon). Le 1er janvier est le premier jour de l'année. Cela me semble juste dans l'aide.
Nous traduisons la structure de temps du système standard à notre structure MqlTime
Pour une raison quelconque, je ne peux pas télécharger le terminal à partir du serveur, il est indiqué "failed to download data from server", quel est le problème ?
Bonjour, pouvez-vous m'aider à traduire la fonction de mt4 à mt5. Je l'ai traduit, mais ce n'est pas bon, si vous n'êtes pas dur, s'il vous plaît envoyez-moi le bon code, je ne suis pas très bon en MQL. Je commence tout juste à l'apprendre.
//+------------------------------------------------------------------+ #property copyright "2010, MetaQuotes Software Corp." #lien de propriété"http://www.mql5.com" #propriété version "1.00" //--- paramètres d'entrée
//+------------------------------------------------------------------+ //| Fonction d'initialisation de l'expert| //+------------------------------------------------------------------+ int OnInit() { retour(0) ; } //+------------------------------------------------------------------+ //| Fonction de désinitialisation des experts| //+------------------------------------------------------------------+ void OnDeinit(const int reason) {
MQL5: language of trade strategies built-in the MetaTrader 5 Trading Platform, allows writing your own trading robots, technical indicators, scripts and libraries of functions
Le bouton est destiné à insérer le code source MQL dans le texte du message. Dès que vous appuyez sur ce bouton, une fenêtre vide apparaît, dans laquelle vous devez insérer le code, puis appuyer sur le bouton Insérer. Pour annuler l'insertion du code, appuyez sur le bouton Annuler.
Il n'est pas recommandé de mettre du code en gras afin de faire ressortir certains morceaux de code d'une certaine manière. Le fait est que les polices mono-espaces s'affichent différemment selon les systèmes d'exploitation et les navigateurs. Par exemple, Windows Vista utilise la police monospace Consolas, qui possède une police en gras pour la taille 10, presque impossible à distinguer d'une police ordinaire.
Bonjour, pouvez-vous m'aider à traduire la fonction de mt4 à mt5. Je l'ai traduit, mais ce n'est pas bon, si vous n'êtes pas dur, s'il vous plaît envoyez-moi le bon code, je ne suis pas très bon en MQL. Je commence tout juste à l'apprendre.
//+------------------------------------------------------------------+#property copyright "2010, MetaQuotes Software Corp."#property link "http://www.mql5.com"#property version "1.00"//--- input parametersinputdouble Lots=0.1;
inputbool MM = true;
inputdouble Risk = 10;
//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+intOnInit()
{
return(0);
}
//+------------------------------------------------------------------+//| Expert deinitialization function |//+------------------------------------------------------------------+voidOnDeinit(constint reason)
{
}
//+------------------------------------------------------------------+//| Expert tick function |//+------------------------------------------------------------------+voidOnTick()
{
if( MM ) Lots = LotSon(); //вызов функции LotSon
}
//+------------------------------------------------------------------+double LotSon()
{
double LotMin = SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MIN);
double LotMax = SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MAX);
double LotStep = SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_STEP);
double Lot = AccountInfoDouble(ACCOUNT_FREEMARGIN)/100000.0 * Risk;
Lot = MathMin(Lotmax,MathMax(Lotmin,Lot));
if (Lot < LotMin) Lot = LotMin;
if (Lot > LotMax) Lot = LotMax;
// Вариант первыйswitch(LotStep)
{
case0.01: return(NormalizeDouble(Lot,2));
case0.1 : return(NormalizeDouble(Lot,1));
case1.0 : return(NormalizeDouble(Lot,0));
}
// Вариант второй// if (LotStep == 0.01)return(NormalizeDouble(Lot,2));// if (LotStep == 0.1) return(NormalizeDouble(Lot,1));// if (LotStep == 1.0) return(NormalizeDouble(Lot,0));// Вариант третий// if (LotStep == 0.01)return(NormalizeDouble(Lot,2));// else if (LotStep == 0.1) return(NormalizeDouble(Lot,1));// else if (LotStep == 1.0) return(NormalizeDouble(Lot,0));
}
Et à ce stade du développement : les paramètres, l'appel de la fonction et la fonction elle-même doivent afficher ou non les erreurs de compilation. Si oui, pourquoi ? J'ai des erreurs qui montrent
c'est écrit dans l'aide.
intday_of_year;// numéro dans une année (le 1er février est le 32e jour de l'année)
Pour une raison quelconque, c'est toujours 31 ((
le script ci-joint
dans le fichier
2010.02.01 00:00:00 143.832 143.839 143.758 143.771 186 2010 2 1 0 0 1 31
Il s'agit d'une erreur dans la documentation. La numérotation des jours d'une année commence à partir de 0. Merci.
Je comprends que c'est plus compliqué, mais cela semble plus familier (pour le profane. Pour le programmeur, c'est bon). Le 1er janvier est le premier jour de l'année. Cela me semble juste dans l'aide.
Bonjour, pouvez-vous m'aider à traduire la fonction de mt4 à mt5. Je l'ai traduit, mais ce n'est pas bon, si vous n'êtes pas dur, s'il vous plaît envoyez-moi le bon code, je ne suis pas très bon en MQL. Je commence tout juste à l'apprendre.
//+------------------------------------------------------------------+
#property copyright "2010, MetaQuotes Software Corp."
#lien de propriété"http://www.mql5.com"
#propriété version "1.00"
//--- paramètres d'entrée
entrée double Lots=0.1 ;
entrée bool MM = true ;
entrée double Risque = 10 ;
//+------------------------------------------------------------------+
//| Fonction d'initialisation de l'expert|
//+------------------------------------------------------------------+
int OnInit()
{
retour(0) ;
}
//+------------------------------------------------------------------+
//| Fonction de désinitialisation des experts|
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
}
//+------------------------------------------------------------------+
//| fonction tick expert|
//+------------------------------------------------------------------+
void OnTick()
{
if( MM )double Lots = LotSon() ; //appelle la fonction LotSon
}
//+------------------------------------------------------------------+
double LotSon()
{
double LotMin = SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MIN) ;
double LotMax = SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MAX) ;
double Lots = AccountInfoDouble(ACCOUNT_FREEMARGIN)/100000.0 * Risk ;
double Lots = MathMin(Lotmax,MathMax(Lotmin,Lots)) ;
si (LotMin < 0.1)Lots = NormalizeDouble(Lots,2) ;
sinon
{
si (LotMin < 1.0)Lots = NormalizeDouble(Lots,1) ;
sinon Lots = NormalizeDouble(Lots,0) ;
}
if (Lots < LotMin) Lots = LotMin ;
if (Lots > LotMax) Lots = LotMax ;
}
Comment obtenir le code en couleur ?
Comment obtenez-vous la couleur de votre code ?
Article de la communauté MQL5 - Mémo de l'utilisateur:
Le bouton
est destiné à insérer le code source MQL dans le texte du message. Dès que vous appuyez sur ce bouton, une fenêtre vide apparaît, dans laquelle vous devez insérer le code, puis appuyer sur le bouton Insérer. Pour annuler l'insertion du code, appuyez sur le bouton Annuler.
Il n'est pas recommandé de mettre du code en gras afin de faire ressortir certains morceaux de code d'une certaine manière. Le fait est que les polices mono-espaces s'affichent différemment selon les systèmes d'exploitation et les navigateurs. Par exemple, Windows Vista utilise la police monospace Consolas, qui possède une police en gras pour la taille 10, presque impossible à distinguer d'une police ordinaire.
Bonjour, pouvez-vous m'aider à traduire la fonction de mt4 à mt5. Je l'ai traduit, mais ce n'est pas bon, si vous n'êtes pas dur, s'il vous plaît envoyez-moi le bon code, je ne suis pas très bon en MQL. Je commence tout juste à l'apprendre.
Très bien, faisons un essai. Merci à tous ! Est-ce que je pose même ces questions ? Ou dois-je aller ailleurs ? Merci d'avance pour la réponse.
Et à ce stade du développement : les paramètres, l'appel de la fonction et la fonction elle-même doivent afficher ou non les erreurs de compilation. Si oui, pourquoi ? J'ai des erreurs qui montrent