Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1108

 
Igor Makanu:

поэкспериментируй с таким скриптом:

2019.08.06 22:40:44.668 tst1 (EURUSD,H1) inp1 = 15.000000 --> 15

2019.08.06 22:40:44.668 tst1 (EURUSD,H1) inp2 = 12.300000 --> 12.3


кажется в 7-м знаке после запятой будет иногда ошибаться

Artyom Trishkin:

Всем спасибо, попробую!

 
Как записать информацию об открытой позиции (лот, тип) так, чтобы её можно было прочесть из советника в другом терминале МТ5?
 
Ребятки разъясните такой вопрос, если идёт оптимизация на удалённых агентах и советник пишет данные в файл, то я как понимаю этих данных я не получу, так как в папке тестера находятся только мои локальные агенты, а удалённых нет...
Или я не там ищу?
если так, то есть ли способ реализации возможности получения файлов от удалённых агентов?
 
Vitaly Muzichenko:

Вроде было, но найти не смог, поэтому написал здесь (

Так в документации всё описано. В fmod ставим делитель 1 и получаем дробную часть числа или 0. Вам ведь не важно сколько знаков после запятой введено в поле или в input переменную.

Документация по MQL5: Математические функции / MathMod
Документация по MQL5: Математические функции / MathMod
  • www.mql5.com
Функция MathMod рассчитывает вещественный остаток f от val / y таким образом, что val = i * y + f , где i является целым числом, f имеет тот же знак, что и val, и абсолютное значение f меньше, чем абсолютное значение y.
 
Alexey Viktorov:

Так в документации всё описано. В fmod ставим делитель 1 и получаем дробную часть числа или 0. Вам ведь не важно сколько знаков после запятой введено в поле или в input переменную.

Работает, это самое простое решение!

EditCreate(0,"TR",0,0,0,X,Y, fmod(TralingStop,1)==0 ? DoubleToString(TralingStop,0) : DoubleToString(TralingStop,1),true);

Спасибо!

 
heik_h = iCustom(_Symbol, PERIOD_CURRENT, "Examples\\Heiken_Ashi");
CopyBuffer(heik_h, 1, 1, 1, heikHigh);
CopyBuffer(heik_h, 2, 1, 1, heikLow);
Comment(heikHigh[0]);   

Получаю неправильное значение, около нуля

Индикатор есть в Examples

В чем проблема?

 
Roman Sharanov:

Получаю неправильное значение, около нуля

Индикатор есть в Examples

В чем проблема?

А Вы, что на каждом тике создаёте новый хендл индикатора?!

Хендл нужно создавать в OnInit, а получать данные уже в OnTick или OnCalculate.
 
Vladimir Karputov:
А Вы, что на каждом тике создаёте новый хендл индикатора?!

Хендл нужно создавать в OnInit, а получать данные уже в OnTick или OnCalculate.

нет, он в OnInit

 
Roman Sharanov:

нет, он в OnInit


Вы невнимательны: прочтите всю фразу, полностью: Хендл нужно создавать в OnInit, а получать данные уже в OnTick или OnCalculate.
 
Vladimir Karputov:

Вы невнимательны: прочтите всю фразу, полностью: Хендл нужно создавать в OnInit, а получать данные уже в OnTick или OnCalculate.

так и происходит