Bondora a Early repayment

Bondora nabízí dlužníkům podstatnou výhodu proti bankám. Zatímco ty chtějí při předčasném splacení úvěru od dlužníka zaplatit minimálně úroky až do doby původní splatnosti, Bondora umožňuje předčasné splacení zbývající jistiny úvěru zdarma a bez úroků.

To přináší riziko investorům, kteří obchodují na sekundárním trhu a nakupují jinak velmi kvalitní dluhopisy. Často za ně totiž platí více, než je nesplacená jistina. Částku prodávající navyšuje o svou přirážku (markup). Pokud ji tedy nedává pod cenou (discount), což se ale u kvalitních úvěrů neděje.

Pokud zaplatíte přirážku prodejci bondu, zaplatíte ihned fixní procento z jistiny úvěru (např. 10%). Částka je vám okamžitě ztržena z účtu a časem ji získáte zpět na přijatých úrocích z úvěru. Může se však stát, že dlužník využije svého práva a splatí úvěr předčasně. Vy tak “schytáte” 10% ztrátu, jelikož vám bude uhrazena jen nesplacená jistina (bez přiřážky, kterou inkasoval minulý věřitel).

Jak reálné je riziko předčasného splacení? Analyzoval jsem aktuální data z Bondory a na vzorku 13 833 záznamů o úvěrech starších alespoň dvou měsíců (v datasetu 60DaysFromFirstPayment = 1) odhadl aktuální míru rizika:

  • 1 431 (10.34%) úvěrů splaceno ihned ještě před započetím čerpání
  • 1 211 (8,75%) úvěrů bylo čerpáno ale splaceno předčasně (jako předčasně definuji v kratší lhůtě než konečná splatnost úvěru zkrácená o 31 dnů /je totiž běžné platit dvě poslední splátky najednou a pro nás z toho plyne minimální riziko/)

První skupina úvěrů se na sekundární trh nedostane. Čistě teoreticky je tedy nutné počítat při nákupu s přirážkou na sekundárním trhu s mírou rizika cca 8,75% a toto riziko promítat do našich nákupů (ideálně nakupovat mix zlevněných a podražených bondů). V průměru totiž o každou 12. sumu přirážky můžete přijít.

V kalkulacích je vhodné zohlednit i poplatek 1,5% Bondoře za zprostředkovaný nákup. I ten může potenciálně zůstat nepokrytý díky riziku předčasného splacení.

P2P lending Bondora – regression

P2p lending na Bondoře zažívá značný boom (během 1 měsíce se skrze primární trh podepíše větší objem úvěrů než téměř za celý minulý rok). Současně však investoři čelí změnám v uživatelském rozhraní, resp. možnostech Portfolio managera, který řídí automatické investice. Ten nově nabízí jen filtrování podle tzv. Bondora rating, tedy skupin od A, B, C, D, E, F a HR pro nejrizikovější úvěry. Dříve efektivní možnosti filtrování zmizely, především chybí možnost filtrovat dle zemí a ukazatelů solventnosti (vzdělání, vlastnictví nemovitosti, apod.). Investoři logicky cítí, že jejich možnosti dosáhnout co nejvyšších výnosů (20+%) jsou nyní ohroženy. Nemožnost rozlišit problémové úvěry nevyhnutelně povede k vyšším mírám bankrotů v jednotlivých portfoliích a tedy i nižším celkovým ziskům z úroků.

Někteří uživatelé dávají najevo svou nelibost tím, že přestávají investovat anebo bojkotují Portfolio manager a investují výhradně ručně. Z objemu schválených úvěrů, ale vyplývá, že Bondora nemá nejmenší důvod něco měnit.

auto-vs-manual-2013-2015

Zrychlilo se tempo růstu objemu upsaných úvěrů. Je to znát nárůstu křivky grafu za poslední měsíc (tj. od zrušení starých PM). Stouplo sice i tempo růstu manuálního biddování, ale nárůst tempa růstu automatických investic přes “hloupého” Portfolio manažera je řádově vyšší. Z toho je jasné, že majoritě uživatelů tento tupý PM bohužel stačí. To povede k rozdělení rizka na více uživatelů, ale i “zprůměrování” výnosů napříč celou platformou, resp. mezi jejími investory. Pro ty, co byli zvyklí nastavit chytře PM a profitovat tím ze svého knowhow to znamená snížení výnosů.

Bondora tedy nemá důvod nic měnit a tak se budeme muset naučit spolehnout se sami na sebe. Někdo má svou intuci, ale je dobré ji exaktně prověřit nejlépe skrze ML.

Inspirován jinými články na téma použití statistiky v p2p lendingu, zejména lucasem a kafkou399, jsem si chtěl zkusit přidat nějakou statistickou analýzu do toolboxu a otestovat efektivitu machine learningu na analýzu defaultu bondů na primárním trhu.

