曹 璨,黃 海,徐 可
(中國科學技術大學 信息科學技術學院,安徽 合肥 230027)
?
一種基于時間序列算法的資金流入流出預測模型
曹 璨,黃 海,徐 可
(中國科學技術大學 信息科學技術學院,安徽 合肥 230027)
資金的流入流出預測對于降低網絡金融平臺的流動性風險、提高資金利用率具有重要意義。根據資金流入流出歷史數據,對螞蟻金服公司余額寶資金未來30天流入流出的預測問題進行研究。由于歷史數據不穩定且多噪聲,首先采用序列轉換方法對不平穩序列進行差分處理提高其數據穩定性,其次對該序列進行模型識別和參數估計,利用時間序列模型初步預測,并對殘差序列進行模型檢驗,最后利用通過檢驗的模型預測結果。實驗結果表明,此模型可以有效地對余額寶用戶的資金流入流出金額進行預測。
資金流入流出預測;序列轉換;參數估計;時間序列模型
金融公司往往擁有千萬乃至上億的服務會員,公司的金融業務場景每天必然會涉及大量的資金流入流出,導致資金管理壓力會非常大。因此,在保證資金流動性風險最小,同時滿足日常業務運轉的情況下,精準地預測資金的流入流出顯得尤為重要。然而,金融數據的變動往往受社會、經濟等多方面因素的影響,數據變化趨勢不穩定,導致資金的流入流出預測較為困難。
國內外學者對資金流入流出的研究較少,且主要側重于股票行情預測、證券價格預測等問題。 Soofi利用非線性擬合方法對含噪聲的金融數據進行了預測[1]。FINANCE A基于多元非線性動力學理論對上海股票市場進行了短期預測[2]。Dai Wensheng等人采用非線性獨立分量分析與神經網絡相結合的方法,對亞洲股市指數進行了預測[3]。DAIGO K利用多時間序列的方法對股票價格趨勢進行了研究[4]。與此同時,相關學者提出了電網短期負荷時間序列的混沌性預測模型[5]。
本文以螞蟻金服公司余額寶資金預測為例,研究金融公司未來每天的資金流入流出預測問題,目標是對余額寶每天的資金流入流出總值進行預測。
本文針對資金流入流出數據的穩定性較差、多噪聲的特點,首先結合業務背景進行數據預處理,采用序列轉換方法對不平穩序列進行差分處理使其變得平穩,其次再進行模型識別和參數估計,利用合適的時間序列模型初步預測,并對殘差序列進行模型檢驗,最后利用通過檢驗的模型訓練學習,預測出目標月份未來每天的申購和贖回值。
本文以余額寶流入流出資金為例,對金融公司資金的流入流出預測問題進行研究,其中貨幣基金的流入流出為申購行為和贖回行為的流動資金。

用戶的申購贖回數據包括申購、贖回信息和所有的子類目信息。數據主要包括用戶操作時間和操作記錄,其中操作記錄包括申購(purchase)和贖回(redeem)兩個部分。
金融數據包括今日余額(tBalance)、昨日余額(yBalance)、今日總購買量(total_purchase_amt)、今日直接購買量(direct_purchase_amt)、今日支付寶余額購買量(purchase_bal_amt)、今日銀行卡購買量(purchase_bank_amt)、今日總贖回量(total_redeem_amt)、今日消費總量(consume_amt)、今日轉出總量(transfer_amt)、今日轉出到支付寶余額總量(tftobal_amt)、今日轉出到銀行卡總量(tftocard_amt)、今日收益(share_amt)和今日類目1-4的消費總額(category1-4)。其中今日總購買量 = 直接購買 + 收益,今日總贖回量 = 消費 + 轉出。如果用戶今日消費總量為0,則四個類目為空。
本文從申購和贖回總值的歷史數據切入,分析各數據的處理方式。
本文提出的資金流入流出預測模型的架構圖如圖1所示,整個模型包括數據預處理、序列轉換、模型識、模型檢驗和建模預測五個關鍵環節。

圖1 資金流入流出預測模型的構建流程
其中,數據預處理包括異常值剔除、數據集成化,序列轉換包括平穩性檢驗、差分變換和白噪聲檢驗,模型識別包括自相關圖識別定階和BIC準則參數估計,模型檢驗包括德賓-沃森檢驗和Ljung-Box隨機性檢驗。
2.1 數據預處理
在明確題目背景后,本文對數據進行了預處理操作。首先是數據清洗,余額寶的用戶眾多,每位用戶的價值也都不同。整體上看數據較為干凈,沒有缺失值。本文剔除14個月中總操作數少于5次或總申購值和贖回值都小于10的用戶。
單個用戶的個體行為隨機性較強,具有不穩定性,波動大,且個體行為不具有規律性,受外界因素干擾較大。因此進行數據集成,匯總多個用戶的數據以進行共同建模。本文采用全體用戶以天為單位的總申購值和贖回值數據,計算全體用戶427天的歷史數據,獲取申購值和贖回值以天為單位的時間序列圖,如圖2所示。

