
Визуализация тестирования. Ручная торговля.
Введение
В клиентском терминале MetaTrader 4 появилась функция визуализации тестирования. Она позволяет контролировать процесс тестирования экспертов. Но не каждую стратегию можно запрограммировать и не каждый трейдер может написать хорошего эксперта.
В этой статье будет описано, как использовать визуализатор для тестирования "ручных", не оформленных в виде эксперта стратегий. Для торговли на "Тестере ручных стратегий" нужны лишь базовые навыки работы с терминалом и совсем не нужны знания программирования, так что работать с ним сможет любой трейдер.
В статье упоминаются программные средства, реализующие закладки "Торговля" и "История счета" при визуализации. Более подробно об их использовании можно почитать в статье Визуализация тестирования. Расширение функциональности.. Если вы ещё ни разу не работали с визуализатором, обязательно ознакомьтесь со статьей Тестирование экспертов в клиентском терминале MetaTrader 4. Взгляд изнутри.
Подготовка к использованию
Для начала, загрузите из CodeBase эксперта vHandsTrade.mq4. Его необходимо сохранить в директорию "\MetaTrader 4\experts\".
Если вы не пользовались "расширением функциональности" из вышеупомянутой статьи, загрузите из другого раздела CodeBase еще несколько файлов:
- включаемый файл VisualTestingTools.mq4 - в директорию "\MetaTrader 4\experts\include\";
- и два индикатора - vTerminal.mq4 и vHistory.mq4 - в директорию "\MetaTrader 4\experts\indicators\".
После этого откройте эксперта vHandsTrade.mq4 в MetaEditor-е и скомпилируйте его (клавиша F5). Подтверждением успешной компиляции будет служить сообщение в окне "Инструментарий":
Теперь, когда программа готова, можете заняться подготовкой шаблона графика. Для этого откройте любой график, настройте его внешний вид по своему вкусу, прикрепите индикаторы vTerminal.mq4 и vHistory.mq4, и сохраните шаблон под именем vHandsTrade.tpl:
Обратите внимание, что для работы с "Тестером ручных стратегий" справа на графике должно быть свободное место - туда будут помещены элементы управления. Поэтому при создании шаблона обязательно включите опцию "Смещение графика":

Теперь можете заняться непосредственно настройкой советника.
Настройка советника
У каждого трейдера есть свои "торговые привычки". Чтоб использование "Тестера ручных стратегий" стало для вас максимально удобным, потратьте пять минут и настройте советника в соответствии с вашими предпочтениями.
В процессе работы вы будете открывать и закрывать позиции, устанавливать отложенные ордера, передвигать Стоп Лосс и Тейк Профит позиций. При этом у вас будет возможность выбирать размер лота для открываемых позиций, время истечения для отложенных ордеров и многое другое. Каждой из настраиваемых характеристик соответствует строка на панели управления:

и две строки в коде эксперта:

Их назначение интуитивно понятно:
- RISK (Risk) - % депозита, который будет использоваться при открытии позиции;
- LOT (Lot) - размер лота, который будет использоваться при открытии позиции, если указан RISK = 0;
- STOPLOSS (SL) - размер СтопЛосс для открываемых позиций, если при открытии не двигается линия СтопЛосс;
- TAKEPROFIT (TP) - размер ТейкПрофит для открываемых позиций, если при открытии не двигается линия ТейкПрофит;
- TRAILINGSTOP (TS) - размер ТрейлингСтопа, которым будут сопровождаться все позиции;
- EXPIRATION (Exp) - время истечения отложенных ордеров в часах.
Вы можете поменять значения любой предопределенной характеристики прямо в коде. Например, если вы обычно открываете позиции с лотом 1.0, 2.0, 5.0, 10.0 и 50.0, поменяйте строку, где указаны размеры лота на вот такую:
double LOT[] = { 1.0, 2.0, 5.0, 10.0, 50.0 };После компиляции и запуска вы увидите следующую картину:

Если вы хотите, чтоб по умолчанию при запуске был выбран лот 5.0, вместо "int SELECTED_LOT = 1;" напишите
int SELECTED_LOT = 3;
Теперь 3-й по счету лот будет выбран по умолчанию:

Точно так же можно менять значения всех характеристик. Правило везде одинаковое: в массиве в фигурных скобках должно быть 5 чисел, разделенных запятой, а значение переменных SELECTED_*** должно быть от 1 до 5.
Внешние переменные и запуск
Теперь можно запускать наш "Тестер ручных стратегий". Откроем окно тестера, выберем из списка эксперта vHandsTrade, валютную пару и период графика и установим режим моделирования "Все тики" для максимального приближения к реальности:Только прежде чем нажать кнопку "Старт", заглянем в окно свойств эксперта. Там мы произведем окончательную настройку эксперта с помощью внешних переменных:
Собственно, у эксперта всего четыре внешних переменных, остальные он унаследовал от включаемого файла VisualTestingTools.mq4. Но для нормальной и удобной работы необходимо настроить все переменные:
- CommentsCount - максимальное количество сообщений, которое будет выводить эксперт на экран;
- SelectedColor - цвет выбранного значения характеристики Risk, Lot, SL, TP, и так далее;
- ModifyColor - цвет значка модификации ордера, который будет использоваться при ручной модификации;
- TrailingColor - цвет значка модификации ордера, который будет использоваться при ТрейлингСтопе;
- TerminalRows - максимальное количество строк закладки "Торговля", отображаемых на экране. Если установить TerminalRows = 0, терминал обновляться не будет;
- HistoryRows - максимальное количество строк закладки "История счета", отображаемых на экране. Если установить HistoryRows = 0, история счета обновляться не будет;
- BigText - установите true, если хотите использовать большой размер шрифта;
- SignalPoints - расстояние в пунктах, начиная с которого будут "подсвечиваться" поля Стоп Лосс, Тейк Профит и Цена открытия (для отложенных ордеров). Например, при SignalPoints = 10 поле Стоп Лосс изменит цвет, когда цена будет в 10-ти пунктах от уровня Стоп Лосс позиции;
- ShowCancelled - установите true, если хотите видеть в истории сделок отмененные ордера;
- ShowExpired - установите true, если хотите видеть в истории сделок отложенные ордера, у которых наступило время истечения;
- MainColor - цвет заголовочных строк Терминала и Истории счета и строки информации о торговом счете Терминала (Баланс, Эквити, ...).
- BuyColor - цвет информации о Buy-позициях;
- BuyOPColor - цвет поля Цена открытия закладки "Торговля", на который будет меняться основной цвет при приближении текущей цены к уровню открытия Buy Stop и Buy Limit - ордеров.
- BuySLColor - для закладки "Торговля": цвет, на который будет меняться основной цвет при приближении цены к уровню Стоп Лосс Buy-позиций. Для закладки "История счета": цвет, на который будет меняться основной цвет, если Buy-позиция закрылась по Стоп Лоссу;
- BuyTPColor - то же, что и BuySLColor, применительно к Тейк Профиту позиций;
- SellColor, SellOPColor, SellSLColor и SellTPColor - то же самое, только для Sell-позиций;
- vTerminal_SubWindow и vHistory_SubWindow - номер подокон индикаторов vTerminal и vHistory (описание в предыдущей статье).
Стоит заметить, что эксперт создавался для работы на графике с черным фоном, поэтому многие цвета по умолчанию светлые. Если вы используете белый фон, установите цвета темных оттенков. Именно так я и поступил, тестируя эксперта для статьи.
Первое знакомство
И вот, наконец, мы жмем кнопку Старт. Первое, что мы видим на графике - уже упоминаемая "Панель инструментов":С ее помощью мы сможем открывать позиции, устанавливать отложенные ордера и выбирать значения предопределенных характеристик. Каждое действие мы рассмотрим подробнее в соответствующей главе, сейчас же только замечу, что все манипуляции с Панелью инструментов безопаснее делать в режиме паузы. Любое действие воспринимается экспертом как приказ и отмене не подлежит. Поскольку эксперт предназначен исключительно для тестера, неосторожность не причинит вам материального ущерба, но вы вполне можете испортить результаты, полученные в результате длительного и кропотливого тестирования.
Ниже на графике - окна "Терминала" и "История сделок". Пока мы не начнем торговлю, они будут пустыми:
С помощью "Терминала" мы сможем закрывать и модифицировать позиции, окно "Истории сделок" играет чисто информативную роль.
Открытие позиции
Попробуем открыть позицию. Для начала, необходимо определить размер лота и расстояние до СтопЛосса и ТейкПрофита - зачем потом тратить время на модификацию?Как уже говорилось, выбор производится с помощью панели инструментов - необходимо выделить объект, содержащий необходимое значение, и переместить его в любую точку экрана. Одновременно можно перемещать любое количество объектов, т.е. если мы хотим установить Лот равным 1 и ТейкПрофит равным 100, необходимо перетащить соответствующие цифры в произвольную точку:
Теперь нажимаем F12 - приходит следующий тик, и эксперт отмечает выбранные значения:
При открытии позиции эксперт использует выбранное значение характеристики:
- размер лота вычисляется по формуле Свободная маржа * Risk * 0.01 * Кредитное плечо / Размер контракта. Если Risk=0, используется выбранное значение Lot.
- расстояние до Стоп Лосс определяется соответствующей линией (будет описано ниже). Если линия Стоп Лосс не двигалась с места, будет использовано выбранное значение SL;
- расстояние до Тейк Профит определяется соответствующей линией. Если линия Тейк Профит не двигалась с места, будет использовано выбранное значение TP;
- время истечения (только для отложенных ордеров) - используется выбранное значение Exp.
Открытие позиции происходит очень просто - достаточно перетащить соответствующую линию на график. Для каждого типа ордера есть 3 линии:
- линия Цены Открытия (сплошная для Бай и Селл позиций, штриховая - для отложенных ордеров), она находится по центру, между линиями Стоп Лосс и Тейк Профит;
- линия Стоп Лосс (штрихпунктирная), она находится снизу от линии Цены Открытия для Бай позиций, и сверху - для Селл позиций;
- линия Тейк Профит (пунктирная) - сверху для Бай позиций, снизу для Селл позиций.
Отложенные ордера, которые устанавливаются над текущей ценой (Бай Стоп и Селл Лимит) находятся в верхнем ряду, а те, которые устанавливаются под ценой (Бай Лимит и Селл Стоп) - в нижнем ряду.
Итак, если вы хотите открыть Бай позицию с выбранными значениями Стоп Лосс и Тейк Профит (на данный момент 50 и 100, соответственно), просто перетяните линию открытия Бай позиции на график:
Теперь нажмите F12, и любуйтесь результатом:
Поскольку Бай и Селл позиции открываются исключительно по текущим ценам, нет необходимости позиционировать линию точно на цену - эксперт подставит правильные значения сам. А вот для отложенных ордеров цену открытия надо указывать правильную, иначе ордер установлен не будет.
Давайте, теперь попробуем установить Селл Стоп ордер:
- размер лота - 10% от депозита;
- цена открытия и Стоп Лосс устанавливаются вручную;
- Тейк Профит отключен;
- время истечения 30 минут (0.5 часа).
Возьмем все необходимые объекты и разместим на графике:
Жмем F12, и смотрим:
Кажется, все получилось.
Закрытие
Закрытие позиций и удаление отложенных ордеров - задача намного более простая. Все, что необходимо сделать - выбрать тикет ордера, который необходимо закрыть, и передвинуть:Результат не заставит себя ждать - уже на следующем тике эксперт закроет позицию:
Удаление отложенных ордеров происходит точно так же.
Модификация
Управление модификацией ордеров объединяет в себе элементы открытия и закрытия позиций: для того, чтоб выбрать изменяемую характеристику (Цену Открытия, Стоп Лосс или Тейк Профит), необходимо переместить соответствующее поле.После прихода следующего тика эксперт создаст Линию Модификации, с помощью которой можно изменить значение соответствующей характеристики:
Передвинув линию на новое место, жмем F12 и видим результат:
Если же необходимо удалить Стоп Лосс или Тейк Профит вообще, просто удалите соответствующее поле:
Удалив поле Цена Открытия, можно закрыть позицию (удалить ордер) - кому-то этот способ может показаться более удобным.
Ограничений на количество одновременно модифицируемых параметров нет - можете менять хоть все открытые позиции за один тик.Заключение
Прочитав статью, вы убедились, что не обязательно быть программистом чтоб тестировать свою стратегию на истории. С помощью визуального режима тестирования можно торговать на истории вручную.Представленные в статье эксперт, библиотека и индикаторы позволяют симулировать реальный торговый терминал.
В заключение статьи хочу напомнить, что эксперт не предназначен для реальной торговли. Не доверяйте тестовой программе свои деньги.
Специально для облегчения управления ордерами в реальном режиме времени создавался программный комплекс AutoGraf. Именно из него (с разрешения автора) были взяты некоторые идеи и куски кода при написании этой статьи. За что автору - огромное спасибо.





- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Обсуждение - на форуме.
Что такок тикер линии ? Одним словом не получается никак удаление и модификация ордеров в ручном видео тестировании. ..