Kredi stratejisi ve minimum beklenen zarar

Python ile Kredi Riski Modellemesi

Michael Crabtree

Data Scientist, Ford Motor Company

Kabul oranlarını seçme

  • İlk kabul oranı %85 olarak ayarlandı, ancak başka oranlar da seçilebilir
  • Farklı oranları test etmek için iki seçenek:
    • Eşiği, kötü oranı ve zararları elle hesaplamak
    • Bu değerlerin tablosunu otomatik oluşturup bir kabul oranı seçmek
  • Tüm olası değerlerin tablosuna strateji tablosu denir
Python ile Kredi Riski Modellemesi

Strateji tablosunu kurma

  • Her değeri saklamak için diziler veya listeler kurun
# Test edilecek tüm kabul oranlarını ayarlayın
accept_rates = [1.0, 0.95, 0.9, 0.85, 0.8, 0.75, 0.7, 0.65, 0.6, 0.55,
                0.5, 0.45, 0.4, 0.35, 0.3, 0.25, 0.2, 0.15, 0.1, 0.05]
# Eşikler ve kötü oranları saklamak için listeler oluşturun 
thresholds = []
bad_rates = []
Python ile Kredi Riski Modellemesi

Tablo değerlerini hesaplama

  • Tüm kabul oranları için eşik ve kötü oranı hesaplayın
for rate in accept_rates:
    # Eşiği hesaplayın
    threshold = np.quantile(preds_df['prob_default'], rate).round(3)
    # Eşik değerini listeye kaydedin
    thresholds.append(np.quantile(preds_gbt['prob_default'], rate).round(3))
    # Eşiği uygulayarak loan_status'u yeniden atayın
    test_pred_df['pred_loan_status'] = \ 
        test_pred_df['prob_default'].apply(lambda x: 1 if x > thresh else 0)
    # Kabul edilen krediler: tahmini temerrütsüzler
    accepted_loans = test_pred_df[test_pred_df['pred_loan_status'] == 0]
    # Kötü oranı hesaplayıp kaydedin
    bad_rates.append(np.sum((accepted_loans['true_loan_status']) 
             / accepted_loans['true_loan_status'].count()).round(3))
Python ile Kredi Riski Modellemesi

Strateji tablosunu yorumlama

strat_df = pd.DataFrame(zip(accept_rates, thresholds, bad_rates),
                        columns = ['Acceptance Rate','Threshold','Bad Rate'])

Strateji tablosu ve kötü oran çubuğu örneği

Python ile Kredi Riski Modellemesi

Kabul edilen kredileri ekleme

  • Her kabul oranı için kabul edilen kredi sayısı
    • len() veya .count() kullanılabilir

Kabul edilen kredilerle strateji tablosu

Python ile Kredi Riski Modellemesi

Ortalama kredi tutarını ekleme

  • Test setindeki ortalama loan_amnt

Ortalama kredi tutarıyla strateji tablosu

Python ile Kredi Riski Modellemesi

Portföy değerini tahmin etme

  • Kabul edilen temerrütsüzlerin ortalamasından kabul edilen temerrütlerin ortalamasını çıkarma
  • Her temerrüdün loan_amnt kadar zarar olduğu varsayılır

Tahmini değerle strateji tablosu

Python ile Kredi Riski Modellemesi

Toplam beklenen zarar

  • Portföyümüzdeki temerrütlerden beklediğimiz toplam zarar

Toplam beklenen zarar formülü

# Temerrüt olasılığı (PD)
test_pred_df['prob_default']
# Temerrütte maruziyet = kredi tutarı (EAD)
test_pred_df['loan_amnt']
# Temerrütte zarar = tam zarar için 1.0 (LGD)
test_pred_df['loss_given_default']
Python ile Kredi Riski Modellemesi

Hadi pratik yapalım!

Python ile Kredi Riski Modellemesi

Preparing Video For Download...