Многие из наших клиентов устанавливают торговые терминалы на виртуальные серверы. Это довольно удобно и преимущества очевидны. Не нужно все время находиться перед компьютером, VPS сервер находится постоянно в режиме онлайн и торговый терминал всегда включен.


В связи с общим интересом со стороны наших клиентов к терминалу MT4 в связке с Linux системами, мы решили написать как установить Metatrader 4 на виртуальный сервер с доступом через x2go.

Серверная часть


Подключившись к серверу по ssh необходимо выполнить следующие действия.

Добавить репозитории с x2go:

$ echo "deb http://packages.x2go.org/debian jessie main" > /etc/apt/sources.list.d/x2go.list
$ echo "deb-src http://packages.x2go.org/debian jessie main" >> /etc/apt/sources.list.d/x2go.list
$ apt-key adv --recv-keys --keyserver keys.gnupg.net E1F958385BFE2B6E
$ apt-get update && apt-get install x2go-keyring && apt-get update

Установить x2go:

$ apt-get install x2goserver x2goserver-xsession

Отредактировать файл .profile в вашей домашней директории. Нужно найти строку "mesg n" и заменить её на "tty -s && mesg n":

$ vi.profile

Установим браузер:

$ apt-get install iceweasel

Создадим файл для запуска установки Metatrader. На текущем этапе выполнить её не получится. Этот файл будет запущен чуть позже, из клиента:

$ printf '#!/bin/bash\n\nwine \"Downloads/OBRTraderSetup.exe\"\n' > mtinstaller.sh

Следующая команда создает файл для запуска пока еще не установленного Metatrader:

$ printf '#!/bin/bash\n\nwine \"/root/.wine/drive_c/Program Files/OBR Forex/OBR Trader/terminal.exe\"\n' > mtrunner.sh

Эти файлы должны быть запускаемыми:

$ chmod +x mtrunner.sh && chmod +x mtinstaller.sh

Теперь ставим wine:

$ dpkg --add-architecture i386 && apt update && apt-get install wine wine32

На этом работа по ssh завершена, можно переходить к подключению к вашей удаленной машине через x2goclient.

Клиентская часть


Скачиваем клиент отсюда. После установки и открытия клиента нажимаем на кнопку «New session»:


Далее нужно создать три сессии:

1. Сессия для запуска браузера:


2. Сессия для запуска Metatrader 4:


3. Сессия для запуска установки Metatrader 4:


Теперь окно клиента x2go должно выглядеть так:


Кликаем по сессии «Debian-Firefox», вводим пароль, откроется окно браузера запущенного на нашей VPS, переходим на форекс сайт и логинимся. В x2to нормально работает буфер обмена, так что ссылки можно копировать.


Теперь необходимо поставить Metatrader 4 на наш VPS. Скачиваем программу с сайта. Пока качается можно открыть «Демо счет»; на почту. указанную при регистрации придут все необходимые данные по счету. Браузер пока больше не понадобится. Если вы не хотите его закрывать, а хотите позже вернуться к открытым вкладкам, нажмите в клиенте x2go на кнопку, выделенную красным кружком. Точно также, чтобы оставить Metatrader открытым, но отключиться от VPS нужно использовать именно эту кнопку.


Начинаем установку Metatrader 4. Кликаем по сессии «Debian-Metatrader4-Installer», вводим пароль от VDS и следуем инструкциям на экране.

Всё. Теперь можно открывать x2go-сессию «Debian-Metatrader4» и Metatrader запустится на удаленной машине. Если вы хотите оставить его запущенным, не закрывайте окно, вместо этого используйте кнопку паузы в окне x2go клиента. Удачной торговли!

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

Для стабильной работы MT-4 достаточно будет следующей конфигурации сервера:
CPU 1 x2.2ГГц, RAM 1Гб, DISK 20 Гб, один выделенный IP адрес
Поделиться с друзьями
-->

Комментарии (14)


  1. UnnamedUA
    17.10.2016 13:24

    RAM 2Гб? Не многовато?


    1. obrforex
      17.10.2016 14:10

      Вы правы, много. RAM 1Гб будет достаточно, исправили


      1. OBR1
        17.10.2016 14:40

        Дело в том, что если пользователь запустит только лишь один МТ-4 и всё, то ему хватит. А если ещё что-нибудь захочет, то не факт, что хватит памяти. Там около 100 МБ остается свободными. На браузер с 10 вкладками может не хватить…


    1. SADKO
      17.10.2016 14:14

      Ну таки сам дистрибутив, иксы, оконный менеджер, итд…
      … сам mt4 может памяти хотеть в зависимости от того, чем его на фаршируете
      ИМХО сама идея размещать торговые системы на VDS порочная, если только эти VDS не на вашем же физическом сервере крутятся. К чему все эти извращения если есть VDS от метоквотов :-)


      1. obrforex
        17.10.2016 14:34

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


        1. SADKO
          17.10.2016 15:40

          Спасибо, тогда будем пробовать.


      1. obrforex
        17.10.2016 14:47

        Понимаем, с точки зрения безопасности Вы в некотором смысле правы — есть клиенты, которые боятся поставить торговлю на VDS (боятся за коды роботов), но здесь есть решение простое — переносить на сервер только исполнимый файл робота, так как произвести дизассемблирование этого файла очень проблематичная задача. А наличие VDS при этом решит вопрос бесперебойного питания и связи. VDS от метаквотов — такое же решение, только оно не самое дешевое и не всем может быть удобно.


        1. SADKO
          17.10.2016 20:55

          Тут дело даже не в безопасности, хотя и в ней тоже, а в гарантии доступности системных ресурсов, дешевые VDS заточенны под WEB разработку и малую нагрузку. А арендованная железка, позволяет гибко себя настроить и гарантировать низкую латентность, и высокую вычислительную мощь там где это нужно.
          Плюс, позволяет реализовать всякие необычные сценарии, например, по сигналам метака, жамкать кнопки мобильного приложения :-) или того-же метака от торгового бота сидящего на кошерном фиде :-)
          Вариантов масса, и стоимость аренды железяк не принципиальна не разу.


  1. kernelconf
    17.10.2016 16:19

    Почему бы не использовать программу под той ОС, под которую она разработана? У меня так сделано, а контроль по ipsec/rdp.


    1. OBR1
      17.10.2016 16:52

      Если вы имеете в виду OS Windows, то для установки MT-4 на виртуальный сервер под Windows потребуется более мощная конфигурация, соответственно более дорогая и лицензия на windows server у многих провайдеров стоит также дополнительных денег.


      1. SADKO
        17.10.2016 20:36

        Отнюдь, Windows прекрасно поддаётся обработке напильником :-) и вовсе не обязательно использовать серверную с полным фаршем… А ещё есть ReactOS.


        1. RussianNeuroMancer
          18.10.2016 03:00

          > А ещё есть ReactOS.

          Ходят слухи, что ядро ReactOS не дотягивает до Linux по уровню стабильности. Как считаете, могут у таких слухов быть некоторые основания, если брать в рассчёт возраст и сферы применения этих двух разработок?


  1. harbor1
    18.10.2016 10:29

    Советники MT4 скомпилированные под Windows версией терминала работают с версией под Debian?


    1. obrforex
      18.10.2016 17:03

      Да, это очень легко проверить, можно поставить терминал и добавить на график хотя бы шаблонные советники. Они будут работать. Так же Вы сможете скомпилировать исходный код. Если он компилировался без ошибок на Windows, так же будет и здесь.
      Единственное, смайл, который на графике указывает на то, что советнику разрешено торговать, будет отображаться некорректно, в виде прямоугольника.