49055

ПРОГНОЗИРОВАНИЕ КОТИРОВОК АКЦИЙ С ИСПОЛЬЗОВАНИЕМ НЕЙРОСЕТИ

Курсовая

Информатика, кибернетика и программирование

Сущность акций Факторы влияющие на котировки акций Прогнозирование котировок акций с применением Нейросимулятора

Русский

2013-12-20

253 KB

39 чел.

Федеральное агентство по образованию

Государственное образовательное учреждение высшего профессионального образования

«ПЕРМСКИЙ ГОСУДАРСТВЕННЫЙ ПЕДАГОГИЧЕСКИЙ УНИВЕРСИТЕТ»

Факультет информатики и экономики

Кафедра прикладной информатики






КУРСОВАЯ РАБОТА

ПРОГНОЗИРОВАНИЕ КОТИРОВОК АКЦИЙ

С ИСПОЛЬЗОВАНИЕМ НЕЙРОСЕТИ

ИСПОЛНИТЕЛЬ: студентка гр. 1243 Чумакова И.Н.

НАУЧНЫЙ РУКОВОДИТЕЛЬ:

Профессор Ясницкий Л.Н.

Пермь 2007


Содержание

[1] Введение

[2] Глава 1. Акции

[2.1] Сущность акций

[2.2] Факторы, влияющие на котировки акций

[2.3]

[3] Глава 2. Технологии для прогнозирования и анализа данных

[3.1] Что такое аналитические технологии

[3.2] 2.1.1 Традиционные технологии (Детерминированные технологии)

[3.3] 2.1.2 Вероятностные модели

[3.4] 2.2  Недостатки традиционных технологий

[3.5] 2.3 Новые технологии

[3.5.1] Как работает биологическая нейронная сеть

[3.5.2] Что такое искусственная нейронная сеть

[3.5.3] Обучение нейронных сетей

[3.5.4] Нейросетевая классификация и ошибки нейронных сетей

[4]
Глава 3 Применение нейронных сетей

[4.1]  Прогнозирование котировок акций с применением «Нейросимулятора»

[4.2]  Проектирование нейросети

[5]
Заключение


Введение

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

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

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

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

Целью данной курсовой работы является прогнозирование котировок акций на примере компаний «Газпром».

Основными задачами настоящей курсовой работы являются:

  •  Рассмотрение понятия акций;
  •  Изучение принципов работы нейросети с использованием программы «Нейросимулятор»;
  •  Создание оптимально работающей нейросети для прогнозирования котировок акций.

Объектом изучения является изменения котировок акций.

Предметом изучения выступает обученная нейронная сеть.

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

Глава 1. Акции

  1.  Сущность акций

По российскому законодательству акция - эмиссионная ценная бумага, закрепляющая права ее владельца (акционера) на получение части прибыли акционерного общества в виде дивидендов,  на участие в управлении акционерным обществом и  на часть имущества, остающегося после его ликвидации.[2]

Различают различные виды стоимости акций.

Нарицательная стоимость (номинал) - произвольная стоимость, устанавливаемая при эмиссии и отражаемая в акционерном сертификате. Номинал практически не связан с реальной стоимостью.

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

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

Рассмотрим основные моменты, касающиеся акций.[1]

1. Акции могут выпускаться только АО;

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

3. Акции выпускаются именные и на предъявителя. Количество акций на предъявителя устанавливается Федеральной комиссией по рынку ценных бумаг, в процентном отношении к общему числу акций;

4. Акционерное общество может выпускать акции различных категорий и номинальной стоимости, причем все акции одного выпуска и номинала равны между собой в не зависимости от даты приобретения;

5. Акция не имеет срока погашения (в отличие, например, от облигаций);

6. Ограниченная ответственность, которая заключается в том, что ни акционер не отвечает по обязательствам общества, ни общество по обязательствам акционера. Максимум, что может потерять акционер – вложенные средства;

7. Номинальная стоимость акции не может быть меньше 10 рублей.

Рассмотрим классификацию акций.

  1.  Все акции можно разделить на:
  •  Именные;
  •  На предъявителя.
  1.  По признаку голосования на собраниях акционеров:
  •  Голосующие:
  •  Предоставляющие 1 голос
  •  Предоставляющие более 1 голоса
  •  Не голосующие акции.

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

