Выпущен MetaTrader 4 Client Terminal build 600 с обновленным языком MQL4 и Маркетом приложений - страница 28

 

Разрешите хотя бы менять местами закладки в окне "Терминал"

к примеру хочу "эксперты" и "журнал" сразу после закладки "история"

 
Renat:

По вашему объяснению не ясно, куда направлена позиция.

Конечно же, торговая платформа не даст поставить заведомо неправильный ордер и режим быстрого управления тут не влияет.



Позиция в плюсе, неважно какая она( бай, сел). Бид ушел далеко от ЦеныОткрытияПозиции. Т.е. расстояние между текущей ценой и Ценой Открытия Позиции скажем 50 п. старых. Поставить Стоп между ЦенойОткрытияПозиции и текущей ценой, если Стоп еще не был выставлен, невозможно. Я и спрашиваю, может тут какой то глубокий смысл заложен? А я не знаю.

Это не фатально.

Успехов

 
stringo:

Можно. И уже сделано.

Просто попробуйте.


К сожалению во вкладке Colors индикатора видны только 8 буферов.
 
   string data = "";
   for (int i=0; i < 4027; i++)
   {
     data = data + "x";
   }
   
   Print("data= ", data);

Почему то такой код в индикаторе в функции OnCalculate выводит только data=
Если задать цикл до 4026 - то строка выводится целиком.
 
alexloz:

Прочитайте первое сообщение этой ветки (пункт 3). В нем детально расписана структура и место хранения данных терминала.

Дело в том, что в winXP такой каталог не был создан (вернее создана немного другая структура), но там лежит только liveupdate.exe и пустые папки "liveupdate","logs","profiles".

"Каталогом данных" является папка установки MT4, как и было в .509 . Он же открывается и через команду "Открыть каталог данных", и там же хранятся все программы.

Может это какой-то глюк?

 
religare:

Ничего не понял. Я говорю про сообщения компилятора. #include <WinUser32.mqh> один раз стоит. Нет двойного обращения к нему.

:-)) То обычно называют ошибками и/или предупреждениями, а сообщения это посты на форуме :-))

#include <WinUser32.mqh>
#define VK_PAGEUP 0x21
#define VK_UP 0x26
#define VK_END  0x23
#define VK_HOME 0x24
Все 4 макроса объявлены в <WinUser32.mqh>. Потом ещё раз ниже.
 
Мне непонятен такой момент. Если у меня стоят терминалы с иконками на десктопе в режиме /portable и происходит обновление, и как я понял обновление все-равно сносится в AppData, то вернет ли терминал после обновления все что нужно обратно в папки установки терминала?
У меня стоит ок. 15-ти терминалов, часть из которых исследовательские, а часть для торговли. И после того как я сделаю новый вариант советников, я из исследовательских папок при помощи TotalCommander переношу в несколько папок торговых терминалов. То что в AppData папки терминалов нумерованные, а не под соответствующим именем не дает возможности пользоваться легко TotalCommanderom. Поэтому мне нужен обязательно режим /portable. Вообще нумеровать папки терминалов, вместо имени, как это делают все другие разработчики, - это оченть плохое решение. Когда больше одного терминала там концов не найдешь. Нет ли возможности сделать тогда папки не под номерами, а с именами терминалов. Если будешь пытаться использовать автоматизацию работы через прописывание путей, то вообще засада найти нужный терминал.
 
xoilja:

Этот способ позволяет узнать путь из терминала. Вопрос же заключается в том, как узнать из стороннего ПО расположение каталога данных, например, из какого-то ключа реестра или ещё как-то, т.е. узнать расположение этого каталога без запуска терминала?


Присоединяюсь к вопросу. Я отдаю многим клиентам советники в виде инсталлятора, который способен находить (через реестр) установленные копии МТ4. Клиент выбирает терминал для установки, после чего инсталлятор всё раскладывает по нужным папкам. Предполагается, что во время установки терминалы не запущены.

Как определить путь к каталогу данных терминала, если известен путь к его исполняемому файлу?

 

Здравствуйте, Ренат

Вопрос: допустимо ли использование советников на оффлайн-графиках в 600 билде от 3 февраля 2014 года?

Т.е. в принципе, да или нет.

Если да, то спрашиваю дальше. Индикатор я перенес в новую версию - работает на оффлайн графике правильно.

А, советник, выводит на команду Print(Time[0]+" "+Time[1]) - "0 0". получается, не видит данных. На этом остановился, но есть еще продукты для переноса в новую версию.

До 600 билда имею 2 года положительной работы на оффлайн графиках в metatrader 4.

Спасибо.

P.S.: с форматами истории я разобрался, еще раз повторю, индикатор работает без нареканий на том же графике, т.е. в Time[0] у индикатора ненулевое значение.
 
Patrol:


Присоединяюсь к вопросу. Я отдаю многим клиентам советники в виде инсталлятора, который способен находить (через реестр) установленные копии МТ4. Клиент выбирает терминал для установки, после чего инсталлятор всё раскладывает по нужным папкам. Предполагается, что во время установки терминалы не запущены.

Как определить путь к каталогу данных терминала, если известен путь к его исполняемому файлу?

Путь определить можно так :

data_path = CSIDL_APPDATA + \\MetaQuotes\\Terminal\\  + MD5(unicode_path_to_metatrader)

это легче чем сканить каталоги и проверять origin.txt

unicode_path_to_metatrader - это пусть к каталогу без приставки \terminal.exe