一種委托處理牌價(jià)的系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本申請(qǐng)涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,尤其涉及一種委托處理牌價(jià)的系統(tǒng)及方法。
【背景技術(shù)】
[0002]隨著社會(huì)的發(fā)展與進(jìn)步,對(duì)金融產(chǎn)品的性能處理速度的要求日益提高。不僅是對(duì)數(shù)據(jù)處理的性能要求要高,而且對(duì)金融業(yè)務(wù)中的處理性能也要提高。
[0003]現(xiàn)有技術(shù)中在實(shí)際的程序軟件應(yīng)用中,委托掛單交易需要直接把該交易提交到服務(wù)端,服務(wù)端進(jìn)行到價(jià)的價(jià)格判斷。對(duì)于委托交易的牌價(jià)對(duì)比方式只能逐一進(jìn)行判斷對(duì)比,即在每到一次價(jià)格就進(jìn)行一次判斷,然后直接處理委托交易,這樣不管是數(shù)據(jù)逐一發(fā)送,還是整體發(fā)送,進(jìn)行業(yè)務(wù)判斷時(shí)都必須一一對(duì)比,方能達(dá)到預(yù)期到價(jià)價(jià)格,從而導(dǎo)致牌價(jià)處理不及時(shí),進(jìn)而導(dǎo)致牌價(jià)堆積,甚至出現(xiàn)系統(tǒng)崩潰的問題。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本申請(qǐng)?zhí)峁┝艘环N委托處理牌價(jià)的系統(tǒng)及方法,以克服現(xiàn)有技術(shù)中的委托處理牌價(jià)的方式處理不及時(shí),進(jìn)而導(dǎo)致牌價(jià)堆積,甚至出現(xiàn)系統(tǒng)崩潰的問題。
[0005]為實(shí)現(xiàn)上述目的,本申請(qǐng)?zhí)峁┝艘韵录夹g(shù)方案:
[0006]一種委托處理牌價(jià)的系統(tǒng),包括:至少一個(gè)牌價(jià)處理裝置,其中,每個(gè)牌價(jià)處理裝置包括:
[0007]至少一對(duì)牌價(jià)處理隊(duì)列,每對(duì)牌價(jià)處理隊(duì)列包括用于寫入牌價(jià)數(shù)據(jù)并將所述牌價(jià)數(shù)據(jù)進(jìn)行疊加以得到價(jià)格區(qū)間數(shù)據(jù)的第一隊(duì)列和用于讀取所述價(jià)格區(qū)間數(shù)據(jù)以進(jìn)行到價(jià)判斷的第二隊(duì)列;
[0008]用于監(jiān)控所有的所述第二隊(duì)列的價(jià)格區(qū)間數(shù)據(jù)的剩余量的監(jiān)控模塊;
[0009]用于在所述監(jiān)控模塊檢測到所述第二隊(duì)列的價(jià)格區(qū)間數(shù)據(jù)剩余量為零時(shí),控制所述第二隊(duì)列轉(zhuǎn)換為新的第一隊(duì)列,同時(shí)控制所述第一隊(duì)列轉(zhuǎn)換為新的第二隊(duì)列的動(dòng)態(tài)互換引擎模塊;
[0010]用于將從所述第二隊(duì)列中讀取的價(jià)格區(qū)間數(shù)據(jù)與用戶設(shè)定的委托交易價(jià)格對(duì)比以進(jìn)行到價(jià)判斷的到價(jià)判斷模塊;
[0011]用于當(dāng)所述到價(jià)判斷模塊判斷得到委托發(fā)起成功時(shí)進(jìn)行委托交易的委托交易模塊。
[0012]優(yōu)選的,所述到價(jià)判斷模塊還用于將所述用戶設(shè)定的委托交易價(jià)格進(jìn)行由小到大或由大到小的順序排序。
[0013]優(yōu)選的,該系統(tǒng)還包括:用于將所述牌價(jià)數(shù)據(jù)發(fā)送給所述第一隊(duì)列的數(shù)據(jù)源模塊。
[0014]優(yōu)選的,所述數(shù)據(jù)源模塊具體通過輪詢發(fā)送機(jī)制將所述牌價(jià)數(shù)據(jù)發(fā)送給所述第一隊(duì)列。
[0015]優(yōu)選的,該系統(tǒng)還包括:控制模塊,用于根據(jù)所述數(shù)據(jù)源模塊發(fā)送的牌價(jià)數(shù)據(jù)的數(shù)量,增加或減少連接入系統(tǒng)的牌價(jià)處理裝置的個(gè)數(shù)。
[0016]優(yōu)選的,所述委托交易模塊為多線程處理器。
[0017]優(yōu)選的,所述第一隊(duì)列和所述第二隊(duì)列分別包括:買入價(jià)格隊(duì)列和賣出價(jià)格隊(duì)列。
[0018]一種委托處理牌價(jià)的方法,包括:
[0019]利用第一隊(duì)列進(jìn)行牌價(jià)數(shù)據(jù)的寫入,并將所述牌價(jià)數(shù)據(jù)進(jìn)行疊加以得到價(jià)格區(qū)間數(shù)據(jù);
[0020]利用第二隊(duì)列進(jìn)行所述價(jià)格區(qū)間數(shù)據(jù)的讀??;
[0021]將讀取的價(jià)格區(qū)間數(shù)據(jù)與用戶設(shè)定的委托交易價(jià)格對(duì)比以進(jìn)行到價(jià)判斷,并當(dāng)判斷得到委托發(fā)起成功時(shí)進(jìn)行委托交易;
[0022]當(dāng)所述第二隊(duì)列的價(jià)格區(qū)間數(shù)據(jù)剩余量為零時(shí),控制所述第二隊(duì)列轉(zhuǎn)換為新的第一隊(duì)列進(jìn)行牌價(jià)數(shù)據(jù)的寫入與疊加,同時(shí)控制所述第一隊(duì)列轉(zhuǎn)換為新的第二隊(duì)列進(jìn)行讀取。
[0023]優(yōu)選的,在進(jìn)行到價(jià)判斷前,還包括:將所述用戶設(shè)定的委托交易價(jià)格進(jìn)行由小到大或由大到小的順序排序。
[0024]優(yōu)選的,該方法還包括:利用輪詢發(fā)送機(jī)制將所述牌價(jià)數(shù)據(jù)發(fā)送給所述第一隊(duì)列。
[0025]由以上技術(shù)方案可知,本申請(qǐng)?zhí)峁┝艘环N委托處理牌價(jià)的系統(tǒng)及方法,該系統(tǒng)包括:至少一個(gè)牌價(jià)處理裝置,其中,每個(gè)牌價(jià)處理裝置包括:至少一對(duì)牌價(jià)處理隊(duì)列,每對(duì)牌價(jià)處理隊(duì)列包括用于寫入牌價(jià)數(shù)據(jù)并將所述牌價(jià)數(shù)據(jù)進(jìn)行疊加以得到價(jià)格區(qū)間數(shù)據(jù)的第一隊(duì)列和用于讀取所述價(jià)格區(qū)間數(shù)據(jù)以進(jìn)行到價(jià)判斷的第二隊(duì)列;用于監(jiān)控所有的所述第二隊(duì)列的價(jià)格區(qū)間數(shù)據(jù)的剩余量的監(jiān)控模塊;用于在所述監(jiān)控模塊檢測到所述第二隊(duì)列的價(jià)格區(qū)間數(shù)據(jù)剩余量為零時(shí),控制所述第二隊(duì)列轉(zhuǎn)換為新的第一隊(duì)列,同時(shí)控制所述第一隊(duì)列轉(zhuǎn)換為新的第二隊(duì)列的動(dòng)態(tài)互換引擎模塊;用于對(duì)所述第二隊(duì)列讀取的價(jià)格區(qū)間數(shù)據(jù)進(jìn)行到價(jià)判斷的到價(jià)判斷模塊;用于當(dāng)所述到價(jià)判斷模塊判斷得到委托發(fā)起成功時(shí)進(jìn)行委托交易的委托交易模塊。該系統(tǒng)通過將牌價(jià)疊加處理得到價(jià)格區(qū)間數(shù)據(jù),然后進(jìn)行到價(jià)處理,有效的解決了牌價(jià)堆積的問題,減少了到價(jià)判斷的次數(shù),降低了系統(tǒng)的壓力。
【附圖說明】
[0026]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
[0027]圖1為本申請(qǐng)實(shí)施例一提供的一種委托處理牌價(jià)的系統(tǒng)的結(jié)構(gòu)示意圖;
[0028]圖2為本申請(qǐng)實(shí)施例二提供的一種委托處理牌價(jià)的系統(tǒng)的結(jié)構(gòu)示意圖;
[0029]圖3為本申請(qǐng)實(shí)施例三提供的一種委托處理牌價(jià)的方法的流程圖;
[0030]圖4為本申請(qǐng)實(shí)施例四提供的一種委托處理牌價(jià)的方法的流程圖;
[0031]圖5為本申請(qǐng)實(shí)施例四提供的一種委托處理牌價(jià)處理流程示意圖。
【具體實(shí)施方式】
[0032]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0033]為克服現(xiàn)有技術(shù)中的委托處理牌價(jià)的方式處理不及時(shí),進(jìn)而導(dǎo)致牌價(jià)堆積,甚至出現(xiàn)系統(tǒng)崩潰的問題,本申請(qǐng)?zhí)峁┝艘环N委托處理牌價(jià)的系統(tǒng)及方法,具體方案如下所述:
[0034]實(shí)施例一
[0035]本申請(qǐng)實(shí)施例一提供了一種委托處理牌價(jià)的系統(tǒng),如圖1所示,圖1為本申請(qǐng)實(shí)施例一提供的一種委托處理牌價(jià)的系統(tǒng)的結(jié)構(gòu)示意圖。該系統(tǒng)包括:至少一個(gè)牌價(jià)處理裝置I,其中,每個(gè)牌價(jià)處理裝置I包括:
[0036]至少一對(duì)牌價(jià)處理隊(duì)列101,每對(duì)牌價(jià)處理隊(duì)列101包括用于寫入牌價(jià)數(shù)據(jù)并將牌價(jià)數(shù)據(jù)進(jìn)行疊加以得到價(jià)格區(qū)間數(shù)據(jù)的第一隊(duì)列1011和用于讀取價(jià)格區(qū)間數(shù)據(jù)以進(jìn)行到價(jià)判斷的第二隊(duì)列1012。
[0037]其中,牌價(jià)數(shù)據(jù)包括買入價(jià)格和賣出價(jià)格,最新的牌價(jià)數(shù)據(jù)進(jìn)入第一隊(duì)列,在第一隊(duì)列中,多個(gè)買入價(jià)格疊加生成買入價(jià)格區(qū)間價(jià),多個(gè)賣出價(jià)格疊加生成賣出價(jià)格區(qū)間價(jià),然后在到價(jià)判斷時(shí)與用戶委托的交易價(jià)格進(jìn)行比較,并在符合條件的情況下進(jìn)行交易。
[0038]具體的,在本申請(qǐng)中,牌價(jià)處理隊(duì)列的個(gè)數(shù)可根據(jù)實(shí)際需要以及實(shí)際生產(chǎn)能力進(jìn)行設(shè)定,在此不作限制,可以為I個(gè)或多個(gè)。每個(gè)牌價(jià)處理隊(duì)列包括一個(gè)寫入隊(duì)列和一個(gè)讀取隊(duì)列,讀取隊(duì)列進(jìn)行讀取的時(shí)候,寫入隊(duì)列可以進(jìn)行寫入,二者互不干擾,實(shí)現(xiàn)了整體上的“無鎖”狀態(tài)。
[0039]用于監(jiān)控所有的第二隊(duì)列1012的價(jià)格區(qū)間數(shù)據(jù)的剩余量的監(jiān)控模塊102。
[0040]一個(gè)牌價(jià)處理裝置中所有的牌價(jià)處理隊(duì)列配備一個(gè)監(jiān)控模塊,來監(jiān)控第二隊(duì)列的價(jià)格區(qū)間數(shù)據(jù)的剩余量,當(dāng)發(fā)現(xiàn)第二隊(duì)列中的數(shù)據(jù)為空后,將消息發(fā)送給動(dòng)態(tài)互換引擎模塊。
[0041]此外,監(jiān)控模塊還可以監(jiān)控第一隊(duì)列,當(dāng)檢測到第一隊(duì)列和第二隊(duì)列均為空,且第一隊(duì)列沒有牌價(jià)數(shù)據(jù)寫入時(shí),將消息發(fā)送給動(dòng)態(tài)互換引擎模塊,使其停止對(duì)牌價(jià)處理隊(duì)列中兩個(gè)隊(duì)列的切換,節(jié)約資源。
[0042]用于在監(jiān)控模塊102檢測到第二隊(duì)列1012的價(jià)格區(qū)間數(shù)據(jù)剩余量為零時(shí),控制第二隊(duì)列1012轉(zhuǎn)換為新的第一隊(duì)列,同時(shí)控制第一隊(duì)列1011轉(zhuǎn)換為新的第二隊(duì)列的動(dòng)態(tài)互換引擎模塊103。
[0043]當(dāng)?shù)诙?duì)列中的待處理數(shù)據(jù)為零時(shí),動(dòng)態(tài)互換引擎模塊將第一隊(duì)列與第二隊(duì)列進(jìn)行切換,第二隊(duì)列作為新的第一隊(duì)列進(jìn)行待處理數(shù)據(jù)寫入,第一隊(duì)列作為新的第二隊(duì)列進(jìn)行待處理數(shù)據(jù)的讀取。
[0044]用于將從第二隊(duì)列1012中讀取的價(jià)格區(qū)間數(shù)據(jù)與用戶設(shè)定的委托交易價(jià)格對(duì)比以進(jìn)行到價(jià)判斷的到價(jià)判斷模塊104。
[0045]