摘要:通過對全球證券、期貨、期權賬戶帳單數據的研究,探索利用SQL Server對這些市場金融資產帳單數據進行統一、規范、有效的管理方法,并提出了根據帳單數據計算全球金融資產凈值的算法。關鍵詞:金融資產;交易數據;管理;QFII;SQL Server
中圖分類號:TP392
文獻標識碼:A
文章編號:1006-8228(2011)08-29-03
引言
隨著我國改革開放、國家審慎推進金融市場的改革和發展,20年來中國證券市場從無到有,規模逐漸擴大,逐步發展了滬深主板、中小板、創業板和代力股權轉讓等股票市場,國債和企業債券市場,商品期貨和金融期貨市場,投資者也從單一的境內機構、個人投資者,還引入QFII(合格境外投資者)。證券期貨市場的發展,為服務國家和經濟建設,為改革開放和國力強盛提供了強有力的資金支持,也為國內、外投資者提供了投資中國發展的渠道。
隨著金融改革和創新,QDII(合格境內投資者)也走出國門,投資全球,分享全球經濟的增長和分散投資的風險。無論是QFII、QDII,還是將來允許的個人直接投資海外都將面臨全球金融資產的管理問題。全球金融資產的統一管理涉及的各種金融頭寸交易數據、多個市場行情數據、外匯匯率數據的處理等是單一市場不具備的。將中國內地股票證券賬戶、期貨賬戶,香港和美國市場證券、期貨、期權賬戶交易數據整理和處理為通用、統一的數據并進行再處理是管理全球金融資產的投資者關心的新問題。
本文對全球證券、期貨、期權賬戶帳單數據進行了研究,探索利用SQL Server對這些市場金融資產帳單數據進行統一、規范的處理方法,并將各個賬戶所涉及的證券頭寸變化和資金發生額變化等項目轉入SQL Server數據庫,提供了根據帳單數據計算全球金融資產凈值的算法,便于全球投資者了解自身全球金融資產組合的狀況。
1、數據庫和關鍵數據表設計
全球金融資產賬戶帳單數據在處理前,需要將投資者(資產管理者)所有賬戶的數據規范化并統一到數據庫中。按照數據處理的要求,首先使用SQL Server建立數據庫GLOBAL,并創建帳單表Statement存放所有賬戶帳單數據;然后創建行情表MarketData存放證券頭寸按日的行情數據;再創建匯率表Forex存放按日的人民幣外匯牌價數據。其他輔助表(帳戶表、投資者表、投資者增減資產表,投資者權益比例表,證券詳情表等)由于和本文討論的問題關系不大,限于篇幅,本文不作介紹。帳單表、行情表、外匯表結構見表1、表2、表3。
2、原始帳單數據項目的規范和Statement表數據的導入
內地市場、海外市場盡管有很多共性,但是由于我國金融市場發展僅有20余年,且相對審慎,所以,內地、海外金融賬戶的發生項目有很大不同,在數據導入、帳單數據表Statement錄入前需要進行分析、規范。
2.1 A股、B股帳單項目
A、B股帳單交易項目包括資金存取(銀行轉證券、證券轉銀行),證券買賣(證券買入、證券賣出),新股申購(新股申購、申購還款、申購中簽、新股入賬、申購配號、退款退息),配股(配股凍結、配股扣款、配股權證、配股入賬),開放式基金(申購、贖回),利息股息項(利息歸本、紅利入賬、利息稅、紅股入賬),股份轉托管。債券、權證、ETF和證券類似,可以比照處理。
2.2 內地期貨帳單項目
內地期貨帳單交易項目包括出入金、開平倉(每種又具有多空兩個方向)。出入金相當于股票賬戶(現貨賬戶)的資金取存,可按照股票賬戶處理。開平倉也可按照現貨方式處理,即按照交易方向,多單按照買入處理(資金發生額為負數),空單按照賣出處理(資金發生額為正數)。由于期貨實行保證金交易制度,實時賬戶資金余額會有誤差,但是平倉后賬戶余額正確。按照現貨方法計算期貨頭寸,不會影響凈值計算,也可使用更容易獲取的現貨指數進行計算,使期貨頭寸的估值更加方便。

2.3 香港、美國市場帳單項目
海外市場的賬戶一般是多品種、多貨幣賬戶。海外金融衍生品眾多,帳單中除了股票、ETF、期貨交易,還可有衍生品交易(如權證(窩輪)、期權,股票期貨),以及涉及各種外幣頭寸轉換的交易。海外證券賬戶可以方便地進行融資融券,融資融券都產生利息的收付(內地只有資金利息的收取)。此外,海外賬戶涉及眾多的費用(如賬戶費、行情費、訂單取消費、ADR費等),這些都導致了海外賬戶具有更多交易項。這些項目均需要記載到統一的帳單中,以便統一計算凈值和進行其他分析。對于股票、ETF、期貨、衍生權證、期權,股票期貨可比照AB股處理。對于外幣轉換、各種費用項需要增加編碼。
綜合多個市場的帳單交易項,為便于SQL Server數據表示,以及編寫程序采用統一算法處理,我們將各個帳單項目按照交易性質、資金發生情況、證券頭寸的影響進行編碼。各個帳單項項目編碼、資金發生情況、頭寸變動情況見表4。
原始帳單數據進行規范和整理后,導入并錄入帳單表Statemento

