• Обзор
  • Отзывы (8)
  • Обсуждение (173)
  • Что нового

TriArb Trader

Советник реализует "треугольный" или трех-точечный арбитраж - стратегию, успешно используемую хедж-фондами.

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

Для получения прибыли, советник эксплуатирует слабость маркет-мейкера - сложность балансирования кросс-курсов всех валютных пар.


Безусловными достоинствами стратегии являются

  • отсутствие риска разворота рынка против вашей позиции;
  • отсутствие риска "сбора" стопов брокером или маркет-мейкером;
  • нейтральность стратегии к новостным свингам и гэпам.


Основные принципы стратегии

Котировки основных валют на рынке ФОРЕКС к доллару США (EURUSD, GBPUSD, USDJPY, USDCAD и т.д.) принято называть основными валютными парами (majors). Котировки валют (кроме доллара США) друг к другу принято называть кросс-курсами или кросс-парами. Кросс-курс двух валют может быть вычислен на основе котировок этих валют к USD (например, кросс-курс EURJPY равен произведению курса EURUSD на курс USDJPY). В то же время, кросс-пары активно торгуются на рынке как самостоятельные инструменты.

Далее, под кросс-парой понимается валютная пара, являющаяся самостоятельным торговым инструментом в платформе MT5, а под синтетическим кросс-курсом (синтетиком) понимается синтетическая позиция, образованная из двух основных валютных пар. Например, кросс-пара - EURJPY может быть найдена в платформе MT5 в разделе Forex/Crosses. При этом синтетический кросс-курс EURJPY может быть получен одновременным открытием позиций в EURUSD и USDJPY.

Важно понимать, что на свободном рынке курс кросс-пары может не совпадать со значением синтетического кросс-курса, так как курс кросс-пары зависит от спроса и предложения на образующие его валюты по отношению друг к другу, а синтетический кросс-курс зависит от спроса и предложения на эти валюты по отношению к USD.

В результате отклонения кросс-курса от значения синтетика возникает возможность арбитража, который назвали "треугольным", поскольку эта стратегия предполагает покупку и продажу валют по треугольнику (купить EUR против USD, купить USD против GBP, купить GBP против EUR - треугольник замкнулся).

Хотя маркет-мейкер и старается ликвидировать любые отклонения курсов, тем не менее, он может не успевать "выравнивать" курсы в моменты сильного движения рынка. В результате, возможности для "треугольного" арбитража появляются на рынке более или менее регулярно (наличие арбитражных ситуаций подтверждается множеством эмпирических исследований).


Риски арбитражных стратегий

  • арбитражные стратегии используют хеджирование, стоимость которого иногда может быть существенной (спред, торговые комиссии, свопы);
  • арбитражные позиции могут быть существенно "неликвидными" - открытая позиция может долгое время оставаться в минусе;
  • "треугольный" арбитраж достаточно чувствителен к проскальзываниям цены, запаздывание может привести к исполнению сделок в момент, когда арбитражная возможность исчезла, что может привести к потерям.

Из-за этих рисков, арбитражные стратегии труднореализуемы на практике. Тем не менее (возможно именно поэтому), активно используются талантливыми менеджерами хедж-фондов.


Советник TriArb Trader

  • Реализует алгоритмы высокочастотной торговли.
  • Код советника максимально оптимизирован для сокращения времени исполнения торговых операций.
  • В результате, советник устойчив к задержкам и проскальзываниям до 300 мс.
  • Самостоятельно корректирует "треугольник" в случае не открытия или случайного закрытия одной из позиций.
  • Торгует любые кросс-курсы и основные пары как в прямой, так и в обратной котировке.
  • Автоматически распознает политику исполнения ордеров, используемую брокером на счете.
  • Автоматически распознает счета с "хеджированием".
  • Способен "подхватывать" позицию, открытую ранее советником, запущенным на другой платформе.
  • Допускает наличие других советников и ручной торговли.


