Перенос пользовательских настроек/данных МТ4 из одной ОС/компьютера в другую.

 

У меня установлено по несколько терминалов для одного брокера. В каждом свои настройки в зависимости от целей. Плюс пользуюсь услугами нескольких брокеров. 

Поиском не нашел ответ на вопрос. Только статья об изменении структуры данных в МТ4 с билда 600 https://www.mql5.com/ru/articles/1388.

 

Есть ли в принципе такой вариант архивации всех необходимых данных одного конкретного терминала МТ4 с последующей разархивацией этих данных во вновь установленном "чистом" терминале?

Подскажите, как правильно перенести все настройки: профили, шаблоны, пользовательские советники, пользовательские индикаторы и пользовательские скрипты из терминала МТ4, расположенные на одном компьютере на другой компьютер или в другую операционную систему?

 
Alexandr:

У меня установлено по несколько терминалов для одного брокера. В каждом свои настройки в зависимости от целей. Плюс пользуюсь услугами нескольких брокеров. 

Поиском не нашел ответ на вопрос. Только статья об изменении структуры данных в МТ4 с билда 600 https://www.mql5.com/ru/articles/1388.

 

Есть ли в принципе такой вариант архивации всех необходимых данных одного конкретного терминала МТ4 с последующей разархивацией этих данных во вновь установленном "чистом" терминале?

Подскажите, как правильно перенести все настройки: профили, шаблоны, пользовательские советники, пользовательские индикаторы и пользовательские скрипты из терминала МТ4, расположенные на одном компьютере на другой компьютер или в другую операционную систему?

Так и перенести - из каталога данных терминала скопировать папки профилей, шаблонов и MQL4(5). Плюс ещё можно файлы настроек скопировать для терминала и едитора: %каталог данных%\config\metaeditor.ini, -\-\terminal.ini.

 Остальное - маркет, сигналы, почта, пароли копированием не переносятся.

 
Alexandr:  Подскажите, как перенести все настройки из терминала МТ4 на другой компьютер или в другую операционную систему?

‌Полный перенос согласно справке:
Клиентский терминал --> Начало работы --> Запуск и структура данных --> Режим Portable
Клиентский терминал --> Сервис --> Конфигурация при старте
В папке терминала создаем 2 файла. Имена могут быть любые
Файл script.bat со следующим примерным содержимым:
rem Удаление логов из всех подкаталогов - это по желанию и запуск терминала
del /s *.log
start "Командный процессор" terminal /portable config-1.ini
exit

Файл config-1.ini со следующим примерным содержимым (обязательны лишь параметры Login и Password):
Login=НомерСчета
Password=Пароль
ExpertsEnable=true
ExpertsTrades=true
; Period=M1
; Server=FXDDMalta-MT4 Demo Server
; Symbol=EURUSD
; AutoConfiguration=false
; EnableDDE=false
; EnableNews=false
Script=empty
Expert=empty

Запускаем script.bat и что надо настраиваем.
В папке терминала должны быть советники, индикаторы, скрипты, ...
Копируем папку терминала на флешку и переписываем на другой компьютер. Запускаем script.bat и работаем

 

использую более наглядный bat-файл для запуска терминала. Открывается на любом компьютере, на любом диске, в любой папке. Файл находится в папке терминала

@rem All logs deleting
@del /s *.log >Nul
@echo -
@echo -
@echo -
@echo -
@rem this message in english or in russian codepage 866
@echo -            -------------------------------------------------
@echo -            -                                               -
@echo -            -    З а п у с к   т е р м и н а л а   A - 1    -
@echo -            -                                               -
@echo -            -------------------------------------------------
@echo -
@echo -
@echo -
@echo -
@start "" terminal /portable config.ini
@timeout  /t 5
@exit
  Виден обратный отсчет заданного времени
 

Всем, кто откликнулся на мой вопрос - большое спасибо!

Мне не все понятно, но общая картина вырисовалась.


Я не стал возиться с созданием файлов (поэкспериментирую с ними позже), но вместо этого пошел своим путем.

Я открыл системную папку терминала с помощью опций главного меню: Файл - Открыть каталог данных. Далее просто выделил все папки и файлы в открытой системной папке, скопировал их и отправил по сети (можно с помощью флешки перенести), то есть вставил в такую же системную папу, с предварительно установленным терминалом на другом компьютере.

Запустил терминал. Пришлось повторно ввести пароль к счету, так пароль слетел (после установки терминала на новом компьютере я вводил данные счета и давал команду сохранить их). Логин (номер счета) при этом остался. Так же повторно указал сервер, он также слетел.

После запуска терминала выбрал требуемый профиль, так как автоматически профиль не установился, а остался дефолтным. Все окна открылись так, как и на первом компьютере, с сохранением объектов, которые были созданы ранее в этих окнах. Соответственно при переносе сохранены все настройки самого терминала (так как соответствующие файлы были перенесены), а также - советники, индикаторы, скрипты.

 

Способ не очень удобный если требуется перенести много терминалов. Необходимо будет внимательно это делать чтобы не перепутать системные "безликие" папки терминалов.

