程序化交易中滑點產生的原因
「研究報告、宏觀資訊、交割資訊、語音解盤」
--CINDA FUTURES--
首先說說什麼是程序化交易中的滑點。我眼中程序化交易中的滑點就是,你的期望價格與實際成交價格之間的點差。可以給出一個滑點的計算公式:滑點=行情tick級別波動速度*網路延遲時間。 由於行情永遠是波動的,所以行情並不是產生滑點的原因。而在歷史回測和模擬盤中,由於沒有任何網路延遲時間,所以就不會產生滑點(但此時行情波動依然,但是沒有滑點),你可以在模擬盤中,對每一張單子設定止盈止損,你會發現,每筆都是按照你期望的價格激發止盈或者止損的。 按照上述計算公式,行情的波動,你是無法左右的,但是網路延遲時間,卻是你可以把控的。一定要清楚,你在你電腦上看到的行情,是重播而不是直播,而程序根據這一行情下發的指令,中間也需要傳遞的時間,才能生效。所以行情波動速度大以及網路延遲嚴重,會加大滑點的影響。而這一影響,其實對小周期交易級別甚至會產生顛覆性的結果。規避滑點的影響,可以採取以下三條道路
1 加大程序化交易的級別 在程序化交易的過程中,大周期的交易級別,其平均盈利點數和虧損點數必然大於小的交易級別。如果一個大級別的模型是平均盈利50點,平均虧損30點,而小級別是平均盈利5點,平均虧損3點,在歷史回測和模擬盤中,兩者看不出什麼大的區別,都是可以取得穩定盈利的模型,但是實盤中,就會截然不同,前者一定比後者有效的多,因為滑點的尺度,和平均盈虧點數,不在一個數量級。2 降低程序化交易過程中的網路延遲 採取一切辦法,尋找連接你程序化交易伺服器最快的途徑,降低網路延時。3 規避特定的行情波動速度快的時間點 比如我對非農,就採取完全規避的做法,數據公布前15分鐘全部清倉。行情的波動速度,你是無法左右的,但是惹不起可以躲得起,非農公布時間,精確到秒,此時不持倉,那滑點再大,對你也毫無影響。 綜上,2和3是對計算公式兩個乘數進行調整而降低或者規避程序化交易中的滑點,而方法一,其實並不降低滑點,只是使得降低滑點的影響效果,使其不影響你的收益率曲線。最後說一點,程序化交易中的滑點有的時候還可以增加你的收益,這需要你去理解你開單和平倉的方式,一句話,如果你開單方式是逆tick級別的勢,那滑點對你有利,如果你平倉方式是順tick級別的勢,滑點也對你有利,此時,你的網路延遲較大,其實是好事! 比如回踩方式的下單,還有固定點數的止盈,滑點都是你的朋友。當你有兩個以上的交易主機的時候,就需要對所有的下單和平倉進行甄別,如果滑點對你有利,則這些指令放到慢速網路主機上去操作,如果滑點對你不利,則要將這些指令拆分到快速網路主機去操作。 FeiyangEA開單方面,六成以上都是採取回踩方式,所以我是放到國內慢速網路主機去開單,而所有的平倉,都是程序化交易中滑點不利的方向,所以目前都是由美國快速網路VPS負責平倉操作。以上的改進,使得我實盤的成績,略好於同期歷史回測,從而保證了,實盤與回測的高度一致,這是程序化交易的最為重要的前提,否則交易模型的編製和優化,無從談起。
[信達創客量化]整理髮布
內容整理自互聯網,如不慎侵害您的權益請留言告知
我們將儘快刪除
推薦閱讀:
※美國各州房價差別大的各種原因
※被滿清打敗的明朝軍隊,為何不去東南亞建國?史學家:一個原因
※治療腰間盤突出費用?腰椎間盤突出原因
※「大姨媽」放你鴿子啥原因
※六原因導致月經次數過多