Голосующие акции – простые акции и при определенных обстоятельствах привилегированные акции.

  1.  По виду:
  •  Простые
  •  Без специального статуса
  •  «золотая» акция
  •  Привилегированные
  •  Типа «А»
  •  Типа «Б».

Привилегированная акция:

  1.  не дает право (если иное не установлено уставом общества или нормативными актами) голоса на собраниях акционеров;
  2.  приносит фиксированный дивиденд. Причем, если дивиденд по простым акциям оказался больше дивиденда по привилегированным, то владельцам привилегированных акций доплачивается разница между дивидендами;
  3.  не могут быть выпущены на сумму более 25% от уставного капитала;
  4.  предоставляют владельцу преимущественное право, по сравнению с простыми, на часть имущества при ликвидации общества.

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

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

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

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

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

Составляющими этого дохода будут дивиденды и рост курсовой стоимости. На что он рассчитывает – на дивиденды или рост курсовой стоимости? Чем измерить доходность инвестиций в акции?

Оценивая акции с точки зрения их доходности, оператор, действующий на западном фондовом рынке, разделяет их на ряд категорий:[1]

  •  акции, обладающие высокой ликвидностью, по которым проходят активные сделки, позволяющие получить доход даже от небольшого колебания цен (эти акции носят название "гвоздь программы");
  •  акции, являющиеся лидерами по росту курсовой стоимости, имеющие максимальную величину Ц1 – Ц, называются "премиальными".

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

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

К таким операциям, в частности, относятся:

  •  "центровые" – лидеры группы акций, оказывающие влияние на всю группу;
  •  "голубые фишки" – акции кредитных, мощных компаний, имеющих стабильное положение на рынке;
  •  "акции второго эшелона" принадлежат крупным, но достаточно молодым компаниям, они обладают свойствами "синих фишек", но пользуются меньшим доверием у инвесторов4
  •  "оборонительные" акции – акции крупных компаний с высокими инвестиционными качествами, которые позволяют не допустить Ц1 – Ц 0 даже при падающем рынке, и высокие стабильные дивиденды (В). Для акций этой группы возможны среднесрочные и краткосрочные инвестиции, и мониторинг может носить пассивный характер.

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

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

Возможность потерь для инвестора от снижения курсовой стоимости   Ц1 Ц создают "дутые" акции, т.е. переоцененные, с искусственно вздутой курсовой стоимостью.

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

Завершают данную классификацию неактивные акции, неликвидные, неинтересные, с точки зрения инвестора.


  1.  Факторы, влияющие на котировки акций

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

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

В чем причина этого явления? Возможно ли с достаточной степенью достоверности предсказать динамику акции после ее размещения? Среди множества факторов и зависимостей, влияющих на изменение котировок акций, можно выделить 3 основных, определяющих «судьбу» акций после IPO: [5]

  •  оценка компании рынком непосредственно перед IPO;
  •  состояние рынка в момент размещения;
  •  внутренние причины (положение и динамика развития компании эмитента после IPO).

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

Оценка для целей IPO по своему характеру ничем не отличается от оценки обычных акций, при этом, учитывая влияние субъективного фактора в процессе определения стоимости, компания может оцениваться как с премией, так и с дисконтом к ее оценке участниками фондового рынка.

Помимо названных факторов, предопределяющих поведение ценных бумаг после IPO, необходимо отметить влияние внутренних факторов компании эмитента, косвенно информирующих инвестора о росте капитализации и/или снижении риска соблюдениеинвестирования в ее бумаги. Среди таких факторов можно выделить:  

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

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

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


Глава 2. Технологии для прогнозирования и анализа данных

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

Технический анализ — это изучение изменений в прошлом и настоящем технических параметров движения исследуемого актива с целью предсказания изменений данных параметров в будущем. На первый взгляд, сложное определение, но главное, что из этого следует, что цены акций изменяются тенденциями. Тенденция (например, «повышение») — это не момент времени, а период времени, поэтому действия (например, покупка акций) в текущей тенденции должны быть однотипными. И наоборот, если тенденция в прошлом и настоящем времени «понижение», то в текущий момент «входа в рынок» тенденция вдруг не изменится, а из этого следует, что вы должны совершаться операция «продажа акций», с последующей операцией «покупка акций». Технический анализ позволяет принимать правильные решения по операциям с акциями, минуя влияние внешних факторов — советы знакомых, телевидение, радио, газеты и т.д. [6]

Фундаментальный анализ — один из методов, который предлагает аналитика, нацеленный на прогнозирование изменения цены с точки зрения изучения политико-экономической ситуации в мире и в стране, экономической ситуации и общего состояния в отрасли, в конкретном эмитенте, экономические показатели и т.п. Данный вид аналитики предполагает изучение балансов, ежеквартальных и ежегодных отчетов, биржевой конъюнктуры и прогнозирования ситуации в отраслях экономики. В узком смысле фундаментальный анализ — анализ финансовой деятельности компании с целью адекватной оценки ценных бумаг, при этом особое внимание уделяется будущим доходам компании, ожидаемым дивидендам и будущим процентным ставкам, а так же оценка риска деятельности компании. При составлении аналитических обзоров применяется метод «сверху-вниз» (top-down), то есть последовательно изучаются:

  •  Экономическая ситуация в целом (в мире и в стране);
  •  Ситуация в выбранной отрасли;
  •  Показатели финансового положения предприятий;
  •  Определение и прогнозирование будущей стоимости акций предприятия.

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

Кроме того, важным моментом является информация о работе бирж и маркет-мейкеров (market-makers), учетных ставках ЦБ, экономическом курсе правительства и возможные политические изменения, а так же всевозможные ожидания и слухи. Фундаментальный анализ — одна из самых сложных, но в тоже время одна из самых главных составляющих работы на рынке. Проводить фундаментальный анализ сложно еще и потому, что в различные периоды времени одни и те же показатели по-разному влияют на конечный результат и могут быть как важнейшими, так и выступать в роли второстепенных и незначительных. Фундаментальный анализ целесообразнее всего использовать совместно с техническим анализом, подобная связка помогает избежать необоснованных рисков и более точно определить моменты входа в рынок.[6]

  1.  Что такое аналитические технологии

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

Простейший пример аналитической технологии - теорема Пифагора, которая позволяет по длинам сторон прямоугольника определить длину его диагонали. Эта технология основана на известной формуле с22+b2.

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

Аналитические технологии нужны в первую очередь людям, принимающим важные решения - руководителям, аналитикам, экспертам, консультантам. Доход компании в большой степени определяется качеством этих решений - точностью прогнозов, оптимальностью выбранных стратегий.[4]

Прогнозирование:

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

Оптимизация:

  •  расписаний
  •  маршрутов
  •  плана закупок
  •  плана инвестиций
  •  стратегии развития.

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

2.1.1 Традиционные технологии (Детерминированные технологии)

Наиболее ранние  традиционные технологии – это детерминированные технологии. Аналитические технологии типа теоремы Пифагора используются человеком уже много веков. За это время было создано огромное количество формул, теорем и алгоритмов для решения классических задач - определения объемов, решения систем линейных уравнений, поиска корней многочленов. Разработаны сложные и эффективные методы для решения задач оптимального управления, решения дифференциальных уравнений и т.д. Все эти методы действуют по одной и той же схеме. Для того, чтобы алгоритм был применим, необходимо, чтобы данная задача полностью описывалась определенной детерминированной моделью (некоторым набором известных функций и параметров). В таком случае алгоритм дает точный ответ. Например, для применимости теоремы Пифагора следует проверить, что треугольник - прямоугольный.[4]

2.1.2 Вероятностные модели

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

2.2  Недостатки традиционных технологий 

К сожалению, классические методики оказываются малоэффективными во многих практических задачах. Это связано с тем, что невозможно достаточно полно описать реальность с помощью небольшого числа параметров модели, либо расчет модели требует слишком много времени и вычислительных ресурсов. Традиционные технологии применимы далеко не всегда, но и вероятностные технологии также обладают существенными недостатками при решении практических задач. Зависимости, встречающиеся на практике, часто нелинейны. Даже если и существует простая зависимость, то ее вид заранее неизвестен. Отметим также, что статистические методы хорошо развиты только для одномерных случайных величин. Если же мы хотим учитывать для прогнозирования курса акций несколько взаимосвязанных факторов (например, объем сделок, курс доллара и т.д.), то придется обратиться к построению многомерной статистической модели. Однако такие модели либо предполагают гауссовское распределение наблюдений (что не выполняется на практике), либо не обоснованы теоретически. В многомерной статистике, за неимением лучшего, нередко применяют малообоснованные эвристические методы, которые по своей сути очень близки к технологии нейронных сетей.[4]

2.3 Новые технологии

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

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

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

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

  1.  Как работает биологическая нейронная сеть

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

Рис. 1. Строение биологического нейрона

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

Нетрудно построить математическую модель описанного процесса.

Рис. 2. Математическую модель нейрона

На рис. 2 изображена модель нейрона с тремя входами (дендритами), причем синапсы этих дендритов имеют веса w1, w2, w3. Пусть к синапсам поступают импульсы силы x1, x2, x3 соответственно, тогда после прохождения синапсов и дендритов к нейрону поступают импульсы w1x1, w2x2, w3x3. Нейрон преобразует полученный суммарный импульс x=w1x1+ w2x2+ w3x3 в соответствии с некоторой передаточной функцией f(x). Сила выходного импульса равна y=f(x)=f(w1x1+ w2x2+ w3x3).

Таким образом, нейрон полностью описывается своими весами wk и передаточной функцией f(x). Получив набор чисел (вектор) xk в качестве входов, нейрон выдает некоторое число y на выходе [4].

  1.  Что такое искусственная нейронная сеть

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

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

Как построить нейронную сеть

Теперь, когда стало ясно, что именно мы хотим построить, мы можем переходить к вопросу "как строить такую нейронную сеть". Этот вопрос решается в два этапа:

  •  Выбор типа (архитектуры) нейронной сети.
  •  Подбор весов (обучение) нейронной сети.

На первом этапе следует выбрать следующее:

  •  какие нейроны мы хотим использовать (число входов, передаточные функции);
  •  каким образом следует соединить их между собой;
  •  что взять в качестве входов и выходов нейронной сети.

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

На втором этапе нам следует "обучить" выбранную нейронную сеть, то есть подобрать такие значения ее весов, чтобы она работала нужным образом. Необученная нейронная сеть подобна ребенку - ее можно научить чему угодно. В используемых на практике нейронных сетях количество весов может составлять несколько десятков тысяч, поэтому обучение - действительно сложный процесс. Для многих архитектур разработаны специальные алгоритмы обучения, которые позволяют настроить веса нейронной сети определенным образом. Наиболее популярный из этих алгоритмов - метод обратного распространения ошибки (Error Back Propagation), используемый, например, для обучения перцептрона [4].

  1.  Обучение нейронных сетей

Обучить нейронную сеть - значит, сообщить ей, чего мы от нее добиваемся. Этот процесс очень похож на обучение ребенка алфавиту. Показав ребенку изображение буквы "А", мы спрашиваем его: "Какая это буква?" Если ответ неверен, мы сообщаем ребенку тот ответ, который мы хотели бы от него получить: "Это буква А". Ребенок запоминает этот пример вместе с верным ответом, то есть в его памяти происходят некоторые изменения в нужном направлении. Мы будем повторять процесс предъявления букв снова и снова до тех пор, когда все 33 буквы будут твердо запомнены. Такой процесс называют "обучение с учителем".

Рис. 3. Процесс обучения нейросети

При обучении нейронной сети мы действуем совершенно аналогично. У нас имеется некоторая база данных, содержащая примеры (набор рукописных изображений букв). Предъявляя изображение буквы "А" на вход нейронной сети, мы получаем от нее некоторый ответ, не обязательно верный. Нам известен и верный (желаемый) ответ - в данном случае нам хотелось бы, чтобы на выходе нейронной сети с меткой "А" уровень сигнала был максимален. Обычно в качестве желаемого выхода в задаче классификации берут набор (1, 0, 0, ...), где 1 стоит на выходе с меткой "А", а 0 - на всех остальных выходах. Вычисляя разность между желаемым ответом и реальным ответом сети, мы получаем 33 числа - вектор ошибки. Алгоритм обратного распространения ошибки - это набор формул, который позволяет по вектору ошибки вычислить требуемые поправки для весов нейронной сети. Одну и ту же букву (а также различные изображения одной и той же буквы) мы можем предъявлять нейронной сети много раз. В этом смысле обучение скорее напоминает повторение упражнений в спорте - тренировку.

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

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

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

Рис. 4. Применение нейронной сети

После того, как нейронная сеть обучена, мы можем применять ее для решения полезных задач. Важнейшая особенность человеческого мозга состоит в том, что, однажды обучившись определенному процессу, он может верно действовать и в тех ситуациях, в которых он не бывал в процессе обучения. Например, мы можем читать почти любой почерк, даже если видим его первый раз в жизни. Так же и нейронная сеть, грамотным образом обученная, может с большой вероятностью правильно реагировать на новые, не предъявленные ей ранее данные. Например, мы можем нарисовать букву "А" другим почерком, а затем предложить нашей нейронной сети классифицировать новое изображение. Веса обученной нейронной сети хранят достаточно много информации о сходстве и различиях букв, поэтому можно рассчитывать на правильный ответ и для нового варианта изображения [4].

  1.  Нейросетевая классификация и ошибки нейронных сетей

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

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

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

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

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

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

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

Для уменьшения такого рода ошибок необходимо давать дополнительную информацию на вход нейросети о фундаментальных событиях, происходящих на рынке. Одним из способов для этого является использование технологии ExpertLine. При ее использовании на вход помимо стандартного набора подается субъективное мнение трейдера о ситуации на рынке. Использование технологии ExpertLine позволяет получить очень малые ошибки прогнозов и корректировать прогнозы по мере развития ситуации на рынке [4].


Глава 3 Применение нейронных сетей 

Прогнозирование – это одна из самых востребованных задач, возникающих в различных областях человеческой деятельности. Задача прогнозирования в общем случае состоит в получении будущих значений каких-либо параметров на основе анализа имеющихся значений этих параметров. Обычно речь идет о прогнозировании временного ряда, т.е. совокупности значений прогнозируемого параметра на некотором интервале времени [T(n+1);T(n+k)], где k – интервал прогнозирования. При этом T(n) – текущий момент времени. Часто возникает необходимость  предсказать не значения временного ряда, а вероятность того или иного характера его поведения на заданном интервале, т.е. будет ли он возрастающим, убывающим или прогнозируемый параметр будет находиться в определенных пределах.

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

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

Можно выделить два основных преимущества нейронных сетей:

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

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

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


  1.   Прогнозирование котировок акций с применением «Нейросимулятора»

Пусть у нас имеется база данных, содержащая значения цен акций компании «Газпром»  за последние 60 дней. Прогнозирующая нейронная сеть будет иметь три выхода и 15  входов. Входными значениями нейронной сети будут цены акций за 15 последовательных дней, а желаемым выходом нейронной сети - известные цены в следующие три дня за этими пятнадцатью.

Я использовала нейросеть для прогнозирования котировок акций на три дня вперед. На рис. №5 представлена номограмма, изображающая изменения цен акций «Газпром» с февраля по май 2007 года.

Рис. 5. Динамика цен акций с 6 февраля по 8 мая

Выборка обучающих примеров была сформирована с использованием метода скользящих окон, согласно которому был выбран временной интервал 15 дней. В качестве х1 задается цена акции, которая была 6 февраля, х2 – на 7 февраля и так далее, в качестве х15 –курс на 21 февраля. В качестве желаемого выхода сети d1 принимается курс на 22 февраля, d2 – курс на 23 февраля, d3 – курс на 24 февраля. Таким образом, сформирован первый обучающий пример X1D1 для персептрона, имеющего 15 нейронов входного слоя и 3 нейрона выходного слоя.

Для формирования второго обучающего примера сдвинем окно на одну позицию (один день) вправо и выполним аналогичные операции. Перемещая окно Q раз,  получаем выборку из Q обучающих примеров. Далее следует определиться с количеством внутренних слоев и нейронов персептрона и выполнить обучение, например методом обратного распространения ошибки. Проверить качество получившейся прогностической программы, оценить точность прогноза можно на тестовых выборках, которые получены, располагая окна таким образом, чтобы в них не попадали использованные при обучении даты. Программа выполнит прогноз на три дня вперед, если окно расположить в самом конце номограммы, т.е. таким образом, чтобы в качестве X15 была цена акции на сегодняшний день [4].

