Pull to refresh

Comments 50

UFO just landed and posted this here
Согласен.
И добавлю. Автор пытается применить некий алгоритм натренированный на исторических данных и предсказать поведение рынка в будущем. В трейдинге это называется технический анализ. И любой кто занимался вопросами технического анализа сразу задаст вопрос, почему исторические данные взяты только начиная с 2006 года? Чтобы исследователь мог утверждать что его паттерн (рисунок на графике) работает, он должен показать что это паттерн многократно срабатывал в прошлом. Одинарного или даже двухкратного срабатывания маловато чтобы говорить о том что обнаружена некоторая закономерность.
Как по мне, предсказывать развитие глобальной экономики на основе апроксимаций — дело неблагодарное. Очень многое происходит впервые в истории. Уже пару сотен лет. Отмена рабства и крепостного права, революции и мировые войны, атомные бомбы, появление компьютеров и Интернет. А теперь еще и ИИ…
raamid, в данном случае байесовская сеть выступает в качестве описательной модели: просто описывает распределение в прошлом. Она ни чего не предсказывает. Только говорит, что было вчера и в прошлые дни.
Хороший аналог моего анализа — это анализ мошеннических операций в банковской сфере (fraud detection). Мошенники, как правило, каждый раз придумывают новые схемы. Поэтому сделать хорошую модель только на прошлых транзакций трудно. В этом случае используется подход, который выявляет аномальные транзакции. То есть такие транзакции параметры которых наблюдались редко. Например, если у вас по кредитке движение средств около 100к рублей в месяц в течении нескольких лет, а завтра появятся транзакции 1 млн в день, то банк это обязательно заметит и (скороей всего отреагирует временной блокировкой карты). Можно и более сложный пример придумать.
Моя модель говорит только об том, что взаимное распределение валюты аномально наисторическом промежутке в почти 15 лет.
dzsysop, модель говорит о том, что взаимное расспределение котировок является аномальным. Конечно, хорошо иметь повторяемость, но в данном случае необязательно. Достаточно лишь того факта, что мы наблюдаем что-то чего до этого не наблюдали. Например, если завтра в Новосибирске будет наблюдаться северно сияние, то и без всякой повторяемости можно сделать вывод об аномальных атмосферных явлениях.
UFO just landed and posted this here
Возможно работают определенные сдерживающие факторы, которые отодвинули острую фазу кризиса немного в будущее. Также в 2006-2007 эксперты говорили, что ипотечные бумаги сильно переоценены, но ни кто не обращал на это внимание. Одним из таких факторов сегодня, например, может быть политика количественного смягчение при которой европейский центральные банк и американский ФРС напечатали каждый по несколько триллионов долларов (громадные суммы!) начиная с кризиса 2008 и влили их в свои экнономики. Если мы сегодня видим такие же низкие значения как в разгар кризиса 2008 и не видим сам кризис, то это может говорить о том, что сам кризис будет еще серьезнее чем в 2008.
UFO just landed and posted this here
TiesP, подумаю, как это можно сделать.
а мнение Хазина как-то связано с темой поста? Никак не связано. Зачем тогда его здесь пиарить?
rfq, jasiejames: в начале статьи я сослался на мнение неких экспертов. Поэтому посчитал необходимым рассказать хотя бы о некоторых из них.
UFO just landed and posted this here
Ну как бы то, что кризису быть это и так несомненно, другое дело когда, а вот этого уже почти никто не знает. Думаю какая-то коррекция на фондовых рынках уже должна была случиться, но тут начали применять количественное смягчение и накачивать экономику деньгами, в частности это делает США. Соотвественно такая накачка отодвигает время коррекции на рынках и вот тут то и создается опасность, чем дольше это делать, тем больше будет пузырь и тем сильнее будет падение в дальнейшем.
sdlmaster, совершенно согласен.
UFO just landed and posted this here
Даже, если валюты жестко регулируются, все равно это делается с оглядкой на рынок. Если модель увидет связь с рынком, то она использует это знание. Если такой связи нет, то песо ни на что в модели влиять не будет. Все равно надо подумать над изменением списка валют. Спасибо, Rollant.
в прошедших и предстоящем кризисах большую роль играли не только валюты, а деривативы, облигации и прочий пузырный шлак, который утянул всех на дно…
Надо их ещё замешать. И золото может добавить…
Да, SatCat, валюты здесь выступают в качестве индикатора. Оказалось, что их поведение неким образом отражает кризис. Остальные финансовые инструменты тоже хорошо бы включить в модель.
Спасибо maksstr за интересный материал, но есть нюансы:
  1. Я могу ошибаться, но Вы потеряли связь причины со следствием. Вы говорите, что раз log-likehood в кризис 2008 года были сильно отрицательными, то нынешние сильно-отрицательные значения log-likehood также свидетельствуют о кризисе (текущем или предстоящем). По факту же, все искажения log-likehood, в основном, наблюдаются при реакции рынков на важные информационные события, которых не было в прошлом и которые не ожидались в этом самом прошлом. Т.о. спайк в 2008 году — есть не предсказание краха системы ипотечного кредитования, а реакция на наступление этого краха. Текущие спайки можно объяснить, например, сильным обесцениванием одной из сильнейших валют — фунта стерлингов, произошедшего в результате Brexit, который (о чудо) никогда не происходил и никто из экспертов особо не прогнозировал.
    Математически это можно описать так: Вы рассматриваете абсолютную вероятность заданной стоимости набора валют P(Currency{n}), хотя должны рассматривать условную вероятность стоимости P(Currency{n} | Information{n}) относительно новостей по каждой валюте. Это самая частая и самая важная ошибка при построении мат. моделей рынка.
  2. Почему Ваша модель обучается каждый год заново? Где кросс-валидации?
  3. Глядя на график гипотез по рублю, я бы сказал, что Ваша модель разорила бы меня, торгуй я по ней с 2010 года
  4. Как говорит Н.Н.Талеб, я Вам не поверю, пока Вы не покажите мне Ваш инвестиционный портфель.

