Системи підтримки прийняття рішень фінансового аналізу на базі алгоритмів нечіткої логіки.
Бурхливий розвиток Internet і пов'язаних із Всесвітньою мережею новітніх технологій все більш потребує притягнення для рішення виникаючих задач різноманітних прийомів і методів із суміжних областей людського знання і насамперед із математики. Одним з напрямків використання новітніх технологій є створення систем підтримки прийняття рішень. Дуже важливо використання таких систем при проведенні фінансового аналізу у зв’язку з необхідністю прийняття найбільш адекватного рішення, яке може вплинути на прибутковість проекту. Дуже часто необхідно приймати рішення, маючи протиречиві данні, які мають високий рівень так званого “шуму”. Це потрібно враховувати при створенні систем підтримки прийняття рішень фінансового аналізу. Одним з виходів з подібної складної ситуації є використання апарату нечіткої логіки.
Нечітка логіка (fuzzy logic) - це математична наука, яка є розширенням класичної (булевої) логіки і заснована на концепції часткової правди - правди, що знаходиться десь посередині між "і" і "немає". Творець теоретичних основ нечіткої логіки Лотфи-заде (Lotfi Zaden) неодноразово підкреслював, що теорія нечітких висловлень не повинна трактуватися як самостійна, відособлена область знань. У деякому роді вона служить методологічним розширенням будь-якої іншої специфічної теорії, отриманої шляхом розмивання (fuzzification) її базисних об'єктів (наприклад, чисел), - їхнім перекладом із дискретного стана в безупинне. У наші дні дослідження проводяться, зокрема, в області нечітких обчислень (fuzzy calculations), нечітких диференціальних рівнянь (fuzzy differential equations) та інше.
Безпосереднє використання алгоритмів нечіткої логіки в додатках - річ поки досить рідкісна. Втім, очевидною областю впровадження є всілякі експертні системи, у тому числі:
- нелінійний контроль за процесами (виробництво);
- системи, що самонавчаються, названі також класифікаторами (classifiers), дослідження ризикових і критичних ситуацій. У цій області особливо цінується спроможність системи з нечіткою логікою одночасно вдосконалювати декілька каналів узагальнення правил, що помітно відрізняє цей підхід від систем штучного інтелекту, по черзі охоплюючих одну закономірність за іншою;
- розпізнавання образів;
- фінансовий аналіз (ринки цінних паперів);
- дослідження даних (корпоративні сховища);
- вдосконалювання стратегій керування і координації дій, наприклад складне промислове виробництво.
Ми розглядаємо використання апарату нечіткої логіки саме при створенні систем підтримки прийняття рішень фінансового аналізу.
Існують принципові межі придатності нечіткої логіки як підходу до задач, де фігурує занадто багато невідомих. Проте час підтвердив, що існуючий математичний інструментарій ефективний в процесі розробки цілком детермінованих кінцевих пристроїв із складною поведінкою. Але ж відомо, що в процесі фінансового аналізу не завжди існують данні, які є чітко детермінованими. Це пов’язано насамперед з неможливістю передбачити поведінку фондового ринку на визначеному проміжку часу. Існує досить багато факторів, які можуть впливати на поведінку цінних паперів на ринку.
Що найбільш важливо при проведенні фінансового аналізу на фондовому ринку? Це по-перше складання найбільш вірогідного прогнозу поведінки цінних паперів. Прогнозування – це ключовий момент при прийнятті рішень в управлінні. Можливість передбачити некеровані аспекти подій перед прийняттям кінцевого рішення дозволяє зробити найкращий вибір, який, в іншому випадку міг бути невдалим.
Досвід показує, що кожний додатковий долар, витрачений на прогнозування, дає менше зниження ризику збитків, ніж попередній. За деякою точкою додаткові витрати на прогнозування можуть зовсім не приводити до зниження втрат. Це пов’язано з тим , що неможливо знизити середню помилку прогнозування нижче визначеного рівня, незалежно від того, наскільки складний метод прогнозування, що застосовується.
Оскільки прогнозування ніколи не зможе повністю знищити ризик при прийнятті рішень, необхідно явно визначити неточність прогнозу. Рішення, що приймається, визначається результатами прогнозу з урахуванням можливої помилки прогнозування.
Вищевказане передбачає, що прогнозуюча система повинна забезпечувати визначення помилки прогнозування, також як і саме прогнозування. Такий підхід значно знижує ризик об’єктивно пов’язаний з процесом прийняття рішень.
Так в чому ж корені інтересу до нечіткої логіки, як методу, на основі якого можна створити системи підтримки прийняття рішень фінансового аналізу?
Як вже було сказано, заміщаючи сувору детерміновану математичну модель об'єкту, нечіткий опис потребує лише мінімального набору закономірностей, не прямуючи до узгодженого опису системи (в термінах ефективності це означає насамперед кардинальне скорочення циклу розробки - впровадження, і практично будь-який наперед обраний додаток виграє від рішення на основі нечіткої логіки). Це дозволяє працювати з даними, що отримані системою на невеликому проміжку часу, з так званими нечіткими числами.
Нечіткі числа (fuzzy numbers), одержані в результаті "не цілком точних вимірів", багато в чому аналогічні розподілам теорії ймовірностей, але вільні від властивих останній відхилень (мала кількість придатних до аналізу функцій розподілу, необхідність їхньої примусової нормалізації, дотримання вимог адитивності, важкість обгрунтування адекватності математичної абстракції для опису поведінки фактичних образів). Як і очікувалось, у межі зростання точності нечітка логіка приходить до стандартної, булевої.
Таким чином, використовуючи алгоритми нечіткої логіки, спеціалісти фінансового аналізу отримали потужний засіб для складання прогнозів, практично незамінний у випадках, коли правила, по яких змінюється курс цінних паперів, невідомі або важко їх виявити.
При створенні системи підтримки прийняття рішень для фінансового аналізу на фондовому ринку доцільно використовувати розвинутий алгоритм застосування нечіткої логіки – нейронні мережі.
На нейронних мережах задача прогнозування формалізується через задачу розпізнавання образів. Данні про змінну, що прогнозується, за деякий проміжок часу створюють образ, клас якого визначається значенням змінної, що прогнозується, в деякий момент часу поза межами даного проміжку, тобто значенням змінної через інтервал прогнозування.
Для прогнозування ціни на фондовому ринку доцільно використовувати метод вікон. Цей метод передбачає використання 2-х вікон A1 та А2 з фіксованими розмірами відповідно n та m. Ці вікна здатні переміщуватись з деяким кроком по часовій послідовності історичних даних, починаючи з першого елементу, і призначені для доступу до даних часового ряду, причому перше вікно А1, отримавши данні, передає їх на вхід нейронної мережі, а друге вікно А2 – на вихід. Пара, яку ми отримуємо на кожному кроці А1 -> А2 (1) використовується як елемент навчаючої вибірки. Приведемо приклад:
Нехай є данні про курс цінного паперу за 2 тижні:
100 94 90 96 91 94 95 99 95 98 100 97 99 98 96 98 (2)
Нехай розміри вікон відповідно n=4, m=1, крок рівний 1. За допомогою методу вікон для нейронної мережі буде згенерована наступна навчаюча вибірка:
100 94 90 96 -> 91
94 90 96 91 -> 94
90 96 91 94 -> 95
96 91 94 95 -> 99 (3)
Кожний наступний вектор отримується в результаті зсуву вікон А1 та А2 праворуч на один елемент. Передбачається наявність прихованих залежностей в часовій послідовності як множина наглядів. Нейронна мережа системи підтримки прийняття рішень, навчаючись на цих наглядах і настроюючи свої коефіцієнти робить спробу виділити закономірності та сформувати в результаті функцію прогнозу.
Прогнозування здійснюється по тому ж принципу, що і формування навчальної вибірки. При цьому виділяються дві можливості: однокрокове і багатокрокове прогнозування.
Багатокрокове прогнозування використовується для здійснення довгострокового прогнозу і призначено для визначення основного тренду і головні точки зміни тренду для деякого проміжку часу в майбутньому. При цьому система, що прогнозує, використовує отримані (вихідні) дані для моментів часу k+1, k+2 і т.д. у якості вхідних даних для прогнозування на моменти часу k+2, k+3 і т.д.
Припустимо, система навчилася на часовій послідовності (2). Потім вона спрогнозувала k+1 елемент послідовності, наприклад, рівний 95, коли на її вхід був поданий останній з відомих їй образів (99, 98, 96, 98). Після цього вона здійснює подальше прогнозування і на вхід подається такий образ (98, 96, 98, 95). Останній елемент цього образу є прогнозом системи. І так далі.
Однокрокове прогнозування використовується для короткострокових прогнозів, звичайно - абсолютних значень послідовності. Здійснюється прогноз тільки на один крок вперед, але використовується реальне, а не прогнозоване значення для здійснення прогнозу на наступному кроці.
Для часової послідовності (2) на кроку k+1 система прогнозує вимогу 95, хоча реальне значення повинне бути 96. На кроці k + 2 в якості вхідного образу буде використовуватися образ (98, 96, 98, 96).
Як було сказано вище, результатом прогнозу на нейронних мережах є клас, до якого належить змінна, а не її конкретне значення. Формування класів повинно проводитись в залежності від того, які цілі прогнозування. Загальний підхід складається в тому, що область визначення прогнозованої змінної розбивається на класи відповідно до необхідної точності прогнозування.
Класи можуть представляти якісний або чисельний погляд на зміну змінної.
Таким чином, ми розглянули один з методів прогнозування ситуації на фондовому ринку за допомогою нейронних мереж, а також побачили, як застосовується нечітка логіка в фінансовій сфері.
Прогнозування на нейронних мережах має ряд недоліків. Взагалі нам необхідно як мінімум 50 і краще 100 спостережень для створення придатної моделі. Це достатньо велике число даних і існує багато випадків, коли така кількість історичних даних недоступна. Це взагалі в більшості стосується вітчизняного фондового ринку, який ще не є досить впорядкованим і організованим.