圖2 用戶申購和贖回的時間序列圖
由圖2可發現整體數據具有以下顯著特點:(1)具有一定的周期性;(2)工作日和節假日有所差別,工作日比節假日高;(3)前期低,中期過高,后期逐漸進入平穩階段,趨于平緩。因此可采用時間序列方法進行訓練學習[6],預測未來序列趨勢以預測每天的申購和贖回值。
2.2 序列轉換
序列轉換主要包括三個環節:平穩性檢驗、差分變換和白噪聲檢驗。
首先從定性的角度分析時序圖,如果時序圖中的序列值始終在一個常數附近隨機波動,且波動的范圍有界,則時間該序列為平穩序列;如果有明顯的趨勢或周期性,則通常為不平穩序列。若是不平穩序列,可采用差分方法對原始序列先進行一階差分,再返回平穩檢驗階段直至通過。顯然余額寶資金的流入流出序列為不平穩序列。從定量的角度分析,作單位根ADF檢驗,計算其中的pvalue值,判斷其平穩性高低。
本案例的一階差分序列的時間序列圖如圖3所示。

圖3 用戶申購和贖回的一階差分時間序列圖
隨后采用Ljung-Box(LB)統計量進行白噪聲檢驗,衡量序列的信息包含度。如果序列檢驗為白噪聲序列,則說明序列中有用的信息已被提取完畢,剩余為隨機擾動,該部分沒有預測的必要。如果是平穩非白噪聲序列,則可以對其建模分析[7]。本案例的詳細算法如下。
算法1:序列轉換算法
輸入:非平穩的時間序列數據集Xt
(1)作時序圖,進行平穩性趨勢分析。
(2)計算單位根ADF,根據pvalue判斷序列的平穩性檢驗。若pvalue<0.5則是平穩序列,跳至第(4)步;若pvalue≥0.5則是不平穩序列,至第(3)步進行處理。
(3)計算該序列的一階差分DIFF(Xt),再跳回第2步進行平穩性檢驗。
(4)白噪聲檢驗,利用LB統計量檢驗,求得對應p值,當p<0.05則是非白噪聲序列;當p≥0.05則是白噪聲序列,需要進行數據的重新整合。
(5)結束
2.3 模型識別和參數估計
上述分析顯示,金融數據序列的趨勢具有一定的周期性,當確定其差分序列為平穩非白噪聲序列后,可以選擇合適的時間序列模型進行擬合[8]。
第一步是模型識別。從探索當前序列的自相關性來初步識別,根據當前序列的自相關圖和偏自相關圖判斷最為貼近的時間序列模型。常用的時間序列模型有AR(p)模型,MA(q)模型,ARMA(p,q)模型和ARIMA(p,d,q)模型。可以參照表1識別模型。

表1 時間序列模型識別參照原則
AR(p)模型為p階自回歸模型,序列為:
xt=φ0+φ1xt-1+φ2xt-2+…+φpxt-p+εt
(1)
即在t時刻隨機變量Xt的取值xt是前p期xt-1,xt-2,…,xt-p的多元線性回歸,其中認為xt主要受過去p期的序列值的影響。誤差項是當期的隨機干擾εt,為零均值白噪聲序列。
MA(q)模型是q階自回歸模型,序列為:
xt=μ+εt-θ1εt-1-θ2εt-2-…-θqεt-q
(2)
即在t時刻隨機變量Xt的值xt是前q期的隨機擾動εt-1,εt-2,…,εt-q的多元線性函數,其中認為xt主要是受過去q期誤差項的影響。誤差項是當期的隨機干擾εt,為零均值白噪聲序列,μ是序列{Xt}的均值。
ARMA(p,q)模型是自回歸移動平均模型,序列為:
xt=φ0+φ1xt-1+φ2xt-2+…+φpxt-p+εt-θ1εt-1-θ2εt-2-…-θqεt-q
(3)
即在t時刻隨機變量Xt的取值xt是前p期xt-1,xt-2,…,xt-p和前q期εt-1,εt-2,…,εt-q的多元線性函數,誤差項是當期的隨機干擾εt,為零均值白噪聲序列,xt主要是受過去p期的序列值和過去q期誤差項的共同影響。
ARIMA(p,d,q)模型是對非平穩序列的擬合,需要進行d階差分運算,然后和ARMA(p,q)模型組合。本文的余額寶序列為非平穩序列,經差分處理后平穩,且受前期序列和誤差項的影響,因此跟ARIMA(p,d,q)最為貼近。
第二步是BIC準則模型定階和參數估計。利用BIC準則進行參數尋優的目標是尋找包含最少自由參數且能夠最好地解釋數據的模型。雖然增加自由參數可以提高擬合的優良性,但為避免過擬合,優先考慮的模型是使得BIC值最小的模型。定好d階差分后,利用BIC準則找到ARIMA(p,d,q)模型對應的p,q值[9]。
2.4 模型檢驗
在模型識別和參數估計后,可利用初步得到的ARIMA模型對歷史數據訓練并預測,并將結果和真實值對比得到殘差。模型檢驗目的是對模型適合程度進行檢驗:若檢驗通過則表示該模型可以較好地刻畫序列,若檢驗不通過則表示該模型并不符合序列趨勢,需要采用其他模型重新建模[10]。
模型檢驗分為三個步驟,首先使用QQ圖,驗證殘差數據是否符合正態分布[11]。其次,對殘差序列做德賓-沃森(D-W)檢驗,驗證是否有自相關性。最后對殘差作Ljung-Box(LB)檢驗,這是對隨機性的檢驗,對時間序列是否存在滯后相關的統計檢驗。LB檢驗是基于一系列滯后階數,判斷序列的總體的相關性或者隨機性的存在。若LB檢驗殘差序列是高斯白噪聲序列,則檢驗模型通過[12]。具體步驟如下。
輸入:殘差數據集Qt
輸出:模型通過檢驗或不通過
(1)作QQ圖,看是否正態分布。
(2)德賓-沃森檢驗。根據D-W值判斷殘差序列的自相關性。若D-W值接近0或者4,則是存在自相關性;若D-W值接近2,則無自相關性。
(3) Ljung-Box檢驗。計算殘差序列對應的p值,若p>0.05則是高斯白噪聲序列,通過模型檢驗,說明殘差和零相差無幾;若p≤0.05則是非白噪聲序列,不通過模型檢驗,需要嘗試其他模型擬合。
(4)結束。
2.5 建模預測和模型評價
在模型檢驗后,可采用通過的模型進行訓練預測,并建立誤差評價指標評價預測效果。
針對預測誤差,本文比較回歸預測的值Ypre與真實值Y,用均方根誤差RMSE作為驗證模型好壞的指標。
(4)
對于用戶申購的預測誤差RMSEpur和贖回的預測誤差RMSEred,根據案例問題要求的重要性不同,最終的總誤差評價指標為 :
RMSEtotal=0.45RMSEpur+0.55RMSEred
(5)
3.1 實驗流程
本文以螞蟻金服公司余額寶資金為應用背景,數據來源是余額寶用戶的真實數據。該數據集包含共28 041名用戶從2013-07-01到2014-08-31共427天的2 840 421條數據操作記錄。其中申購和贖回值單位是分。預測數據的單位也需精確到分。考慮測試集為2014-09的數據,無真實值對照,故選擇訓練集中已知的1個月作為測試集進行實驗。
縱觀申購和贖回值的時間序列圖,發現7月、8月無節日,且處于暑假階段,與9月情形不相似。而4月的波動情況與9月很類似,且分別包含節日清明節、中秋節,可作測試集進行實驗。那么可取2013-07-01至2014-03-31的274天的樣本,用上述方法預測出結果,用均方根誤差進行模型評價。
3.2 實驗結果與分析
如前所述,本文的資金流入流出預測模型包括數據預處理、序列轉換、模型識別,模型檢驗、建模預測這五個主要步驟。本文對每一步數據處理產生的實驗結果進行展示和分析如下。
由原始序列經過一階差分的序列DIFF(Xt)進行平穩性檢驗,得到pvalue=3.419e-19。經過白噪聲檢驗,得到p=2.787e-13。說明該案例的一階差分模型是平穩非白噪聲序列,可以進行建模。作一階差分序列的自相關圖和偏自相關圖如圖4、圖5所示。

圖4 用戶申購和贖回一階差分的自相關圖

圖5 用戶申購和贖回一階差分的偏自相關圖
由實驗結果發現申購和贖回序列符合ARIMA(p,1,q)模型,一階差分序列是p階拖尾,q階拖尾。對于申購序列和贖回序列利用BIC準則進行參數估計,當調整p,q的取值范圍時,得到最優值列表,分別如表2和表3所示。
參數確定后即得到初步模型,則需進行模型檢驗,以ARIMA(2,1,1)模型對申購序列預測為例,作殘差QQ圖如圖6所示。對于三個不同參數的模型分別做德賓-沃森檢驗和Ljung-Box檢驗, 判斷是否通過檢驗,結果如表4和表5所示。

圖6 ARIMA(2,1,1)預測的殘差QQ圖

表2 申購序列p, q的取值范圍下的最優值

表3 贖回序列參數p, q的取值范圍下的最優值

表4 申購序列不同p, q的參數模型檢驗結果

