信用風險
成都創新互聯公司主要從事成都網站設計、成都網站制作、網頁設計、企業做網站、公司建網站等業務。立足成都服務敖漢,十年網站建設經驗,價格優惠、服務專業,歡迎來電咨詢建站服務:18980820575
銀行的經營風險的機構,那在第15節也提到了巴塞爾新資本協議對于銀行風險的計量和監管要求,其中信用風險是銀行經營的主要風險之一,它的管理好壞直接影響到銀行的經營利潤和穩定經營。信用風險是指交易對手未能履行約定契約中的義務而給銀行造成經濟損失的風險。典型的表現形式包括借款人發生違約或信用等級下降。借款人因各種原因未能及時、足額償還債務/銀行貸款、未能履行合同義務而發生違約時,債權人或銀行必將因為未能得到預期的收益而承擔財務上的損失。
那如何來表示某個交易對手的信用情況呢,一般使用信用等級或信用評分來來表示,等級越低或評分越低,發生違約的概率會增加。這個信用評分主要應用在客戶的貸前和貸后管理中,貸前是指客戶貸款申請階段,銀行受理客戶貸款申請時會根據客戶提交的信息、人行征信、其它數據源按一定的規則計算出一個違約概率和風險評分或信用等級。再根據這個評分或評級來確定客戶的授信額度和利率。計算出的評分或評級越高,違約概率越低,比如在進行個人貸前評分時主要關注以下5方面:
(1)People:貸款人狀況,包括歷史還款表現、當前負債情況、資金饑渴度等;
(2)Payment:還款來源,如基本收入、資產水平、月收支負債比、無擔保總負債等;???????
(3)Purpose:資金用途,如消費、買房,需要規避貸款資金用于投資或投機性質較高領域,如股票和數字貨幣;
(4)Protection:債權確保,主要是看是否有抵押物或擔保,需要看抵押物用途、質量、價格等關鍵要素;
(5)Perspective:借款戶展望,從地域、行業、人生階段等考察穩定性及潛力;
貸后是指客戶借款后銀行持續跟進客戶的信用情況,如果發現信用評分降低或者某些指標達到風險預警指標的閾值,說明風險升高,則會進行凍結額度甚至提前進行貸款收回。特別是對于逾期客戶。
風險建模步驟
在進行信用評估時如何選擇客戶屬性、如何確定評分或評級規則呢?這就需要進行風險建模,通過分析歷史數據來確定哪些特征或指標對客戶的違約相關性大,可以了解客戶的還款能力以及還款意愿。并通過一定方法來建立評分和評級的規則。那風險建模主要分為以下步驟:
(1)業務理解:主要評估當前現狀、確定業務目標,選擇建模方法,比如需要進行XX貸款產品的貸前評分模型并確定準入規則,建模方式比如為評分卡,評分應用為基于評分確定貸款準入規則以及額度和利率規則,同時需要確定分析數據的好客戶和壞客戶標準,如逾期90天以上為壞客戶;
(2)數據理解:首先需要準備建模的樣本數據,如抽取近2年的獲得類似產品的客戶相關信息以及根據好客戶和壞客戶標準確定的結果。并針對業務數據進行業務含義理解、對數據進行收集、探索,了解每個變量的數據質量、缺失情況,數據分布等。比如對于客戶在人行的征信數據、客戶在銀行的存款、理財等信息、以及客戶申請填寫的家庭、房產信息、外部獲得的客戶教育、司法等相關信息進行業務理解和數據分布、質量的探索,對缺失值比例過大的變量或準確性不高的變量進行剔除,同時也要確定對于樣本數據中哪些數據進行建模,哪些數據進行驗證。
(3)數據準備:主要對數據進行預處理和指標加工,指標加工指基于基礎數據進行指標加工,如最近1個月的征信查詢次數,最近1年的逾期次數等,數據預處理主要工作包括對每一個變量進行數據清洗、缺失值處理、異常值處理、數據標準化等,主要目的是將獲取的原始數據轉變成可用于建模的結構化數據。
比如對于連續變量,就是要尋找合適的切割點把變量分為幾個區間段以使其具有最強的預測能力,也稱為“分箱”。例如客戶年齡就是連續變量,在這一步就是要研究分成幾組、每組切割點在哪里預測能力是最強的。分箱的方法有等寬、等頻、聚類(k-means)、卡方分箱法、單變量決策樹算法(ID3、C4.5、CART)、IV最大化分箱法、best-ks分箱法等。如果是離散變量,每個變量值都有一定的預測能力,但是考慮到可能幾個變量值有相近的預測能力,因此也需要進行分組。
通過對變量的分割、分組和合并轉換,分析每個變量對于結果的相關性,剔除掉預測能力較弱的變量,篩選出符合實際業務需求、具有較強預測能力的變量。檢測變量預測能力的方法有:WOE(weight of Evidence) 、IV(informationvalue)等。
(4)分析建模:即對于篩選出來的變量以及完成好壞定義的樣本結果。放入模型進行擬合。如評分卡一般采用常見的邏輯回歸的模型,PYTHON、SAS、R都有相關的函數實現模型擬合。以下是生成的評分卡的例子。
(5)評估及報告:即通過驗證樣本對模型的預測進行校驗。評估模型的準確性和穩健性,并得出分析報告。常用的方法有ROC曲線、lift提升指數、KS(Kolmogorov-Smirnov)曲線、GINI系數等。
(6)應用:對模型進行實際部署和應用,如基于評分進行客戶準入和產生額度,并在貸款系統進行模型部署,自動對申請客戶進行評分。
(7)監測:建立多種報表對模型的有效性、穩定性進行監測,如穩定性監控報表來比較新申請客戶與開發樣本客戶的分值分布,不良貸款分析報表來評估不同分數段的不良貸款,并且與開發時的預測進行比較,監控客戶信貸質量。隨著時間的推移和環境變化,評分模型的預測力會減弱,所以需要持續監控并進行適當調整或重建。
在信用風險建模中,目前評分卡建模還是主要的方式,除了申請評分(A卡(Application score card))還有B卡(Behavior score card)行為評分卡、C卡(Collection score card)催收評分卡。B卡主要進行客戶貸后管理,如何進行風險預警,C卡進行催收管理,確定如何催收以及催收方式和時間點。信用風險模型中還有一個是反欺詐模型,它主要是識別假冒身份、虛假信息、批量薅羊毛等欺詐行為。隨著機器學習和大數據的發展,其它的一些建模方式如決策樹、深度神經網絡也越來越多的應用到了風險建模中。
信用風險模型是數據倉庫支持的重要數據應用之一,在風險建模分析階段,數據倉庫是建模樣本數據以及衍生指標加工的主要提供者,業務人員一般在自助分析平臺進行數據分析和建模,模型建立完成并部署后,會基于數據倉庫數據進行模型效果的監控。在貸后管理中,風險集市也會進行貸后指標的加工。另外風險模型以及預警中會經常使用到外部數據,這部分數據也是通過數據倉庫進行對接、加工和存儲。
list =[None,None,None,None,"a","b","c",None,"d",12,None,2,4,5,4] list = list[4:] len(list)11 list['a', 'b', 'c', None, 'd', 12, None, 2, 4, 5, 4]#如果你的list 格式是相同的 比如前面4個都是None,這個格式是固定的,那么切片很容易解決
IV 與 WOE:
IV表示一個變量的預測能力:
=0.02,沒有預測能力,不可用
0.02~0.1?弱預測性
0.1~0.2?有一定預測能力
0.2+高預測性
IV還可以用來挑選變量,IV就越大,它就越應該進入到入模變量列表中。
Psi
def calculate_psi(expected, actual, buckets=10): # test, base
def psi(expected_array, actual_array, buckets):
def scale_range(input, min, max):
input += -(np.min(input))
input /= np.max(input) / (max - min)
input += min
return input
#?按照概率值分10段
breakpoints = np.arange(0, buckets + 1) / (buckets) * 100
breakpoints = scale_range(breakpoints, np.min(expected_array), np.max(expected_array))
expected_percents = np.histogram(expected_array, breakpoints)[0] / len(expected_array)
# print(expected_percents)
actual_percents = np.histogram(actual_array, breakpoints)[0] / len(actual_array)
def sub_psi(test, base): # test,base
if base == 0:
base = 0.0001
if test == 0:
test = 0.0001
value = (test - base) * np.log(test / base)
return(value)
psi_value = np.sum(sub_psi(expected_percents[i], actual_percents[i]) for i in range(0, len(expected_percents)))
return(psi_value)
if len(expected.shape) == 1:
psi_values = np.empty(len(expected.shape))
else:
psi_values = np.empty(expected.shape[0])
for i in range(0, len(psi_values)):
if len(psi_values) == 1:
psi_values = psi(expected, actual, buckets)
else:
psi_values[i] = psi(expected[:,i], actual[:,i], buckets)
return(psi_values)
toad函數里面有個 類似于woe 統計各段的好壞,好壞比, 累計好壞比,KS的一個數為
toad.metrics.KS_bucket
此函數中有兩個參數,可以 是等頻分,也可以 是等距分箱,但此分箱均是以分數的最大最小值 為基礎劃分的。
我想把整成0~1區間的,所以對原函數進行了修改。
split的第一個參數是分隔符。
如果省略第一個參數,默認把所有的空格、制表符、回車符當作分隔符,并過濾掉空串。這個也是你第一種寫法的效果。
line.split(‘\t''\n')
'\t'和'\n'是兩個字符串,會自動進行拼接,形成'\t\n'作為分隔符。而在你輸入的字符串中,不包含這樣的字串,所以就分割的結果就是原串。
split(‘\t')
以'\t'作為分隔符,分割的結果就是第三種寫法。
split不支持同時使用多種字符做分隔符,如果想實現這樣的效果,可以用re,例如:
a
'wowofbfwjowoefbwfoweojbwoefja'
import re
re.split('[ab]', a)
['wowof', 'fwjowoef', 'wfoweoj', 'woefj', '']
分享標題:pythonwoe函數,python swoole
新聞來源:http://m.newbst.com/article22/hsdocc.html
成都網站建設公司_創新互聯,為您提供建站公司、域名注冊、定制網站、標簽優化、關鍵詞優化、虛擬主機
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