Детали перехода от парных (относительных) валютных курсов к абсолютным. Работа над ошибками

Введение

Настоящая статья описывает результаты эксперимента проведенного в рамках проекта “Абсолютный курс валют”. Протокол эксперимента можно увидеть перейдя по ссылке https://www.wolframcloud.com/objects/eavprog/Published/detaliPerehoda.nb.

Проект “Абсолютный курс валют” (см. https://www.abscur.ru/) занимается анализом парных валютных курсов, выделением из них абсолютных валютных курсов и их анализом. В рамках проекта получена методика преобразования от парных курсов к абсолютным валютным курсам. Для этого определена абсолютная валюта ABS. Курсы всех имеющихся валют выражаются в отношении к ABS.

Детальное описание технологии приводится в статье “От валютных пар к абсолютным курсам валют”.

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

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

В статье “Портфельный метод Марковица применительно к валютному рынку” дается описывается недоступная ранее технология оптимизации валютного портфеля.

В далее описывается методика преобразования от парных (относительных) валютных курсов к абсолютным. Приводятся числовые параметры преобразования и методика их вычисления.

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

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

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

Теоретические основания

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

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

Более детально технология описана в статье “От валютных пар к абсолютным курсам отдельных валют” (только в этой статье 2018 года дается транспонированное представление матриц преобразования в отличии от представления настоящей статьи).

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

Нули говорят об отсутствии такой пары и валюты. Единица соответствует валюте в числителе пары. Минус единица обозначает валюту в знаменателе пары.

Обратная матрица преобразования от пар к абсолютным курсам не определена. Ее необходимо вычислять. Наиболее очевидный метод - это минимизировать ошибку восстановления парных курсов. Что и было сделано для вычисления этой матрицы в 2017 году. Приводим графическое представление этой матрицы.

Проверка точности существующей модели

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

Далее был произведен расчет ошибок восстановления для всех пар.

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

Конечно такой уровень ошибки не позволяет считать модель состоятельной и требует пересчета.

Псевдообратная матрица от прямой

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

Очень похоже на то что мы получили ранее используя для оптимизации реальные парные курсы валют.

Рассчитаем абсолютные курсы. Затем восстановим из абсолютных парные курсы. Диаграмма ошибок получилась следующая.

Ошибки тоже получились большие как и в оценке выше. Эта модель тоже не может нас устроить.

Расчет обратной матрицы через линейно независимые компоненты

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

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

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

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

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

Выделим эти матрицы перехода к линейно-независимым компонентам. Вот матрица перехода к компонентам от абсолютных курсов.

Вот матрица перехода от парных курсов к линейно-независимым компонентам.

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

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

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

На всех парах кроме двух практически нулевые ошибки. Выясняем что с этими парами.

Оказывается в двух валютных парах неверные данные принимаются. Для jpy/hkd и jpy/sek данные идут лотами по 10000 и 100 шт. Необходимо исправить и заново проверить.

После исправлений входных парных курсов (избавления от лотов) и повторных вычислений абсолютных и восстановленных парных курсов смотрим ошибку восстановления.

Получили ошибку в пределах 0.3% . Вполне приемлемый уровень ошибки.

Вот пример графика абсолютного курса.

Вот пример исходного и восстановленного парных валютных курсов.

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

Можно увидеть самую дорогую валюту. Это кувейтский динар стоимостью почти 47 абсов. Самая маленькая абсолютная стоимость у вьетнамского донга - 0.003 абса.

Выводы

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

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

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

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

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

Енин А.В.

Оренбург.

21.04.2019

0
9 комментариев
Написать комментарий...
Алан Алиев

Не понял всего, что было тут, но с виду мне нравится☺️

Ответить
Развернуть ветку
Алексей Енин
Автор

На Хабре значительно больше комментариев.

Ответить
Развернуть ветку
Алан Алиев

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

Ответить
Развернуть ветку
Aleksandr Oleynikov

Вы не учли ключевую вводную. А именно эталон-измеритель.
Есть т.н. система "currency board" и законодательство о Центральных Банках , которое как под копирку повторено во всех странах периферийного капитализма.
Что это означает?
То что есть эталон-измеритель - USD.
Все валюты сначала котируются К эталону. И в неэталонной валютной паре , только затем сравниваются значения 2х котировок валютной пары к эталону и выводится курс.
Не может быть "висящего в воздухе" курса рингитта к тенге.
Сначала рингитт котируется к эталону (USD), заетм тенге котируется к эталону. Значения сравниваются и выводится курс рингитта к тенге в связи с эталоном.

Ответить
Развернуть ветку
Алексей Енин
Автор

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

Ответить
Развернуть ветку
Aleksandr Oleynikov

Работа может пригодиться при создании проекта НЕэмитируемого нового эталона-измерителя.
Понятно что золото и любые ископаемые им уже быть не могут, и уж тем более им не может быть эмитируемая валюта одного из государств.
Единственный вариант это некая единица энергии. Предположим 10кВт.
Энергию в принципе можно "'эмитировать" (т.е. производить на Электростанциях) но это бессмыселнно. Также и ее передача затрудена в значимых рыночных объемах.
И ее базовая доналоговая цена не так чтобы сильно отличается по миру (ее придется сделать единой по всему миру). Понятно что при этом электроэнергия станет внебиржевым товаром

Ответить
Развернуть ветку
Алексей Енин
Автор

Читал статьи в сети об энергетическом эквиваленте ценности. Но все же мое решение мне кажется более точным и законченным.

Ответить
Развернуть ветку
Aleksandr Oleynikov

Так при наличии текущей "эталонной системы" на мой взгляд, работа по сути бессмыселнна. Она лишь выдает данные по взаимосвязи волатильности эталоных курсов. Т.е. вы вводите падение донга относительно падения\роста лиры\динара итд и в этих множественных парах делаете выводы. Но это бессмыселнно при наличии единого эталона.
Те данные что получаются они не абсолютный курс дают , а некую сравнительную
информацию по состянию фин\эконом системы стран.Я сходу неочень соображу какую именно.
Вот проверьте - USD должен быть ровно по медиане тогда т.к. это эталон .
Так мало того в ряде экономик где нет прямой конверитируемости - существуют нескольок видов курсов.

Ответить
Развернуть ветку
Алексей Енин
Автор

Два применения описаны в предыдущих статьях.

Ответить
Развернуть ветку
6 комментариев
Раскрывать всегда