Kvůli jednoduchosti jsem zvolil základní lineární regresi a pokusil se namátkou zkusit pár parametrů z bondora data setu, který dává k dispozici každý den. Nejprve je nutné odebrat příliš čerstvé úvěry (60DayFromFirstPayment = 1), čímž zbude cca 13.000 řádek, tj. záznamů unikátních úvěrů. Následně je potřeba vybrat relevantní sloupce. Ty by měly být v ideálním případě na sobě navzájem nezávislé.

Age; Gender; credit_score; CreditGroup; IssuedInterest; LoanDuration; nr_of_dependants; income_from_principal_employer; income_total;

Jako špatný úvěr jsem si definoval ten s položkou AD (Actual Default), která nabývá hodnot 0 a 1. Tohle mi chybělo na kafkově práci, kde bral jako špatné úvěry jen fraudy (tj. úvěry kde neproběhla žádná splátka, žadatel prostě utekl s penězi).

Po rozdělení vzorku dat náhodně na dvě skupiny je jedna použita pro learning parametrů a druhá pro verifikaci. Lineární regrese a fitting parametrů pomocí Gradient descentu je při několika málo parametrech otázkou vteřin.

weight_0 = 0.41035;
weight_age               =  -0.00274;
weight_creditscore       =  -0.00027;
weight_IssuedInterest    =  0.00599;
weight_nr_of_dependants  = -0.01638;
weight_NoOfPreviousApplications = 0.00270;
weight_NoOfPreviousLoans     = -0.00116;

Z výše uvedeného vyplývá, že vyšší věk žadatele, vyšší počet dětí žadatele, snižuje možnost bankrotu. Naopak vyšší úroková míra riziko bankrotu zvyšuje. Počet předchozích žádostí o úvěr mírně zvyšuje riziko, naopak počet předchozích realizovaných úvěrů koreluje s nižším rizikem. Zatím celkem logické.

carlos@griffin:~/bondora/simple_regression_php$ php guess.php
Loading file ../bondora.data.random.part2.txt
Threshold: 0.17
Data read.
6940 loans (1511 bad = 21.77%)
False Positive error (Type I): 4096
False Negative error (Type II): 218
Err rate 7.665%
Best 500 loans interest: 28.800%
Best 500 Net interest: 21.135%

Při verifikaci/predikci je spektrum bondů zvolených k nákupu je posunuto pomocí thresholdu tak, aby se minimalizoval Error Type II. Je nutné se totiž vyhnout bondům, které u kterých byl predikován bezproblémový klient i když se jednalo o neplatiče. Error Type I neřešíte, dokud nemáte málo příležitostí k investicím a my chceme jen slíznout smetanu, tj. vrchních 5-15%.

Využití lineární regrese znamená na out-of-sample datech snížení míry bankrotu z 21,77% na 7,665%, tj. téměř trojnásobné snížení… Stále by bylo do čeho investovat, jelikož vybráno jako vhodná investice bylo 2844 bondů z toho 218 toxických (False Negative). Z těchto bondů by se dalo namixovat nejlepších 500 bondů (podle úrokové sazby) což by sice nevyhnutelně vedlo ke zvýšení míry bankrotů, ale dovolilo by to vytvořit portfolio pětiset úvěrů s průměrným úrokem 28,8% (brutto, bez odečtení odepsaných úvěrů).

Jsou to jen modely, které vychází z minulých dat, je tedy možné že nemusí nutně korelovat s aktuálními žádostmi o úvěry na tržišti. Především zda se něco zásadního nezměnilo v datech nebo ve struktuře žádostí o úvěr oproti minulosti. Zbývá tedy otázka jak to bude fungovat na reálném trhu.

Lineární regrese dává základní přehled, ale není ideální. Lepší by byla logistic regression, která dává predikce v intervalu <0,1>, tedy přímo pravděpodobnosti bankrotu konkrétního dluhopisu (to je užitečné pro další risk scoring modely, tak jak je využívají např. banky). Na netu najdete články o využití rozhodovacích stromů, např. pomocí algoritmu Random Forest. Dle mého ideální pro modelování investic do p2p bondů je komplexní Cox Hazard Model [2], používaný v medicíně, odhadující které parametry ovlivňují Survival rate. V našem případě tedy předpokládanou dobu, kdy bude bond splácet dle kalendáře. Současně by bylo vhodné rozšířit model o XIRR (extended internal rate of return) nebo NPV (net present value), tedy vzít v úvahu současnou hodnotu investice. To je ale na další zkoumání…

Pokus tedy na out-of-sample datech prokázal, že lze pomocí vhodně zvolených featur a lineární regrese snížit míru bankrotu u potenciálních investic v p2p půjčkách. U nákupu dluhopisů je ale důležité zvážit jak míru rizika tak i potenciální čistý výnos (marži po započtení všech nákladů na poplatky anebo markup na sekundárním trhu) diskontovaný k okamžiku nákupu.