這篇講一講雙合約套利的狀態(tài)機(jī)。套利涉及兩個(gè)合約,也就是雙腿開平的問題。相對(duì)于單合約的話,狀態(tài)機(jī)就麻煩很多。
?不過就像前文所說,我們對(duì)訂單施加動(dòng)作,將委托回報(bào)或成交回報(bào)歸納為若干對(duì)訂單施加動(dòng)作后的回饋,在等待動(dòng)作回饋時(shí)設(shè)置訂單狀態(tài)。按照這樣的思路,我們把所有的動(dòng)作羅列出來,然后將倆個(gè)合約的動(dòng)作加以組合,然后再加上ing,就把所有狀態(tài)羅列出來了。
對(duì)合約施加的動(dòng)作:開,平,撤,等?!暗取笔怯捎谝煌瘸謧}之后,按照套利的原則,另一腿必須追平。因此率先建立好的一腿,必須等待第二腿也建立好相反的持倉,構(gòu)成套利組合。
那么,雙合約的訂單狀態(tài)就包含于下面的表格中:
合約狀態(tài)1開ing1平ing1撤ing1等ing
2開ing1開2開1平2開1撤2開1等2開
2平ing1開2平1平2平1撤2平1等2平
2撤ing1開2撤1平2撤1撤2撤1等2撤
2等ing1開2等1平2等1撤2等1等2等
?這樣,根據(jù)對(duì)訂單施加動(dòng)作后的回饋,就可以構(gòu)成你所需要的狀態(tài)機(jī)。下圖是考慮開倉構(gòu)建套利組合時(shí)的狀態(tài)機(jī),供讀者參考:
?平掉套利組合的邏輯和狀態(tài)流轉(zhuǎn)基本和開倉構(gòu)建一致,這里就不再贅述。