Si vous ajoutez des commentaires à chaque ligne, ce sera plus intéressant :
inputint MetaQuotes1 = 30; // Описание входного параметра 1 inputbool MetaQuotes2 = true; // Описание входного параметра 2 inputdouble MetaQuotes3 = 20.3; // Описание входного параметра 3 inputstring MetaQuotes4 = "Corp"; // Описание входного параметра 4
et si vous créez une autre énumération et l'utilisez à la place d'un bool, c'est encore plus intéressant :
enum enumYN { enYes = 1, // Да enNo = 0, // Нет };
inputint MetaQuotes1 = 30; // Описание входного параметра 1 input enumYN MetaQuotes2 = enYes; // Описание входного параметра 2 inputdouble MetaQuotes3 = 20.3; // Описание входного параметра 3 inputstring MetaQuotes4 = "Corp"; // Описание входного параметра 4
et sinput vous permet d'exclure une variable de la liste des variables à optimiser. Par exemple, la variable MetaQuotes4 dans ce contexte n'est pas nécessaire pour l'optimisation et elle peut être exclue :
enum enumYN { enYes = 1, // Да enNo = 0, // Нет };
inputint MetaQuotes1 = 30; // Описание входного параметра 1 input enumYN MetaQuotes2 = enYes; // Описание входного параметра 2 inputdouble MetaQuotes3 = 20.3; // Описание входного параметра 3 sinputstring MetaQuotes4 = "Corp"; // Описание входного параметра 4
Il n'y a rien de mal à cela, nous avons juste eu besoin d'ajouter du texte pour que l'on sache clairement pendant l'optimisation de quel paramètre et de quelle étape.
Mikhail Goryunov: Il n'y a rien de mal à cela, il suffisait d'ajouter du texte pour que l'on sache clairement à partir de quel paramètre et de quelle étape on optimise.
OK. Mais il y en a d'autres qui ne le savaient pas ;)
wishmast: pourquoi est-ce qu'ils écrivent ceci comme une affectation ? int tik=OrderSend
Parce que
Возвращаемое значение
Возвращает номер тикета, который назначен ордеру торговым сервером или -1 в случае неудачи. Чтобы получить информацию об ошибке, необходимо вызвать функцию GetLastError().
La valeur de cette variable déterminera alors ce que vous ferez ensuite. Par exemple
double ask=NormalizeDouble(SymbolInfoDouble(_Symbol,SYMBOL_ASK),digits); price=NormalizePrice(_Symbol,ask+Distance*_Point); t=OrderSend(_Symbol,OP_BUYSTOP,volume,price,Slippage,0,0,CommentOrder,Magic,0,clrBlue); if(t<0) { error=GetLastError(); rezult=StringConcatenate(_Symbol,": error open order ",DoubleToString(volume,2)," ",TypeToStr(type)," №- ",error," ",ErrorDescription(error)); Print(rezult); } else { tiket=t; rezult=StringConcatenate(_Symbol,": open order ",t," ",DoubleToString(volume,2)," ",TypeToStr(type)); Print(rezult); SendNotification(rezult); }
et sinput permet d'exclure une variable de la liste des variables à optimiser. Par exemple, la variable MetaQuotes4 n'est pas nécessaire à l'optimisation dans ce contexte et peut être exclue :
sinputstring MetaQuotes4 = "Corp"; // Описание входного параметра 4
Exemple malheureux, les paramètres en minuscules ne seront en aucun cas impliqués dans l'optimisation.
Vitalie Postolache: Exemple malheureux, les paramètres en minuscules ne seront en aucun cas impliqués dans l'optimisation.
Je ne les ai pas choisis par succès/échec. Je viens de vous montrer un exemple du code que j'ai écrit ci-dessus. L'exemple était clair. C'est ce que j'essayais de faire.
Artyom Trishkin: Je ne l'ai pas ramassé par succès/échec. Je viens de vous montrer un exemple du code ci-dessus. L'exemple était clair. C'est ce que j'essayais de faire.
Si vous ajoutez des commentaires à chaque ligne, ce sera plus intéressant :
input bool MetaQuotes2 = true; // Описание входного параметра 2
input double MetaQuotes3 = 20.3; // Описание входного параметра 3
input string MetaQuotes4 = "Corp"; // Описание входного параметра 4
et si vous créez une autre énumération et l'utilisez à la place d'un bool, c'est encore plus intéressant :
{
enYes = 1, // Да
enNo = 0, // Нет
};
input int MetaQuotes1 = 30; // Описание входного параметра 1
input enumYN MetaQuotes2 = enYes; // Описание входного параметра 2
input double MetaQuotes3 = 20.3; // Описание входного параметра 3
input string MetaQuotes4 = "Corp"; // Описание входного параметра 4
et sinput vous permet d'exclure une variable de la liste des variables à optimiser. Par exemple, la variable MetaQuotes4 dans ce contexte n'est pas nécessaire pour l'optimisation et elle peut être exclue :
{
enYes = 1, // Да
enNo = 0, // Нет
};
input int MetaQuotes1 = 30; // Описание входного параметра 1
input enumYN MetaQuotes2 = enYes; // Описание входного параметра 2
input double MetaQuotes3 = 20.3; // Описание входного параметра 3
sinput string MetaQuotes4 = "Corp"; // Описание входного параметра 4
Il n'y a rien de mal à cela, nous avons juste eu besoin d'ajouter du texte pour que l'on sache clairement pendant l'optimisation de quel paramètre et de quelle étape.
Il n'y a rien de mal à cela, il suffisait d'ajouter du texte pour que l'on sache clairement à partir de quel paramètre et de quelle étape on optimise.
pourquoi est-ce qu'ils écrivent ceci comme une affectation ? int tik=OrderSend
Возвращает номер тикета, который назначен ордеру торговым сервером или -1 в случае неудачи. Чтобы получить информацию об ошибке, необходимо вызвать функцию GetLastError().
La valeur de cette variable déterminera alors ce que vous ferez ensuite. Par exemple
price=NormalizePrice(_Symbol,ask+Distance*_Point);
t=OrderSend(_Symbol,OP_BUYSTOP,volume,price,Slippage,0,0,CommentOrder,Magic,0,clrBlue);
if(t<0)
{
error=GetLastError();
rezult=StringConcatenate(_Symbol,": error open order ",DoubleToString(volume,2)," ",TypeToStr(type)," №- ",error," ",ErrorDescription(error));
Print(rezult);
}
else
{
tiket=t;
rezult=StringConcatenate(_Symbol,": open order ",t," ",DoubleToString(volume,2)," ",TypeToStr(type));
Print(rezult);
SendNotification(rezult);
}
....
et sinput permet d'exclure une variable de la liste des variables à optimiser. Par exemple, la variable MetaQuotes4 n'est pas nécessaire à l'optimisation dans ce contexte et peut être exclue :
sinput string MetaQuotes4 = "Corp"; // Описание входного параметра 4
Exemple malheureux, les paramètres en minuscules ne seront en aucun cas impliqués dans l'optimisation.
Je ne l'ai pas ramassé par succès/échec. Je viens de vous montrer un exemple du code ci-dessus. L'exemple était clair. C'est ce que j'essayais de faire.
Tout à fait exact, vous pouvez aussi le faire.
Tout à fait exact, vous pouvez le faire aussi
Voici une construction.
doubleiLowest(string symbol,ENUM_TIMEFRAMES timeframe,int ne)
Question : quel est le type deENUM_TIMEFRAMES?
Voici une construction.
doubleiLowest(string symbol,ENUM_TIMEFRAMES timeframe,int ne)
Question : quel est le type deENUM_TIMEFRAMES?