表5 贖回序列不同p, q的參數模型檢驗結果
由上述表格知,申購的三個模型和贖回的三個模型都通過了檢驗,可以較好地刻畫序列,用于趨勢預測。現將ARIMA(p,d,q)模型不同的p,q值參數代入,進行實驗并對比預測效果,結果如表6和表7所示。

表6 申購序列不同p, q值的預測效果對比

表7 贖回序列不同p, q值的預測效果對比
綜合可知,將申購和贖回序列預測的最優效果相結合,可以得到最優的最終預測效果RMSEtotal=0.45×0.258 5+0.55×0.328 2=0.296 8。本文提出的時間序列的資金流入流出預測模型取得的最優預測效果為RMSE=0.296 8。
本文針對金融公司資金流入流出的預測問題進行研究,對減小資金流動性風險、提升資金利用效率有重要意義。以螞蟻金服公司余額寶資金為例,針對資金數據波動性大、噪聲多等特點,本文提出了基于將非平穩序列轉換為平穩序列,再逐步模型識別和參數估計,經模型檢驗后找到合適的時間序列模型ARIMA(p,d,q)擬合,可以應用于大多數的資金流入流出預測問題。
在后續研究中,將嘗試對時間序列進行分解,用加法模型和乘法模型分離季節因素,對不同分段序列選用合適的時間序列模型擬合,最后綜合各段序列的預測結果成為最終結果。
[1] SOOFI A S, Cao Liangyue. Nonlinear Forecasting of Noisy Financial Data[M]. Modelling and Forecasting Financial Data. Springer US, 2002,2:455-465.
[2] FINANCE A. Multivariate nonlinear analysis and prediction of Shanghai stock market[J]. Discrete Dynamics in Nature & Society, 2008, 2008(1):47-58.
[3] Dai Wensheng, WU J Y, LU C J. Combining nonlinear independent component analysis and neural network for the prediction of Asian stock market indexes[J]. Expert Systems with Applications, 2012, 39(4):4444-4452.
[4] DAIGO K, TOMOHARU N. Stock prediction using multiple time series of stock prices and news articles[C]. Computers & Informatics, IEEE, 2012:11-16.
[5] 劉彬, 王紅蕾. 貴州電網短期負荷時間序列的混沌性仿真檢驗[J]. 微型機與應用, 2010, 29(17):88-90.
[6] 馬超紅, 翁小清. 時間序列早期分類綜述[J]. 微型機與應用, 2016, 35(16):13-15.
[7] Liu Xiaohong. The Statistical Test for Stationarity of Time in ARIMA Model and its Application[J]. Chinese Journal of Health Statistics, 1998.
[8] Zhang Le, Zhang Jianmin, Du Xiangge. Applying the season time series model to forecast the greenhouse daily humidity[J]. Northern Horticulture, 2008.
[9] Huang Yan, Yi Dong, Tiao Kaocong. The SAS procedure of ARIMA model and its application in time series[J]. Laser Journal, 2007, 28(1):96-96.
[10] Wang Jifang, Fei Renyuan, Xu Xiaoli, et al. Combination of ARIMA and RBF model and its application in equipment running condition prediction[J]. Journal of Mechanical Transmission, 2011, 35(9):85-87.
[11] 張玲, 劉波. 基于殘差統計的時間序列加性離群點檢測算法研究[J]. 電子技術應用, 2015, 41(9):85-87.
[12] 張良均.Python與數據挖掘[M].北京:機械工業出版社,2016.
A prediction model of funds inflow and outflow based on time series algorithm
Cao Can, Huang Hai, Xu Ke
(School of Information Science and Technology, University of Science and Technology of China, Hefei 230027, China)
It is great significant to reduce the liquidity risk of the network financial platform and improve the funds utilization rate to predict funds inflow and outflow. In this paper, we research on predicting Ant Financial Services Group YuEBao funds inflow and outflow in next 30 days according to historical records. Because historical data is instable with much noise, we utilize the differential conversion method to transfer the original sequences to stable sequence. Then, though the model identification and parameter estimation we obtain a preliminary model. Next we select the suitable time series model to predict the residual sequence and do model check. At last, we use the approved model trains data to predict final results. The results of experiments verify that the proposed prediction model can effectively predict the funds inflow and outflow.
funds inflow and outflow prediction; sequence transfer; parameter estimation; time series model
TP181
A
10.19358/j.issn.1674- 7720.2017.14.017
曹璨,黃海,徐可.一種基于時間序列算法的資金流入流出預測模型[J].微型機與應用,2017,36(14):52-56.
2017-01-26)
曹璨(1992-),女,碩士,主要研究方向:數據挖掘。
黃海(1980-),男,博士,副研究員,主要研究方向:機器學習,數據挖掘。
徐可(1995-),男,碩士,主要研究方向:數據挖掘。