В первой части
Excel-прототипирование торговых систем: быстрый старт мы разобрались, как смоделировать торговую систему по простой торговой идее, как получить сигналы и оценить их работу.
Сегодня научимся моделировать сделки по сигналам и получать результаты в пунктах.
Примечание: Oxy уже создала советник для тестирования этой системы в MQL и постаралась показать, как это можно сделать с нуля — в дальнейшем хорошая база для создания торгового советника по данной системе.
Кстати, у системы есть название — это AntiTrend Daily (ATD), во всяком случае такое название я дал в 2010 году, шёл 185-ый топик от рождения OpenTraders ))
Как обычно, готовый файл будет лежать в конце топика. Заголовки колонок там будут расшифрованы в примечаниях.
Обращаю внимание, что я не просто механически учу создавать по готовой инструкции некую торговую систему, а пытаюсь добиться, чтобы те, кто до сих пор находится в пучине ручной интуитивно-эмоциональной торговли, научились рассуждать и подходить к трейдингу системно. И считаю Excel для этого удобным наглядным универсальным инструментом.
Получаем результат сделок в пунктах
Столбец ValSum нам сейчас не нужен. Просто скрываем его — выделяем столбец и нажимаем «Скрыть», чтобы не мешался (при необходимости его всегда можно вернуть, выбрав столбцы, между которыми он находится, и нажав «Показать»). График ValSum располагаем на отдельной странице, пусть будет.
Напомню, сигнал у нас прогнозирует цвет свечи в новый день. Что является результатом трейда по нашему сигналу? Ну раз мы прогнозируем цвет свечи, то значит в пунктах результатом сделки должен стать размер тела свечи. Рассчитаем размер тела свечи
Body в пунктах для каждого дня.
Body = ABS(Close - Open)
ABS — это модуль числа. Потому что нам нужен размер свечи без учета знака.
Умножаем на 10000, чтобы получить четырехзначные пункты. Пятый знак уточняющий. Поэтому он остается за запятой. Чтобы показывать число с одним знаком после запятой в колонке Body выставляем соответствующий формат:
Выделяем колонку Body — Вызываем меню по правой кнопке мыши — «Формат ячеек» — Выбираем «Числовой» — Выставляем число десятичных знаков после запятой 1
Переходим к расчету числа пунктов по сделкам. Хранить результат сделки будем в новой колонке
Trade.
Мы помним, что результат в пунктах — это тело свечи Body. Но с каким знаком взять это тело? Понятно, что в случае верного сигнала (Value = 1) — с положительным, а в случае ошибочного (Value = -1) — с отрицательным (см. предыдущую часть, если забыли, что такое у нас Value). Значит:
Trade = Value * Body
Например, сигнал ошибочный (Value = -1), а тело свечи по модулю 83.6. Перемножение даст результат по сделке "-83.6"
Что-то забыли? Вообще-то, да )) Спред!
Учесть его просто — надо из результата вычитать одно и то же число пунктов, которое примем за спред. Пусть спред будет 2. Итого:
Trade = Value * Body - 2
Делаем:
Строим график торговли в пунктах
Вот мы и получили результат трейдов в пунктах. Можно выделить колонку с Trade и, как в первой части с Value, посмотреть первичную оценку в строке состояния внизу: Средний трейд +1,7 пп, Итоговый результат (сумма) +1662,6 пп
Но нам интересна, конечно, динамика. Отличается ли от динамики по верным сигналам?
Для этого создаем
TradeSum и на основе Trade делаем для него то же самое, что делали для ValSum на основе Value
в первой части (раздел «Строим график»)
Т.е. рассчитываем накопительную сумму в TradeSum относительно Trade, получаем изменение результатов трейдинга во времени в пунктах.
Осталось построить график по TradeSum и дате (подробно процесс описан в первой части там же в разделе «Строим график»)
Что ж, мы видим, что график торговли в пунктах получился заметно хуже, чем график динамики сигналов из первой части. Почему?
Во-первых, спред не надо недооценивать. Между прочим 980 трейдов дали минус 1960 пунктов спреда. А это больше, чем осталось в итоге пунктов профита (+1662).
Во-вторых, сигналы могут быть верные и неверные. В динамике сигнальной они дадут +1 и -1 соответственно. А в торговле может оказаться так, что верные приносят в среднем по +60, а ошибочные -70 (и это тоже может быть неслучайным), что способно нивелировать преобладание верных сигналов над ошибочными.
Файл по второй части:
ATD_system_2.xlsx (182 Kb)
Что дальше?
Это только начало.
В новых частях мы вместе: проверим работу стопов и тейков, попробуем фильтровать сигналы, навесим ММ и сделаем другие интересные вещи, не выходя из Excel.
← Часть 1: быстрый старт… Часть 3: [в разработке] →
P.S. Доступны персональные консультации и обучение по скайпу. Для подробностей обращайтесь в личные сообщения или на почту
ruslan.kayumov@opentraders.ru
Комментарии (0)
Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий