Автоматизация парного трейдинга

SilverKZ

Элитный участник
Парный трейдинг (англ. Pairs trading) – торговля парой коррелированных финансовых инструментов, один из которых значительно вырос или упал в цене относительно другого.

Таким образом, короткая продажа переоцененного и покупка недооцененного финансового инструмента формируют портфель, доходность которого будет зависеть не от общего направления движения рынка, а от будущего соотношения стоимости одного инструмента к другому.

Пример

000001.png
 

NeColla

Элитный участник
погодь тута писать = я модерам отписал - чтоб ветку разблокировали - то, что мрсерж писать там не будет - неозначает о закрытии темы для обсуждения :)
 

NeColla

Элитный участник
Парный трейдинг (англ. Pairs trading) – торговля парой коррелированных финансовых инструментов, один из которых значительно вырос или упал в цене относительно другого.

Таким образом, короткая продажа переоцененного и покупка недооцененного финансового инструмента формируют портфель, доходность которого будет зависеть не от общего направления движения рынка, а от будущего соотношения стоимости одного инструмента к другому.

Пример

Посмотреть вложение 75753

угу - чисто для наглядности добавлю рисунок Наложенных пар друг на друга - чтобы визуально увидеть разность между инструментами :)
attachment.php
 

SilverKZ

Элитный участник
Индикатор MACD Pair

Индикатор MACD Pair показывает расхождение MACD двух инструментов.
Нулевая линия индикатора - это линия баланса или нейтральная линия двух инструментов.
Правила использования:
1) Если линия индикатора MACD Pair находится выше нулевой линии и развернулась в её сторону, то первый инструмент (в настройках индикатора) продается, второй покупается.
2) И наоборот, если линия индикатора MACD Pair находится ниже нулевой линии и развернулась в её сторону, то первый инструмент покупается, второй продается.

000002.png

Индикатор MACD Pair Color
Вычисляется аналогично MACD Pair
Для удобства отображается в виде двухцветной гистограммы

000003.png
 

Вложения

  • MACD Pair.mq4
    2,3 КБ · Просмотры: 496
  • MACD Pair Color.mq4
    2,8 КБ · Просмотры: 533

SilverKZ

Элитный участник
Индикатор PairStoch

Индикатор на основе стохастика показывает расхождение (схождение) двух финансовых инструментов.
Правила использования:
1) Вход в торговлю осуществляется при расхождении линий индикатора на определенную величину, которая визуально отображается двухцветной гистограммой. Момент входа – смена цвета гистограммы с синего на красный.
2) Направление открытия позиций определяется по линиям индикатора. Верхняя линия на продажу, нижняя на покупку инструмента. Линии имеют названия инструментов.

Настройки индикатора

PHP:
//--------------------------------------------------------------------
extern string Symbol1_Name   = "GBPUSD";     
extern string Symbol2_Name   = "EURUSD"; 
extern int    Period_Spread  = 34;
//--------------------------------------------------------------------

0000004.png

Индикатор PairStoch Revers предназначен для финансовых инструментов с отрицательной корреляцией.
 

Вложения

  • PairStoch.mq4
    3,1 КБ · Просмотры: 450
  • PairStoch Revers.mq4
    3,1 КБ · Просмотры: 392

SilverKZ

Элитный участник
Индикатор PairTrader_Ind

Индикатор представляет собой смесь Ind_2 Line и ZeroPoint
Особенности индикатора:
* показывает раздвижку в пунктах двух финансовых инструментов между нулевыми точкам
* нулевые точки определяются по Ind_2 Line
* показывает уровни входа в сделку и доливок (настраиваются пользователем)
* показывает направление открытия позиций и их объем (базовый, по ценам открытия, по волатильности)

Показания индикатора интерпретируются следующим образом:
* пересечение красной и синей линий образуют нулевые точки (Ind_2 Line)
* гистограмма показывает размер раздвижки инструментов в пунктах (ZeroPoint)
* вход в позицию осуществляется при достижении гистограммы определенных уровней (красные пунктирные линии)
* доливка осуществляется при достижении следующего уровня
* позиции по инструментам открываются в указанных направлениях и объемах
* закрытие всех позиций осуществляется при пересечении красной и синей линий, т.е. при образовании следующей нулевой точки (или при получении запланированных убытка или прибыли)

0000005.png

Настройки индикатора
PHP:
//--------------------------------------------------------------------
extern string  Symbol_1  = "EURUSD"; // Финансовый инструмент №1
extern string  Symbol_2  = "GBPUSD"; // Финансовый инструмент №2
extern bool    Revers    = false;    // true  - отрицательная корреляция  
                                     // false - положительная корреляция 
extern int     Fast_MA   = 8;        // Период быстрой МА
extern int     Slow_MA   = 21;       // Период медленной МА
extern int     MA_Method = 2;        // Метод расчета МА
                                     // - MODE_SMA=0 Простое скользящее среднее 
                                     // - MODE_EMA=1 Экспоненциальное скользящее среднее 
                                     // - MODE_SMMA=2 Сглаженное скользящее среднее 
                                     // - MODE_LWMA=3 Линейно-взвешенное скользящее среднее 
extern int     MA_Price  = 6;        // Расчетная цена:
                                     // - PRICE_CLOSE=0 Цена закрытия 
                                     // - PRICE_OPEN=1 Цена открытия 
                                     // - PRICE_HIGH=2 Максимальная цена 
                                     // - PRICE_LOW=3 Минимальная цена 
                                     // - PRICE_MEDIAN=4 Средняя цена, (high+low)/2 
                                     // - PRICE_TYPICAL=5 Типичная цена, (high+low+close)/3 
                                     // - PRICE_WEIGHTED=6 Взвешенная цена закрытия, (high+low+close+close)/4 
extern int     Delta     = 20;       // Размер раздвижки в пунктах
extern double  Lot       = 0.1;      // Базовый лот
extern int     VOL_Mode  = 2;        // Режим расчета объемов для торговли
                                     //   1 - базовый лот по обоим инструментам
                                     //   2 - по ценам открытия
                                     //   3 - по волатильности 
extern int     PeriodATR = 144;      // Период усреднения ATR для расчета объемов торговли 
//--------------------------------------------------------------------
 

Вложения

  • PairTrader_Ind v2.mq4
    9,4 КБ · Просмотры: 636

SilverKZ

Элитный участник
Советник PairTrader_Exp

Советник работает в полуавтоматическом режиме по двум финансовым инструментам.
Особенности:
* Трейдер устанавливает в настройках: фин.инструменты, направление открытия позиций, лот, тейк-профит и стоп-лосс в пунктах (суммарный для двух инструментов)
* Открытие позиций с указанными настройками осуществляется автоматически после установки в свойствах советника переключателя OpenPair в положение true, после открытия позиций его можно установить в положение false
* Закрытие позиций происходит автоматически при достижении указанного профита или стоп-лосса, а также незамедлительно при включении переключателя ClosePair в положение true

Настройки советника
PHP:
//--------------------------------------------------------------------
extern bool    OpenPair  = false;     // true - открыть позиции, 
                                      // false - ни чего не делать
extern bool    ClosePair = false;     // true - принудительно закрыть позиции, 
                                      // false - ни чего не делать
extern int     Profit    = 30;        // Тейк-профит в пунктах
extern int     StopLoss  = 100;       // Стоп-лосс в пунктах
//+-----------------------------------+
extern string  a1        = "---------------------------"; 
extern string  Symbol1   = "EURUSD";  // Финансовый инструмент №1
extern bool    Order1    = true;      // true - Buy / false - Sell
extern double  Lot1      = 0.1; 
//+-----------------------------------+
extern string  a2        = "---------------------------"; 
extern string  Symbol2   = "GBPUSD";  // Финансовый инструмент №2
extern bool    Order2    = false;     // true - Buy / false - Sell
extern double  Lot2      = 0.1; 
//+-----------------------------------+
extern int     Magic     = 12345;     // Идентификатор ордеров
//--------------------------------------------------------------------

Удачной торговли!!!
 

Вложения

  • PairTrader_Exp v1.mq4
    5,8 КБ · Просмотры: 530

NeColla

Элитный участник
гмм, заделай чтоли графическую метку в правой стороне цены :) -
сдвинули её с места - советник автоматом открывает или закрывает сделки?
если хочешь, могу набросать кусочек кода для подобной реализации....
 

SilverKZ

Элитный участник
Напоминаю для новичков
[NOTE]* Если корреляция высокая и положительна, то валюты движутся в одном направлении.
* Если корреляция высокая, но отрицательная,тогда валюты движутся в противоположных направлениях.
* Если корреляция низкая (меньше +0.6 и больше -0.6), тогда движение валют не имеет зависимости, такие валюты не подходят для парного трейдинга[/NOTE]

Позиции по валютным парам, имеющим положительную корреляцию (например, EURUSD и GBPUSD), открываются в разные стороны, т.е. buy-sell или sell-buy.
При отрицательной корреляции - в одну сторону, т.е. buy-buy или sell-sell

Корреляцию валютных пар можно посмотреть _http://www.forexticket.ru/ru/tools/01-01-correlation здесь или с помощью следующих индикаторов:
по двум инструментам - VininI_Correlation.mq4
по нескольким инструментам (текущую) - iCorrelationTable_v3.zip

attachment.php
 
Последнее редактирование модератором:

SilverKZ

Элитный участник
В парном трейдинге торгуется спред. На скрине спред пар GBPUSD и EURUSD, который вычисляется как разница цен указанных пар.
Хотелось бы узнать, как вы понимаете:
1) Оптимальная (ср.стат.) раздвижка
2) Максимальная раздвижка
3) Доливки
Желательно показать на скрине, чтобы исключить непонятки. Это стартовая точка. От нее необходимо двигаться к подбору инструментария, сбора статистики и т.д.

888888888.jpg
 

Insaider