對表4的說明:
①內地、海外共性的項目不做特別說明,帶“*”號的項目為海外賬戶特有的帳單項。
②“申購配號”、“新股入賬”項目不引起證券數量、資金發生額的變化,帳單數據無更多意義,可以在轉入SQL Server數據庫后刪除。“新股申購退款退息”指個別證券在申購中簽后,由于某種原因,終止上市,退還投資者資金和利息的情況。
③股份轉托管指投資者從一家證券經紀轉另一家經紀的情況,此時股份辦理轉移,投資者資金帳號轉為新公司的資金帳號,為原始記載。
這種情況的發生和證券頭寸的轉移。在前經紀帳單中反映為0資金發生的頭寸賣出,在后經紀帳單反映為0資金發生的頭寸買入。
3、行情數據表MarketData和外匯數據表FOFOX數據處理
行情數據表可以從券商服務器獲得市場數據,也可以從第三方數據商處獲得。目前通用的行情系統也免費提供了數據的導出功能,可以導出文本格式的證券行情數據。YAHOO數據源也提供歐美證券的行情數據。這些數據經過下載和處理后,導入MarkeIData數據表。
中國外匯管理局免費提供了歷年按日各種外幣、人民幣中間價數據下載,可以方便地導入數據表Forex。值得注意的是,外管局提供的數據僅包括內地工作日數據,由于海內、外法定節假日不同,部分日期沒有中間價數據。數據缺失日的外匯數據可以合理地認為屬于外幣交易停牌,通過插值算法填補缺失數據日的數據。
4、凈值的計算方法
整理好Statement、MarketData、Forex表后,可以進行全球賬戶按日凈值計算。具體使用的開發工具可以是VisualBasic、C#,也可以直接用SQL Serer編寫存儲過程。本文采用C#編寫了凈值計算程序,可以計算任意日期的資產凈值。主要算法如下:
(1)查詢匯率表,獲得計算日的匯率HKDHL、USDHL。
(2)計算計算日資金余額。
①查詢計算日各類貨幣余額(未計入換匯記錄)CNY、HKD、USD。
∑發生額就可以獲得各種貨幣的余額,不過需要按照貨幣分組。此外換匯操作比較特殊,這里應排除,在下面統計了換匯數據后對貨幣余額進行一次修正即可。
②查詢計算日前(含計算日)所有換匯記錄,修正各種貨幣余額CNY、HKD、USD。
③計算計算日總的現金余額(CNY)。
CASH=CNY+HKD*HKDHL+USD*USDHL。
(3)統計計算日庫存證券,計算市值。
①統計證券余額(分組計算各個證券的余額)。
余額=∑數量。
②查行情獲得含行情證券余額(包括價格)。
③打開余額表,檢查所有證券的價格對所有無收市價或價格為0的證券,調用估值模塊進行估值。目前提供的估值算法有前推法、第一交易日法等。
④計算市值(各個證券市值和,單位CNY)。
MTVALUE=∑數量*價格*乘數*匯率。
(4)統計計算日總資產(凈值)
總資產ZZC=現金CASH+總市值MTVALUE
(5)打印輸出計算日總資產(凈值)、現金余額、證券市值等。
5、結束語
本文對全球金融資產帳單數據管理進行了探索,設計了可以存儲多品種、多幣種、多市場金融資產交易數據的Statement表,研究了各個市場交易數據的規范表示,提供了根據帳單數據計算全球金融資產凈值的算法。在這些工作的基礎上,可以進行很多全球投資者關心的計算,如單獨計算各種證券頭寸的盈虧、繪制資產凈值表等;對于集合資產管理者、QFIl管理者還可以計算每個投資人資產凈值和份額等。
參考文獻:
[1]田劍英.中國證券市場發展及其國際化[M].中國社會科學出版社,2008.
[2]李雯等.證券市場概論[M].中國人民大學出版社,2007.
[3]中央國債登記.結算公司債券市場[M].中國金融出版社,2008.
[4]John HulI.期權、期貨和其他衍生品[M].清華大學出版社,2009.
[5]劉恩.香港證券市場投資完全指引[M].中國經濟出版社,2008.
[6]梁忠輝.證券投資基金運行與管理[M].東北財經大學出版社,2007.