交易系統(tǒng)實(shí)施過程中的時(shí)間失真問題[程序化老手]
模擬系統(tǒng)按照自身的時(shí)間來處理其他進(jìn)程運(yùn)行時(shí)所收集和儲(chǔ)存的報(bào)價(jià)。進(jìn)程手機(jī)的數(shù)據(jù)現(xiàn)在已經(jīng)稱為歷史數(shù)據(jù),進(jìn)程記錄的報(bào)價(jià)頻率可以差別很大,這主要是因?yàn)橐韵聝蓚€(gè)因素:
1、原始進(jìn)程為之收集報(bào)價(jià)的金融工具的個(gè)數(shù)。
2、運(yùn)行原始進(jìn)程的計(jì)算機(jī)系統(tǒng)的速度。
這兩個(gè)因素的影響源于報(bào)價(jià)過程的本質(zhì)以及大多數(shù)交易系統(tǒng)的實(shí)現(xiàn)方式。大多數(shù)系統(tǒng)中都包含一個(gè)客戶端(報(bào)價(jià)收集和/或交易應(yīng)用程序),該客戶端接收?qǐng)?bào)價(jià)以及服務(wù)器(提供報(bào)價(jià)的經(jīng)紀(jì)運(yùn)營(yíng)自營(yíng)商應(yīng)用程序)信息。客戶端常常是在“本地”運(yùn)行的“本地”程序:即其運(yùn)行的電腦硬件完全處于交易員的掌控之下。經(jīng)紀(jì)自營(yíng)商的服務(wù)器端幾乎都是遠(yuǎn)程應(yīng)用程序,這意味著客戶必須通過遠(yuǎn)程連接,比如互聯(lián)網(wǎng),才能與服務(wù)器進(jìn)行通信。為了接受報(bào)價(jià),客戶端程序常常需要與服務(wù)器程序之間建立如下的通信:
1、客戶端向服務(wù)器發(fā)送一條或一系列包含以下內(nèi)容的消息:
a、客戶身份認(rèn)證(由掌管服務(wù)器的經(jīng)紀(jì)自營(yíng)商提供給客戶的)
b、請(qǐng)求報(bào)價(jià)的金融證券名稱
2、服務(wù)器將會(huì)做出回應(yīng),確認(rèn)客戶端的消息。服務(wù)器的回應(yīng)還將說明是否因?yàn)槟承┰虿辉试S客戶端接收某些請(qǐng)求的報(bào)價(jià)。
3、服務(wù)器開始把報(bào)價(jià)源源不斷的輸出給客戶端。報(bào)價(jià)流的輸出通常采取“不同步”的方式,也就是說,只要有新的可用報(bào)價(jià),服務(wù)器就會(huì)將它們發(fā)送給客戶端。有些證券的報(bào)價(jià)頻率比其他的證券高一些。例如,在經(jīng)濟(jì)信息發(fā)布前后的高波動(dòng)階段,歐元/美元匯率報(bào)價(jià)頻率達(dá)到每秒30次也不算稀奇。然而與此同時(shí),一些鮮為人知的股票可能在一個(gè)交易日只產(chǎn)出一次報(bào)價(jià)。因此在設(shè)計(jì)程序中接收?qǐng)?bào)價(jià)的部分時(shí),很重要的一點(diǎn)是記住報(bào)價(jià)的預(yù)期頻率。
4、接下來經(jīng)常會(huì)發(fā)生報(bào)價(jià)失真。所有報(bào)價(jià)一到客戶端計(jì)算機(jī)就進(jìn)行收集和處理,這是客戶端的責(zé)任。此處有可能發(fā)生若干問題。在客服端的機(jī)器里,所有到來報(bào)價(jià)都會(huì)按它們的到達(dá)順序放到一個(gè)隊(duì)列里,最早的報(bào)價(jià)里處理器最近。我們可以將此隊(duì)列看做是機(jī)場(chǎng)辦理登記手續(xù)的隊(duì)列。然而,與機(jī)場(chǎng)隊(duì)列不同的是,此隊(duì)列的長(zhǎng)度或者容量往往是有限的;因而任何報(bào)價(jià)到來時(shí)發(fā)現(xiàn)隊(duì)列已滿,此報(bào)價(jià)會(huì)被丟掉。這里就產(chǎn)生了第一個(gè)問題,當(dāng)客戶端系統(tǒng)隊(duì)列長(zhǎng)度不同,而其他所有系統(tǒng)特征完全一樣時(shí),不同客戶端的報(bào)價(jià)時(shí)間序列可能會(huì)彼此不同。
一旦報(bào)價(jià)已在隊(duì)列中,系統(tǒng)會(huì)從隊(duì)列中選取最早到達(dá)的報(bào)價(jià)進(jìn)行處理;接著隊(duì)列中所有的報(bào)價(jià)會(huì)挪動(dòng),使之更靠近處理引擎。就像前面講的一樣,報(bào)價(jià)的到達(dá)速度可能要比客戶端的處理速度更快,這樣報(bào)價(jià)會(huì)填滿隊(duì)列,從而導(dǎo)致系統(tǒng)丟棄新到達(dá)的報(bào)價(jià),直到舊的報(bào)價(jià)處理完畢。
相關(guān)文章
-
沒有相關(guān)內(nèi)容

會(huì)員登錄/注冊(cè)