Ваши вопросы по языку MQL4

vlad_123

Местный знаток
А зачем:
for (i=OrdersTotal()-1;i>=0;i--)...
из общего количества ордеров вычитать 1?
for (i=OrdersTotal() ;i>=0;i--)...
Ордера нумеруются начиная с 0.
Соответственно, если OrdersTotal=3, то имеются ордера с номерами 0, 1, 2.
 

neo747

Интересующийся
Спасибо! Но теперь другая беда он стал округлять до целых чисел( например если спед 1.8 округляет до 1...
 

vlad_123

Местный знаток
Спасибо! Но теперь другая беда он стал округлять до целых чисел( например если спед 1.8 округляет до 1...
Код:
double  NormalizeDouble(
   double  value,      // нормализуемое число
   [B][U]int     digits      // кол-во знаков после запятой[/U][/B]
   );
Код:
string  DoubleToString(
   double  value,      // число
   [B][U]int     digits=8    // кол-во знаков после запятой[/U][/B]
   );
 

vladradon

Программист
Код:
double  NormalizeDouble(
   double  value,      // нормализуемое число
   [B][U]int     digits      // кол-во знаков после запятой[/U][/B]
   );
Код:
string  DoubleToString(
   double  value,      // число
   [B][U]int     digits=8    // кол-во знаков после запятой[/U][/B]
   );
Тезка, зачем так сложно?
NormalizeDouble("значение или простое арифметическое действие", "количество знаков после запятой") и можно в любую другую функцию воткнуть эту функцию, которая может включать внутренние расчеты типа:
ticketbuy = OrderSend(Symbol(),OP_BUY,NormalizeDouble(smsell*(DeltaOrder+OrdersTotalMagicsell(Magicsell)*0.1),dig),Ask,3,sl1,tp1,"MartingailExpert",Magicbuy,0,Blue);
т.е. все работает в одной строке с нужными расчетами внутри другой функции. Я просто привел вариант из своего сова, где в функции открытия ордера нормализация с учетом переменных сова, происходит автоматом.... Ну... ты умный и сам поймешь, о чем я.)))
 

vlad_123

Местный знаток
Тезка, зачем так сложно?
...
т.е. все работает в одной строке
:facepalm:
Это ж был простой копи-паст из хелпа... С выделением параметров, отвечающих за количество цифирь после запятой.
И - что там кажется таким сложным? Форматирование?
 

vladradon

Программист
:facepalm:
Это ж был простой копи-паст из хелпа... С выделением параметров, отвечающих за количество цифирь после запятой.
И - что там кажется таким сложным? Форматирование?
Ну...., это для опытных все нормально и стандартно, особенно, если 5-ку знааешь. Просто док для 4-ки раньше был проще (до начала объединения 4 и 5 языков) и хелп 4-ки сейчас переделан под 5-й, что не всегда удобно воспринимать. Я оба языка знаю достаточно хорошо, но новичкам, думаю, надо как-то попроще доносить инфу.
 

vlad_123

Местный знаток
Ну...., это для опытных все нормально и стандартно, особенно, если 5-ку знааешь. Просто док для 4-ки раньше был проще (до начала объединения 4 и 5 языков) и хелп 4-ки сейчас переделан под 5-й, что не всегда удобно воспринимать. Я оба языка знаю достаточно хорошо, но новичкам, думаю, надо как-то попроще доносить инфу.
Это здесь совершенно не при чем.
Если нормализовать double с 0 знаками после запятой, или если присваивать double результат в int переменную - будет потеря значащих цифр после запятой.
И это никак не зависит ни от версии MQL, ни от видоизменений хелпа - это неизменный факт.
 

vladradon

Программист
Это здесь совершенно не при чем.
Если нормализовать double с 0 знаками после запятой, или если присваивать double результат в int переменную - будет потеря значащих цифр после запятой.
И это никак не зависит ни от версии MQL, ни от видоизменений хелпа - это неизменный факт.

Я по поводу хелпа (документации по обоим языкам) имел ввиду то, что по сравнению с 2011-м годом документация менялась не раз и постоянно обновляется без предупреждения и подстраивается под документацию 5-го языка, как и большинство функций. Для тех, кто привык прогить на 4-ке, эти изменения могут быть внапряг(если чел не знает 5-го языка)....
Я не собираюсь спорить - мое дело предложить вариант, а кому нужно, сам разберется.
 

ansol

Местный знаток
Уже давненько, с какого-то билда(вероятно, с 600-го) в МТ4 есть "стакан цен", вызывавемый по Alt+B
Как ни странно, в нем пусто у всех известных мне ДЦ, за исключением тех, кто еще раньше "нарисовал" свой собственный стакан, когда его не было в МТ4.

Вопрос такой - появились ли какие-то средства в MQL4 для работы с этим стаканом?
 

Yurkov

Почетный гражданин
Добрый день!
Имеется индикатор, который берет данные из подвального индюка. Они одновременно отображаются на графике. Какая функция отвечает за отображение подвального индикатора?
 
Верх