क्रेडिट रणनीति और न्यूनतम अपेक्षित हानि

Python में क्रेडिट रिस्क मॉडलिंग

Michael Crabtree

Data Scientist, Ford Motor Company

Acceptance rates चुनना

  • प्रारंभिक acceptance rate 85% थी, पर अन्य दरें भी चुनी जा सकती हैं
  • अलग-अलग दरें जाँचने के दो तरीके:
    • थ्रेशहोल्ड, bad rate, और हानि मैन्युअल रूप से निकालें
    • इन मानों की टेबल ऑटोमेटिकली बनाएँ और एक acceptance rate चुनें
  • सभी संभावित मानों की यह टेबल strategy table कहलाती है
Python में क्रेडिट रिस्क मॉडलिंग

Strategy table सेट करना

  • प्रत्येक मान स्टोर करने के लिए arrays या lists सेट करें
# Set all the acceptance rates to test
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]
# Create lists to store thresholds and bad rates 
thresholds = []
bad_rates = []
Python में क्रेडिट रिस्क मॉडलिंग

टेबल मानों की गणना

  • सभी acceptance rates के लिए threshold और bad rate निकालें
for rate in accept_rates:
    # Calculate threshold
    threshold = np.quantile(preds_df['prob_default'], rate).round(3)
    # Store threshold value in a list
    thresholds.append(np.quantile(preds_gbt['prob_default'], rate).round(3))
    # Apply the threshold to reassign loan_status
    test_pred_df['pred_loan_status'] = \ 
        test_pred_df['prob_default'].apply(lambda x: 1 if x > thresh else 0)
    # Create accepted loans set of predicted non-defaults
    accepted_loans = test_pred_df[test_pred_df['pred_loan_status'] == 0]
    # Calculate and store bad rate
    bad_rates.append(np.sum((accepted_loans['true_loan_status']) 
             / accepted_loans['true_loan_status'].count()).round(3))
Python में क्रेडिट रिस्क मॉडलिंग

Strategy table की व्याख्या

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

strategy table और bad rate बार का उदाहरण

Python में क्रेडिट रिस्क मॉडलिंग

Accepted loans जोड़ना

  • हर acceptance rate पर स्वीकृत loans की संख्या
    • len() या .count() उपयोग करें

accepted loans के साथ strategy table

Python में क्रेडिट रिस्क मॉडलिंग

औसत loan amount जोड़ना

  • टेस्ट सेट डेटा से औसत loan_amnt

औसत loan amount के साथ strategy table

Python में क्रेडिट रिस्क मॉडलिंग

पोर्टफोलियो मूल्य का अनुमान

  • स्वीकृत non-defaults का औसत मूल्य माइनस स्वीकृत defaults का औसत मूल्य
  • मान लें कि हर default में loan_amnt की हानि होती है

अनुमानित मूल्य के साथ strategy table

Python में क्रेडिट रिस्क मॉडलिंग

कुल अपेक्षित हानि

  • हमारे पोर्टफोलियो में defaults पर संभावित कुल हानि

कुल अपेक्षित हानि का सूत्र

# Probability of default (PD)
test_pred_df['prob_default']
# Exposure at default = loan amount (EAD)
test_pred_df['loan_amnt']
# Loss given default = 1.0 for total loss (LGD)
test_pred_df['loss_given_default']
Python में क्रेडिट रिस्क मॉडलिंग

अभ्यास करते हैं!

Python में क्रेडिट रिस्क मॉडलिंग

Preparing Video For Download...