Портфельная торговля форекс

Как торговать портфелем активов на бирже?

Модель PCI GeWorko позволяет составлять собственные инструменты (персональные композитные инструменты, PCI) на основе группы простых активов: акций, фьючерсов и т.д. Инструменты PCI предназначены для торговли портфельной парой идентично торговле синтетическим валютным кросс-курсом. Рассмотрим основные сравнительные свойства модели.

Создаем котировку персонального инструмента

  • Составим кросс-курс EUR/NOK – евро против норвежской кроны. Выразим базовый актив EUR и котируемый актив NOK в единой валюте, например, в долларах США: EUR(USD), NOK(USD). В простейшем случае текущий кросс-курс EUR/NOK соответствует отношению этих котировок на данный момент времени: EUR(USD)/NOK(USD);
  • Поместим на место базового (EUR) и котируемого (NOK) активов произвольные портфели акций: APPLE вместо EUR, YAHOO+MSFT вместо NOK. Объемы активов могут быть выбраны произвольным образом, например, 3 акции Google и 2 акции Apple: 3*2*APPLE. Объемы в дальнейшем мы опускаем. В результате курс портфельной пары PCI формируется идентичным EUR/NOK образом: [APPLE]/[YAHOO+MSFT].

Курс показывает стоимость базового портфеля APPLE в единицах котируемого портфеля на основе “бартерной” модели обмена. Состав портфелей выбирается нашими аналитиками индивидуально при составлении каждого инструмента PCI.

На графике ниже представлены недельные свечи портфельной пары 5 акций, торгуемых против индекса Доу Джонса. В котируемой части расположен только один инструмент – DJIA(30).

Парный инструмент: портфель “лучших” акций против индекса Dow Jones.

Покупка/продажа портфеля

— Покупка единицы объема EUR/NOK определяется как покупка 1EUR за N единиц NOK. Число N определяется текущим курсом EUR/NOK. В момент покупки существует паритет между долларовым объемом покупки EUR и объемом продажи NOK. Продается N единиц NOK, и на “вырученные” средства покупается EUR. Продажа валюты осуществляется за счет маржинального покрытия – спекулятивная операция “short”. Продажа EUR/NOK осуществляется так же, как и покупка NOK/EUR.

— Аналогичным образом покупка единицы портфельной пары [APPLE]/[YAHOO+MSFT] определяется как покупка единицы портфеля APPLE за N единиц котируемого портфеля YAHOO+MSFT. Число N определяется текущим курсом PCI инструмента. В момент покупки существует паритет между долларовым объемом покупки APPLE и объемом продажи портфеля YAHOO+MSFT. Продажа [APPLE]/[YAHOO+MSFT] осуществляется так же, как и покупка [YAHOO+MSFT]/ [APPLE].

Как торговать портфльной парой?

Модель позволяет эффективно торговать в диапазоне изменения цены. Чтобы добиться возврата к среднему, выбираются два инструмента, имеющие значимую фундаментальную связь, например, BRENT+GAS как базовый портфель, и “сырьевая” валюта, например, российский рубль, как котируемый портфель: [RUB]/[BRENT+GAS]. В случае очень сильной фундаментальной связи на протяжении некоторого времени цена базовой и котируемой части связаны постоянным коэффициентом k так, что [RUB]= k*[BRENT+GAS]. Коэффициент k определяется текущим курсом портфеля.

Поскольку бюджет России наполняется в основном за счет продажи газа и нефти, то стоимость валюты поддерживается Центробанком страны, исходя из стоимости энергоресурсов. В этом случае отклонение портфельной пары [RUB]/[BRENT+GAS] от средней или за пределы диапазона, предполагает возможную позицию для покупки/продажи инструмента.

Также существует плавное изменение коэффициента k со временем – изменение политики Центрального банка. Долгосрочную тенденцию также можно учитывать – совершать только операции покупки, или только операции продажи в зависимости от долгосрочного тренда.

Портфельная пара PCI: торговля в диапазоне

На графике выше представлены дневные свечи портфельной пары PCI [RUB]/[BRENT+GAS]. Диапазон, который сформировался до 23 июня 2014 г., позволил открыть операцию продажи инструмента при пробое сопротивления 1.67160 и закрыть позицию при пересечении уровня середины диапазона (пунктирная линия).