Также интересный момент выявился при переносе данных: на новом компьютере системная папка получила то же имя, что и на компьютере, с которого осуществлялся перенос терминала. Но именно этого брокера у меня всего один терминал установлен. Как будет обстоять дело с именами системных папок терминалов, которых несколько - не знаю.

Это вновь созданная системная папка на новом компьютере:

https://i.gyazo.com/ca07228f62478ee7d9203bd64b2ef543.png

Это имя системной папки, которую я скопировал с компьютера, с которого я переносил терминал:

https://i.gyazo.com/01c4029a92d58fbc29db37bd0fb6cfcd.png


Вопрос к разработчикам.

Есть возможность, с учетом того, как организовано хранение информации о терминале на компьютере, сделать/внедрить опцию по переносу (экспорту/импорту) данных терминала?

Мне кажется, это было бы удобно всем пользователям независимо от уровня знаний.

Подобная функция реализована во многих современных приложениях, она часто называются "Backup"

Это просто удобно!

 
Alexandr: Есть возможность ... в терминале ... сделать/внедрить опцию по переносу (экспорту/импорту) данных терминала?
Отсутствие возможности "Backup" является средством защитить данные пользователя от хищения путем копирования - в новой папке (диске, компьютере) терминал откроется только после ввода пароля или использования предложенного выше файла с паролем. Предложенный выше способ отменяет требование вводить пароль и облегчает перенос данных путем простого копирования (по сети, флешкой, ...). Запуск терминала с ключом /portable отменяет использование длинных странных имен папок, расположенный в странном месте(см. ссылки на документацию выше). Все данные оказываются в папке терминала, что упрощает желанное резервное копирование, перенос и просто работу
 
STARIJ:
Отсутствие возможности "Backup" является средством защитить данные пользователя от хищения путем копирования - в новой папке (диске, компьютере) терминал откроется только после ввода пароля или использования предложенного выше файла с паролем. Предложенный выше способ отменяет требование вводить пароль и облегчает перенос данных путем простого копирования (по сети, флешкой, ...). Запуск терминала с ключом /portable отменяет использование длинных странных имен папок, расположенный в странном месте(см. ссылки на документацию выше). Все данные оказываются в папке терминала, что упрощает желанное резервное копирование, перенос и просто работу

Еще раз спасибо за помощь.

Вопросов у меня стало больше, чем до того как я начал задавать вопросы.

С ключом /portable, я сразу не разобрался. По советам обратился к справке "Режим Portable" и нашел следующее:

  • Если вы пользуетесь системой Windows Vista или выше и терминал установлен в Program Files, использование режима Portable не рекомендуется. Данный режим фактически предусмотрен для работы терминала на съемных носителях, а также для работы в Windows XP.
  • Если вы осуществили обновление терминала и все данные были скопированы в отдельный каталог данных пользователя, не рекомендуется пытаться перейти на использование режима Portable.
  • Для использования режима Portable после переноса данных в каталоге данных пользователя необходимо самостоятельно скопировать данные в каталог установки. Запуск терминала в режиме Portable не выполняет копирование данных из каталога данных в каталог установки.

Мне этот режим на старом компе, с установленными старыми терминалами, мало поможет. Плюс в самой справке предупреждение от запуска в режиме Portable, при уже перенесенных данных в пользовательские папки. Все равно руками нужно это делать. Разве что при установке нового терминала использовать такую опцию.

Поэтому встроенное средство переноса настроек терминала ОЧЕНЬ необходимо!

При переносе все равно не переносятся логин и пароль к счету, поэтому не стоит бояться такой опции.

 
STARIJ:
Отсутствие возможности "Backup" является средством защитить данные пользователя от хищения путем копирования - в новой папке (диске, компьютере) терминал откроется только после ввода пароля или использования предложенного выше файла с паролем


а если я использую терминал как портабл версию, то есть чтобы не маяться каждый раз после переустановки, я просто вынес его на не системный диск и запускаю с ключом /portable

(естественно все данные в этой папке)

И если кто-то скопирует содержимое этой папки, сможет ли он открыть терминал без пароля?

 

Думаю, что никак не повлияет наличие Backup функции в терминале на сохранность или не сохранность личных данных пользователя.

Хуже точно не было бы, в случае наличия функции Backup`a в терминале. Ведь все равно все данные переносятся простым копирование необходимых папок.

Пароли к счету, при этом, не переносятся - то есть здесь присутствует защита. По крайней мере я не помню чтобы пароли как-либо сохранялись при переносе/переустановке терминала.

То есть вся защита сводится - к сохранению в тайне ПАРОЛЯ к счету, как я пониманию.

 

Господа разработчик (представители MetaQuotes), несмотря на то, что выше я обращался к Вам с вопросом о возможности добавления функции переноса данных из терминала с одного компьютера на другой, Вы, ничего не прокомментировали по этому вопросу!


Хотелось бы знать, какое мнение у Вас в этом вопросе?

Вы:

-  добавите функцию переноса (Backup) данных между терминалами в ближайшее время для удобства пользователей;

- считаете функцию переноса (Backup) данных между терминалами излишеством, так как это бесполезная функция для обычных пользователей, а продвинутые знают как правильно перенести данные и всё сделают, что им необходимо;

- рассматриваете альтернативный вариант, отличный от двух первых.


Надеюсь на понимание и Ваш ответ.

Причина обращения: