SlideShare a Scribd company logo
1 of 41
Download to read offline
Creating a Contemporary
Risk Management System
Using Python
Piero Ferrante
C2FO, Director of Data Science
@the_real_pdf
What is C2FO?
● Collaborative Cash Flow Optimization
● World’s first global market for working capital
○ C2FO receives daily invoices from a massive network of buyers and suppliers
○ Buyers with excess cash set a desired rate of return
○ Suppliers can name their rate in terms of discount or APR
○ Payment is accelerated through C2FO markets and both parties win
■ Buyers achieve their desired rate of return
■ Suppliers are awarded at their desired cost of capital
■ C2FO markets finance over $1B invoices/month
What is WFC?
● Water For Commerce
● An investment fund and short-term lending platform for SMBs
● Fund supplier invoices from buyers outside the C2FO network
● Using C2FO’s unique data to prospect and underwrite
○ Over 5 years of daily invoices and adjustments
○ ≈ 200k suppliers from top tier buyers
○ C2FO market bidding data
● Offers favorable yields vs. investments of comparable risk
○ ≈ 40 day duration → 6.25%
B3
B1
B2
Bi
S1
S2
S3
Si
20%
30%
25%
25%
How does WFC compliment C2FO?
“We are a search engine for liquidity”
- Sandy Kemper
SMB lending is hard and crowded, so why bother?
● C2FO is the champion of the supplier
○ We want to help our suppliers succeed financially
● All risk is not created equal
● We believe we can do it better :)
○ Without rate gauging borrowers
○ Without misleading investors
● We have great data
● We have great tools
Great tools make great things possible
Prospecting & Underwriting Onboarding Portfolio Mgmt
Concentration Risk Default Risk Fraud Risk
Unsystem-
atic Risk
Buyer
Diversity
Score
Buyer
Junk
Score
Backtest &
Forecast
Score(s)
45 / 90 / 180d
AR
Score(s)
Bankruptcy
Score
Congruency
Score
NLP Red
Flag
Score
Rate &
Limit
Calculator
Portfolio
Diversifi-
cation
Exposure
Risk
Adjustment
Volatility
Score
Risk Management Overview
Stage Risk Method
Concentration Risk - Measuring diversity
● With a little pandas fu...
● A worse; B better; C best
● More diversity of accounts
receivable is better
● Less concentration with “junk”
buyers (below BBB) is better
A B
C
Prospecting & Underwriting Onboarding Portfolio Mgmt
Concentration Risk Default Risk Fraud Risk
Unsystem-
atic Risk
Buyer
Diversity
Score
Buyer
Junk
Score
Backtest &
Forecast
Score(s)
45 / 90 / 180d
AR
Score(s)
Bankruptcy
Score
Congruency
Score
NLP Red
Flag
Score
Rate &
Limit
Calculator
Portfolio
Diversifi-
cation
Exposure
Risk
Adjustment
Volatility
Score
Risk Management Overview
Stage Risk Method
Default Risk - Forecasting accounts receivable
Problem: I want to build a bunch of forecasts using R, but the rest of my pipeline
is in Python
Solution: Use rpy2 and get the best of both worlds
● Model types
○ ARMA / ARIMA / SARIMA - forecast package
○ Exponential smoothing (e.g. Holt-Winters) - forecast package
○ Bayesian Structural Time Series - bsts package
○ Regression (e.g. OLS, polynomial) - lm function
*Currently evaluating too!
Default Risk - Forecasting accounts receivable
Best model strategy: At least 5 quarters worth of history are required to make a
90 day forecast, which is the maximum loan duration.
Default Risk - Forecasting accounts receivable
Best model strategy: Dozens of models are fit using different time series
transformations and model parameter combinations; the “best model” seeks to
minimize the mean absolute percentage error (MAPE) and root mean squared
error (RMSE) for the last 90 days.
Of course matplotlib and seaborn make even the most customized plots possible.
Default Risk - Forecasting accounts receivable
Default Risk - Understanding seasonal trends
Thanks to statsmodels... seasonal decomposition is a breeze!
Knowing where a supplier is in terms of season is critical. It’s helpful to visually decouple
seasonality from trend to help put the residual in perspective.
Default Risk - Predicting AR discontinuation
Discontinuation is defined by supplier AR dropping to zero with all C2FO buyers.
Challenges:
● Data leakage
○ Do not observe that which would not have been observable at the time of prediction
■ Establish criteria for prediction labels (e.g. supplier’s AR goes to 0 and stays there)
■ Define prediction cutoff (e.g. 45 days in advance of going to 0)
■ Remove all history after the cutoff date
● Engineering features
○ Variables used to model the probability of discontinuation
■ All history (except after the prediction cutoff date)
■ Various historical windows (e.g. 13 weeks leading up to prediction cutoff date)
■ Values observed on the cutoff date
Default Risk - Predicting AR discontinuation
How is this model trained?
● Using scikit-learn for:
○ Feature engineering
■ Encoding categoricals
■ Creating polynomial features
■ Scaling features
■ Dimensionality reduction / feature selection
○ Model evaluation
● Using xgboost for:
○ Training gradient boosted trees (a very performant machine learning classifier)
■ Since GBT are iterative learners, speed is important
○ Used in conjunction with hyperopt for optimizing hyperparameters
■ Currently evaluating spearmint
Default Risk - Predicting AR discontinuation
How is this model evaluated?
● Primarily concerned with model recall
● And not overfitting!
Default Risk - Predicting bankruptcy
Predicting bankruptcy is very different than predicting AR discontinuation:
● Prediction labels are derived differently
● Bankruptcies may not exhibit the same AR signals/patterns
TODO:
● Receive and process daily feeds from the national bankruptcy database
● Undergo a rigorous matching process
● Perform data truncation and feature engineering
● Enrich with macroeconomic data from the right point in time
● Address severe class imbalances
● Train awesome models
Default Risk - Predicting bankruptcy
How to perform efficient company matching on a daily basis?
● Clean your data
○ Convert to lowercase, remove special characters, ...
● Match on *unique* values first
○ Tax IDs & phone numbers
● Use string matching on company names after using soundex to limit the space
○ Levenshtein distance, jaro-winkler distance, jaccard distance, …
○ Use soundexes to reduce the search space
● Calculate geographical distance between known addresses
○ Haversine distance
● Tinker with a weighting strategy that delivers satisfactory results
Pro tip: Cython-ize code (your library might already be doing this for you) or use Numba for
JIT compilation where applicable; it pays off in the long run.
Default Risk - Predicting bankruptcy
Default Risk - Predicting bankruptcy
Default Risk - Predicting bankruptcy
Prospecting & Underwriting Onboarding Portfolio Mgmt
Concentration Risk Default Risk Fraud Risk
Unsystem-
atic Risk
Buyer
Diversity
Score
Buyer
Junk
Score
Backtest &
Forecast
Score(s)
45 / 90 / 180d
AR
Score(s)
Bankruptcy
Score
Congruency
Score
NLP Red
Flag
Score
Rate &
Limit
Calculator
Portfolio
Diversifi-
cation
Exposure
Risk
Adjustment
Volatility
Score
Risk Management Overview
Stage Risk Method
● Use NLP to transcribe and mine calls
● Post transcription, spacy makes
tokenization, lemmatization, etc. fast
● Identify conversations with red flags like:
○ Debt, leverage, bankruptcy, lien, payroll,
extend, broke, divorce, alcohol, rollover, audit,
layoff, credit, Cayman Islands, ...
● This is needed for 10x growth
○ Average WFC audio/day ~90 minutes
Fraud Risk - Screening calls
Fraud Risk - Analyzing invoice congruency
For each Buyer-Supplier relationship, we calculate the following scores:
● Joined Invoice Amount Score:
○ In this equation, Wi
is the invoice amount in WFC, and Ci
is the invoice amount in C2FO
● Unjoined Score:
○ Here Wi
and Ci
reflect the dollar amounts at the invoice due date aggregation level. We also
set (Wi
- Ci
) to be 0 if it is negative. This emphasizes suppliers who have more AP in WFC
than C2FO.
Fraud Risk - Analyzing invoice congruency
Once we have the Buyer-Supplier Scores, we calculate a Supplier level score,
which is a weighted average of their respective Buyer-Supplier Scores.
Finally, we weight each individual score by the amount of AP in WFC, to get to our
final Congruency Score.
Prospecting & Underwriting Onboarding Portfolio Mgmt
Concentration Risk Default Risk Fraud Risk
Unsystem-
atic Risk
Buyer
Diversity
Score
Buyer
Junk
Score
Backtest &
Forecast
Score(s)
45 / 90 / 180d
AR
Score(s)
Bankruptcy
Score
Congruency
Score
NLP Red
Flag
Score
Rate &
Limit
Calculator
Portfolio
Diversifi-
cation
Exposure
Risk
Adjustment
Volatility
Score
Risk Management Overview
Stage Risk Method
Who should we be lending to?
For suppliers that don’t meet some of the forecasting criteria, we can train models to predict
their WFC scores so that we have total score coverage across the supplier pool.
Exposure Risk - Calculating limits and rates
Limits are calculated:
● Based on WFC score decile
● Using loan duration
● So, higher decile → greater % of n day forecast cumulative sum
Rates are calculated:
● By observing suppliers’ rates in C2FO markets
● Adjusting for additional risk when applicable
Who should we continue lending to?
Triggers to monitor:
● Level shifts in AR patterns
○ Losing or gaining a buyer, rapid business growth, unprecedented invoices...
● C2FO bid changes
○ Significant jumps in supplier bidding strategies
● WFC Score changes
○ Seasonal fluctuations in WFC Scores
● Adjustments
○ Unprecedented adjustment counts or amounts relative to invoices
● Buyer reserves
○ Buyers may know something that the rest of us don’t (e.g. bad product or inventory concerns)
Who should we continue lending to?
Monitoring scores over time is important from a fund active management standpoint.
Prospecting & Underwriting Onboarding Portfolio Mgmt
Concentration Risk Default Risk Fraud Risk
Unsystem-
atic Risk
Buyer
Diversity
Score
Buyer
Junk
Score
Backtest &
Forecast
Score(s)
45 / 90 / 180d
AR
Score(s)
Bankruptcy
Score
Congruency
Score
NLP Red
Flag
Score
Rate &
Limit
Calculator
Portfolio
Diversifi-
cation
Exposure
Risk
Adjustment
Volatility
Score
Risk Management Overview
Stage Risk Method
Behind the scenes allstars
● anaconda for managing our Python and R
environments
● luigi for pipeline task orchestration
● dask where doing math lends itself to out-of-core
parallelization
Luigi DAG
Demo time.
So what?
● Objectivity gives way to innovation
● Better independent data beats more complex algorithms
● Tradeoffs must be evaluated with respect to constraints
● For many tasks, Python can perform nearly as fast lower level languages
● WFC is a win-win for borrowers and investors
● Creating great solutions with open source tools is part of OSS too
Questions?
@the_real_pdf