Несмотря на мой скепсис, я нахожу Вашу модель интересной. И было бы любопытно посмотреть на ее работу, если Вам не жалко опубликовать ее код и исходные данные.
Спасибо, bellerofonte, за интересный коментарий.
1) Вы правы, информационные события действительно должны влиять на log-likelihood. И спайк в 2008 — это не предсказание кризиса, а реакция на него. В статье я хочу указать на период до кризиса 2006-2007. Можно сказать, что колебания log-likelihood в этот период — это тоже реакция на информационные события. Я больше хочу указать на то, что кобминации котировок в этот пероид приняли аномальные значения и позже случился кризис. Сегодня комбинации опять приняли аномальные значения. То есть такие значения, которые модель не ожидает. Само по себе это уже должно наводить на мысль. А если к этому еще добавить еще и знания того, что происходило в 2006-2007, то вывод у приблежающемся кризисе напрашивется сам собой.

Текущие спайки не объясняются обесцениваем фунта. Вклад фунта в log-likelihood почти нулевой. Фунт как раз ведет себя так как модель этого ожидает.

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

Насчет кросвалидации: У меня описательная модель. Она лишь описывает расспределение котировок. Нет никаких предсказаний на будущее. Все результаты показаны на прошлое. Ближайшее прошлое — это вчера.

3) Лучше не использовать модель как законченный торговый алгоритм, который можно встроить в робота. z-value только говорит, что имеется повышенная вероятность смены тренда на ближайшие недели. И, еще раз, модель сама по себе только описывает данные. Она ни чего не предсказывает.

4) Я не могу показывать вам свой инвестиционный портфель. Могу лишь сказать, что когда мне нужно было поменять валюту, я пользовался этим алгоритмом. И мне он очень помог.
UFO just landed and posted this here
1) Ок, возразить нечего.
2) «Описательная модель» — это выглядит как красивая отмазка от проверки того, насколько точно эта модель на самом деле описывает исходные данные. Кроссвалидация — это как раз один из методов проверки модели на «подгон» aka переобучение. Я уверен, что Вы это сами знаете.
2-3-4) Считаю, что у статьи должен был быть дисклеймер, что она ни на что не претендует.
Я не работал с Байесовскими сетями, но Ваша статья пробудила интерес к ним.
Можете описать пару технических моментов Вашей реализации алгоритма? В частности,
  1. Байесовская сеть — это направленный граф. Правильно ли я понимаю, что узлами этого графа были валюты, а ребрами — их обменные курсы? Причем направление задавалось, скорее всего, от числителя валютной пары к знаменателю? Например, EURUSD = EUR -> USD
  2. Как боролись с направленными циклами?
  3. Как поведет себя данная сеть в крайних случаях, например, если взять некоторое множество валютных курсов к доллару?
bellerofonte:
1) Узлы (ноды) — это котировки одной валюты, ребра — зависимости между котировками. Направление — это зависимости. Если a-> b, то изменения в a порождают изменения в b.
2) В Байесовской сети не может быть циклов. У меня не было с ними проблем.
3) Не понял вопроса. Наша модель — это просто параметрический способ описать расспределение. Мы просим ее дать нам log-likelihood и ожидаемое значение для каждой валюты на каждый день. Можно спросить ожидаемые значения для множества валют на конкретный день (можно для всех валют).
1) Тогда не совсем понятно.
  • Что такое котировки одной валюты? Не существует же понятие котировка валюты — всегда есть отношение одной валюты к другой. Или у Вас все котировки привязаны к какой-то одной валюте, например, к доллару?
  • Что такое зависимость в Вашей модели? Вы абсолютно точно знаете, что одна валюта влияет на вторую, но не наоборот?

