Расчет индекса валюты

Novikov

Гуру форума
Индекс валюты

Допустим, нам нужно определить движение некоторой валюты, но на FX есть котировки только кроссов валют. Можно, конечно, увидеть, что доллар двинулся вверх, если большинство кроссов с ним пошли в соответствующую сторону. Но какова величина этого движения? Насколько сильно движение какой-либо валюты влияет на движение кроссов с ней? Попробуем выяснить это объективными методами.
Формула

После некоторых раздумий можно прийти к простой формуле индекса:

01.png


где N – количество кроссов EUR со всеми другими валютами.

Это формула геометрического среднего всех отношений валюты к другим валютам (кроссов). Таким способом мы получаем усредненное движение всех кроссов данной валюты.

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

02.png


где N теперь – количество всех валют или, что то же самое, количество всех кроссов EUR, включая кросс с собой, равный единице.

Запись в общем виде:

03.png


где N – количество всех валют.

Так как до сих пор рассматривали только валюты, то N – всегда ограничено. В общем случае мы можем брать отношения (кроссы) валюты со всем доступными активами и деривативами – каждой акции или индексу, металлам, товарам или даже виртуальным валютам и всему, выраженному в ней.

Число таких кроссов неопределенно много, поэтому можно записать обобщенную формулу в таком виде:

04.png


где CC – число всех возможных кроссов с валютой C.

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

Для расчета индекса необходимо иметь историю котировок для каждого бара в пределах интересующего фрагмента истории. Больше всего истории обычно есть для кроссов с USD (доллар США), поэтому есть смысл доработать формулу для использования только кроссов с USD.

Любой кросс с не USD можно представить в виде отношения двух кроссов с USD:

05.png


Заменив все кроссы в уравнении (3), получим формулу вычисления индекса только через кроссы с USD:

06.png


Правый множитель в точности представляет индекс USD, поэтому формулу можно переписать так:

07.png


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

Novikov

Гуру форума
Свойства

Рассмотрим несколько свойств индекса на основе полученной выше формулы.

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

08.png


Произведение всех индексов набора в любой момент равно 1.

09.png


Соответственно, сумма логарифмов всех индексов набора в любой момент равна 0.

10.png


Отношение изменений индексов равно изменению кросса.

11.png


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

Изменение кросса в процентах приближенно равно разнице изменений индексов валют, составляющих кросс, в процентах.

12.png


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

13.png


Чем меньше изменение индексов, тем меньшую ошибку получаем в приближенной формуле (12). Изменения больше 10% на валютном рынке даже на больших таймфреймах редки, поэтому можно смело пользоваться данным методом оценки.
Супериндекс

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

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

Нужно учитывать, что некоторые валюты обратно коррелированы. Например, AUD обратно коррелирован с JPY и USD. В этом случае в среднее геометрическое AUD должен попадать обращенным (1/AUD).
Выбор валют для расчёта

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

источник - http://www.fxcoder.net/2013/07/indeks-valyuty.html
 

Novikov

Гуру форума
Индикатор индекса валют

Индекс на основе среднего геометрического. Показывает отношение инструмента ко всем инструментам некоторого набора. Можно комбинировать несколько индексов и кроссов через операции умножения и деления.

Формула расчёта индекса

14.png


где:

15.png


В индексе все кроссы рассчитываются через базовую валюту. Например, EUR/CHF=EUR/USD⋅USD/CHF при базовой валюте USD. Это снижает требования к истории котировок (достаточно всех кроссов валют из набора IndexCalcCurrs и базовой валюты), а также дает возможность получить больше данных, так как для базовой валюты (в случае USD) у большинства брокеров больше исторических данных.

При расчете средней (MA period > 1) вместо расчета средней по индексу рассчитывается индекс по средним. Такая подмена дает достаточно хорошую точность, при этом упрощая расчеты.

Вместо валют могут быть любые другие инструменты.

Использование формулы

В формуле индикатора можно совмещать сразу несколько индексов или кроссов. Например, может быть интересно посмотреть совокупное движение нескольких инструментов и/или индексов.

x_main3.png


Если взять зацикленную формулу (например, EURUSD*USDCHF/EURCHF), то получится горизонтальная прямая с небольшими выбросами. Эти выбросы появляются за счет небольшого (обычно в пределах спреда) расхождения котировок, а также из-за усредненных формул используемой цены (Median, Typical, Weighted), либо предельных (High, Low), время достижения которых может сильно не совпадать у разных инструментов для одного и того же бара.

