Развитие розничного рынка форекс делает старые разработки снова актуальными. Если раньше за большой поток ордеров дилер мог запросто забанить трейдера, перестав принимать ордера, то современная рыночная схема напрямую зависит от проторгованного объема. В статье мы рассмотрим один из таких советников, пусть и не относящийся непосредственно к HFT, но с достаточно большой частотой сделок.
Описание стратегии советника High Frequency
Советник High Frequency торгует в сторону импульса цены. Когда на рынке появляется резкое движение вверх или вниз, советник устанавливает отложенный ордер в сторону этого движения. Кто торговал на новостях, знает, что попытка войти в рынок на импульсе может закончиться неудачей, особенно если входить по рынку или стоп-ордерами. Главная проблема здесь – это проскальзывание. С другой стороны, если импульс достаточно большой, то, даже открывшись с проскальзыванием, вы все равно получите прибыль.
Но остается вопрос фиксации прибыли. Важно успеть зафиксировать плюс, пока цена не развернулась обратно. Для закрытия позиций в советнике HF используется примитивный метод по общей прибыли. Когда общая прибыль по всем позициям достигает определенного значения, все ордера закрываются, а отложенные – удаляются. Преимущество этого метода в простоте и предсказуемости прибыльности. Минус же в том, что советник не управляет отдельными ордерами, из-за чего убыток по единственному ордеру будет тянуть счет вниз, а позиции могут очень долго не закрываться.
Как определяется импульс для открытия позиции?
Период N (допустим, 10 секунд) в параметрах советника определяет период перерасчета показателей. Грубо говоря, это внутренний таймфрейм советника. Каждые 10 секунд советник вычисляет, в какую сторону сдвинулась цена относительно предыдущего значения и на сколько. Если размер движения оказался больше среднего и при этом больше значения минимального сдвига min_range, то открывается Buy Stop или Sell Stop ордер, в зависимости от направления сдвига. Также учитывается положение индикатора ROC относительно нуля. Покапаем только тогда, когда его значение больше нуля и продаем только когда ROC меньше нуля.
В советнике High Frequency нет ограничения на количество ордеров, поэтому следует внимательно следить за размером свободной маржи. Если ордеров накопилось слишком много, лучше вручную закрыть все текущие позиции, даже если по ним имеется небольшой убыток.
Настройки советника
- ROC_Period – период расчета индикатора ROC.
- IND_TF – таймфрейм индикатора.
- lot – фиксированный лот для отложенного ордера.
- profit – тейкпрофит по прибыли.
- N – период в секундах для внутренних расчетов.
- K – период усреднения.
- min_range – минимальный импульс цены.
- range_stop – расстояние в пунктах для установки ордера от текущей цены.
- magic – уникальный номер советника.
Тестирование советника High Frequency
При тестировании высокопроизводительных советников стоит принимать во внимание, что тестер MetaTrader 4 не учитывает проскальзывания, реквоты и плавающий спред. Поэтому, любой тест может дать лишь примерное представление о том, как советник поведет себя на реальном счете.
Для чего может пригодится тестирование в тестере?
В любом случае, перед тем как ставить подобного робота на реальный счет, нужно определиться с примерными настройками и валютными парами для торговли. То есть, для начала нужно выяснить потенциал торговых инструментов. Для тестирования можно ограничиться только мажорными парами. Кросс-курс дает мало информации для теста, потому что легко рассчитывается из тех же мажоров.
Мы будем проводить оптимизацию советника по двум параметрам: периоду ROC и расстоянию для установки ордера. Торговый таймфрейм M1. Тест будет проводиться за июнь 2016. Давайте рассмотрим результаты оптимизации по основным валютам. В данном случае, насыщенный зеленый цвет на графиках оптимизатора означает наибольшую прибыль (но не обязательно наименьшую просадку).
EURUSD
Безусловным лидером оказался результат с ROC(20) и range_stop, равному 4 пунктам. Видимо, сказывается относительно небольшая волатильность EURUSD, из-за чего абсолютная величина импульса тоже достаточно небольшая.
Тест с указанными параметрами показал достаточно стабильный рост доходности, с небольшой просадкой.
GBPUSD
Не зря эти валюты называют братьями-близнецами. Как и по евро, по фунту мы видим четко прочерченную границу выше наиболее оптимальных 4 пунктов. Соответственно, значения в 8 и 2 пункта для range_stop будут самыми неподходящими. Лучшие периоды для индикатора ROC в порядке убывания – 15, 10 и 20.
Тест по оптимальным значениям доходности к риску.
USDCHF
К сожалению, как и по USDJPY, по франку не удалось получить хороших результатов.
Тем не менее, лучшим оказался проход с ROC(20) и range_stop, равный 4 пунктам, что обеспечило достаточно высокую частоту сделок.
USDCAD
Канадец показывает явное преимущество больших расстояний. А вот положительных результатов с параметром range_stop ниже 6 пунктов вообще не оказалось.
Итого, оптимальными параметрами для канадца являются период в 20 пунктов и расстоянием до ордера в 10 пунктов.
AUDUSD
Прибыльных результатов по австралийцу оказалось гораздо больше. Что интересно, лучший результат по прибыли почти аналогичен EURUSD.
Тем не менее, оптимальный результат с наименьшей относительной просадкой был получен с range_stop равным 10 пунктам и 20-ти периодным ROC.
NZDUSD
Для новозеландца типичны редкие, но более заметные импульсы. По-видимому, в связи с этим, лучший результат и оптимальное значение доходности к риску было получено с ROC(25) и range_stop равным 10 пунктам.
Тест показал одну из наименьших просадок из тестируемых пар.
Итоги исследования
Перед использованием советника High Frequency на реальном счете нужно учесть несколько факторов:
- Во-первых, на сервер отправляется большое количество ордеров. Если вы торгуете в диллинговом центре (ДЦ), скорее всего, вас будут часто реквотить. В крайнем случае, за такую торговлю могут даже заблокировать. Если заметили проблемы с исполнением, попробуйте увеличить параметр N. Чем больше его значение, тем меньше частота ордеров.
- Во-вторых, советник очень чувствителен к проскальзываниям. Стоит учитывать, что он использует стоповые ордера, а значит даже на рыночном исполнении могут быть большие проскальзывания. Очевидного решения здесь нет. Как вариант, можно попробовать другого брокера.
- В-третьих, учитывая небольшие цели, торговые издержки (спред и комиссия) должны быть минимальными. Суммируя эти данные, приходим к выводу, что для работы советника лучше всего подойдет ECN-брокер. В идеале, нужно протестировать работу советника сразу в нескольких конторах, так как далеко не всегда брокеры используют одних и тех же поставщиков котировок, а здесь очень кстати придется LMAX с его почти гарантированным исполнением.
>> Скачать советник High Frequency
Другие советники
- Советник Profit Pacman — мартингейл для новичков
- Советник Aeron JJN Scalper EA – скальпинг внутри дня
- Советник Robot – стохастики + искусственный интеллект
- Советник Ilan 1.6 Dynamic – советник для разгона бонусов