版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 PAGE 06版系統(tǒng)算法維護(hù)手冊目錄 TOC o 1-3 h z u HYPERLINK l _Toc174352108文檔修改記錄 PAGEREF _Toc174352108 h 2HYPERLINK l _Toc1743521091前言 PAGEREF _Toc174352109 h 3HYPERLINK l _Toc1743521102成本價和盈虧額算法 PAGEREF _Toc174352110 h 3HYPERLINK l _Toc174352111算法相關(guān)表的主要字段說明 PAGEREF _Toc174352111 h 3HYPERLINK l _Toc174352112成本和贏
2、虧說明 PAGEREF _Toc174352112 h 4HYPERLINK l _Toc174352113成本價算法 PAGEREF _Toc174352113 h 5HYPERLINK l _Toc174352114類型0 買入均價 PAGEREF _Toc174352114 h 5HYPERLINK l _Toc174352115類型1 持倉成本 PAGEREF _Toc174352115 h 5HYPERLINK l _Toc174352116類型2 保本價 PAGEREF _Toc174352116 h 5HYPERLINK l _Toc174352117盈虧算法 PAGEREF _
3、Toc174352117 h 6HYPERLINK l _Toc174352118成本贏虧的舉例 PAGEREF _Toc174352118 h 7HYPERLINK l _Toc174352119日終業(yè)務(wù)對成本的影響 PAGEREF _Toc174352119 h 9HYPERLINK l _Toc1743521203資金算法 PAGEREF _Toc174352120 h 10HYPERLINK l _Toc174352121表和相關(guān)字段的說明 PAGEREF _Toc174352121 h 10HYPERLINK l _Toc174352122具體算法計算 PAGEREF _Toc174
4、352122 h 11HYPERLINK l _Toc174352123期初余額(begin_balance) PAGEREF _Toc174352123 h 11HYPERLINK l _Toc174352124當(dāng)前余額(current_balance) PAGEREF _Toc174352124 h 11HYPERLINK l _Toc174352125可用資金(enable_balance) PAGEREF _Toc174352125 h 11HYPERLINK l _Toc174352126可取金額(fetch_balance) PAGEREF _Toc174352126 h 11HY
5、PERLINK l _Toc174352127可取現(xiàn)金(fetch_cash) PAGEREF _Toc174352127 h 12HYPERLINK l _Toc1743521284資產(chǎn)和市值算法 PAGEREF _Toc174352128 h 12HYPERLINK l _Toc174352129表和相關(guān)字段的說明 PAGEREF _Toc174352129 h 12HYPERLINK l _Toc174352130市值計算 PAGEREF _Toc174352130 h 13HYPERLINK l _Toc174352131資產(chǎn)計算 PAGEREF _Toc174352131 h 13前
6、言本文檔用于介紹06版柜臺交易系統(tǒng)的一些主要算法的說明和舉例,提供工程、維護(hù)人員、證券公司信息技術(shù)人員實(shí)際應(yīng)用中作為參考。成本價和盈虧額算法算法相關(guān)表的主要字段說明1)股票表算法相關(guān)字段說明(stock) 字段名 字段含義STOCK_CODE 股票代碼CURRENT_AMOUNT 當(dāng)前數(shù)量 SUM_BUY_AMOUNT 累計買入數(shù)量 SUM_BUY_BALANCE 累計買入金額 SUM_SELL_AMOUNT 累計賣出數(shù)量 SUM_SELL_BALANCE 累計賣出金額 COST_PRICE成本價2)股票變動表算法相關(guān)字段說明(stockreal) 字段名 字段含義STOCK_CODE 股票代
7、碼 ENTRUST_SELL_AMOUNT 委托賣出數(shù)量 REAL_BUY_AMOUNT 回報買入數(shù)量 REAL_SELL_AMOUNT 回報賣出數(shù)量 REAL_BUY_BALANCE 回報買入金額 REAL_SELL_BALANCE 回報賣出金額成本和贏虧說明成本價的算法目前共有三種,分別為買入均價、持倉成本、保本價,有關(guān)成本價的一些知識說明如下:成本價計算模式支持到個人,即每個客戶都可以通過“資金帳戶修改資產(chǎn)帳戶修改”對成本價計算模式進(jìn)行設(shè)置和調(diào)整(fit_flag)。如果客戶的成本價類型(profit_flag)為空,則取系統(tǒng)的成本價類型,即1002開關(guān)設(shè)置
8、的值。后臺每條股份記錄(stock)都具有四個字段:sum_buy_amount 累計買入數(shù)量、sum_buy_balance 累計買入金額、sum_sell_amount 累計賣出數(shù)量、sum_sell_balance 累計賣出金額。這四個字段對于計算累計買賣后的成本價和盈虧金額非常有用,通常在日終清算時對這四個字段進(jìn)行相關(guān)處理。當(dāng)日發(fā)生交易,產(chǎn)生股份變動記錄(stockreal),也具有四個字段:real_buy_amount 成交買入數(shù)量、real_buy_balance 成交買入金額、real_sell_amount 成交賣出數(shù)量、real_sell_balance 成交賣出金額。這四
9、個字段對于計算當(dāng)日買賣后的成本價和盈虧金額非常有用,通常在回報成交時對這四個字段進(jìn)行相關(guān)處理。每天股份記錄同時還有一個成本價字段cost_price,是日終清算時自動根據(jù)買入均價計算得到的,對于成本類型為0的客戶,成本價直接取自該字段。系統(tǒng)后臺本身不記錄股份盈虧金額,查詢的時候通過同一個算法(不論當(dāng)前客戶是哪種成本價計算模式)計算出股份盈虧金額income_balance。當(dāng)費(fèi)用比率通過前臺程序進(jìn)行進(jìn)行修改時,as上緩存的費(fèi)用(支持設(shè)置在內(nèi)存數(shù)據(jù)庫的那些表)會自動進(jìn)行同步,不需要重啟AS。目前基準(zhǔn)費(fèi)用設(shè)置需要重啟AS。3107開關(guān)設(shè)置的多凍結(jié)的值,會對計算當(dāng)天買入賣出的費(fèi)用計算和盈虧中的費(fèi)用部
10、分產(chǎn)生一定的但較小的影響。成本價算法類型0 買入均價成本價由日終來計算,白天實(shí)時成交買入和賣出不影響成本價,不考慮賣出費(fèi)用;在200708的基線包前,cost_price包含了買入費(fèi)用,以后不再包含買入費(fèi)用。【公 式】后臺成本價 日終后處理時對成本價字段進(jìn)行自動設(shè)置。前臺顯示成本價 = 后臺股票表的成本價cost_pricestock.cost_price類型1 持倉成本成本價實(shí)時計算,考慮白天實(shí)時成交買入,但不考慮白天實(shí)時成交賣出;該成本價包含了買入費(fèi)用,但不考慮賣出費(fèi)用?!竟?式】后臺成本價 日終后處理時對成本價相關(guān)字段進(jìn)行自動設(shè)置。前臺顯示成本價=(累計買入金額回報買入金額)/(累計買入
11、數(shù)量+回報買入數(shù)量)=(sum_buy_balance +real_buy_balance) / (sum_buy_amount+ real_buy_amount) 類型2 保本價成本價實(shí)時計算,考慮白天實(shí)時成交買入和賣出,所以白天買入賣出均影響成本價,同時該成本價包含了買入賣出費(fèi)用;且采用步進(jìn)算法,計算時步長以1厘為單位?!竟?式】后臺成本價日終后處理時對成本價相關(guān)字段進(jìn)行自動設(shè)置。前臺顯示1) 成本價需要分步進(jìn)行步進(jìn)計算,首先得到一個不包含賣出費(fèi)用的成本價的起始值cost_price= (累計買入金額回報買入金額累計賣出金額回報賣出金額)/ (累計買入數(shù)量回報買入數(shù)量累計賣出數(shù)量回報賣出數(shù)
12、量) =(sum_buy_balance+real_buy_balance-sum_sell_balance-real_sell_balance)/ (sum_buy_amount+real_buy_amount-sum_sell_amount- real_sell_amount);2)計算賣出費(fèi)用temp_fare,需根據(jù)4125配置不同進(jìn)行計算 41251,則為估算方式,費(fèi)用比例取4126設(shè)置temp_fare = (current_amount + real_buy_amount - real_sell_amount) * last_price * 0.00000001 * 4126的配
13、置值cost_price=(sum_buy_balance+real_buy_balance-sum_sell_balance-real_sell_balance)/(1-0.00000001*4126的配置值)/(current_amount+real_buy_amount- real_sell_amount)41252,則為預(yù)算方式,費(fèi)用比例取自后臺設(shè)置的標(biāo)準(zhǔn)費(fèi)用類別計算得到temp_fare。 41250,則為實(shí)算方式,費(fèi)用比例取自后臺設(shè)置的客戶實(shí)際費(fèi)用類別計算得到temp_fare。 3)按步長單位進(jìn)行計算 如果temp_mis=(current_amount + real_buy_a
14、mount - real_sell_amount) * cost_price-(sum_buy_balance+real_buy_balance-sum_sell_balance-real_sell_balance)- temp_fare = 0.0000000000001,計算結(jié)束,此時cost_price即為保本價。盈虧算法無論選擇何種成本價類型,盈虧算法一樣,區(qū)別在于賣出費(fèi)用計算部分(針對不同的4125設(shè)置),其中標(biāo)準(zhǔn)券888886和200000不計盈虧:盈虧金額 =證券市值累計買入金額回報買入金額累計賣出金額回報賣出金額賣出費(fèi)用=market_value-(sum_buy_balanc
15、e+real_buy_balance-sum_sell_balance-real_sell_balance)temp_fare其中temp_fare的計算按price表的最新價(last_price)計算且依賴于開關(guān)4125:開關(guān)4125為2, 賣出費(fèi)用進(jìn)行預(yù)算,則按標(biāo)準(zhǔn)費(fèi)用類別(bfare0)計算后臺計算得到temp_fare 開關(guān)41250,或1 則為實(shí)算方式,費(fèi)用比例取自后臺設(shè)置的客戶實(shí)際費(fèi)用類別計算得到temp_fare。成本贏虧的舉例某個客戶某天買入000008,10000股,成交價格10元,假設(shè)客戶對應(yīng)費(fèi)用類別的費(fèi)用比例為0.004,預(yù)算費(fèi)用比例4126設(shè)置為0.005,標(biāo)準(zhǔn)費(fèi)用比
16、例為0.006(此費(fèi)用不是9999的費(fèi)用),目前行情最新價已為11元,則白天成交后,后臺stock和stockreal表中和成本盈虧相關(guān)的字段情況。白天成交后的stock和stockreal表中和成本盈虧相關(guān)的字段情況如下:Stock:Current_amountSum_buy_balanceSum_buy_amountSum_sell_amountSum_sell_balanceCost_price000000Stockreal:Real_buy_balancereal_buy_amountreal_sell_amountreal_sell_balance1004001000000則選擇不同
17、成本類型時的成本價如下:0成交均價:成本價cost_price01持倉成本:成本價(sum_buy_balance +real_buy_balance) / (sum_buy_amount+ real_buy_amount)100400/10000=10.0402保本價:4125=1則成本價(sum_buy_balance+real_buy_balance-sum_sell_balance-real_sell_balance)/(1-0.005)/(current_amount+real_buy_amount- real_sell_amount)100400/(1-0.005)/10000=1
18、0.0904125=2 ,成本價在初始的10.040基礎(chǔ)上,按步長進(jìn)行步進(jìn)計算,直到temp_mis=(current_amount + real_buy_amount - real_sell_amount) * cost_price-(sum_buy_balance+real_buy_balance-sum_sell_balance-real_sell_balance)- temp_fare 10000成本價1004001100000.006 0為止,得到成本價10.101盈虧:market_value-(sum_buy_balance+real_buy_balance-sum_sell_b
19、alance-real_sell_balance)temp_fare41252,盈虧100001110040010000110.0068940 41250或1, 盈虧1000011100400 10000110.0049160日終清算后的stock和stockreal表中和成本盈虧相關(guān)的字段情況如下:Stock:Current_amountSum_buy_balanceSum_buy_amountSum_sell_amountSum_sell_balanceCost_price10000100400100000010Stockreal:Real_buy_balancereal_buy_amou
20、ntreal_sell_amountreal_sell_balance00000成交均價:成本價cost_price 101持倉均價:成本價10.0402保本價:4125=1 則成本價10.090 4125=2則成本價10.101盈虧:41252, 盈虧8940 41250或1, 盈虧91602)假如第二天客戶以12元的價格賣出了5000股000008,假設(shè)客戶對應(yīng)費(fèi)用類別的費(fèi)用比例為0.004,預(yù)算費(fèi)用比例4126設(shè)置為0.005,標(biāo)準(zhǔn)費(fèi)用比例為0.006(此費(fèi)用不是9999的費(fèi)用),目前行情最新價已為12元,則白天成交后,后臺stock和stockreal表中和成本盈虧相關(guān)的字段情況如下:
21、Stock:Current_amountSum_buy_balanceSum_buy_amountSum_sell_amountSum_sell_balanceCost_price10000100400100000010Stockreal:Real_buy_balancereal_buy_amountreal_sell_amountreal_sell_balance00500059760則選擇不同成本類型時的成本價如下:0成交均價:成本價cost_price 101持倉均價:成本價10.0402保本價:4125=1則成本價(100400-59760)/(1-0.005)/5000=8.1694
22、125=2 ,成本價在初始的8.128基礎(chǔ)上,按步長進(jìn)行步進(jìn)計算,直到temp_mis=(current_amount + real_buy_amount - real_sell_amount) * cost_price-(sum_buy_balance+real_buy_balance-sum_sell_balance-real_sell_balance)- temp_fare 0為止,得到成本價8.178盈虧:market_value-(sum_buy_balance+real_buy_balance-sum_sell_balance-real_sell_balance)temp_fare
23、41252, 盈虧5000*12(100400-59760)5000120.00619000 41250或1, 盈虧5000*12(100400-59760)5000120.00419120日終清算后的stock和stockreal表中和成本盈虧相關(guān)的字段情況如下:Stock:Current_amountSum_buy_balanceSum_buy_amountSum_sell_amountSum_sell_balanceCost_price50001004001000050005976010Stockreal:Real_buy_balancereal_buy_amountreal_sell_
24、amountreal_sell_balance00000成交均價:成本價cost_price 101持倉均價:成本價10.0402保本價:4125=1則成本價(100400-59760)/(1-0.005)/5000=8.1694125=2 ,成本價在初始的8.128基礎(chǔ)上,按步長進(jìn)行步進(jìn)計算,直到temp_mis=(current_amount + real_buy_amount - real_sell_amount) * cost_price-(sum_buy_balance+real_buy_balance-sum_sell_balance-real_sell_balance)- tem
25、p_fare 0為止,得到成本價8.178盈虧:market_value-(sum_buy_balance+real_buy_balance-sum_sell_balance-real_sell_balance)temp_fare41252, 盈虧5000*12(100400-59760)5000120.00619000 41250或1, 盈虧5000*12(100400-59760)5000120.00419120日終業(yè)務(wù)對成本的影響日終系統(tǒng)根據(jù)不同的業(yè)務(wù)計算sum_buy_amount,sum_sell_amount,sum_buy_balance,sum_sell_balance,cos
26、t_price值,并更新stock表。證券買賣等:business_type in (0, U, F, D)的業(yè)務(wù),如果occur_balance 0.0,則sum_sell_balance增加occur_balance,否則,sum_buy_balance增加abs(occur_balance);如果occur_amount 0,則sum_buy_amount增加occur_amount,否則sum_sell_amount增加abs(occur_amount)。申購中簽 、配售確認(rèn)等:business_type in (1, E, O)業(yè)務(wù),sum_buy_balance增加abs(occu
27、r_balance),sum_buy_amount增加abs(occur_amount)。紅股入帳:business_type = 3業(yè)務(wù),sum_buy_amount增加abs(occur_amount)。新股入帳和配股入帳:business_type in (2, 4)業(yè)務(wù),其中對lof上市stock_type=K除外,其他sum_buy_balance增加occur_amountbusiness_price,sum_buy_amount增加occur_amount。e、股息入帳:business_type = 6業(yè)務(wù),sum_sell_balance增加abs(occur_balance
28、)。證券托管、轉(zhuǎn)托和余額入帳:business_type in (7, 8, B)業(yè)務(wù),以price的收盤價asset_price作為成交價business_price計算成本,如果occur_amount 0,則sum_buy_balance增加business_priceoccur_amount,則sum_buy_amount增加occur_amoun;否則sum_sell_balance增加business_priceabs(occur_amount),sum_sell_amount增加abs(occur_amount)。 指定交易:business_type = A且75111(不是上
29、海新接口),則置sum_buy_balance = 0, sum_sell_balance = 0,sum_buy_amount = 0,sum_sell_amount = 0,cost_price = 0, 如為上海新接口,則成本字段不作變化。開基申贖:business_flag = 4073業(yè)務(wù),sum_buy_balance增加abs(occur_balance),sum_buy_amount增加abs(occur_amount);business_flag = 4074業(yè)務(wù),sum_sell_balance增加abs(business_balance),sum_sell_amount增
30、加abs(occur_amount)。置買入均價:根據(jù)上面的結(jié)算結(jié)果,對于sum_buy_balance的增加量0,如果證券后余額post_amount為0的,置cost_price = 0.0,否則,cost_price【(post_amount - _occur_amount)cost_pricesum_buy_balance的增加量】/【post_amount】資金算法表和相關(guān)字段的說明資金表相關(guān)字段說明(fund) 字段名 字段含義fund_account 資金帳號 begin_balance 期初余額 current_balance 當(dāng)前余額cash_balance 現(xiàn)金余額 che
31、ck_balance 支票余額 frozen_balance 凍結(jié)資金 unfrozen_balance 解凍資金 uncome_buy_balance 未回買入金額 uncome_sell_balance 未回賣出金額 uncome_correct_balance 未回買賣凈額correct_balance 資產(chǎn)修正金額 foregift_balance 禁取資金 mortgage_balance 禁取資產(chǎn)bail_balance 交易產(chǎn)生的可用資金具體算法計算在系統(tǒng)中,將用到幾種不同含義的資金余額:期初余額、當(dāng)前余額、可取金額、可用金額等。期初余額(begin_balance)指當(dāng)天初始化
32、后的最初余額,往往等同與前一天的最終余額。當(dāng)前余額(current_balance)當(dāng)前余額 = 期初余額 + 存入金額 - 取出金額 + 藍(lán)補(bǔ)金額 - 紅沖金額可用資金(enable_balance)可用金額 = 當(dāng)前金額 - 凍結(jié)金額 + 解凍金額 + 交易解凍和凍結(jié)的差Enable_balancefund.current_balancefund.frozen_balancefund.unfrozen_balancefund.bail_balance其中fund.bail_balance是交易產(chǎn)生的解凍和凍結(jié)之差,通過以下實(shí)時計算得到fund.bail_balancsum(business
33、_unfrozen_balancebusiness_frozen_balance)可取金額(fetch_balance)1)可取金額 = 當(dāng)前金額 凍結(jié)金額 + sum(交易解凍-交易凍結(jié)) max(臨時資金,0)禁取資金 未回賣出金額注1:sum(交易解凍-交易凍結(jié)bail_balance = sum(business_unfrozen_balance - business_frozen_balance)為交易解凍和交易凍結(jié)的差,現(xiàn)在實(shí)時體現(xiàn)在FUND表bail_balance字段上,注2:臨時資金未回差額(uncome_correct_balance) + sum(交易解凍-交易凍結(jié)),即
34、臨時資金uncome_correct_balance + bail_balance,其中未回差額uncome_correct_balance在fund表里每日初始化會根據(jù)undeliver算得一個uncome_correct_balance字段。2)如果2019設(shè)置為當(dāng)天存入不允許取出,則可取資金可取資金當(dāng)日存入不許取的發(fā)生額其中當(dāng)日存入不允許取的發(fā)生額為fundjour中現(xiàn)金類業(yè)務(wù)標(biāo)志包含2001,2003,2041的累計發(fā)生額和支票類業(yè)務(wù)標(biāo)志為2405的累計發(fā)生額。3)如果客戶有禁取資產(chǎn)且(總資產(chǎn)禁取資產(chǎn))0,當(dāng)可取資金總資產(chǎn)禁取資產(chǎn)時,則可取資金總資產(chǎn)禁取資產(chǎn),當(dāng)可取資金總資產(chǎn)禁取資產(chǎn)時可取資金0??扇‖F(xiàn)金(fetch_cash)1)如果2018設(shè)置允許支票自動套現(xiàn):則可取現(xiàn)金fetch_cash = 可取資金fetch_balance。2)如果2018設(shè)置不允許支票自動套現(xiàn):如當(dāng)前余額cur
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年股份代持協(xié)議
- 顴部褐青色痣病因介紹
- 阿洪病病因介紹
- 全國賽課一等獎初中統(tǒng)編版七年級道德與法治上冊《正確對待順境和逆境》獲獎?wù)n件
- 《電機(jī)技術(shù)應(yīng)用》課件 2.1.1 異步電動機(jī)結(jié)構(gòu)
- 幼兒園2024-2025學(xué)年度園務(wù)工作計劃
- (范文)花瓶項(xiàng)目立項(xiàng)報告
- (2024)茶業(yè)初精制加工生產(chǎn)線技術(shù)改造項(xiàng)目可行性研究報告寫作模板
- 2023年氫氧化鍶項(xiàng)目融資計劃書
- 【CSA GCR】大語言模型威脅分類
- 心理健康與大學(xué)生活學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 借款協(xié)議(父母借款給子女買房協(xié)議)(二篇)
- 外研版英語2024七年級上冊全冊單元知識清單(記憶版)
- 國家開放大學(xué)電大本科《工程經(jīng)濟(jì)與管理》2023-2024期末試題及答案(試卷代號:1141)
- 歌唱語音智慧樹知到期末考試答案章節(jié)答案2024年齊魯師范學(xué)院
- 國開(甘肅)2024年春《地域文化(專)》形考任務(wù)1-4終考答案
- MOOC 美在民間-南京農(nóng)業(yè)大學(xué) 中國大學(xué)慕課答案
- 國家開放大學(xué)《Python語言基礎(chǔ)》實(shí)驗(yàn)1:Python 基礎(chǔ)環(huán)境熟悉參考答案
- 《中國心力衰竭診斷和治療指南2024》解讀
- 中國馬克思主義與當(dāng)代課后習(xí)題答案
- 【拓展閱讀】類文閱讀《王羲之吃墨》
評論
0/150
提交評論