x_ring2.png


Основные свойства индекса

x_indexes2.png


На картинке продемонстрированы два свойства индексов:

обратимость (отношение индексов двух валют равно их кроссу)
произведение всех индексов набора равно 1

История котировок

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

Параметры

С версии 7 для MT4 и версии 5 для MT5 произошли существенные изменения в наборе параметров. Также они стали одинаковыми по названию и назначению.

17.png



источник _http://www.fxcoder.net/2011/06/index-indicator.html

Загрузка
для MetaTrader версии 4.00 Build 600 и новее
для MetaTrader 5
 

Вложения

  • index.mt4_7.0.zip
    8,2 КБ · Просмотры: 816
  • index.mt5_5.0.zip
    9,7 КБ · Просмотры: 198
Последнее редактирование модератором:

Novikov

Гуру форума
Индикатор из Code Base был удален по требованию автора.
Странно конечно, я ведь авторство не присваивал и при этом автор почему то не захотел его добавить туда!
 

eevviill2

Местный знаток
Нашел формулы для долара и евро.
USDX = 50,14348112 × EURUSD^-0,576 × USDJPY^0,136 × GBPUSD^-0,119 × USDCAD^0,091 × USDSEK^0,042 × USDCHF^0,036

EURXt=34.38805726 x (USDt)–0,3155 x (GBPt)0, 3056 x (JPYt)– 0.1891 x (CHFt) 0.1113 x (SEKt) 0.0785

Как узнать например эти индексы?
JPYX - Japanese Yen Currency Index
AUDX - Australian Dollar Currency Index
NZDX - New Zealand Dollar Currency Index
 

Novikov

Гуру форума
Нашел формулы для долара и евро.
USDX = 50,14348112 × EURUSD^-0,576 × USDJPY^0,136 × GBPUSD^-0,119 × USDCAD^0,091 × USDSEK^0,042 × USDCHF^0,036

EURXt=34.38805726 x (USDt)–0,3155 x (GBPt)0, 3056 x (JPYt)– 0.1891 x (CHFt) 0.1113 x (SEKt) 0.0785

Как узнать например эти индексы?
JPYX - Japanese Yen Currency Index
AUDX - Australian Dollar Currency Index
NZDX - New Zealand Dollar Currency Index

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

transcendreamer

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

скорее всего это просто эмпирически подобранные коэффициенты
объемы обмена бесспорно влияют
но это не статика а динамика
поэтому статическая модель всегда будет немного отставать от ситуации
а адекватную динамическую построить в наших условиях почти нереально
 

eevviill2

Местный знаток
Нашел формулы для долара и евро.
USDX = 50,14348112 × EURUSD^-0,576 × USDJPY^0,136 × GBPUSD^-0,119 × USDCAD^0,091 × USDSEK^0,042 × USDCHF^0,036
Как узнать например эти индексы?
JPYX - Japanese Yen Currency Index
AUDX - Australian Dollar Currency Index
NZDX - New Zealand Dollar Currency Index

EURX = USDX*EURUSD – the Euro index
GBPX = USDX*GBPUSD – the index of the British pound
AUDX = USDX*AUDUSD – the index of the Australian dollar
NZDX = USDX*NZDUSD – the index of the new Zealand dollar
CADX = USDX/USDCAD – the index of the Canadian dollar
CHFX = USDX/USDCHF – the index of the Swiss franc
JPYX = USDJPY/USDX – the index of the Japanese yen
 

forbacks

Новичок форума
Такое определение индекса доллара США для Форекса неприемлимо,т.к.этот индекс скорее всего торгово-экономический и показывает состояние доллара США в системе торговых взаимоотношений между странами участницами.Так, коэффициенты валют это ничто иное,как процентное выражение в относительных единицах торгового оборота в этой системе: 57.6%(EUR)+13.6%(JPY)+11.9%(GBP)+9.1%(CAD)+4.2%(SEK)+3.6%(CHF)=100%.Этот индекс пересчитывается один раз в пять лет.Кому нужен такой индекс?Трейдерам точно не нужен.Он ничего не даёт для ежедневной торговли.
 
Последнее редактирование модератором:
Верх