понедельник, 8 ноября 2021 г.

 Читая душераздирающие истории о том, что "терминал обновился и всё перестало работать", я поначалу тоже поддался желанию "стоять до последнего" и тоже начал блокировать автообновление терминалов параметром /skipupdate.


А потом подумал - а зачем блокировать? У них первые билды каждой новой сотни кривые - ну и пусть дорабатывают и передают мне.
Я ж не обязан делать то, что ОНИ думают я буду делать.
Я буду делать что надо мне - а ОНИ пусть делают что им надо, чего мешать друг другу...

Поэтому я не блокирую автообновление терминалов и мне не надо откатывать МТ4 на старый билд.
В этом просто нет необходимости - в каждом каталоге МТ4 у меня есть все нужные мне предыдущие билды терминала.
И в любую секунду в любом МТ4 я могу вызвать/стартовать любой нужный мне билд терминала, новый или старый - без захода в каталог МТ4 и без манипуляций в нем руками каждый раз, когда надо вызвать старый билд терминала.


Для такой организации работы надо придерживаться несложной технологии сопровождения МТ4.
Сейчас я начал применять несколько простейших приемов.


1) переименовываю файлы terminal.exe везде, всегда и немедленно, как только закрою терминал с последним, сегодня обновленным билдом.
Например, переименовываю terminal.exe в terminal Alpari 910.exe или terminal Robo 890 №счета.exe - в зависимости от того какой билд был сегодня обновлен/установлен метаквотами.
Проще и технологичнее называть файлы терминалов по схеме terminal ДЦ №Билда.exe

Даже при автообновлении МТ4 переименованные мною файлы терминалов затерты не будут - а коллекция билдов лишь пополнится.
Метаквоты перестали быть непосредственной угрозой вообще - надо лишь уйти с линии огня.

Обновили метаквоты МТ4, появился новейший terminal.exe последнего билда - я тут же переименовал файл в terminal ДЦ №Билда.exe.
Всё.


2) для каждого terminal ДЦ №Билда.exe создаю ярлык на рабочем столе - откуда и вызываю терминалы без захода в каталог каждого МТ4.

Создание ярлыка на рабочем столе может немного иначе выглядеть в разных версиях винды - но всюду практически одинаково.
Наводите курсор мыши на файл terminal ДЦ №Билда.exe, кликаете по правой кнопке мыши, вываливается стандартное меню: и в меню есть минимум один пункт "Создать ярлык" - удобнее создать ярлык через пункт меню "Отправить", так как в этом случае ярлык терминала данного билда сразу создается на рабочем столе вашего компьютера.

Обновился МТ4, появился terminal.exe - переименовал его в terminal ДЦ №Билда.exe - и его уникальный ярлык (например, Alpari 910 или Робо 890) помещаю на рабочий стол.
Дополнительно можно уточнить название самого ярлыка терминала на рабочем столе - например, Alpari 910 цент или Робо 890 4-хзнак.

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


3) я перестал удалять из каталогов МТ4 старые билды terminal ДЦ №Билда.exe.
Они у меня все по разному названы, у каждого свой не попутаешь ярлык на рабочем столе - хоть 10 билдов в одном каталоге МТ4 держи...

Каталог каждого ДЦ с важными счетами у меня один (реже 2), там все шаблоны, скрипты, индюки, боты - а билдов в корневом каталоге МТ4 хоть 10!...
В основном использую последние билды.
Но если позарез нужен индюк или бот, работающий не старше 890 билда, например - ну так кликаю ярлык 890 билда (вместо 910) единственного полностью настроенного МТ4 ДЦ/счета и работаю сколько надо.


4) всюду использую в ярлыках терминалов/билдов (термобилдов :d ) параметр /portable
То есть строка вызова терминала в свойствах ярлыка вызова терминала на рабочем столе у меня имеет вид, например,
для текущего 910 билда терминала ...\MetaTrader4 - RoboForex\terminal ROBO 910.exe" /portable
для "старого" 890 билда терминала ...\MetaTrader4 - RoboForex\terminal ROBO 890.exe" /portable /skipupdate

Понятно, что ярлыки вызовов абсолютно всех "старых" (не текущих) билдов терминала МТ4 должны содержать и параметр /skipupdate - иначе будут принудительно обновлены и, после обновления, управление будет передано последнему билду терминала.
Поэтому, после очередного обновления терминала, в ярлык вызова предшествующего билда терминала всегда надо, не откладывая, дописывать параметр /skipupdate


По теории (и вроде реально так) с параметром /portable вся инфа МТ4 размещается в папке МТ4 - а не где-то в недрах операционки фиг найдешь где.
Это должно иметь свои плюсы.
Терминал отвязывается от конкретного компа, его можно носить с собой на флэшке и полноценно работать где угодно на любом компе - это вам не в телефоне единственную машку дергать за разное...
Терминал полноценно, а не частично, архивируется - со всеми настройками и всеми файлами.
Терминал сразу и тоже полноценно переносится на любой другой комп, в том числе VPS.
На 100% до конца еще не разобрался, но пока всё с теорией вроде совпадает.


5) у меня нет проблем с тестером стратегий при использовании переименованных terminal.exe. Все работают штатно.
Но если у кого-то что-то не пойдет, то можно сделать копию любого ранее переименованного terminal.exe и копию переименовать обратно в terminal.exe - чтобы воспользоваться тестером стратегий.
Важно только одно: сделать копию нужного терминала - и обратно в terminal.exe переименовывать лишь копию. А не оригинал.
То есть копируем нужный билд (например, terminal ROBO 890.exe), вставляем тут же в корне папки МТ4, получаем файл "Копия terminal ROBO 890.exe", удаляем "Копия ", "ROBO", "890" и тестим на файле terminal.exe.
Но это только если у кого-то что-то не пойдет - у меня переименованные файлы terminal ДЦ №Билда.exe все работают без ограничений больше года.


Может показаться, что это сложновато... Но реально это элементарно - несколько секунд в редкий день обновления терминала.
Минута-три в месяц. :)
И порядок с терминалами при этом железный, всё кодифицировано, ничего не теряется - работать очень удобно.
Так что рекомендую.


P.S. Все помнят, что чтобы узнать билд terminal.exe, не надо стартовать МТ4 и в меню "Справка" и "О программе" смотреть билд?!
Билд терминала указан в комментарии к файлу terminal.exe - достаточно навести курсор мышки на файл terminal.exe и вы увидите № билда. :)

Комментариев нет:

Отправить комментарий