// v передается в функцию как double-значение лота // сначала то что чаще всего встречается v = NormalizeDouble(v, 3); if(v < MarketInfo(symbol, MODE_MINLOT)) v = MarketInfo(symbol, MODE_MINLOT);
// затем рассчитать знаки после запятой для объема, которого не может быть но они фсе равно проверяют string volume_min = (string) SymbolInfoDouble(symbol, SYMBOL_VOLUME_MIN); int volume_digits = 0; int pos = StringFind(volume_min, ".", 0);
На прошлом уроке «Язык MQL — Урок 2» мы научили наш первый , написанный на языке MQL4 рассчитывать размер лота, а точнее запрашивать у нас размер средств которыми мы хотим рискнуть при торговле на форекс при помощи терминала Metatrader 4. В данном уроке я предлагаю заняться самим ! Для расчета желаемого лота, скрипту MT4 необходимо знать...
这就是方法!!!。
// сначала то что чаще всего встречается
v = NormalizeDouble(v, 3);
if(v < MarketInfo(symbol, MODE_MINLOT)) v = MarketInfo(symbol, MODE_MINLOT);
// затем рассчитать знаки после запятой для объема, которого не может быть но они фсе равно проверяют
string volume_min = (string) SymbolInfoDouble(symbol, SYMBOL_VOLUME_MIN);
int volume_digits = 0;
int pos = StringFind(volume_min, ".", 0);
if(pos > 0){
volume_min = StringSubstr(volume_min, pos+1, StringLen(volume_min)-pos);
volume_digits = StringLen(volume_min);
v = NormalizeDouble(v, volume_digits);
}
你的lotDigit是一个狡猾的傻瓜,总是计算为0,这在文档的例子中是没有的。显然,你喜欢大量的括号?
还有这个。FreeMg*Risk/100/Margin/Step...100人是从哪里来的?显然是来自天花板。
那是一个很大的串联。这确实很多,但你在计算什么?
就在那里。
http://mql4you.ru/mql-school/yazyk-mql-urok-3.html
还有这个。FreeMg*Risk/100/Margin/Step...100是从何而来?显然是来自天花板。
100是由百分比转换而来;-)。也就是说,风险/100给出了一个介于0和1之间的值。
5月。我不使用任何风险,更不用说100%(该地段有100%???)并通过检查。
你的lotDigit是一个狡猾的傻瓜,总是计算为0,这在文档的例子中是没有的。显然,你喜欢大量的括号?
还有这个。FreeMg*Risk/100/Margin/Step...100人是从哪里来的?显然是来自天花板。
那是一个很大的串联。真的很多,你是怎么计算的?
在这种情况下,lotDigit计算四舍五入的位数,你可以检查--这个狡猾的傻瓜总是大于零(如果允许小数手的话)。
...看起来你也不使用小数点的手数。
在这种情况下,lotDigit计算四舍五入的位数,你可以检查--这个狡猾的傻瓜总是大于零(如果允许小数手的话)。
...看起来你也不使用小数点的手数