More Related Content

What's hot

Revenue Assurance & Fraud Management
Revenue Assurance & Fraud ManagementRevenue Assurance & Fraud Management
Revenue Assurance & Fraud ManagementAnnaline Lottering
 
Odoo Strategy for Mid-market & Corporate
Odoo Strategy for Mid-market & CorporateOdoo Strategy for Mid-market & Corporate
Odoo Strategy for Mid-market & CorporateOdoo
 
Internet of Things: How Finance Should Embrace the Coming Flood to Drive Top-...
Internet of Things: How Finance Should Embrace the Coming Flood to Drive Top-...Internet of Things: How Finance Should Embrace the Coming Flood to Drive Top-...
Internet of Things: How Finance Should Embrace the Coming Flood to Drive Top-...Gotransverse
 
Down Payments on Purchase Orders in Odoo
Down Payments on Purchase Orders in OdooDown Payments on Purchase Orders in Odoo
Down Payments on Purchase Orders in OdooOdoo
 
Outgrowing Excel: Why Treasurers Transcend to a TMS
Outgrowing Excel: Why Treasurers Transcend to a TMSOutgrowing Excel: Why Treasurers Transcend to a TMS
Outgrowing Excel: Why Treasurers Transcend to a TMSKyriba Corporation
 
Telecom Revenue Assurance Workshop
Telecom Revenue Assurance WorkshopTelecom Revenue Assurance Workshop
Telecom Revenue Assurance WorkshopParcus Group
 
Supply Chain Finance: Diving into the mechanisms, main benefits and enabling ...
Supply Chain Finance: Diving into the mechanisms, main benefits and enabling ...Supply Chain Finance: Diving into the mechanisms, main benefits and enabling ...
Supply Chain Finance: Diving into the mechanisms, main benefits and enabling ...BusinessIntegrationPartners
 
SignaPay Insights - Payment Initiatives
SignaPay Insights - Payment InitiativesSignaPay Insights - Payment Initiatives
SignaPay Insights - Payment InitiativesSara Matthews
 
Sharpening revenue assurance_july 2015
Sharpening revenue assurance_july 2015Sharpening revenue assurance_july 2015
Sharpening revenue assurance_july 2015Silas Musakali
 
Klb group our approach to cost savings programs
Klb group   our approach to cost savings programsKlb group   our approach to cost savings programs
Klb group our approach to cost savings programsKLB Group
 