Наша нейронная сеть «Нейросимулятор» совместима с системой обработки электронных таблиц Excel. Таким образом, можно подготовленную обучающую выборку загрузить из Excel. Теперь каждая строка таблицы представляет собой обучающий пример, где первые 15 чисел - входные значения нейронной сети, а 16, 17, 18 числа - желаемые значения выхода нейронной сети. Исключение составляют последние 5 строк, где данных недостаточно - эти строки не учитываются при тренировке нейронной сети. В них заданы все 15 входных значений, но неизвестно значение выхода нейронной сети. Именно к этим строкам мы применим обученную нейронную сеть и получим прогноз на следующий день.

Нейросеть обучалась в течение 5000 эпох, в качестве функции активации скрытых слоев была выбрана сигмоида, а в качестве функции активации выходного слоя – линейная функция. Заданная скорость обучения нейросети – 0,08, для обучения был применен алгоритм обратного распространения, для масштабирования данных была выбрана линейная функция. После обучения сети производятся вычисления, для этого сначала копируются обучающие примеры, а затем добавляется тестирующая выборка. После этого нейросеть вычисляет выходные параметры.

  1.   Проектирование нейросети

Теоретически для построения нейросетевой модели любого сколь угодно сложного объекта достаточно использовать персептрон с одним скрытым слоем сигмоидных нейронов, число которых определяется по формулам:

;

.

Строгой теории выбора оптимального числа скрытых слоев персептронов пока нет. На практике же чаще всего используются персептроны, имеющие один или два скрытых слоя [3].

При проектировании персептронов необходимо понимать, что персептрон должен не только правильно реагировать на примеры, на которых он обучен, но и уметь обобщать приобретенные знания, т.е. правильно реагировать на примеры, которых в обучающей выборке не было. Чтобы оценить способность сети к обобщению, помимо обучающей выборки примеров XD в рассмотрение вводят некоторое количество тестовых примеров XТDТ, которые относятся к той же самой предметной области, но в процессе обучения не участвуют. После обучения вычисляют максимальную погрешность между прогнозом сети Y и желаемым выходом сети D или DТ. Максимальная погрешность персептрона, вычисленная на обучающей выборке XD, называется погрешностью обучения, обозначаемой E, а вычисленная на тестовой выборке XТDТ – погрешностью обобщения, обозначаемой ЕТ. При увеличении числа нейронов внутренних слоев персептрона N погрешность обучения Е обычно падает, тогда как погрешность обобщения ЕТ сначала падает, а затем, начиная с некоторого оптимального значения N = N0, возрастает. Кривые зависимости  погрешностей обучения и тестирования от числа нейронов внутренних слоев персептрона приведены на рис. 6, рис. 7 и рис. 8.

Рис. 6. Тестирующая и обучающая погрешности для Y1

Рис. 7. Тестирующая и обучающая погрешности для Y2

Рис. 8. Тестирующая и обучающая погрешности для Y3

Число нейронов в скрытых слоях желательно оптимизировать для каждой конкретной задачи.

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

Общим недостатком деструктивных алгоритмов является значительная длительность их работы, поскольку первоначальные вычисления производятся в сетях, имеющих избыточное количество нейронов. Этого недостатка лишены альтернативные конструктивные алгоритмы, которые предполагают постепенное добавление нейронов к сети, в которой их заведомо недостаточно. Новые нейроны добавляются каждый раз после определенного числа эпох обучения, а синаптическим весам и порогам новых нейронов присваиваются случайные числа. Поэтому после каждого добавления нового нейрона текущая погрешность обобщения нейросети ЕТ резко увеличивается, но после нескольких эпох обучения становится меньше той, которая была до добавления нейрона. Однако, начиная с некоторого момента времени t0, добавление новых нейронов перестает способствовать уменьшению ошибки ET, а, наоборот, приводит к ее увеличению, что свидетельствует о наступлении эффекта гиперразмерности (переобучения) [3].