Как Вы могли заметить,  PCI GeWorko очень удобно использовать для реализации своих собственных исследований на рынке. Держать торговый портфель бумаг и активов иногда не позволяют технические и материальные возможности, кроме того, оценить прибыльность такой идеи на истории также бывает затруднительно. Поэтому единый график для целого портфеля – это уникальная возможность быстро и качественно проверить свои торговые идеи и легко инвестировать в них.

В следующей статье мы поговорим о технической части работы с PCI GeWorko: как создавать портфельной парой, работать с графиками и т.д.

Примеры торговли портфельной парой

Источник: https://fortrader.org/learn/spread-trading/pci-geworko-trejding-portfelnoj-paroj.html

Портфельная торговля Форекс

О том, что для успешной торговой деятельности на рынке Форекс необходимо иметь в своем распоряжении продуманную и проверенную торговую систему знают практически все трейдеры. Об этом говорят на форумах, пишут в учебной литературе. При этом считается, что алгоритм торговых действий должен всегда соответствовать правилам, оговоренным в этой системе. Только в этом случае трейдер может рассчитывать на стабильную прибыль при любом поведении рынка.

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

Функционирование торговой системы

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

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

Уязвимость торговой системы

Так в чем же уязвимость торговой системы и почему и трейдера могут возникнуть проблемы при ее использовании в том или ином варианте? Все дело в том, что если проанализировать весь массив информации связанный с торговлей на Форекс, то можно прийти к выводу – рынок устроен так, что его поведение не всегда укладывается в рамки формального восприятия. Некоторые даже сравнивают его с живым организмом, предсказать поведение которого бывает довольно сложно и не всегда удается. Поэтому, какой бы продуманной и проверенной не была торговая система, она не сможет адекватно отреагировать на нестандартную ситуацию, когда рынок просто поставит ее в тупик.

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

Иначе говоря, портфельная торговля на Форекс является тем инструментом, который может обеспечить стабильную и действительно прибыльную торговлю, вне зависимости от того, как ведет себя рынок.

Портфельная торговля Форекс — это не просто подборка, состоящая из различных стратегий торговли, но и умение использовать их на рынке, вне зависимости от того, в каком состоянии он пребывает.

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

Таким образом, применяя портфельную торговлю, вы можете получить:

• Возможность беспрерывной торговли на рынке.• Сбалансированные риски.• Уменьшенный уровень просадок на торговом счете.

• Более плавную кривую роста капитала на вашем счете.

Но чтобы добиться эффективности портфеля, необходимо включать в него только проверенную систему. Кроме этого, необходимо научиться правильно оценивать текущую ситуацию на рынке, чтобы выбранная стратегия четко соответствовала действительному состоянию рынка.

Что можно включить в портфель для торговли на Форекс?

В качестве рекомендации можно посоветовать использовать следующие методики, включив их в портфель:

1. Торговая система свинг-трейдинга. Свинговая торговля на форекс предполагает открытие сделок на сравнительно непродолжительное время. Обычно период торгов длится не более одной торговой недели. Сделки закрываются вручную или по стопам. Методика не только прибыльная, но и позволяет существенно ограничить рисковую составляющую торговли.

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

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

4. Контртрендовая система торговли. Применять эту методику можно не часто, но иметь ее в своем арсенале нужно.

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

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

Свежие новости финансовых рынков, анализ форекс на Главной странице

Источник: http://system-fx.ru/portfelnaya-torgovlya-foreks/

Особенности портфельной торговли

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

В ходе тщательного изучения портфельной торговли нет смысла углубляться в сфере «инвестиционных портфелей», которые ориентированы на удержание акций и облигаций на протяжении длительного отрезка времени – свыше 12 месяцев, поэтому сделаем акцент на схемах спекулятивного типа.

Что собой представляет так называемый портфель? Как правило, профессиональные торговцы используют данный термин, чтобы обозначит определенный комплекс финансовых активов. В результате осуществляется создание комбинированного инструмента, разумеется, что его параметры прибыльности будут существенно отличаться от составляющих элементов.

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

Ознакомимся со стандартными методами формирования портфеля. 1-ый тип – создание портфеля инструментов, а 2-ой комплекс стратегий.

Краткое ознакомление с построение портфеля инструментов

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

Проанализировав, размещенный выше график приходим к выводу, что наибольшее кол-во торговых операций и самый значительный объем торговли приходится на один финансовый инструмент – это драгоценный метал золото. Следует отметить, что именно этот инструмент сформировал основную прибыль за анализируемый отрезок времени.

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

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

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

Тем не менее, для львиной доли краткосрочных торговцев подход этого типа вряд ли подойдет. Если вы сделаете акцент на четырех-пяти ликвидных площадках, то вам, скорее всего, нужно подумать о методе диверсификации по стратегиям и временным интервалам.

Метод трейдинга «Штанги»

Проанализируем 1-ый диверсификационный принцип, который активно применяется для формирования структурированных сегментов. Стратегия «Штанги» предполагает взаимодействие рыночно-нейтрального подхода с незначительными рисками. При этом, пропорция риска составляет 80:20. Расчет сделан на то, что большая часть профита перекроет убытки по 2-ой системе, которая отрабатывает динамичные движения.

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

К примеру, подобной парой может стать комбинация драгоценных металлов золото/серебро. Однако поиск подходящей рабочей корзины необходимо заблаговременно оценить посредством тестирования поведения актива на истории котировок.

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

Принцип работы со временем

Комбинирование различных временных интервалов – это еще один перспективный метод диверсификации по торговым стратегиям. Переключение между периодами предполагается во время трансформации рыночной ситуации.

Многие вкладчики прикладывают максимум усилий для того чтобы работать внутри дня, но периодически волатильность рынка не позволяет заработать. Как правило, речь идет о формировании узкого диапазона – до 70 пипсов. Чтобы выйти с прибылью из сложившихся обстоятельств используйте незначительные расхождения стоимости посредством торговли через арбитражные методы работы.

Второй метод – генерация профита на фрактальном рынке, используйте так называемую тенденцию самоподобия на всевозможных масштабах графика. К примеру, посмотрите на график D1 по паре валют доллар/рубль за лето 2015. Подавляющая часть инвесторов, работающих внутри дня теряли финансовые средства из-за того что рынок пребывал в тренде с незначительной волатильностью.

Тем не менее, даже без предварительной подготовки можно обнаружить плавно нарастающую рыночную тенденцию. Соответственно, в этот период активно зарабатывали инвесторы, которые работали по позиционному принципу.

Рабочим вариантом к предложенной ранее валютном паре может стать нефть. Обвал российской национальной валюты будет сопровождением падения котировок на «черное золото». Незначительная потеря взаимосвязи между графиком нефти и валютной пары доллар/рубль станет фундаментом для организации парной торговой системы. Однако никто не сможет гарантировать последующее сохранение корреляции.

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

Изменение контроля

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

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

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

Краткосрочный обвал волатильности – это достаточно популярная графическая модель, которая используется импульсными инвесторами непосредственно после сжимания котировок. В итоге, такая пружина рано или поздно разожмется, сформировав движения с акцентом на пробой. Однако в большей степени это касается графиков с небольшим масштабом

Загрузка…  

Источник: http://Richinvest.biz/fondovyj-rynok/osobennosti-portfelnoj-torgovli

Портфельная торговля в MetaTrader 4

Magnus ab integro saeclorum nascitur ordo
Publius Vergilius Maro, Eclogues

Введение

Портфельный принцип в инвестициях известен с очень ранних времён. Распределяя средства по нескольким направлениям, владелец тем самым создает портфель, уменьшает общий риск потерь за счёт диверсификации и делает рост доходов более плавным. Значительное развитие портфельная теория получила после того, как в 1950 году Гарри Марковиц сформулировал первую математическую модель портфеля.

Позже, в 1980-ых годах, группа исследователей из Morgan Stanley создала первую стратегию спред-трейдинга, что открыло новое направление: рыночно-нейтральные стратегии. Современная портфельная теория многообразна и сложна, и количество вариантов портфельных стратегий с трудом поддаётся описанию.

В этой статье будет рассмотрен только небольшой спектр спекулятивных стратегий и пример реализации на платформе MetaTrader 4.

