Нейронная сеть и предсказание дефолта по розничным кредитам (прототип торгового робота)
Месяц работы - и прототип ПО готов
Скриншот окна программы:
Работа по программе идет с 20 ноября. Как видно выше, уже приобретено 38 ссуд на сумму около 200 евро, оставшийся долг по ним составит 203 евро, и при процентной ставке в среднем в районе 63 % годовых суммарные выплаты в течение 4,5 лет будут равны 559 евро, что соответствует внутренней норме доходности в 84 % годовых.
В портфель отбираются только займы со ставкой не более 70 %, при IRR не менее 40 %, со сроком с момента выдачи более 6 месяцев, в течение которого эти займы исправно обслуживались, реструктуризация не проводилась, и последний платеж был не далее как месяц назад. Дополнительно эти займы проверяются по 46 параметрам (от пола, образования и опыта работы - до дохода, рейтинга (скоринга), Expected Loss, LGD и PD) нейронной сетью, которая ошибается в среднем в 6 % случаев из 44 тысяч возможных. Ссуда может попасть в портфель только в случае, если прогноз сети - Good, если сеть сказала, что по ней будет дефолт - такой кредит сразу отбраковывается.
Скриншот с отображением ссуд, отобранных для покупки:
Из всех 250 тысяч заявок на вторичном рынке Bondora система отобрала нам те, которые подходят под указанные выше критерии, отсортировала их в порядке уменьшения доходности, отлимитировала по максимальному риску на 1 кредит / заемщика (не более 25 евро) и показала описание трех кредитов, которые можно покупать.
ПАРАЛЛЕЛЬНО, о чем нам робот сообщает ниже, система вела дообучение нейронной сети с учетом последней статистики по дефолтным ссудам. По итогам которого точность прогнозов нейронной сети на выборке из 44 тысяч кредитов повысилась с 92,28% до 93,54% (только половина выборки входит в обучающую, остальная часть - тестовая).
Напомню, что сеть состоит из 2 скрытых слоев (46 нейронов на входе, 60 нейронов в первом скрытом слое, 15 нейронов во втором, и на выходе дает предсказание класса: 0 для дефолта и 1 для недефолтного кредита).
Следующей моей задачей будет довести прототип до состояния MVP, в котором продукт может предлагаться и использоваться сторонними пользователями.
Пара слов о цене вопроса:
Средняя доходность в Bondora составляет около 15 % годовых. При этом всего 40 % пользователей получает доход более 15 %, тогда как 12 % пользователей имеют доход ниже нуля. Распределение дохода без участия нейронной сети и при небольшом портфеле является величиной случайной, и в принципе подпадает под критерии нормального распределения, с довольно толстыми хвостами, впрочем.
Наилучшую доходность получает около 5 % инвесторов и она превышает 25 % годовых.
Оценочно, в отсутствие статистики, использование торгового робота и анализа кредитов с помощью нейронной сети в разы снижает вероятность получения убытка, в разы повышает вероятность попадания в верхний квартиль по доходности, и при инвестициях в 10 тыс. евро, к примеру, обеспечивает получение дополнительного дохода в размере 500 евро, что приблизительно равно стоимости обслуживания эстонской компании для инвестиций в Bondora.
Короче, я поздравляю себя с созданием первого полноценного программного продукта, готового к черновому использованию. В нем сочетаются:
- нейронные сети, их обучение и применение
- анализ больших данных (Big Data: 250 000 заявок на вторичном рынке, 47 000 данных о ссудах по 112 полям (47000 * 112 = 5 264 000 единиц базы данных),
- REST API и URL запросы
- парсинг и обработка данных в JSON формате, кастинг переменных, обработка данных в формате словарей (Dictionary) и коллекций (Array of Tuples)
- сортировка, фильтрация крупных массивов
- распараллеливание процессов (сoncurrent computing)
- вычисления на видеокарте (Apple Metal)
- финансовая математика, включая расчеты IRR
- обработка ошибок и исключений
- элементарный UIX...
Полгода назад, не умея программировать ничего сложнее цикла и if-then, я готов был заплатить 1000 евро за задачу разработки такого приложения, но никто не хотел за нее браться.
Год назад я знал о том, что такое Bondora, только по новостям. Работал по найму, заполнял таблички в эксельчике, считал годовой бюджет, получал раз в месяц зарплату...
Теперь у меня все готово... бесплатно, только время!