вторник, 2 июля 2013 г.

Индекс валюты

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

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

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

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

Формула

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

[math]Index(EUR)=(EURGBP\cdot EURCAD \cdot EURUSD\cdot EURJPY\cdot EURAUD\cdot ...)^\tfrac{1}{N}\qquad(1a)[/math]

, здесь N - количество валютных пар с EUR.

Все элементы переменожены, т.к. EUR во всех этих парах стоит на первом месте. Если валюта в паре стоит на втором месте, делим на неё вместо умножения.

[math]Index(GBP)=(\frac{1}{EURGBP} \cdot GBPCAD \cdot GBPUSD\cdot GBPJPY\cdot GBPAUD\cdot ...)^\tfrac{1}{N}\qquad(1b)[/math]

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

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

[math]Index(EUR)=([EUREUR]\cdot EURGBP\cdot EURCAD \cdot EURUSD\cdot EURJPY\cdot EURAUD\cdot ...)^\tfrac{1}{N}\qquad(2)[/math]

, где N теперь - количество всех валют в формуле или, что то же самое, количество валютных пар с EUR плюс 1.

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

[math]Index(C)=(\prod\limits^{N}_{i=1}{C/C_i})^\frac{1}{N}\qquad(3)[/math]

, где N - количество валют.

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

[math]Index(C)=\lim\limits_{N \to CC}(\prod\limits^{N}_{i=1}{C/C_i})^\frac{1}{N}\qquad(4)[/math]

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

Но расчёт на небольшом наборе валют также может быть интересен.

Приведение к доллару

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

[math]C_1/C_2=\frac{C_1/USD}{C_2/USD}\qquad(5)[/math]

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

[math]Index(C)=(\prod\limits^{N}_{i=1}{\frac{C/USD}{C_i/USD}})^\frac{1}{N}=\frac{(\prod\limits^{N}_{i=1}{C/USD})^\frac{1}{N}}{(\prod\limits^{N}_{i=1}{C_i/USD})^\frac{1}{N}}=C/USD\cdot(\prod\limits^{N}_{i=1}{USD/C_i})^\frac{1}{N}\qquad(6)[/math]

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

[math]Index(C)=C/USD\cdot Index(USD)\qquad(7)[/math]

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

Можно брать отношения валют и с другими инструментами, даже если их нет на рынке, т.к. любую пару можно предстваить двумя парами с USD, которые обычно существуют, если инструмент доступен на рынке, например EURXAU (евро за золото) можно представить как EURUSD/XAUUSD. Таким образом можно вводить в формулу любой рыночный инструмент, для которого есть пара с USD (обычно это все доступные инструменты). Либо можно посчитать индекс для любого такого инструмента.

Свойства

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

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

[math]\frac{Index(EUR)}{Index(USD)}=EUR/USD\qquad(8)[/math]

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

[math]\prod\limits^{N}_{i=1}{Index(C_i)}=1\qquad(9)[/math]

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

[math]\sum\limits^{N}_{i=1}{\log{Index(C_i)}}=0\qquad(10)[/math]

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

[math]\frac{\frac{Index(EUR)_2}{Index(EUR)_1}}{\frac{Index(USD)_2}{Index(USD)_1}}=\frac{EUR/USD_2}{EUR/USD_1}\qquad(11)[/math]

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

[math]\Delta EUR/USD\%\approx\Delta Index(EUR)\%-\Delta Index(USD)\%\qquad(12)[/math]

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

[math]\Delta Index(EUR)[/math] [math]\Delta Index(USD)[/math] [math]\Delta EUR/USD[/math] [math]\Delta Index(EUR)-\Delta Index(USD)[/math]
+5% +5% 1.05/1.05 = 1 = 0% 0%
+5% +10% 1.05/1.10 ≈ 0.955 ≈ -4.5% -5%
-5% +5% 0.95/1.05 ≈ 0.905 ≈ -9.5% -10%
+0% -5% 1.00/0.95 ≈ 1.053 ≈ +5.3% +5%

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

Супериндекс

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

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

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

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

Пример двух супериндексов:

Выбор валют для расчёта

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

См. также

1 комментарий: