Еще раз о тестировании по всем тикам или отправляем TickStory на свалку

Мы уже не раз писали о тестировании советников в тестере стратегий MetaTrader4 с использованием тиковых котировок (с качеством моделирования 99%), в частности здесь https://www.argolab.net/testirovanie99-ot-integral.html и здесь https://www.argolab.net/tick-data-suite.html. Но жизнь не стоит на месте и вносит свои коррективы в привычные схемы работы.

Много лет одним из самых простых бесплатных способов протестировать стратегию по тиковым котировкам было использование пакета TickStory Lite (мы писали об этом вот здесь https://www.argolab.net/tickstory-lite.html). Однако, некоторое время назад команда TickStory прекратила бесплатную поддержку новых билдов МТ4. Действительно, в описании версий TickStory на официальном сайте читаем следующее

Т.е., TickStory Lite по-прежнему бесплатна, но поддерживает билды МТ4 только до 765 (а актуальный билд сейчас 1031). Платить 35$ за лицензию многим не хочется, а за годы использования многие привыкли к TickStory, а зачастую еще хуже – не представляют себе, как без нее обойтись. Вот и приходится или использовать для тестирования старые билды, или собирать по сети ломаные коммерческие версии. Ломаные версии работают плохо, а жить со старыми билдами еще хуже. Старые билды МТ4 уже нельзя подсоединить к брокеру, они норовят автоматически обновиться, а главное — советники скомпилированные новыми билдами на старых билдах не работают.
Подробнее »

Оптимизируем мультивалютный сеточник в МТ4: подбор оптимального шага сетки сразу для всех валютных пар

dreamstime_xs_34882380Некоторое время назад мы уже рассматривали тестирование мультивалютных советников в терминале МТ4 и выяснили, что это вполне возможно сделать (Тестирование мультивалютных советников в МТ4: мифы и реальность). Напомню, что в тот раз мультивалютность тестирования достигалась за счет объединения нескольких прогонов тестера МТ4, в каждом из которых сделки открывались только по одной валютной паре. Такой способ действительно работает, но имеет несколько неудобств. Первая проблема заключается в сложности оптимизации такого советника. Вторая проблема заключается в том, что неизвестной оказывается максимальная открытая просадка – для ее определения придется устраивать дополнительный анализ.

Сегодня я изложу метод мультивалютного тестирования советников в МТ4, который свободен от вышеупомянутых недостатков. Сразу расскажу суть метода. Как мы помним, все проблемы с мультивалютным тестированием в МТ4 происходят из одного технического ограничения тестера стратегий МТ4: тестер может открывать (и модифицировать, закрывать) ордера только по той (одной) валютной паре, по которой запущен тестер стратегий. Решение, как всегда, на поверхности: если тестер не умеет открывать ордера по разным парам, то надо это делать самим! Итак, решено: мы напишем советник, который будет «торговать» виртуально – весь процесс открытия, модификации и закрытия ордеров будет держаться в памяти советника, и там же будет накапливаться информация о результатах торговли (прибыль, просадка, и тп). В конце прогона тестирования мы вычислим показатель эффективности торговли и передадим его в тестер через настраиваемый параметр оптимизации (функцию OnTester). Дополнительная информация о результатах торговли может выводиться советником во внешний файл (если захотеть, можно реализовать запись файла отчета, полностью идентичного тому, что делает тестер). В результате мы сможем использовать штатный режим оптимизации в тестере стратегий МТ4 для отбора вариантов с наилучшими результатами торговли. И это все в полностью мультивалютном режиме!

Теперь надо выбрать достойную задачу для мультивалютной оптимизации. Давайте рассмотрим базовую сеточную стратегию: мы открываем ордер; если цена идет в нашу сторону, мы закрываем сделку по тейк-профиту (ТП); если нет, мы строим сетку усредняющих ордеров с заданным шагом и заданным коэффициентом умножения лота. Когда сетка выходит в безубыток + ТП пунктов, мы закрываем сетку с прибылью и начинаем следующую. Таким образом, в логике всего 4 параметра: тейк-профит, шаг сетки, начальный лот и умножитель лота. Особенность нашего советника в том, что он мультивалютный, поэтому начальный лот и шаг сетки по разным валютным парам будут не произвольными, а жестко связанными между собой. Как? На этот вопрос мы уже по сути ответили в одной из наших предыдущих статей (Сколько весит валютная пара?). Разумно установить начальный лот обратно пропорциональным цене пункта по данной валютной паре, а шаг сетки сделать увеличивать или уменьшать пропорционально волатильности данной пары.
Подробнее »

Тестирование советников с качеством моделирования 99% по тиковым котировкам от Integral.

test 9
Про тестирование советников на тиковых исторических данных в тестере стратегий терминала МетаТрейдер 4 мы уже писали неоднократно (в частности, Тестирование советников с качеством 99,9% с помощью программы Tickstory Lite http://www.argolab.net/tickstory-lite.html и Tick Data Suite: тестирование с 99% моделированием, выбор профессионалов http://www.argolab.net/tick-data-suite.html), да и в сети информации об этом предостаточно. Однако, вся эта информация сводится только к тому, как протестировать советник на тиковых данных одного-единственного брокера, Dukascopy. Dukascopy, конечно, неплохой брокер, но людей которые у него торгуют можно по пальцам пересчитать. А с учетом того, что платформу МТ этот брокер не поддерживает, то тестирование МТ советников по его котировкам и вообще теряет особый смысл.

Между тем, существует очень хорошая (и совершенно бесплатная!) возможность тестировать советник по котировкам одного из самых известных поставщиков (точнее, агрегаторов) ликвидности, межбанковской системы Integral. Integral предоставляет ликвидность для многих брокеров, в частности, Roboforex, GKFX и пр. Несомненно, его котировки гораздо ближе к тому, что могут получить в реальности клиенты ритейл-форекса на постсоветском пространстве, чем котировки Dukascopy. Сегодня мы с вами подробно разберем, как нам протестировать советник на котировках от Integral.

Во-первых, тиковые котировки нужно скачать. Для этого идем по адресу http://www.truefx.com/?page=downloads
Подробнее »

Чистим терминал MetaTrader и снижаем нагрузку на ПК.

chistka

С каждым новым билдом MetaTrader становится всё тяжелей и прожорливее. А если вы занимаетесь тестирование советников и индикаторов во встроенном в Метартрейдер тестером стратегий, то вес терминала может достигать десятков гигабайт.
SCR00

Другая головная боль — это нагрузка на ваш компьютер или впс сервер. Сейчас терминалы стали гораздо прожорливее на ресурсы ПК. Если раньше мой VPS-VIP от http://www.myfxvps.pro/ тянул до восемнадцати терминалов, то сейчас на нём работают тринадцать терминалов.
Небольшая разгрузка терминалов позволяет экономить ресурсы сервера и установить дополнительные терминалы.

Подробнее »

Тестирование советников в тестере стратегий: ЧаВо

voprosС чего начать?

1. С закачки котировок. Зайти в «Архив котировок» в MetaTrader 4: меню «Сервис» / «Архив котировок» (клавиша F2). Выбрать интересующий таймфрейм необходимого инструмента (кликнуть два раза мышкой, например, на EURUSD / М1) и нажать «Загрузить».
Для тестирования рекомендуется использовать демо-счет от Альпари, посколько у них загружаются относительно приличные котировки (подробнее о качестве котировок читаем здесь).

2. В тестере стратегий выбрать советник, валютную пару, период времени, тип моделирования (все тики/контрольные точки/цены открытия).
Не забыть установить спред!
Capture
По умолчанию в тестере стоит «текущий спред», что может быть причиной фантастических результатов, особенно если вы тестируете на выходных.

3. Загружаем в эксперт желаемые настройки — и вперед.

Какой тип моделирования выбрать?
Подробнее »

Тестирование и оптимизация торговых стратегий в Excel

test58Здравствуйте уважаемые трейдеры! Недавно столкнулся с непростой проблемой: как протестировать торговую систему пришедшую мне в голову. Тестирование в Forex Tester  на длительном периоде времени — далеко не быстрое и не простое занятие. Конечно, наилучшим способом было бы написать советник и затем пропустить его через жернова тестера стратегий Метатрейдер, но так как программист из меня никудышный, этот вариант тоже отпал.  На бескрайних просторах интернета натолкнулся на еще один, наиболее приемлемый для меня, способ тестирования торговых систем в программе Excel, с основами которого и хочу вас познакомить.

Немаловажно, что тестировать систему будем на реальных котировках Dukaskopy за период с начала 2010 года по настоящее время.

Для начала познакомлю вас с простейшей торговой системой которая родилась в недрах моего воспаленного мозга :). Наблюдая за движением пары GBPUSD и глядя на историю, я заметил, что наиболее сильные движения по тренду происходят в одно и тоже время на протяжении многих лет.  Построив в Excel гистограмму зависимости волатильности этой пары от времени суток выяснил, что наиболее сильные движения пары приходятся на 8 ÷ 12 и 13 ÷ 17 часов по GMT.  На часовой график пары установим простую скользящую среднюю (SMA) с периодом 50, которая будет индикатором направления тренда в нашей системе. Правила входа и выхода системы по детски просты: в 8.00 по GMT смотрим на график, если цена выше SMA — открываем сделку на покупки, если наоборот — продажи. Закрываем сделку в 12.00 GMT. Повторяем то же самое после обеда трейдеров в Лондоне и  начале торгов Нью-Йоркской сессии.  В системе минимум переменных, что уменьшает вероятность подгонки на истории.  В дальнейшем, для увеличения доходности и агрессивности системы можно прикрутить к ней элементы мартингейла в случае получения убытка или их серии, но это перспективы. На данном этапе необходимо выяснить: прибыльна ли система, положительно ли у нее математическое ожидание, ведь в противном случае выжать что — либо из системы представляется мне маловероятным.

Итак, приступим. Для получения котировок заходим на сайт Dukascopy  и во вкладке «Рынки и инфо» нажимаем «Исторический Data Feed«. Подробнее »

Тестирование мультивалютных советников в МТ4: мифы и реальность

test001Почти каждый, кто хоть как-то знаком с терминалом МетаТрейдер 4, знает, что тестер стратегий МТ4 не поддерживает тестирование по истории мультивалютных советников. Но очень мало кто знает, что тестирование мультивалютных советников в МТ4 все-таки возможно, и причем совершенно стандартными средствами.

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

Сначала разберемся, чего же именно НЕ МОЖЕТ тестер стратегий МТ4, в плане мультивалютной торговли.

Первое. Советник в тестере запускается по одной валютной паре. Для этой пары тестер эмулирует ценовые тики. Ни для каких других пар тики не эмулируются и, следовательно, тики других валютных пар в тестере недоступны.

Второе. Советник в тестере может открывать (и модифицировать, закрывать) ордера только по той (одной) валютной паре, по которой запущен тестер стратегий.

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

Давайте еще раз перечитаем первый пункт. Нам не доступны тики цены по разным валютным парам. Но КОТИРОВКИ-то (цена открытия, закрытия, high и low баров) доступны! Это значит, что мультивалютные индикаторы будут корректно считаться в тестере стратегий – до тех пока мы используем значения индикаторов на закрытых барах. Не верите? Давайте проверим, ведь «эксперимент – критерий истины.»

Вот код простейшего тестового советника. Этот советник считает значение скользящей средней на паре MA(EURUSD) на открытии нового бара и пишет в журнал значения для 10и первых баров.

А теперь эксперимент. Сначала мы запускаем этот советник по паре EURUSD, и советник пишет нам в журнал значения МА для первых 10и баров.
Подробнее »

Как получить максимум котировок от своего брокера?

http://www.dreamstime.com/royalty-free-stock-images-risk-maximum-switch-button-positioned-word-black-background-red-light-conceptual-image-illustration-high-level-image48242719Не секрет, что котировки разных брокеров отличаются, и порой довольно существенно. В этом можно легко убедиться самостоятельно, прогнав в двух тестерах стратегий с разными котировками одного и того же робота. Что с этим делать? Существует точка зрения, что хороший робот должен хорошо торговать на разных (всех) котировках. Такая точка зрения имеет право на существование. Но … у разных брокеров торгуют роботы все равно по-разному.

Возникает законное желание получить котировки именно от своего брокера и на них протестировать свой советник. Вот тут и начинаются проблемы.  Для того, чтобы получить в тестере качество моделирования 90% (а нам нужно именно такое  – или лучше —  качество чтобы не заниматься самообманом), необходимы котировки М1. Более крупные таймфреймы, на самом деле, не нужны, т.к. могут быть легко получены из М1. Так давайте получать от брокера М1 котировки.

Тут нас ждет некоторая засада. Скачиваем свежий терминал МТ4 от брокера (например, Робофорекс). Открываем график EURUSD M1 и жмем кнопку HOME, тем самым выкачивая котировки брокера (можно также воспользоваться скриптом, если рука начинает отваливаться  🙂 ). Через некоторое время график перестает реагировать на клавишу – брокер не дает больше котировок. Смотрим на дату – закачать удалось порядка двух месяцев М1 котировок.
Подробнее »

Исследование: сколько безоткатов на рынке?

bo001Сегодня мы с вами проведем небольшое исследование рынка форекс, в котором попробуем разобраться сколько и каких безоткатов (т.е., безоткатных движений цены в одном направлении) на рынке бывает и какие их основные свойства.  Попутно мы получим некоторые ответы на другие актуальные для трейдера вопросы: Какое соотношение тейк-профита и стоп-лосса является более выигрышным? Стоит ли переводить сделку в безубыток? Имеет ли смысл использовать трейлинг-стоп?

А почему вообще нас интересуют безоткаты? Не секрет, что трендовые движения цены вообще и безоткатные движения в частности позволяют получить максимальную прибыль за минимальное время. Поэтому шанс «поймать» безоткат и на нем «прокатиться» является безусловно ценным для каждого трейдера.

Давайте сначала определимся, что именно мы будем называть безоткатом: направленное движение цены, характеризуемое двумя параметрами, величиной безотката и порогом. Безоткат в 200 пт с порогом в 10 пт будет означать, что цена прошла 200 пт с максимальным откатом менее 10 пт (а после 200 пт случился откат больше или равный 10 пт). Это означает, что если бы мы вошли в сделку в начале безотката и использовали бы трейлинг-стоп в 10 пт, мы заработали бы 200-10=190 пт (для простоты пока пренебрегая спредом).

То, что такие движения цены иногда случаются, я думаю, знают все. А вот на вопрос как часто и какие именно безоткаты бывают, скорее всего, ответят немногие. Давайте попробуем в этом разобраться. Специально для этого исследования мы сделали вспомогательный советник BO (от англ. BreakOut), который собирает статистику о количестве безоткатов с выбранным порогом H пт за определенный период времени. Логика советника следующая. На открытии свечи М1 советник открывает виртуальную сделку на покупку и устанавливаем ей стоп-лосс равный H пт. Если цена проходит в направлении покупки H пт, мы подтягиваем стоп-лосс на H пт. В какой-то момент стоп-лосс срабатывает; в этот момент советник закрывает «сделку» и запоминает сколько «ступенек пирамиды» по H пунктов удалось пройти цене. После этого, на открытии следующей свечи М1 открывается следующая виртуальная покупка. Параллельно, советник делает то же самое в противоположном направлении, на продажу. После прогона советника в тестере стратегий, советник создает файл отчета, в котором пишет сколько каких пирамид цена «нарисовала».

Поскольку нам негоже заниматься самообманом, советник открывает и зарывает виртуальные сделки по правильным ценам (Ask и Bid) и учитывает комиссию, задаваемую в настройках (чтобы ее учесть, советник увеличивает спред на размер комиссии, так называемый маркап цены).  Поскольку нас обычно интересует не одно значение порога, а несколько разных, советник сразу насчитывает статистику для нескольких значений порога.

Итак, настройки советника (скачать советник можно в конце статьи):
Подробнее »

Тестер стратегий МТ4: что именно означают цифры в его отчете?

Japanese newspapersТестером стратегий популярной платформы МетаТрейдер4 регулярно пользуются почти все трейдеры на рынке форекс – ну, по крайней мере, те кто использует МетаТрейдер4  и советники в своей торговле.  Однако многие затрудняются ответить на вопрос, что же точно означают те цифры, которые тестер выдает в своем отчете. В этой статье я постараюсь ответить на этот вопрос, по возможности детально но в то же время популярно.

Давайте возьмем для примера отчет тестера стратегий нашего скальпера EasyWalker и разберем пункт за пунктом, что означают все цифры в отчете.

GBPCHF 3

Bars in test (Баров в истории) – количество баров цены за период тестирования.

Ticks modeled (Смоделировано тиков) – количество тиков цены за период тестирования.
Подробнее »

Советники ARGOLab
Последние статьи
.
.
Комментарии
E-Mail:
Форекс рейтинг . Форекс каталог