Визуализация тестирования. Ручная торговля.

Автор: lexy Среда, Сентябрь 10th, 2014 Нет комментариев

Рубрика: Разное

В клиентском терминале 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. Именно из него (с разрешения автора) были взяты некоторые идеи и куски кода при написании этой статьи. За что автору - огромное спасибо.

 

 

Источник: mql4.com

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

Чтобы оставлять комментарии Вы должны быть авторизованы.

Похожие посты