Некоторые определения, действующие для этой статьи:

  • Портфель (корзина, синтетический инструмент) — набор позиций по нескольким торговым инструментам, с рассчитанными оптимальными объёмами. Позиции удерживаются в течение некоторого времени, отслеживаются как единое целое и закрываются с общим финансовым результатом.
  • Корректировка портфеля (корзины, синтетического инструмента) — изменение состава инструментов и/или их объёмов в портфеле с целью минимизации потерь либо фиксации промежуточного результата.
  • Синтетический объём — количество синтетических позиций (сколько раз портфель был куплен или продан).
  • Виртуальная прибыль/убыток — финансовый результат, который мог быть получен при удержании позиций в некотором интервале времени.

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

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

Читайте также  Как рассчитать стоимость лота на форекс

В рамках статьи будет рассмотрена торговля портфелем в узком смысле, когда из нескольких инструментов формируется синтетическая позиция и далее идёт управление этой позицией.

Принципы

Построение портфеля включает два этапа: выбор инструментов и расчёт лотов и направлений для выбранных инструментов. Есть множество способов формирования портфелей, статья не претендует на универсальность, поэтому здесь будут рассмотрены несколько простых методов и примеры алгоритмов. В частности, предлагается в качестве основы использовать метод наименьших квадратов (МНК) и метод главных компонент (МГК). Более подробно об этих методах можно прочитать здесь:

  • Метод наименьших квадратов (МНК)
  • Метод главных компонент (МГК)

При создании портфеля обычно определяют желаемое поведение графика портфеля. График портфеля — это график изменений суммарной прибыли всех позиций, входящих в портфель, на некотором интервале времени. Оптимизация портфеля — это поиск комбинации лотов и направлений, которые наилучшим образом соответствуют желаемому поведению портфеля. Например, в зависимости от задачи можно потребовать, чтобы портфель имел возвратность к среднему значению, либо имел признаки выраженного тренда, либо чтобы его график был похож на график некоторой функции.

Иллюстрация к трём типам портфелей (тренд, флэт, функция):

Портфель можно представить в виде уравнения следующего вида:

A*k1 + B*k2 + C*k3 + … = F

где

A, B, C … — это временные ряды, соответствующие инструментам в портфеле

k1, k2, k3 … — это лоты при инструментах (положительные — покупка, отрицательные — продажа)

F — целевая функция (задаётся значениями в точках временного ряда)

Это уравнение многофакторной линейной регрессии с нулевым свободным членом, и его корни легко найти с использованием МНК. Предварительно потребуется сделать временные ряды сопоставимыми, то есть перевести ценовые пункты в валюту депозита.

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

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

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

Например, в случае, когда создается простой растущий портфель (трендовый портфель), целевая функция будет иметь значения: 0, 1*S, 2*S, 3*S и так далее, где S — шаг приращения, денежная величина, на которую должен прирастать портфель с каждым баром на заданном интервале. Алгоритм МНК складывает временные ряды A, B, C, … так, что их общая сумма стремится повторить график целевой функции.

Для этого алгоритм МНК минимизирует сумму квадратов отклонений между суммой рядов и целевой функцией. Это стандартная задача статистики, детальное понимание работы алгоритма не обязательно, так как можно воспользоваться готовой библиотекой.

Особая ситуация возникает, когда целевая функция содержит только нулевые значения (флэтовый портфель). В этом случае необходимо ввести дополнительное ограничение на сумму коэффициентов, например: k1 + k2 + k3 + … = 1, чтобы обойти вырожденное решение регрессионного уравнения с нулевыми корнями. Альтернативный подход: перенести один член уравнения в правую сторону, который сам станет целевой функцией и получит коэффициент -1, а оставшиеся члены будут оптимизироваться как обычно.

В этом случае приравниваем корзину инструментов к одному выбранному инструменту, то есть создаём портфель спредового типа. Наконец, можно использовать для формирования таких портфелей более продвинутый алгоритм МГК, который через матрицу ковариаций инструментов рассчитывает вектор коэффициентов, соответствующий гиперплоскости сечения облака точек с минимальной остаточной дисперсией портфеля.

Здесь снова можно не беспокоиться о детальном понимании алгоритма, так как можно воспользоваться готовой библиотекой.

Алгоритмы