KLB group: Supplier risk management - Gestion du risque fournisseur
KLB group: Supplier risk management - Gestion du risque fournisseurKLB group: Supplier risk management - Gestion du risque fournisseur
KLB group: Supplier risk management - Gestion du risque fournisseurKLB Group
 
Revenue Assurance in Teleocm
Revenue Assurance in TeleocmRevenue Assurance in Teleocm
Revenue Assurance in TeleocmSubex
 
C level revenue assurance
C level revenue assuranceC level revenue assurance
C level revenue assurancemarukanda
 
Aavenir webinar - making legal contracts work for everyone - 28 april 2020
Aavenir webinar - making legal contracts work for everyone - 28 april 2020Aavenir webinar - making legal contracts work for everyone - 28 april 2020
Aavenir webinar - making legal contracts work for everyone - 28 april 2020Aavenir
 
SignaPay Insights - Payment Initiatives
SignaPay Insights - Payment InitiativesSignaPay Insights - Payment Initiatives
SignaPay Insights - Payment InitiativesSignaPay
 
Source-To-Settle: Why It's Time to Connect the Last Mile
Source-To-Settle: Why It's Time to Connect the Last MileSource-To-Settle: Why It's Time to Connect the Last Mile
Source-To-Settle: Why It's Time to Connect the Last MileSAP Ariba
 

What's hot (19)

Supply chain finance
Supply chain financeSupply chain finance
Supply chain finance
 
Revenue Assurance & Fraud Management
Revenue Assurance & Fraud ManagementRevenue Assurance & Fraud Management
Revenue Assurance & Fraud Management
 
Odoo Strategy for Mid-market & Corporate
Odoo Strategy for Mid-market & CorporateOdoo Strategy for Mid-market & Corporate
Odoo Strategy for Mid-market & Corporate
 
Internet of Things: How Finance Should Embrace the Coming Flood to Drive Top-...
Internet of Things: How Finance Should Embrace the Coming Flood to Drive Top-...Internet of Things: How Finance Should Embrace the Coming Flood to Drive Top-...
Internet of Things: How Finance Should Embrace the Coming Flood to Drive Top-...
 
Down Payments on Purchase Orders in Odoo
Down Payments on Purchase Orders in OdooDown Payments on Purchase Orders in Odoo
Down Payments on Purchase Orders in Odoo
 
Outgrowing Excel: Why Treasurers Transcend to a TMS
Outgrowing Excel: Why Treasurers Transcend to a TMSOutgrowing Excel: Why Treasurers Transcend to a TMS
Outgrowing Excel: Why Treasurers Transcend to a TMS
 
Telecom Revenue Assurance Workshop
Telecom Revenue Assurance WorkshopTelecom Revenue Assurance Workshop
Telecom Revenue Assurance Workshop
 
Supply Chain Finance: Diving into the mechanisms, main benefits and enabling ...
Supply Chain Finance: Diving into the mechanisms, main benefits and enabling ...Supply Chain Finance: Diving into the mechanisms, main benefits and enabling ...
Supply Chain Finance: Diving into the mechanisms, main benefits and enabling ...
 
SignaPay Insights - Payment Initiatives
SignaPay Insights - Payment InitiativesSignaPay Insights - Payment Initiatives
SignaPay Insights - Payment Initiatives
 
E invoicing
E invoicing E invoicing
E invoicing
 
Sharpening revenue assurance_july 2015
Sharpening revenue assurance_july 2015Sharpening revenue assurance_july 2015
Sharpening revenue assurance_july 2015
 
Klb group our approach to cost savings programs
Klb group   our approach to cost savings programsKlb group   our approach to cost savings programs
Klb group our approach to cost savings programs
 
KLB group: Supplier risk management - Gestion du risque fournisseur
KLB group: Supplier risk management - Gestion du risque fournisseurKLB group: Supplier risk management - Gestion du risque fournisseur
KLB group: Supplier risk management - Gestion du risque fournisseur
 
Revenue Assurance in Teleocm
Revenue Assurance in TeleocmRevenue Assurance in Teleocm
Revenue Assurance in Teleocm
 
The future of r av3
The future of r av3The future of r av3
The future of r av3
 
C level revenue assurance
C level revenue assuranceC level revenue assurance
C level revenue assurance
 
Aavenir webinar - making legal contracts work for everyone - 28 april 2020
Aavenir webinar - making legal contracts work for everyone - 28 april 2020Aavenir webinar - making legal contracts work for everyone - 28 april 2020
Aavenir webinar - making legal contracts work for everyone - 28 april 2020
 
SignaPay Insights - Payment Initiatives
SignaPay Insights - Payment InitiativesSignaPay Insights - Payment Initiatives
SignaPay Insights - Payment Initiatives
 
Source-To-Settle: Why It's Time to Connect the Last Mile
Source-To-Settle: Why It's Time to Connect the Last MileSource-To-Settle: Why It's Time to Connect the Last Mile
Source-To-Settle: Why It's Time to Connect the Last Mile
 

Viewers also liked

The Never-ending Brainstorm
The Never-ending BrainstormThe Never-ending Brainstorm
The Never-ending BrainstormVincent O'Neil
 
Building a risk management system that works
Building a risk management system that worksBuilding a risk management system that works
Building a risk management system that worksVincent O'Neil
 
Fusion 2014: Lessons Learned from Advanced Discount Management
Fusion 2014: Lessons Learned from Advanced Discount ManagementFusion 2014: Lessons Learned from Advanced Discount Management
Fusion 2014: Lessons Learned from Advanced Discount ManagementTaulia
 
Stay Connected Calgary Recap | August 24th 2016
Stay Connected Calgary Recap | August 24th 2016Stay Connected Calgary Recap | August 24th 2016
Stay Connected Calgary Recap | August 24th 2016Taulia
 
Etude fintech100-2015
Etude fintech100-2015Etude fintech100-2015
Etude fintech100-2015Ted Hsieh
 
Top global Fintech start-ups 2015-16
Top global Fintech start-ups 2015-16Top global Fintech start-ups 2015-16
Top global Fintech start-ups 2015-16Prayukth K V
 
How to Maximize Discount Capture
How to Maximize Discount CaptureHow to Maximize Discount Capture
How to Maximize Discount CaptureTaulia
 
How to Simplify your AP Automation: Live Demo
How to Simplify your AP Automation: Live DemoHow to Simplify your AP Automation: Live Demo
How to Simplify your AP Automation: Live DemoTradeshift
 
Fusion 2014: Real-Time Communication Between Your ERP System and Your Supplie...
Fusion 2014: Real-Time Communication Between Your ERP System and Your Supplie...Fusion 2014: Real-Time Communication Between Your ERP System and Your Supplie...
Fusion 2014: Real-Time Communication Between Your ERP System and Your Supplie...Taulia
 
