image

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

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

Рассмотрим на практике применение метода прогнозирования с помощью нейронных сетей. Для примера возьмём данные индекса ММВБ в период с 01.10.2008 по 03.04.2009. Задача состоит в том, что на основе представленной статистической информации необходимо сделать прогноз на 10 дней. Как видно из графика (рис.1), с 01.10.08 по 28.10.08 индекс ММВБ «просел» примерно на 534 пункта. После чего последовал рост до максимальной отметки в 871 пункт. Далее, некоторое время, рынок находился в боковом тренде, затем наметилась восходящая тенденция. В данном примере будем строить прогноз для одной переменной (остальные аналогично), но для того, чтобы выбрать ту из четырех переменных, которая наиболее сильно поможет спрогнозировать остальные, построим корреляционную матрицу.

image

Итак, построив матрицу парных корреляций (табл.1), делаем вывод о том, что переменная LOW наиболее сильно коррелирует с остальными. Займёмся прогнозом данной переменной.

image

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

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

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

image

В результате обучения была найдена нейронная сеть, соответствующая модели 7 (рис.2) с хорошей производительностью (регрессионное отношение: 0,253628, ошибка: 0,003302). Нетрудно заметить, что производительность сетей с архитектурой Радиально Базисной Функции (РБФ) в среднем хуже производительности сетей с архитектурой Многослойно персептрона. Во многом это объясняется тем, что сети с архитектурой РБФ плохо экстраполируют данные (это связано с насыщением элементов скрытой структуры). Для оценки правдоподобности модели 7 построим гистограмму частот (рис.3). Данная гистограмма является самой симметричной по сравнению с другими моделями. Это подтверждает стандартные предположения о нормальности остатков. Следовательно, модель 7 больше всего подходит для данного временного ряда.

image

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

image

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

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



Список использованной литературы:

1. Э.А.Вуколов. Основы статистического анализа. Издательство «Форум», Москва
2008г.
2. В. Боровников. STATISTICA: искусство анализа данных на компьютере. 2003г.
3. Недосекин А.О. Нечетко-множественный анализ риска фондовых инвестиций. Изд.
Сезам, 2002г.
Ранее статья публиковалась в материалах 3-ей региональной научной конференции ВолгГТУ в 2009 году (Том 3).
Поделиться с друзьями
-->

Комментарии (30)


  1. Kanut79
    04.08.2016 11:14

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


    1. Lissov
      04.08.2016 11:41

      Если нейронная сеть смотрит только на цены акций — однозначно нет. Кризисы вызваны не ценами акций самими по себе, а событиями реального мира (и несоответствием между ними). Также у кризиса 2008 года быи причины, которые по курсу акций были видны.
      Но эта можель вообще смотри только на одну компанию. Паттерны по графикам анализируют уже давно, это иногда работает. Но это пока нет новостей, любое событие реального мира может всё развернуть. Например, падение VW после скандала с выхлопами невозможно предсказать по графику. Так же как колебания потом — их можно было предсказать только по результатам судов.


    1. diov
      04.08.2016 12:15

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


    1. carbon88
      04.08.2016 12:15

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


      1. Gonchar_POTT
        04.08.2016 15:01

        В чем — если нейронная сеть не может предсказать ничего ибо есть куча внешних факторов — ее (сети) прикладная ценность?


        1. Lissov
          04.08.2016 16:20

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


    1. valis
      05.08.2016 07:19

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


  1. roboq6
    04.08.2016 11:43
    +1

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


    1. Lissov
      04.08.2016 16:22

      Так не обязательно «подковерных». Нам не известны заранее даже официальные параметры — каким образом глядя на цену акций можно предсказать, скажем, годовую прибыль компании? Или то, понравится ли пользователям новый Айфон?


      1. mdonskoi
        05.08.2016 08:39

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


        1. Lissov
          05.08.2016 17:14

          Если с помощью нейронных сетей проанализировать ход истории, скажем, за последние 200 лет по максимуму аспектов

          Какое количество переменных и каких именно Вы хотите использовать? Идея «учесть всё» может и сработает, только слишком уж нереально много параметров. Вот в данном примере идёт речь о прогнозировании одной переменной по той самой одной переменной. Было бы интересно посмотреть на нейронную сеть анализирующую хотя бы цены всех акций Лондонской биржи. Уже не уверен что это работает, но это ничто по сравнению с «ходом истории».

          Я тоже могу предсказать что следующий будет, но не могу предсказать когда. Можно привести пример волн Кондратьева и прочих теорий, но это спорный вопрос. Проблема с экономикой в том, что как только некая теория, предсказывающая изменение цен, становится популярной, она сразу перетает работать — потому что все коректируют свое поведение. Если все поверят в предсказание, что акции Эппла в августе вырастут +20% а в сентябре упадут -30%, то никто не станет покупать в августе чтобы потерять деньги в сентябре, и цена упадет сразу же.


          1. mdonskoi
            05.08.2016 17:32

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

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


            1. Lissov
              05.08.2016 17:38

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

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


  1. Rusheff
    04.08.2016 14:17
    +4

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


  1. Alexey_mosc
    05.08.2016 13:18

    Конечно, к «исследованию» автора есть много вопросов. Хотя бы начнем с того, что 10 дней это вообще не срок.

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

    Я успешно вывожу сигнал из шума для 15 лет котировок на рынке Форекс для разных валютных пар. Есть статистическое обоснование надежности моих выводов. Рынок предсказуем.

    Но есть другой вопрос совершенно: можно ли на выделенном сигнале сделать деньги, превышающие накладные расходы. Ответ: можно.

    Можете почитать мои публичные исследования на эту тему (не реклама): https://www.mql5.com/ru/blogs/post/661499


    1. roboq6
      05.08.2016 14:43

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


      1. Alexey_mosc
        05.08.2016 15:11

        «Макаром». Машинным обучением. Перевожу для образованных.

        А зачем мне это надо сами догадываетесь.


        1. roboq6
          05.08.2016 15:18

          >Машинным обучением. Перевожу для образованных.

          Ясно что не гаданием на куриных потрохах.

          >А зачем мне это надо сами догадываетесь.

          Я не телепат, так что прошу всё-таки озвучить.


  1. Rusheff
    05.08.2016 14:18

    Знать способ стабильно на форексе делать деньги, превышающие накладные расходы — это стать долларовым миллиардером в течение года-двух, триллиардером в течение 3-5 лет, в течение 5-10 лет купить землю. Всю. Планету.
    Не верю. Список миллиардеров в студию.
    Зарабатывать 5-10% в год — для этого форекс не нужен, и анализ не нужен, и алгоритмы не нужны, можно и в сбербанке.


    1. Alexey_mosc
      05.08.2016 15:14

      30% в год реально. Зачем платить комиссию фонду, если можно самому да еще привлечь днньги?


      1. roboq6
        05.08.2016 15:34

        Сначала заработайте свой первый миллион игрой на Форексе, тогда и поговорим.


        1. Alexey_mosc
          05.08.2016 15:47

          тролль!

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


          1. roboq6
            05.08.2016 16:58

            Окей, миллион это наверное действительно слишком много. Тогда так:

            Если Вы так уверены в своём методе, то думаю Вы можете вложить гораздо больше чем 500 долларов. Займите денег у кого только можно и побольше (главное чтобы проценты не были больше 30%), заложите что только можно, добавьте все свои сбережения, продайте всё что только не является критическим для выживания Вас и Ваших близких. Затем начните играть на Форексе. Если первый год прошёл успешно, то выплачиваете все долги и занимаете по новой. И так лет эдак пять (всё-таки экономика штука очень волатильная, поэтому для большей уверенности стоит растянуть тестирование на несколько лет). И при этом не забывайте каждый год трубить об своих успехах, дабы как можно больше желающих увидело эффективность Вашего метода и воспользовалось им. Если при всём этом, а также возможном негативном влиянии других факторов (вроде непредсказуемых политиков) Вы и 5-ый год завершите успешно, то готовьтесь к получению нобелевской премии, она Вам гарантирована.


            1. Lissov
              05.08.2016 17:34

              Если… Вы и 5-ый год завершите успешно, то готовьтесь к получению нобелевской премии, она Вам гарантирована.

              А зачем какая-то нобелевская премия человеку, который может открыть свой фонд, привлекать кучу денег инвесторов и зарабатывать миллиарды?
              Шучу. На самом деле на небольших объемах денег это вообще говоря работает. Например вот тут: https://habrahabr.ru/company/itinvest/blog/202526/ есть отличная статистика среднего проигрыша игроков на форекс (70%). Я только в одном не согласен с тем автором — на самом деле брокерам сильно рискованно играть самим против клиентов, как правило они просто сводят разнонаправленных клиентов и спокойно стригут комиссию. И чем больше приходит на рынок новичков (которые будут терять деньги), тем больше можно на них заработать. Хорошая математическая модель может отлично сработать тут.


              1. roboq6
                05.08.2016 17:41

                >Хорошая математическая модель может отлично сработать тут.

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


                1. Vinchi
                  07.08.2016 02:29

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


                  1. roboq6
                    07.08.2016 05:29
                    +1

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

                    > как и казино

                    А с чего Вы решили что большинство людей идёт туда денег зарабатывать? С таким же успехом казино можно рассматривать как просто вид досуга.


      1. Rusheff
        07.08.2016 10:33

        >>если можно самому да еще привлечь днньги?
        Вы уже миллиардер или пока миллионер?


  1. numitus2
    05.08.2016 14:35

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


    1. Vinchi
      07.08.2016 02:31

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