Описание параметров советника и рекомендации по настройке

  • Cross pair symbol - символ кросс-пары (например EURJPY)
  • First cross pair symbol - символ, стоящий первым в кросс-паре (в нашем случае это EUR, то есть EURUSD)
  • Second cross pair symbol - символ, стоящий вторым в кросс-паре (в нашем случае это JPY, то есть USDJPY)
  • Second symbol is in direct quotation - установите в положение true, если второй символ дан в прямой (direct) или false, если второй символ дан в обратной (indirect) котировке (в примере с EURJPY второй символ дан в обратной котировке => выбрать false)
  • Expert Advisor ID (Magic Number) - штамп эксперта, любое целое число до 2,147,483,647, уникальное для каждого советника на счете.
  • Max deviation (slipage) - так как важно обеспечить гарантированное открытие сделок, нужно выбрать достаточно большое значение параметра (100-200).
  • Arb. period (ms) - период проверки арбитражного условия в миллисекундах (советник работает оптимально при периоде проверки в 100-500 мск).
  • Max. number of trade retries - максимальное количество попыток размещения торгового приказа (хватает 3-4 но надежнее поставить 30-40).
  • Minimum deviation for in-trade (points) - минимальная девиация цен треугольника для открытия позиций (хорошо работает на 5-15 пунктах для пятизначного счета, однако при увеличении параметра Take Profit, лучше увеличить до 20-40. Снижение параметра до 2 с одновременным снижением Take Profit задает режим рискованного скальпирования).
  • Minimum deviation for out-trade (points) - минимальное отклонение цен треугольника для закрытия позиции, используется для закрытия позиции, когда суммарный убыток по позиции треугольника превысил значение Max. Loss (лучше ставить в 1.5-2 раза меньше, чем Minimum Deviation for in-trade).
  • Take Profit (USD) - суммарная прибыль (в валюте депозита) по трем позициям треугольника, при которой советник даст сигнал закрыть позицию (оптимально выходит из позиции при значении 2-4 при лоте 0.1, для других лотов, значение параметра изменить пропорционально, т.е. при лоте 1 оптимальный Take Profit составит 20-40).
  • Max. Loss (USD) - максимальный суммарный убыток (в валюте депозита) по всем трем позициям, при котором советник даст сигнал на выход при отклонении цен треугольника в обратную сторону на величину Minimum deviation for out-trade (лучше ставить значение в 4-5 раз больше, чем Take Profit, но не больше, чем USD200-300, иначе на сильных импульсах будет закрывать значительный убыток).
  • Trading volume - все рекомендованные значения выводились из лота 0.1 (для других лотов Take Profit и Stop Loss изменить пропорционально).

Прежде чем ставить советник на реальный счет, убедитесь, что понимаете механизм работы и смысл параметров советника!

Детальное описание принципов работы советника и настройки параметров дано в блоге на русском (https://www.mql5.com/ru/blogs/post/683146) и английском (https://www.mql5.com/en/blogs/post/684655) языках.

Yury Gavrilov
69
2017.03.17 13:29 
 

Это единственный робот, который может делать 100 % в месяц. при депозите 300-500 долларов и мин.лоте.

Мне удалось подобрать параметры, при которых робот зарабатывает.

Нужен брокер с хорошим исполнением и VPS.

За две недели заработано (и выведено) лотом 0.05 $541.75.

Обычно при таком лоте в течение недели он зарабатывает немного, долларов 10, но раз-два в неделю, на новостях, проявляет себя в полной красе.

Особенно хорошо показал себя на последнем NFP (10 марта 2017), ~170 долл. за 5 минут

Это отличная штука, но нужно подбирать параметры для каждого брокера.

avtal
9613
2017.02.14 02:29 
 

Evaluation after 4 weeks of testing with version 8.5 in real account and demo account simultaneously, with 5 ms latency.

The result in demo account is very good and resembles the backtest. However, the actual account result is totally different. While the demo closes profitably on the actual account almost always closes at a loss. Even altering the parameters, the actual account result is always negative.

Before buying EA i suggest renting and testing on real account.

If EA becomes profitable in the future I will review the comment.

Stef Smeers
27
2017.01.27 19:49 
 

Very good results in the backtest. Also had great assistance from Oleg (the author of the script).

I'm going to test it on a demo account now and afterwards on my real account. Will keep you guys updated with the results.

Mahmoudibarmas Mehdi
626
2017.01.27 18:30 
 

this works very good on backtest and demo account. but in real account, all trades close with loss and can eat all your deposit during 1-2 weeks.

THIS IS BEACAUSE THE SLIPAGE OF BROKERS IN ARBITRAGE TIMES INCREESE FROM 10~500 ms to 1~5 Seconds and THUS ALL POSITIONS OPEN WITH WRONG PRICES.

Tommaso Santarelli
202
2017.01.18 19:28 
 

I'm testing this EA, both in test mode and in real account. The first results are good. Great assistance from the developer, in finding best input parameters and in resolving some my mistakes. Keep going like this!

alexk151
41
2017.01.17 14:08 
 

Don´t buy this EA it will destroy your Tradingaccount,maybe not immediately but definitely.

It doesn´t matter if it looks good in the tester.

Airat Zainetdinov
284
2017.01.15 10:48 
 

Работает хорошо , но не зарабатывает!(((( жалко потраченных денег((( еще один вывод: Реал всегда отличается от демо или тестера. Может быть вмешательство брокера???!!!!

Nikolay Mikhnev
66
2017.01.03 13:36 
 

Моё мнение. СУПЕР.

Версия 8.5 - 2017.01.13
Внесены незначительные изменения в алгоритм параллельной работы нескольких экспертов.
Сокращен и оптимизирован объем записей в логе эксперта.
Версия 8.4 - 2016.12.30
В новую версию (8.4) советника внесены следующие изменения:
- Скорость исполнения торговых приказов значительно увеличена за счет применения алгоритмов высокочастотной торговли (HFT).

- Реализация более эффективного алгоритма проверки целостности треугольника позволила исключить паузы между размещением торговых приказов и проверкой.
Соответственно из входных переменных исключен параметр "Pause before integrity check (ms)".

- Значительная оптимизация кода позволила дополнительно уменьшить время исполнения торговых операций, что позволяет советнику справляться с задержкой 300 мс.

Параметры советника и их рекомендуемые значения
-----------------------------------------------------------------------------
- Cross pair symbol - введите символ кросс-пары (например EURJPY)
- First cross pair symbol - введите символ стоящий первым в кросс-паре (в нашем случае это EUR, то есть EURUSD)
- Second cross pair symbol - введите символ, стоящий вторым в кросс-паре (в нашем случае это JPY, то есть USDJPY)
- Second symbol is in direct quotation - установите в положение true, если второй символ в прямой (direct) котировке и false, если в обратной (в примере с EURJPY второй символ в обратной (indirect) котировке, значит выбрать значение false)
- Expert Advisor ID (Magic Number) - любое целое число менее 2,147,483,647, уникальное для каждого советника на счете.
- Max deviation (slipage) - так как важно гарантированное открытие сделок, выбирайте значение параметра достаточно большое (100-200).
- Arb. period (ms) - период проверки арбитражного условия в миллисекундах (советник работает оптимально при периоде проверки в 100-500 мск).
- Max. number of trade retries - максимальное количество попыток размещения торгового приказа (хватает 3-4 но надежнее поставить 30-40).
- Minimum deviation for in-trade (points) - минимальная девиация цен треугольника для открытия позиций (хорошо работает на 5-15 пунктах для пятизначного счета, однако при увеличении параметра Take Profit, лучше увеличить до 20-40. Снижение параметра до 2 с одновременным снижением Take Profit задает режим рискованного скальпирования).
- Minimum deviation for out-trade (points)- минимальное отклонение цен треугольника для закрытия позиции, когда суммарный убыток по позиции треугольника превысил значение параметра Max. Loss (лучше ставить в 1.5-2 раза меньше, чем Minimum Deviation for in-trade).
- Take Profit (USD) - суммарная прибыль (в валюте депозита) по трем позициям треугольника, при которой советник даст сигнал закрыть позицию (оптимально выходит из позиции при значении 2-4 при лоте 0.1, для других лотов, значение параметра изменить пропорционально, т.е. при лоте 1 оптимальный Take Profit составит 20-40).
- Max. Loss (USD) - максимальный суммарный убыток (в валюте депозита) по всем трем позициям, при котором советник будет использовать выход при обратной девиации цен треугольника больше значения параметра Minimum deviation for out-trade (лучше ставить значение в 4-5 раз больше, чем Take Profit, но не больше, чем USD200, иначе на сильных импульсах будет закрывать значительный убыток).
- Trading volume - все рекомендованные значения выводились из лота 0.1 (для других лотов Take Profit и Stop Loss изменить пропорционально).
Прежде чем ставить на реальный счет, убедитесь, что понимаете механизм работы и смысл параметров советника!!!
Версия 7.2 - 2016.12.14
Изменения, внесенные в версию 7.2:

- Добавлена проверка нулевых тиков. Таким образом решена проблема отсутствующих тиков, которая возникала в тестере (ТОЛЬКО в тестере) при тестировании на реальных тиках.

- Добавлена возможность повторной посылки торгового приказа в случае неудачи. Количество повторных попыток задается входным параметром "Max. number of trade retries". Таким образом, повышена надежность проведения торговых операций.

- Введена пауза между моментом получения сообщения торгового сервера о принятии торгового приказа к исполнению и стартом проверки целостности "треугольника". Длительность паузы регулируется входным параметром "Pause before integrity check (msc)". Такая пауза необходима в случае запаздывания отчетов торгового сервера об открытии позиций. Если советник начинал проверку целостности "треугольника" до отчета сервера об открытии или закрытии последней позиции, он "видел" отсутствующую/лишнюю позицию и тут же пытался исправить ситуацию, что приводило к повторным открытиям/закрытиям позиций.

- Изменена логика закрытия позиций. В штатной ситуации позиции закрываются при достижении уровня суммарной прибыли по всем трем позициям "треугольника", превышающего значение входного параметра "Take-Profit (USD)" (задается в единицах валюты депозита).

Однако, если позиция не выходит в плюс, и убыток по позиции (по модулю) превысил значение входного параметра "Max. Loss (USD)" (также в единицах валюты депозита), для закрытия позиции используется входной параметр "Minimum deviation for out-trade (points)". То есть, при превышении уровня убытков, позиция закроется в случае девиации цен "треугольника".

Таким образом, минимальная девиация цены (ранее порог арбитража) теперь задается отдельно для открытия и для закрытия позиций. Входной параметр "Minimum deviation for IN-trade (points)" задает минимальный порог срабатывания для открытия позиций. Входной параметр "Minimum deviation for OUT-trade (points)" задает минимальный порог срабатывания для закрытия позиций.

- Существенно повышена надежность работы советника на счетах с хеджированием.

ВНИМАНИЕ! Советник загружен на Маркет с не оптимальными параметрами.
Рекомендуемые параметры настройки советника приведены ниже:
Параметр | Рекомендуемое значение
-----------------------------------------------------------------------------
- First major pair (vs USD) | EURUSD
- Second major pair (vs USD) | GBPUSD
- Cross pair (as First major vs Second major) | EURGBP
Both majors are in direct quotation | true
-----------------------------------------------------------------------------
- Expert Advisor ID (Magic Number) | 666
- Max deviation (slipage) | 30
- Arb. period (msec) | 500
- Pause before integrity check (msc) | 10
- Max. number of trade retries | 10
- Minimum deviation for in-trade (points) | 10 (счет 5 знаков)
- Minimum deviation for out-trade (points) | 20 (счет 5 знаков)
- Take Profit (points) | 20
- Msx. Loss (points) | 30
- Trading volume | 0.1

Конкретные значения оптимальных параметров зависят от торговых условий вашего брокера.