How Fortune 500s Generate Millions with ReadSoft and Dynamic Discounting
How Fortune 500s Generate Millions with ReadSoft and Dynamic DiscountingHow Fortune 500s Generate Millions with ReadSoft and Dynamic Discounting
How Fortune 500s Generate Millions with ReadSoft and Dynamic DiscountingTaulia
 
Did you know? | Procure-to-Pay Statistics You Should Know
Did you know? | Procure-to-Pay Statistics You Should KnowDid you know? | Procure-to-Pay Statistics You Should Know
Did you know? | Procure-to-Pay Statistics You Should KnowTaulia
 
Boost your bottom line and supply chain health
Boost your bottom line and supply chain healthBoost your bottom line and supply chain health
Boost your bottom line and supply chain healthTradeshift
 
Wharton FinTech: Overview of FinTech Industry
Wharton FinTech: Overview of FinTech IndustryWharton FinTech: Overview of FinTech Industry
Wharton FinTech: Overview of FinTech Industrywhartonfintech
 
The Periodic Table of Supply Chain Finance
The Periodic Table of Supply Chain FinanceThe Periodic Table of Supply Chain Finance
The Periodic Table of Supply Chain FinanceJon Samsel
 
IoFM: Transform Your Payables into a Revenue Generator
IoFM: Transform Your Payables into a Revenue GeneratorIoFM: Transform Your Payables into a Revenue Generator
IoFM: Transform Your Payables into a Revenue GeneratorTaulia
 
Scaling up with Cisco Big Data: Data + Science = Data Science
Scaling up with Cisco Big Data: Data + Science = Data ScienceScaling up with Cisco Big Data: Data + Science = Data Science
Scaling up with Cisco Big Data: Data + Science = Data ScienceeRic Choo
 
Executive Forum: Driving the Digital Supply Chain Agenda
Executive Forum: Driving the Digital Supply Chain AgendaExecutive Forum: Driving the Digital Supply Chain Agenda
Executive Forum: Driving the Digital Supply Chain AgendaTradeshift
 
Indexing thousands of writes per second with redis
Indexing thousands of writes per second with redisIndexing thousands of writes per second with redis
Indexing thousands of writes per second with redispauldix
 
Greenplum- an opensource
Greenplum- an opensourceGreenplum- an opensource
Greenplum- an opensourceRosy Mani
 
Open Source Framework for Deploying Data Science Models and Cloud Based Appli...
Open Source Framework for Deploying Data Science Models and Cloud Based Appli...Open Source Framework for Deploying Data Science Models and Cloud Based Appli...
Open Source Framework for Deploying Data Science Models and Cloud Based Appli...ETCenter
 

Viewers also liked (20)

The Never-ending Brainstorm
The Never-ending BrainstormThe Never-ending Brainstorm
The Never-ending Brainstorm
 
Building a risk management system that works
Building a risk management system that worksBuilding a risk management system that works
Building a risk management system that works
 
Fusion 2014: Lessons Learned from Advanced Discount Management
Fusion 2014: Lessons Learned from Advanced Discount ManagementFusion 2014: Lessons Learned from Advanced Discount Management
Fusion 2014: Lessons Learned from Advanced Discount Management
 
Stay Connected Calgary Recap | August 24th 2016
Stay Connected Calgary Recap | August 24th 2016Stay Connected Calgary Recap | August 24th 2016
Stay Connected Calgary Recap | August 24th 2016
 
Etude fintech100-2015
Etude fintech100-2015Etude fintech100-2015
Etude fintech100-2015
 
Top global Fintech start-ups 2015-16
Top global Fintech start-ups 2015-16Top global Fintech start-ups 2015-16
Top global Fintech start-ups 2015-16
 
How to Maximize Discount Capture
How to Maximize Discount CaptureHow to Maximize Discount Capture
How to Maximize Discount Capture
 
How to Simplify your AP Automation: Live Demo
How to Simplify your AP Automation: Live DemoHow to Simplify your AP Automation: Live Demo
How to Simplify your AP Automation: Live Demo
 
Fusion 2014: Real-Time Communication Between Your ERP System and Your Supplie...
Fusion 2014: Real-Time Communication Between Your ERP System and Your Supplie...Fusion 2014: Real-Time Communication Between Your ERP System and Your Supplie...
Fusion 2014: Real-Time Communication Between Your ERP System and Your Supplie...
 
How Fortune 500s Generate Millions with ReadSoft and Dynamic Discounting
How Fortune 500s Generate Millions with ReadSoft and Dynamic DiscountingHow Fortune 500s Generate Millions with ReadSoft and Dynamic Discounting
How Fortune 500s Generate Millions with ReadSoft and Dynamic Discounting
 
Did you know? | Procure-to-Pay Statistics You Should Know
Did you know? | Procure-to-Pay Statistics You Should KnowDid you know? | Procure-to-Pay Statistics You Should Know
Did you know? | Procure-to-Pay Statistics You Should Know
 
Boost your bottom line and supply chain health
Boost your bottom line and supply chain healthBoost your bottom line and supply chain health
Boost your bottom line and supply chain health
 
Wharton FinTech: Overview of FinTech Industry
Wharton FinTech: Overview of FinTech IndustryWharton FinTech: Overview of FinTech Industry
Wharton FinTech: Overview of FinTech Industry
 
The Periodic Table of Supply Chain Finance
The Periodic Table of Supply Chain FinanceThe Periodic Table of Supply Chain Finance
The Periodic Table of Supply Chain Finance
 
IoFM: Transform Your Payables into a Revenue Generator
IoFM: Transform Your Payables into a Revenue GeneratorIoFM: Transform Your Payables into a Revenue Generator
IoFM: Transform Your Payables into a Revenue Generator
 
Scaling up with Cisco Big Data: Data + Science = Data Science
Scaling up with Cisco Big Data: Data + Science = Data ScienceScaling up with Cisco Big Data: Data + Science = Data Science
Scaling up with Cisco Big Data: Data + Science = Data Science
 
Executive Forum: Driving the Digital Supply Chain Agenda
Executive Forum: Driving the Digital Supply Chain AgendaExecutive Forum: Driving the Digital Supply Chain Agenda
Executive Forum: Driving the Digital Supply Chain Agenda
 
Indexing thousands of writes per second with redis
Indexing thousands of writes per second with redisIndexing thousands of writes per second with redis
Indexing thousands of writes per second with redis
 
Greenplum- an opensource
Greenplum- an opensourceGreenplum- an opensource
Greenplum- an opensource
 
Open Source Framework for Deploying Data Science Models and Cloud Based Appli...
Open Source Framework for Deploying Data Science Models and Cloud Based Appli...Open Source Framework for Deploying Data Science Models and Cloud Based Appli...
Open Source Framework for Deploying Data Science Models and Cloud Based Appli...
 