Местный житель
SilverKZ ,я хотел выложить свой скрипт на MT5 он по 1) и 2) пункту. с третьим пока у самого не понятки...
Но основную тему по парному трейдингу почему-то закрыли? ((
Куда скрипт выкладывать не пойму, чтоб больше народу его видело и использовать могло. (тут или в тему которую NeColla сделал).
А может старую тему откроют:
погодь тута писать = я модерам отписал - чтоб ветку разблокировали - то, что мрсерж писать там не будет - неозначает о закрытии темы для обсуждения :)
NeColla какие нить результаты есть в этом направлении?
 
Последнее редактирование:

NeColla

Элитный участник
SilverKZ ,я хотел выложить свой скрипт на MT5 он по 1) и 2) пункту. с третьим пока у самого не понятки...
Но основную тему по парному трейдингу почему-то закрыли? ((
Куда скрипт выкладывать не пойму, чтоб больше народу его видело и использовать могло. (тут или в тему которую NeColla сделал).
А может старую тему откроют:

NeColla какие нить результаты есть в этом направлении?

угу - та ветка закрыта - обсуждение продолжается в теме
http://forexsystemsru.com/ruchnye-torgovye-strategii-i-taktiki/67811-obsuzhdenie-parnogo-treidinga.html
 

SilverKZ

Элитный участник
Советник работает в полуавтоматическом режиме по двум финансовым инструментам.
Особенности:
* Трейдер устанавливает в настройках: фин.инструменты, направление открытия позиций, лот, тейк-профит и стоп-лосс в пунктах (суммарный для двух инструментов)
* Открытие позиций с указанными настройками осуществляется автоматически после установки в свойствах советника переключателя OpenPair в положение true, после открытия позиций его можно установить в положение false
* Закрытие позиций происходит автоматически при достижении указанного профита или стоп-лосса, а также незамедлительно при включении переключателя ClosePair в положение true

Настройки советника
PHP:
//--------------------------------------------------------------------
extern bool    OpenPair  = false;     // true - открыть позиции, 
                                      // false - ни чего не делать
extern bool    ClosePair = false;     // true - принудительно закрыть позиции, 
                                      // false - ни чего не делать
extern int     Profit    = 30;        // Тейк-профит в пунктах
extern int     StopLoss  = 100;       // Стоп-лосс в пунктах
//+-----------------------------------+
extern string  a1        = "---------------------------"; 
extern string  Symbol1   = "EURUSD";  // Финансовый инструмент №1
extern bool    Order1    = true;      // true - Buy / false - Sell
extern double  Lot1      = 0.1; 
//+-----------------------------------+
extern string  a2        = "---------------------------"; 
extern string  Symbol2   = "GBPUSD";  // Финансовый инструмент №2
extern bool    Order2    = false;     // true - Buy / false - Sell
extern double  Lot2      = 0.1; 
//+-----------------------------------+
extern int     Magic     = 12345;     // Идентификатор ордеров
//--------------------------------------------------------------------

Удачной торговли!!!

Поправил ошибку, возникающую при открытии позиций. Теперь точно открывает два ордера.
 

Вложения

  • PairTrader_Exp v1.mq4
    6,3 КБ · Просмотры: 485

SilverKZ

Элитный участник
SilverKZ ,я хотел выложить свой скрипт на MT5 он по 1) и 2) пункту. с третьим пока у самого не понятки...
Но основную тему по парному трейдингу почему-то закрыли? ((
Куда скрипт выкладывать не пойму, чтоб больше народу его видело и использовать могло. (тут или в тему которую NeColla сделал).
А может старую тему откроют:

NeColla какие нить результаты есть в этом направлении?

Та тема находится в разделе "Ручные торговые стратегии и тактики".
Все что связано с автоматизацией парного трейдинга, ИМХО, должно быть в этом разделе
 

coxah

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

SilverKZ

Элитный участник
Сбор статистики по раздвижкам для портфельной торговли

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

Вроде бы все понятно, а формализовать не так просто, поэтому и статистику никто нормально собрать не может. Где она оптимальная и максимальная раздвижки, пойди разберись.

Для сбора статистики по раздвижкам валютных пар можно использовать индикатор ZigZag на их кроссе. Каждая линия ZZ и есть раздвижка. Остается только посчитать все раздвижки и определить оптимальную (ср.стат.) и максимальную раздвижки за период времени.

Как думаете, разумно ли так считать раздвижки.
Скрипт по ZZ сделать несложно.

000000089.gif
 

coxah

Активный участник
Вроде бы все понятно, а формализовать не так просто, поэтому и статистику никто нормально собрать не может. Где она оптимальная и максимальная раздвижки, пойди разберись.

Для сбора статистики по раздвижкам валютных пар можно использовать индикатор ZigZag на их кроссе. Каждая линия ZZ и есть раздвижка. Остается только посчитать все раздвижки и определить оптимальную (ср.стат.) и максимальную раздвижки за период времени.

Как думаете, разумно ли так считать раздвижки.
Скрипт по ZZ сделать несложно.

Посмотреть вложение 75896

для портфельной торговли, очень даже разумно. ИМХО
 

coxah

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

а вот для тех кто торгует парно по мажорам, и против стопов (фиксирования убытков).
в выбраной точке отчёта, делаеютсья виртуальные БАЙ и СЕЛЛ, и по мере разхождения пар доливки одновременно по обоим парам, после достижении профита (0 точка), сразу БАЙ и СЕЛЛ и.т.д.
Входные параметры индикатора:
Пара1: Бай
Пара2: Селл
Доливка: 350пп
Профит: 350пп или в валюте депо.
Лот вход + 1я доливка: 0.1
Коеффицент умножения лота для последующих доливок: 1.5

сложноватый конечно. но в полне реализуемо.
а такая стат. как мах. число доливок, число сделок и.т.д. за оппеделённый пром. времени, хорошее оружие. ИМХО
 

Andri770

Местный житель
Вроде бы все понятно, а формализовать не так просто, поэтому и статистику никто нормально собрать не может. Где она оптимальная и максимальная раздвижки, пойди разберись.

Для сбора статистики по раздвижкам валютных пар можно использовать индикатор ZigZag на их кроссе. Каждая линия ZZ и есть раздвижка. Остается только посчитать все раздвижки и определить оптимальную (ср.стат.) и максимальную раздвижки за период времени.

Как думаете, разумно ли так считать раздвижки.
Скрипт по ZZ сделать несложно.

Посмотреть вложение 75896

Сильвер ,делай на зигзаге ,интнресно ,что получится...
 

Andri770

Местный житель
Как насчёт создание Эквити которая идёт всю дорогу в боковике без больших затяжных трэндов,исползовать не две пары а больше ,подбирая их .....
Нужно получить график эквити с сильными колебаниями на меньших ТФ и возвратами цены обратно,хотябы на 70%
 

Вложения

  • Equity_USD.mq4
    7,9 КБ · Просмотры: 243
Последнее редактирование:
Верх