2) Ладно, пропустим.
3) На примере:
  • Сеть из пар EURUSD, GBPEUR, JPYGBP, CNYJPY, и т.д. разные комбинации этих валют
  • Сеть из пар EURUSD, GBPUSD, JPYUSD, CNYUSD

На какую сеть больше похожа Ваша и будет ли вторая сеть давать оценку аналогичного качества по сравнению с первой?
1) Котировка — это стоимость американского доллара на конкретный день. Зависимость — это корреляция. Абсолютно точно знаем какая валюта на какую влияет. В этом и красота Байесовской сети. Я погонял симуляции и проверил это. Да, это кажется магией, но оно так работает.
3) Моя — это вторая там, где везде USD. Первую тоже интересно поизучать.
UFO just landed and posted this here
Случайно сегодня нашел статью на хабре habr.com/ru/company/surfingbird/blog/176461. Я ее не читал, но, судя по картинкам, должно быть хорошим введением. Байесовские сети — достаточно простая вещь (на каком-то этапе абстракции). Это просто способ описать распределения с помощью графа.
Американцы авторам подобных статей обычно говорят «Put your money where your mouth is».
У наших российских экспертов это излюбленное занятие предсказывать кризисы. Они как древнегреческие пифии надышавших чего-то, без конца предсказывают кризисы, крах капитализма, западной модели экономики, доллара и ещё бог весть чего.
… Можно предположить, что в этот период действовали некоторые факторы, обуславливающие приток валюты в экономику страны… Что-то я не припомню факторов ни валютных инвестиций в экономику страны… Обычно это выкачиневание по сотне ярдов каждый год… а завышенный или заниженный курс можно определить и по куче других показател… вобщем предсказательная сила модели ничем не отличаеться от Вангования, но за труд респект…
loverussia модель лишь описывает. Она ни чего не предсказывает. Предсказание можно сделать анализируя то, что модель показывает и сопоставляя со другими знаниями.
UFO just landed and posted this here
Спасибо, toyban, за коментарий. Было полезно поразмышлять над ним.
1) Вы правы. Я очень грубо описал, что такое правдоподобие. Спделал это, чтобы у тех, кто совсем не в теме появилось хоть какое-то понимнание.
Ваше определение вносит немного больше ясности, но это такое же грубое описание как и у меня. Величина правдоподобия — это не вероятность. Близко связано с вероятностью, но не оно. Если бы эта была вероятность, то логарифм по всем свободным параметрам (или точкам? каким?) должен был бы равен единице, а этого нет. Величина правдоподобия имеет смысл лишь при сравнении с другой величиной правдоподобия (например для другой модели).

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

2. Не понятен коментарий. Какой «максимум правдоподобия» здесь имеется ввиду? Временную составляющую я проигнорировал для простоты. При построении Байесовской сети обычно рекомендуется игнорировать время на первом этапе потому, что даже без времени модель может дать хороший результат. Как мне кажеся, именно поэтому мы видим, что log-likelihood имеет ниспадающий тренд. Если бы было время, то, возможно, тренд бы пропал.
UFO just landed and posted this here
toyban, правдоподобие и вероятность очень близки по смыслу. Скорей всего у нас с вами одинаковая картинка в голове. Интереснее порассуждать насчет второй формулы.

Давайте поставим знак < вместо = между двумя выражениям во второй формуле. Таким образом формула будет удволетворять требованию, что события не являются независимыми. Однако, выводы статьи от этого не меняются. Также на это указывает тот факт что, log-likelihood для каждой из валют ведут себя схоже с тем как ведете себя суммарная log-likelihood (которая на рис.1).

Насчет последнего вашего параграфа: при тренировки модели действительно возникает максимум правдоподобия, но на рис. 1 изображен не максимум, а число (которое получается, если подставить в функцию правдоподобия значения параметров).

UFO just landed and posted this here
Если есть зависимость между валютами, то надо поставить знак < вместо =.

Сорри, не значение параметров и значение котировки валюты.
UFO just landed and posted this here
Интересно, но не стоило гнать паровозиком «крах капитализма» — никак не следует, более того никак не определено о чем это. Нельзя не признать право автора подчеркивать свою «партийность», но читателя подвешивает: «откуда это?? я же не шел на митинг и тут вдруг...».
RomanPokrovskij,: Если описываются какие-то новые результаты, то всегда нужно сослаться на другие работы. Это нужно, чтобы результаты работы не «висели в воздухе сами по себе», а были привязаны к предыдущим знаниям.
Отличное исследование, спасибо!

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

Всем советую почитать М.Ротбарда («Что государство сделало с нашими деньгами?») или еще например Э.Гриффина (The creature from Jekill island).

Ну и конечно покупайте Биткоин)
Sign up to leave a comment.

Articles

Change theme settings