Как видно из графиков, в момент, когда количество нейронов в скрытом слое было равно 7, структура сети была оптимальной. График спрогнозированных цен акций с 6 февраля по 8 мая в сравнении с реальными приведен на рис. 9.

Рис. 9. Реальные и прогнозируемые котировки акций на 3-ий день

Максимальная погрешность равна 0,238122%, т.е. прогнозируемые курсы валют верны на 99,71878%.


Заключение

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

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

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

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


Список литературы

  1.  Миркин Я.М. Ценные бумаги и фондовый рынок. М.: “Перспектива”, 1995г
  2.  Федеральный Закон РФ от 22.04.1996г. № 39-ФЗ “О рынке ценных бумаг” (ред.28.07.2004)
  3.  Ясницкий Л.Н. Введение в искусственный интеллект: Учеб. пособие для студ. высш. учеб. заведений – М: Издательский центр «Академия», 2005.
  4.  www.neuroproject.ru/what.php    Учебник «Нейросети».
  5.  http://www.eastcapital.ru/ru/about/press-centre/comment/index.php?id4=915 Андрей Лысенко//Рынок Ценных Бумаг 06 декабря 2006.
  6.  http://www.emi-trust.ru/analitika  Аналитика финансовых рынков
  7.  http://stocks.investfunds.ru/stocks/7/detail/1/ Газпром, акция обыкновенная. Рынок акций, котировки акций, рынок ценных бумаг, акции, брокеры и брокерское обслуживание в России.


 

А также другие работы, которые могут Вас заинтересовать

8085. Бизнес-план Создание мини-пекарни 280.21 KB
  РАЗРАБОТКА БИЗНЕС-ПЛАНА НОВОГО ПРЕДПРИЯТИЯ Бизнес-план Создание мини-пекарни Банковский кредит Прибыль чистая в месяц Срок окупаемости סмесяцев. Резюме: Бизнес-план посвящен созданию мини-...
8086. Бизнес - план, его сущность и значение 43.34 KB
  Введение. В рыночной экономике бизнес - план является рабочим инструментом, используемым во всех сферах предпринимательства. Бизнес - план описывает процесс функционирования фирмы, показывает каким образом её руководители собираются д...
8087. Аудиторская проверка учета кредитов и займов 63.9 KB
  Аудиторская проверка учета кредитов и займов План Введение I. Планирование аудиторской проверки кредитов и займов II. Классификация видов нарушений при привлечении кредитов и займов III. Источники и методы получения аудиторских доказательств ...
8088. Аудиторская проверка учёта расчётных и кредитных операций 84 KB
  Аудиторская проверка учёта расчётных и кредитных операций. Задачи, объекты и источники информации. Проверка расчётов с поставщиками и подрядчиками, покупателями и заказчиками. Аудит расчётов с подотчётными лицами. Аудит креди...
8089. Понятия о методах и приёмах воспитания. Классификация методов воспитания 22.47 KB
  Понятия о методах и приёмах воспитания. Классификация методов воспитания Методы воспитания - это пути, способы достижения заданной цели воспитания. Применительно к школьной практике можно сказать также, что методы - это способы воздействия...
8090. Методы формирования сознания личности 23.9 KB
  Методы формирования сознания личности Методы формирования сознания очень важны для формирования чувств, эмоционального переживания. Если ученики остаются безразличными к педагогическому воздействию, то, как известно, процесс развивается медленно и р...
8091. Методы организации деятельности и поведения 24.93 KB
  Методы организации деятельности и поведения Воспитание должно формировать требуемый тип поведения. Не понятия, убеждения, а конкретные дела, поступки характеризуют воспитанность личности. В этой связи организация деятельности и формирование опыта по...
8092. Методы стимулирования и коррекции поведения школьников 24.64 KB
  Методы стимулирования и коррекции поведения школьников С древних времен известны такие методы стимулирования, как поощрение и наказание. Педагогика XX века обратила внимание на еще один весьма действенный, хотя и не новый метод стимулирования...
8093. Сущность понятия форма воспитания. Классификация и характеристика отдельных форм воспитания 23.18 KB
  Сущность понятия форма воспитания. Классификация и характеристика отдельных форм воспитания. Формы воспитания - способы организации воспитательного процесса, способы целесообразной организации коллективной и индивидуальной деятельности учащихся...