Similar to Creating a contemporary risk management system using python (dc)

Crowdsource Earnings Predictions and the Quantopian Research Platform
Crowdsource Earnings Predictions and the Quantopian Research PlatformCrowdsource Earnings Predictions and the Quantopian Research Platform
Crowdsource Earnings Predictions and the Quantopian Research PlatformQuantopian
 
apidays LIVE LONDON - Enriching Decision with News Data by Miguel Ballesteros
apidays LIVE LONDON - Enriching Decision with News Data by Miguel Ballesterosapidays LIVE LONDON - Enriching Decision with News Data by Miguel Ballesteros
apidays LIVE LONDON - Enriching Decision with News Data by Miguel Ballesterosapidays
 
IRJET- Finding Optimal Skyline Product Combinations Under Price Promotion
IRJET- Finding Optimal Skyline Product Combinations Under Price PromotionIRJET- Finding Optimal Skyline Product Combinations Under Price Promotion
IRJET- Finding Optimal Skyline Product Combinations Under Price PromotionIRJET Journal
 
Financial Modeling
Financial ModelingFinancial Modeling
Financial ModelingJeremy Horn
 
Esouag r12 presentation
Esouag r12 presentationEsouag r12 presentation
Esouag r12 presentationIshtiaq Khan
 
RatingBot: A Text Mining Based Rating Approach
RatingBot: A Text Mining Based Rating ApproachRatingBot: A Text Mining Based Rating Approach
RatingBot: A Text Mining Based Rating ApproachNauman Shahid
 
Net Present Value & Internal Rate of Return
Net Present Value & Internal Rate of ReturnNet Present Value & Internal Rate of Return
Net Present Value & Internal Rate of ReturnAgung Kurniawan
 
Transforming B2B Sales with Spark-Powered Sales Intelligence with Songtao Guo...
Transforming B2B Sales with Spark-Powered Sales Intelligence with Songtao Guo...Transforming B2B Sales with Spark-Powered Sales Intelligence with Songtao Guo...
Transforming B2B Sales with Spark-Powered Sales Intelligence with Songtao Guo...Databricks
 
Spark summit 2017- Transforming B2B sales with Spark powered sales intelligence
Spark summit 2017- Transforming B2B sales with Spark powered sales intelligenceSpark summit 2017- Transforming B2B sales with Spark powered sales intelligence
Spark summit 2017- Transforming B2B sales with Spark powered sales intelligenceWei Di
 
Introduction to Quantitative Factor Investing
Introduction to Quantitative Factor InvestingIntroduction to Quantitative Factor Investing
Introduction to Quantitative Factor InvestingQuantInsti
 
A Technical Introduction to RTBkit
A Technical Introduction to RTBkitA Technical Introduction to RTBkit
A Technical Introduction to RTBkitDatacratic
 
Transforming B2B Sales with Spark Powered Sales Intelligence
Transforming B2B Sales with Spark Powered Sales IntelligenceTransforming B2B Sales with Spark Powered Sales Intelligence
Transforming B2B Sales with Spark Powered Sales IntelligenceSongtao Guo
 
Spend Analysis: What Your Data Is Telling You and Why It’s Worth Listening
Spend Analysis: What Your Data Is Telling You and Why It’s Worth ListeningSpend Analysis: What Your Data Is Telling You and Why It’s Worth Listening
Spend Analysis: What Your Data Is Telling You and Why It’s Worth ListeningSAP Ariba
 
Industry 4.0: use cases for integrated supply chain
Industry 4.0: use cases for integrated supply chainIndustry 4.0: use cases for integrated supply chain
Industry 4.0: use cases for integrated supply chainAnubhav Dhiman
 
Modelling Customer Lifetime Revenue for Subscription Business
Modelling Customer Lifetime Revenue for Subscription BusinessModelling Customer Lifetime Revenue for Subscription Business
Modelling Customer Lifetime Revenue for Subscription BusinessDatabricks
 
Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...
Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...
Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...CzechDreamin
 
Tips & Tricks for CART (Classification and Regression Trees) in Minitab Stati...
Tips & Tricks for CART (Classification and Regression Trees) in Minitab Stati...Tips & Tricks for CART (Classification and Regression Trees) in Minitab Stati...
Tips & Tricks for CART (Classification and Regression Trees) in Minitab Stati...Minitab, LLC
 

Similar to Creating a contemporary risk management system using python (dc) (20)

Crowdsource Earnings Predictions and the Quantopian Research Platform
Crowdsource Earnings Predictions and the Quantopian Research PlatformCrowdsource Earnings Predictions and the Quantopian Research Platform
Crowdsource Earnings Predictions and the Quantopian Research Platform
 
apidays LIVE LONDON - Enriching Decision with News Data by Miguel Ballesteros
apidays LIVE LONDON - Enriching Decision with News Data by Miguel Ballesterosapidays LIVE LONDON - Enriching Decision with News Data by Miguel Ballesteros
apidays LIVE LONDON - Enriching Decision with News Data by Miguel Ballesteros
 
IRJET- Finding Optimal Skyline Product Combinations Under Price Promotion
IRJET- Finding Optimal Skyline Product Combinations Under Price PromotionIRJET- Finding Optimal Skyline Product Combinations Under Price Promotion
IRJET- Finding Optimal Skyline Product Combinations Under Price Promotion
 
Financial Modeling
Financial ModelingFinancial Modeling
Financial Modeling
 
Esouag r12 presentation
Esouag r12 presentationEsouag r12 presentation
Esouag r12 presentation
 
RatingBot: A Text Mining Based Rating Approach
RatingBot: A Text Mining Based Rating ApproachRatingBot: A Text Mining Based Rating Approach
RatingBot: A Text Mining Based Rating Approach
 
Net Present Value & Internal Rate of Return
Net Present Value & Internal Rate of ReturnNet Present Value & Internal Rate of Return
Net Present Value & Internal Rate of Return
 
Transforming B2B Sales with Spark-Powered Sales Intelligence with Songtao Guo...
Transforming B2B Sales with Spark-Powered Sales Intelligence with Songtao Guo...Transforming B2B Sales with Spark-Powered Sales Intelligence with Songtao Guo...
Transforming B2B Sales with Spark-Powered Sales Intelligence with Songtao Guo...
 
Spark summit 2017- Transforming B2B sales with Spark powered sales intelligence
Spark summit 2017- Transforming B2B sales with Spark powered sales intelligenceSpark summit 2017- Transforming B2B sales with Spark powered sales intelligence
Spark summit 2017- Transforming B2B sales with Spark powered sales intelligence
 
Introduction to Quantitative Factor Investing
Introduction to Quantitative Factor InvestingIntroduction to Quantitative Factor Investing
Introduction to Quantitative Factor Investing
 
A Technical Introduction to RTBkit
A Technical Introduction to RTBkitA Technical Introduction to RTBkit
A Technical Introduction to RTBkit
 
Transforming B2B Sales with Spark Powered Sales Intelligence
Transforming B2B Sales with Spark Powered Sales IntelligenceTransforming B2B Sales with Spark Powered Sales Intelligence
Transforming B2B Sales with Spark Powered Sales Intelligence
 
Sap questionnaire
Sap questionnaireSap questionnaire
Sap questionnaire
 
Spend Analysis: What Your Data Is Telling You and Why It’s Worth Listening
Spend Analysis: What Your Data Is Telling You and Why It’s Worth ListeningSpend Analysis: What Your Data Is Telling You and Why It’s Worth Listening
Spend Analysis: What Your Data Is Telling You and Why It’s Worth Listening
 
Industry 4.0: use cases for integrated supply chain
Industry 4.0: use cases for integrated supply chainIndustry 4.0: use cases for integrated supply chain
Industry 4.0: use cases for integrated supply chain
 
Modelling Customer Lifetime Revenue for Subscription Business
Modelling Customer Lifetime Revenue for Subscription BusinessModelling Customer Lifetime Revenue for Subscription Business
Modelling Customer Lifetime Revenue for Subscription Business
 
Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...
Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...
Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...
 
Tips & Tricks for CART (Classification and Regression Trees) in Minitab Stati...
Tips & Tricks for CART (Classification and Regression Trees) in Minitab Stati...Tips & Tricks for CART (Classification and Regression Trees) in Minitab Stati...
Tips & Tricks for CART (Classification and Regression Trees) in Minitab Stati...
 
Global x Assessor
Global x AssessorGlobal x Assessor
Global x Assessor
 
1000 track2 Bharadwaj
1000 track2 Bharadwaj1000 track2 Bharadwaj
1000 track2 Bharadwaj
 

Recently uploaded

High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...soniya singh
 
Top 5 Best Data Analytics Courses In Queens
Top 5 Best Data Analytics Courses In QueensTop 5 Best Data Analytics Courses In Queens
Top 5 Best Data Analytics Courses In Queensdataanalyticsqueen03
 
RadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfRadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfgstagge
 
GA4 Without Cookies [Measure Camp AMS]
GA4 Without Cookies [Measure Camp AMS]GA4 Without Cookies [Measure Camp AMS]
GA4 Without Cookies [Measure Camp AMS]📊 Markus Baersch
 
Effects of Smartphone Addiction on the Academic Performances of Grades 9 to 1...
Effects of Smartphone Addiction on the Academic Performances of Grades 9 to 1...Effects of Smartphone Addiction on the Academic Performances of Grades 9 to 1...
Effects of Smartphone Addiction on the Academic Performances of Grades 9 to 1...limedy534
 
RABBIT: A CLI tool for identifying bots based on their GitHub events.
RABBIT: A CLI tool for identifying bots based on their GitHub events.RABBIT: A CLI tool for identifying bots based on their GitHub events.
RABBIT: A CLI tool for identifying bots based on their GitHub events.natarajan8993
 
Call Us ➥97111√47426🤳Call Girls in Aerocity (Delhi NCR)
Call Us ➥97111√47426🤳Call Girls in Aerocity (Delhi NCR)Call Us ➥97111√47426🤳Call Girls in Aerocity (Delhi NCR)
Call Us ➥97111√47426🤳Call Girls in Aerocity (Delhi NCR)jennyeacort
 
INTERNSHIP ON PURBASHA COMPOSITE TEX LTD
INTERNSHIP ON PURBASHA COMPOSITE TEX LTDINTERNSHIP ON PURBASHA COMPOSITE TEX LTD
INTERNSHIP ON PURBASHA COMPOSITE TEX LTDRafezzaman
 
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一fhwihughh
 
Heart Disease Classification Report: A Data Analysis Project
Heart Disease Classification Report: A Data Analysis ProjectHeart Disease Classification Report: A Data Analysis Project
Heart Disease Classification Report: A Data Analysis ProjectBoston Institute of Analytics
 
Defining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data StoryDefining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data StoryJeremy Anderson
 
Predicting Salary Using Data Science: A Comprehensive Analysis.pdf
Predicting Salary Using Data Science: A Comprehensive Analysis.pdfPredicting Salary Using Data Science: A Comprehensive Analysis.pdf
Predicting Salary Using Data Science: A Comprehensive Analysis.pdfBoston Institute of Analytics
 
Generative AI for Social Good at Open Data Science East 2024
Generative AI for Social Good at Open Data Science East 2024Generative AI for Social Good at Open Data Science East 2024
Generative AI for Social Good at Open Data Science East 2024Colleen Farrelly
 
DBA Basics: Getting Started with Performance Tuning.pdf
DBA Basics: Getting Started with Performance Tuning.pdfDBA Basics: Getting Started with Performance Tuning.pdf
DBA Basics: Getting Started with Performance Tuning.pdfJohn Sterrett
 
NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...
NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...
NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...Boston Institute of Analytics
 
How we prevented account sharing with MFA
How we prevented account sharing with MFAHow we prevented account sharing with MFA
How we prevented account sharing with MFAAndrei Kaleshka
 
PKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptxPKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptxPramod Kumar Srivastava
 
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...Florian Roscheck
 
Multiple time frame trading analysis -brianshannon.pdf
Multiple time frame trading analysis -brianshannon.pdfMultiple time frame trading analysis -brianshannon.pdf
Multiple time frame trading analysis -brianshannon.pdfchwongval
 
Call Girls In Dwarka 9654467111 Escorts Service
Call Girls In Dwarka 9654467111 Escorts ServiceCall Girls In Dwarka 9654467111 Escorts Service
Call Girls In Dwarka 9654467111 Escorts ServiceSapana Sha
 

Recently uploaded (20)

High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
 
Top 5 Best Data Analytics Courses In Queens
Top 5 Best Data Analytics Courses In QueensTop 5 Best Data Analytics Courses In Queens
Top 5 Best Data Analytics Courses In Queens
 
RadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfRadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdf
 
GA4 Without Cookies [Measure Camp AMS]
GA4 Without Cookies [Measure Camp AMS]GA4 Without Cookies [Measure Camp AMS]
GA4 Without Cookies [Measure Camp AMS]
 
Effects of Smartphone Addiction on the Academic Performances of Grades 9 to 1...
Effects of Smartphone Addiction on the Academic Performances of Grades 9 to 1...Effects of Smartphone Addiction on the Academic Performances of Grades 9 to 1...
Effects of Smartphone Addiction on the Academic Performances of Grades 9 to 1...
 
RABBIT: A CLI tool for identifying bots based on their GitHub events.
RABBIT: A CLI tool for identifying bots based on their GitHub events.RABBIT: A CLI tool for identifying bots based on their GitHub events.
RABBIT: A CLI tool for identifying bots based on their GitHub events.
 
Call Us ➥97111√47426🤳Call Girls in Aerocity (Delhi NCR)
Call Us ➥97111√47426🤳Call Girls in Aerocity (Delhi NCR)Call Us ➥97111√47426🤳Call Girls in Aerocity (Delhi NCR)
Call Us ➥97111√47426🤳Call Girls in Aerocity (Delhi NCR)
 
INTERNSHIP ON PURBASHA COMPOSITE TEX LTD
INTERNSHIP ON PURBASHA COMPOSITE TEX LTDINTERNSHIP ON PURBASHA COMPOSITE TEX LTD
INTERNSHIP ON PURBASHA COMPOSITE TEX LTD
 
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
 
Heart Disease Classification Report: A Data Analysis Project
Heart Disease Classification Report: A Data Analysis ProjectHeart Disease Classification Report: A Data Analysis Project
Heart Disease Classification Report: A Data Analysis Project
 
Defining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data StoryDefining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data Story
 
Predicting Salary Using Data Science: A Comprehensive Analysis.pdf
Predicting Salary Using Data Science: A Comprehensive Analysis.pdfPredicting Salary Using Data Science: A Comprehensive Analysis.pdf
Predicting Salary Using Data Science: A Comprehensive Analysis.pdf
 
Generative AI for Social Good at Open Data Science East 2024
Generative AI for Social Good at Open Data Science East 2024Generative AI for Social Good at Open Data Science East 2024
Generative AI for Social Good at Open Data Science East 2024
 
DBA Basics: Getting Started with Performance Tuning.pdf
DBA Basics: Getting Started with Performance Tuning.pdfDBA Basics: Getting Started with Performance Tuning.pdf
DBA Basics: Getting Started with Performance Tuning.pdf
 
NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...
NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...
NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...
 
How we prevented account sharing with MFA
How we prevented account sharing with MFAHow we prevented account sharing with MFA
How we prevented account sharing with MFA
 
PKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptxPKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptx
 
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
 
Multiple time frame trading analysis -brianshannon.pdf
Multiple time frame trading analysis -brianshannon.pdfMultiple time frame trading analysis -brianshannon.pdf
Multiple time frame trading analysis -brianshannon.pdf
 
Call Girls In Dwarka 9654467111 Escorts Service
Call Girls In Dwarka 9654467111 Escorts ServiceCall Girls In Dwarka 9654467111 Escorts Service
Call Girls In Dwarka 9654467111 Escorts Service
 

Creating a contemporary risk management system using python (dc)

  • 1. Creating a Contemporary Risk Management System Using Python Piero Ferrante C2FO, Director of Data Science @the_real_pdf
  • 2. What is C2FO? ● Collaborative Cash Flow Optimization ● World’s first global market for working capital ○ C2FO receives daily invoices from a massive network of buyers and suppliers ○ Buyers with excess cash set a desired rate of return ○ Suppliers can name their rate in terms of discount or APR ○ Payment is accelerated through C2FO markets and both parties win ■ Buyers achieve their desired rate of return ■ Suppliers are awarded at their desired cost of capital ■ C2FO markets finance over $1B invoices/month
  • 3. What is WFC? ● Water For Commerce ● An investment fund and short-term lending platform for SMBs ● Fund supplier invoices from buyers outside the C2FO network ● Using C2FO’s unique data to prospect and underwrite ○ Over 5 years of daily invoices and adjustments ○ ≈ 200k suppliers from top tier buyers ○ C2FO market bidding data ● Offers favorable yields vs. investments of comparable risk ○ ≈ 40 day duration → 6.25%
  • 4. B3 B1 B2 Bi S1 S2 S3 Si 20% 30% 25% 25% How does WFC compliment C2FO? “We are a search engine for liquidity” - Sandy Kemper
  • 5. SMB lending is hard and crowded, so why bother? ● C2FO is the champion of the supplier ○ We want to help our suppliers succeed financially ● All risk is not created equal ● We believe we can do it better :) ○ Without rate gauging borrowers ○ Without misleading investors ● We have great data ● We have great tools
  • 6. Great tools make great things possible
  • 7. Prospecting & Underwriting Onboarding Portfolio Mgmt Concentration Risk Default Risk Fraud Risk Unsystem- atic Risk Buyer Diversity Score Buyer Junk Score Backtest & Forecast Score(s) 45 / 90 / 180d AR Score(s) Bankruptcy Score Congruency Score NLP Red Flag Score Rate & Limit Calculator Portfolio Diversifi- cation Exposure Risk Adjustment Volatility Score Risk Management Overview Stage Risk Method
  • 8. Concentration Risk - Measuring diversity ● With a little pandas fu... ● A worse; B better; C best ● More diversity of accounts receivable is better ● Less concentration with “junk” buyers (below BBB) is better A B C
  • 9. Prospecting & Underwriting Onboarding Portfolio Mgmt Concentration Risk Default Risk Fraud Risk Unsystem- atic Risk Buyer Diversity Score Buyer Junk Score Backtest & Forecast Score(s) 45 / 90 / 180d AR Score(s) Bankruptcy Score Congruency Score NLP Red Flag Score Rate & Limit Calculator Portfolio Diversifi- cation Exposure Risk Adjustment Volatility Score Risk Management Overview Stage Risk Method
  • 10. Default Risk - Forecasting accounts receivable Problem: I want to build a bunch of forecasts using R, but the rest of my pipeline is in Python Solution: Use rpy2 and get the best of both worlds ● Model types ○ ARMA / ARIMA / SARIMA - forecast package ○ Exponential smoothing (e.g. Holt-Winters) - forecast package ○ Bayesian Structural Time Series - bsts package ○ Regression (e.g. OLS, polynomial) - lm function *Currently evaluating too!
  • 11. Default Risk - Forecasting accounts receivable Best model strategy: At least 5 quarters worth of history are required to make a 90 day forecast, which is the maximum loan duration.
  • 12. Default Risk - Forecasting accounts receivable Best model strategy: Dozens of models are fit using different time series transformations and model parameter combinations; the “best model” seeks to minimize the mean absolute percentage error (MAPE) and root mean squared error (RMSE) for the last 90 days.
  • 13. Of course matplotlib and seaborn make even the most customized plots possible. Default Risk - Forecasting accounts receivable
  • 14. Default Risk - Understanding seasonal trends Thanks to statsmodels... seasonal decomposition is a breeze! Knowing where a supplier is in terms of season is critical. It’s helpful to visually decouple seasonality from trend to help put the residual in perspective.
  • 15. Default Risk - Predicting AR discontinuation Discontinuation is defined by supplier AR dropping to zero with all C2FO buyers. Challenges: ● Data leakage ○ Do not observe that which would not have been observable at the time of prediction ■ Establish criteria for prediction labels (e.g. supplier’s AR goes to 0 and stays there) ■ Define prediction cutoff (e.g. 45 days in advance of going to 0) ■ Remove all history after the cutoff date ● Engineering features ○ Variables used to model the probability of discontinuation ■ All history (except after the prediction cutoff date) ■ Various historical windows (e.g. 13 weeks leading up to prediction cutoff date) ■ Values observed on the cutoff date
  • 16. Default Risk - Predicting AR discontinuation How is this model trained? ● Using scikit-learn for: ○ Feature engineering ■ Encoding categoricals ■ Creating polynomial features ■ Scaling features ■ Dimensionality reduction / feature selection ○ Model evaluation ● Using xgboost for: ○ Training gradient boosted trees (a very performant machine learning classifier) ■ Since GBT are iterative learners, speed is important ○ Used in conjunction with hyperopt for optimizing hyperparameters ■ Currently evaluating spearmint
  • 17. Default Risk - Predicting AR discontinuation How is this model evaluated? ● Primarily concerned with model recall ● And not overfitting!
  • 18. Default Risk - Predicting bankruptcy Predicting bankruptcy is very different than predicting AR discontinuation: ● Prediction labels are derived differently ● Bankruptcies may not exhibit the same AR signals/patterns TODO: ● Receive and process daily feeds from the national bankruptcy database ● Undergo a rigorous matching process ● Perform data truncation and feature engineering ● Enrich with macroeconomic data from the right point in time ● Address severe class imbalances ● Train awesome models
  • 19. Default Risk - Predicting bankruptcy How to perform efficient company matching on a daily basis? ● Clean your data ○ Convert to lowercase, remove special characters, ... ● Match on *unique* values first ○ Tax IDs & phone numbers ● Use string matching on company names after using soundex to limit the space ○ Levenshtein distance, jaro-winkler distance, jaccard distance, … ○ Use soundexes to reduce the search space ● Calculate geographical distance between known addresses ○ Haversine distance ● Tinker with a weighting strategy that delivers satisfactory results Pro tip: Cython-ize code (your library might already be doing this for you) or use Numba for JIT compilation where applicable; it pays off in the long run.
  • 20. Default Risk - Predicting bankruptcy
  • 21. Default Risk - Predicting bankruptcy
  • 22. Default Risk - Predicting bankruptcy
  • 23. Prospecting & Underwriting Onboarding Portfolio Mgmt Concentration Risk Default Risk Fraud Risk Unsystem- atic Risk Buyer Diversity Score Buyer Junk Score Backtest & Forecast Score(s) 45 / 90 / 180d AR Score(s) Bankruptcy Score Congruency Score NLP Red Flag Score Rate & Limit Calculator Portfolio Diversifi- cation Exposure Risk Adjustment Volatility Score Risk Management Overview Stage Risk Method
  • 24. ● Use NLP to transcribe and mine calls ● Post transcription, spacy makes tokenization, lemmatization, etc. fast ● Identify conversations with red flags like: ○ Debt, leverage, bankruptcy, lien, payroll, extend, broke, divorce, alcohol, rollover, audit, layoff, credit, Cayman Islands, ... ● This is needed for 10x growth ○ Average WFC audio/day ~90 minutes Fraud Risk - Screening calls
  • 25. Fraud Risk - Analyzing invoice congruency For each Buyer-Supplier relationship, we calculate the following scores: ● Joined Invoice Amount Score: ○ In this equation, Wi is the invoice amount in WFC, and Ci is the invoice amount in C2FO ● Unjoined Score: ○ Here Wi and Ci reflect the dollar amounts at the invoice due date aggregation level. We also set (Wi - Ci ) to be 0 if it is negative. This emphasizes suppliers who have more AP in WFC than C2FO.
  • 26. Fraud Risk - Analyzing invoice congruency Once we have the Buyer-Supplier Scores, we calculate a Supplier level score, which is a weighted average of their respective Buyer-Supplier Scores. Finally, we weight each individual score by the amount of AP in WFC, to get to our final Congruency Score.
  • 27. Prospecting & Underwriting Onboarding Portfolio Mgmt Concentration Risk Default Risk Fraud Risk Unsystem- atic Risk Buyer Diversity Score Buyer Junk Score Backtest & Forecast Score(s) 45 / 90 / 180d AR Score(s) Bankruptcy Score Congruency Score NLP Red Flag Score Rate & Limit Calculator Portfolio Diversifi- cation Exposure Risk Adjustment Volatility Score Risk Management Overview Stage Risk Method
  • 28. Who should we be lending to? For suppliers that don’t meet some of the forecasting criteria, we can train models to predict their WFC scores so that we have total score coverage across the supplier pool.
  • 29. Exposure Risk - Calculating limits and rates Limits are calculated: ● Based on WFC score decile ● Using loan duration ● So, higher decile → greater % of n day forecast cumulative sum Rates are calculated: ● By observing suppliers’ rates in C2FO markets ● Adjusting for additional risk when applicable
  • 30. Who should we continue lending to? Triggers to monitor: ● Level shifts in AR patterns ○ Losing or gaining a buyer, rapid business growth, unprecedented invoices... ● C2FO bid changes ○ Significant jumps in supplier bidding strategies ● WFC Score changes ○ Seasonal fluctuations in WFC Scores ● Adjustments ○ Unprecedented adjustment counts or amounts relative to invoices ● Buyer reserves ○ Buyers may know something that the rest of us don’t (e.g. bad product or inventory concerns)
  • 31. Who should we continue lending to? Monitoring scores over time is important from a fund active management standpoint.
  • 32. Prospecting & Underwriting Onboarding Portfolio Mgmt Concentration Risk Default Risk Fraud Risk Unsystem- atic Risk Buyer Diversity Score Buyer Junk Score Backtest & Forecast Score(s) 45 / 90 / 180d AR Score(s) Bankruptcy Score Congruency Score NLP Red Flag Score Rate & Limit Calculator Portfolio Diversifi- cation Exposure Risk Adjustment Volatility Score Risk Management Overview Stage Risk Method
  • 33. Behind the scenes allstars ● anaconda for managing our Python and R environments ● luigi for pipeline task orchestration ● dask where doing math lends itself to out-of-core parallelization Luigi DAG
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40. So what? ● Objectivity gives way to innovation ● Better independent data beats more complex algorithms ● Tradeoffs must be evaluated with respect to constraints ● For many tasks, Python can perform nearly as fast lower level languages ● WFC is a win-win for borrowers and investors ● Creating great solutions with open source tools is part of OSS too