Возвращает номер тикета, который назначен ордеру торговым сервером или -1 в случае неудачи. Чтобы получить информацию об ошибке, необходимо вызвать функцию GetLastError().
然后,这个变量的值将决定你接下来要做什么。比如说
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); }
如果你在每行加入注释,会更有趣。
input bool MetaQuotes2 = true; // Описание входного параметра 2
input double MetaQuotes3 = 20.3; // Описание входного параметра 3
input string MetaQuotes4 = "Corp"; // Описание входного параметра 4
而如果你再做一个枚举,用它来代替bool,那就更有意思了。
{
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
和sinput 允许你将一个变量从优化的变量列表中排除。例如,在这种情况下,MetaQuotes4变量对于优化来说是没有必要的,它可以被排除。
{
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
这没有什么问题,我们只是需要添加文字,以便在优化过程中明确从哪个参数和步骤开始,到哪个参数和步骤为止。
这没有什么问题,所需要的是添加文字,使其在优化时清楚地知道从哪个参数和步骤开始,到哪个参数和步骤。
为什么他们要把这个写成一个赋值? int tik=OrderSend
Возвращает номер тикета, который назначен ордеру торговым сервером или -1 в случае неудачи. Чтобы получить информацию об ошибке, необходимо вызвать функцию GetLastError().
然后,这个变量的值将决定你接下来要做什么。比如说
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);
}
....
和sinput 允许你将一个变量从要优化的变量列表中排除。例如,在这种情况下,变量MetaQuotes4不需要进行优化,可以排除。
sinput string MetaQuotes4 = "Corp"; // Описание входного параметра 4
不幸的例子,小写的参数不会以任何方式参与优化。
我不是按成功/失败来接的。我刚刚向你展示了上述代码的一个例子。这个例子很清楚。这就是我所要做的。
完全正确,你也可以这样做。
完全正确,你也可以这样做
这里有一个构造。
doubleiLowest(string symbol,ENUM_TIMEFRAMES timeframe,int ne)
问题:ENUM_TIMEFRAMES有 什么类型?
这里有一个构造。
doubleiLowest(string symbol,ENUM_TIMEFRAMES timeframe,int ne)
问题:ENUM_TIMEFRAMES有 什么类型?