Теперь описанные идеи предстоит реализовать на языке MQL. Для работы будет использоваться известная математическая библиотека ALGLIB, адаптированная для MT4. Иногда возникают вопросы с её установкой, поэтому стоит остановиться на этом немного подробнее. Если на компьютере установлено несколько терминалов, то очень важно определить правильную папку данных, так как компилятор не увидит библиотеку, если она лежит в папке данных другого терминала.

Установка библиотеки ALGLIB:

  1. скачиваем библиотеку (https://www.mql5.com/ru/code/11077), распаковываем zip-файл;
  2. открываем папку include, внутри будет папка Math;
  3. запускаем терминал МetaТrader 4, в который требуется поставить библиотеку;
  4. выбираем команду меню: Файл — Открыть каталог данных, откроется папка данных терминала;
  5. открываем в этой папке подпапку MQL4 и далее подпапку Include;
  6. из распакованной библиотеки копируем папку Math в папку Include терминала;
  7. проверяем, что получилось: файлы *.mhq должны быть внутри MQL4\Include\Math\Alglib.

Первый ключевой этап: перевод временных рядов из ценовых пунктов в валюту депозита. Для этой задачи потребуется написать специальную функцию, которая будет вычислять значение стоимости контракта в произвольный момент времени. Стандартная функция MarketInfo для этого не вполне подходит, ведь с её помощью можно получить корректную стоимость пункта только для последнего бара графика, а в истории неизбежно возникнут отклонения, потому что стоимость пункта у некоторых инструментов постоянно меняется. Очень важно безошибочно конвертировать ряды данных, иначе могут быть серьёзные перекосы в портфеле.

Пример функции, рассчитывающей стоимость контракта, приведён ниже:

double ContractValue(string symbol,datetime time,int period)   {    double value=MarketInfo(symbol,MODE_LOTSIZE);                        string quote=SymbolInfoString(symbol,SYMBOL_CURRENCY_PROFIT);        if(quote!=»USD»)                                                        {       string direct=FX_prefix+quote+»USD»+FX_postfix;                       if(MarketInfo(direct,MODE_POINT)!=0)                                   {          int shift=iBarShift(direct,period,time);                              double price=iClose(direct,period,shift);                            if(price>0) value*=price;                                           }       else         {          string indirect=FX_prefix+»USD»+quote+FX_postfix;                    int shift=iBarShift(indirect,period,time);                            double price=iClose(indirect,period,shift);                          if(price>0) value/=price;                                           }      }    if(Chart_Currency!=»USD»)                                              {       string direct=FX_prefix+Chart_Currency+»USD»+FX_postfix;             if(MarketInfo(direct,MODE_POINT)!=0)                                   {          int shift=iBarShift(direct,period,time);                              double price=iClose(direct,period,shift);                            if(price>0) value/=price;                                          }       else         {          string indirect=FX_prefix+»USD»+Chart_Currency+FX_postfix;            int shift=iBarShift(indirect,period,time);                            double price=iClose(indirect,period,shift);                          if(price>0) value*=price;                                           }      }    return(value);   }

Эта функция будет постоянно использоваться в дальнейшем. Она работает не только с валютными парами, но и с индексами, фьючерсами и с CFD, а также учитывает префиксы и суффиксы для валютных пар (FX_prefix, FX_postfix), которые используют некоторые брокеры.  Результат переводится в целевую валюту Chart_Currency.

Если возвращаемое значение функции умножить на текущую цену инструмента, то получится стоимость одного лота этого инструмента. Просуммировав стоимости всех контрактов в портфеле, с учётом лотов, получаем стоимость всего портфеля.

Если значение функции умножить на разницу цен во времени, то получим прибыль или убыток, полученные в результате этого изменения цен.

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

double EQUITY[][100];    

Сначала запоминаем начальные цены для всех инструментов (на левой границе расчётного интервала), затем в каждой точке расчётного интервала вычисляем разницу начальных и конечных цен, умножаем на стоимость контракта. Каждый раз в цикле сдвигаемся на один интервал времени вправо:

   for(int i=0; i

Источник: https://www.mql5.com/ru/articles/2646

Баскет трейдинг или Как находить и торговать зависимости инструментов

Добрый день, друзья форекс трейдеры !

В продолжение темы арбитража, сегодня мы рассмотрим вариант портфельной торговли – “баскет трейдинг”. В отличие от парной торговли, баскет трейдинг предполагает торговлю целой корзиной взаимосвязанных инструментов. Главное преимущество данного метода — создание рыночно-нейтрального портфеля, который позволяет зарабатывать на любом состоянии рынка, независимо от его конкретного направления.

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

Идеальный портфель

Простейший способ построения портфеля – собрать группу недооцененных инструментов в расчете на их рост. Это могут быть акции, валютные пары, инвестиционные счета и, в целом, что угодно. Один из таких примеров – портфель Уоррена Баффета. В целом, к примерам можно отнести многие индексы, состав которых периодически меняется для поддержания роста кривой.

Можно сказать, арбитражный портфель – это отдельный синтетический инструмент, которому вы можете придать любые желаемые характеристики. Представьте, что у вас есть шанс создать собственный торговый инструмент произвольной природы, как будет выглядеть его график?

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

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

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

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

Однако, единого верного способа для создания коинтгрированного портфеля пока не изобретено, так как неясно как, собственно, находить те самые нижележащие взаимосвязи. В примере парного трейдинга между EURUSD и GBPUSD мы определяли зависимость двух валютных пар с помощью корреляции Пирсона. Теперь задача усложняется — нам нужно определить зависимость между несколькими инструментами.

Комплекс Recycle

Комплекс индикаторов Recycle дальше всех продвинулся в решении задачи нахождения идеального портфеля активов. Программа получает на вход произвольное количество временных рядов (валютных пар, акций, индексов…) и дает на выходе готовый портфель с наименьшей дисперсией (самым узким графиком). Другими словами, регулируя долю каждого инструмента в портфеле, мы получаем самый плоский, из возможных, график. Зачем нам это нужно ?

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

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

Всего в комплект входит несколько подпрограмм:

  • Recycle2 – непосредственно индикатор, показывающий динамику движения синтетика и значения корреляционных коэффициентов (величин взаимосвязи) в портфеле;
  • RecycleShadow2 – дополнительный советник, позволяющий смотреть динамику синтетика на истории (запускать перед Recycle2);
  • RecycleHistory – скрипт для подкачки истории. Нужен для отображения прошлой истории по инструменту (можно запускать в любой момент);
  • RecycleProfit – отображает динамику спреда в деньгах. На этот график можно ориентироваться при расчете потенциальной прибыли. Также в этом окне показаны расчетные лоты для создания нейтральной позиции.

Подготовка к работе

Сперва скачайте и откройте прикрепленный к статье архив — там находятся файлы исходных кодов для трех программных комплексов.  Нас же интересует папка «Recycle 2».

Дальше, нужно открыть каталог данных терминала. Делается это через Файл — Открыть каталог данных.

Теперь в открывшееся окно нужно перенести файлы из каталога «Recycle 2».

Для отображения графика синтетика на истории, первым нужно запустить EXP_RecycleShadow2. Без него рассчитываться будет только значение текущего бара.

После этого запускием сам Recycle.

Основные параметры индикатора Recycle:

  • SymbolStr – список инструментов (через запятую) для расчета синтетика. В качестве инструментов имеет смысл указывать только мажорные пары или любые инструменты, не имеющие жесткой математической зависимости. То есть для поиска зависимостей не имеет смысла указывать кроссы;
  • Depth – кол-во баров для расчета синтетика;
  • Method – способ построения синтетика. Метод под номером 4 считается самым оптимальным.

Например, запустив Recycle для инструментов EURUSD, GBPUSD и USDCHF вы получите подобную картину. Recycle сразу распределил весовые коэффициенты между инстурментами портфеля за обозначенный период (Depth), однако график динамики синтетика в прошлом все еще недоступен.

Для загрузки исторических данных на график нужно добавить вспомогательный скрипт SCR_RecycleHistory2. Скрипт имеет всего один параметр — с какой даты загружать историю. Если история уже подгружена, график синтетика появится моментально (красная линия). Эта линия как раз таки отображает динамику нашего синтетического инструмента.

Стоит учитывать, что специфика алгоритма позволяет с легкостью находить прямые взаимосвязи инструментов – на скрине видно равное распределение капитала между EURUSD, GBPUSD и EURGBP. Из-за того, что между тремя инстурментами существует прямая взаимосвязь, то есть, курс любого из них можно легко вычислить из других двух (например: EURGBP = EURUSD / GBPUSD), капитал поровну распределился между парами треугольника, ничего не оставив остальным.

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

Итак, получив идеальный флетовый портфель на этапе тестирования, наша работа на этом не заканчивается. Чтобы портфель сохранял коинтегрированность, то есть способность возвращаться к нулю, его необходимо периодически переоптимизировать.

Другими словами, необходимо периодически пересчитывать доли инструментов в портфеле, снова приводя график синтетика к “канальному” виду. Разумеется, для этого нужно корректировать уже имеющуюся в рынке позицию. То есть, если доля инструмента уменьшилась с 0.5 до 0.1 лота, для приведения синтетика к балансу необходимо закрыть 0.4 лота текущей позиции.

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

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

Как торговать

Recycle. Чтобы повторить график полученного портфеля, достаточно открыть позиции указанного размера (в окне RecycleProfit) по всем инструментам. Эквити полученных позиций будет соответствовать графику нашего синтетического инструмента. Такая операция будет эквивалентна покупке инструмента. Для продажи синтетика позиции необходимо перевернуть.

Например, мы указали на вход 3 инструмента: EURUSD, GBPUSD и AUDUSD. По результатам расчета наименьшее влияние в портфеле имеет AUDUSD – на него приходится наименьшее количество капитала. Для покупки полученного синтетика нам нужно продать 0.34 лота по EURUSD, 0.18 лота по AUDUSD и купить 0.35 лота по GBPUSD. Здесь главное сохранять пропорции, фактически количество лотов может быть любым.

Так как мы изначально ставили задачу создать максимально флэтовый портфель, суть торговли крайне проста – покупаем дешево, продаем дорого. То есть стратегия, аналогичная торговле от границ канала. За границы канала можно брать размер стандартного отклонения (синие линии на графике Recycle) или Полосы Боллинджера.

Помимо Recycle, существуют и другие работы, решающие подобные задачи. Поэтому, далее кратко рассмотрим аналогичные проекты от других авторов.

PCA Synthetics. По сути, это попытка портирования индикатора Recycle для терминала MT5 под названием PCA Synthetics. Индикатор решает аналогичную задачу – создание нового синтетического инструмента на основе данных временных рядов с наименьшей общей дисперсией, то есть создание коинтегрированного портфеля.

В правом верхнем углу индикатора отсортированы инструменты по величине весовых коэффициентов. Для покупки синтетика покупаем валюту с положительным коэффициентом и продаем с отрицательным. Для продажи – наоборот.

Параметры индикатора:

  • InpVector – принимает значения от 0 до N-1 (N = количество символов). Чем больше значение, тем меньше дисперсия портфеля;
  • InpFrame – размер плавающего окна для расчета синтетика;
  • InpDepth – глубина истории для расчета;
  • InpForward – форвард период для проверки стабильности оптимизированных коэффициентов;
  • InpMaPeriod – период сглаживания;
  • InpTimePeriod – исходный таймфрейм;
  • InpSynthetics – отрисовка каждой пары отдельной линией;
  • InpPrices – способ нормализации значений;
  • InpSymbols – инструменты для коинтегрированного портфеля;
  • InpMagic – название индикатора для упрощения идентификации на графике.

Portfolio Modeller. Индикатор решает схожую с Recycle задачу, позволяя построить коинтегрированный портфель инструментов. Для построения портфеля запустите Portfolio Modeller и в поле Basis_Formula указывается список инструментов (через пробел).

Размер позиций для открытия отображается в верхнем левом углу окна индикатора.

Индикатор идет в паре с советником Portfolio Manager. Запустите советник и укажите желаемое название портфеля в графе Portfolio_Name. В правом верхнем углу индикатора появятся кнопки для торговли. Кнопки BUY и SELL одновременно открывают позиции нужного размера по всем инструментам, а CLOSE закрывает позицию портфеля. В этом случае, открытие портфельной позиции происходит в полуавтоматическом режиме.

Заключение

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

Скачать комплект Recycle

Инструкция по установке индикаторов в MT4
Инструкция по установке индикаторов в MT5

С уважением, Алексей Вергунов
TradeaPro.ru

Источник: http://tradelikeapro.ru/arbitrazh-basket-treyding/

Понравилась статья? Поделить с друзьями: