Арбитражный советник

0

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

"Дословно" мы получим: Buy GBPUSD1 и Sell GBPUSD2. Через некоторый промежуток времени мы закроем обе позиции. Результат нашей операции можно подсчитать по формуле:

Результат = (bid1 - ask1) + (bid2 - ask2) + (bid2 - ask1)

Как можно видеть из формулы, значение первой ее части известно сразу после исполнения ордеров на покупку и продажу, а второй части станет известно лишь при закрытии обеих позиций. Получается, что исходов, при которых значение "Результат" будет выше ноля, довольно много. К примеру: открытие при условии bid1>ask2, а закрытие bid2>ask1.

Арбитражный советник форекс для Metatrader 4

Практика применения

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

При открытии первой позиции советник создает файл ArbitrageStatistic.txt, в который заносятся в порядке уменьшения частоты использования возможности для арбитража.

В тот же файл (при значении Monitoring равного TRUE в настройках советника) записывается каждая возможность для заключения арбитражной сделки с рыночными условиями на тот момент времени.

Торговый робот может торговать только по тем тандемам валютных пар, которые внесены списком в файл файле Trade-Arbitrage.txt (находится в папке experts\files в директории с установленным терминалом).

Записи в файле Trade-Arbitrage.txt оформляются следующим образом:

// Variants for Arbitrage.
// Examples:
// 1 / EURUSD && 1 / (GBPUSD * EURGBP)
// EURUSD * USDJPY && EURGBP * GBPJPY
// GBPUSD && GBPJPY / USDJPY

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

Возможность открытия мультивалютных хеджированных позиций можно при помощи скрипта CheckMyArbitrage, вложенного в архив с советником.

Настройки советника

Currencies - валютные пары, из которых будут формироваться тандемы.

MinPips - количество пунктов, которое воспринимается советником как возможность арбитража.

SlipPage - максимально возможное значение для проскальзывание для запросов по рынку (в пунктах).

Lock - разрешение (TRUE) либо запрет (FALSE) советнику на открытие локирующих позиций.

Lots - величина позиции (в лотах) для открытия при возможности арбитража.

MaxLot - предельный размер позиции (разрешенный у вашего брокера).

MinLot - минимальный размер позиции (минимальный лот у вашего брокера).

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

TimeToWrite - временные интервалы (в минутах), по прохождении которых советник будет вносить в файл ArbitrageStatistic.txt данные о проведенных сделках.

Известные проблемы торгового робота

На данный момент разработчикам советника известно о следующих проблемах, способных существенно снизить эффективность работы советника. Учет этих особенностей при выборе брокера может значительно увеличить эффективность работы робота:

584

Комментарии

MQL4 - язык программирования торговых стратегий

Язык позволяет писать собственные программы-эксперты (Expert Advisors), автоматизирующие управление торговыми процессами и идеально подходящие для реализации собственных торговых стратегий. Кроме того, на MQL4 можно создавать собственные технические индикаторы (Custom Indicators), скрипты (Scripts) и библиотеки функций (Libraries).