算法交易的進程及相關類型研究整理[程序化老手]
高雄應用科技大學 金融資訊所 姜林杰右
演算法交易與相關研究整理
最近的發文中,一再提及演算法交易策略,并提到用于交易執行的演算法交易策略,可以達成程式交易策略的設定績效目標,并達到保護程式交易策略的效果,避免910慘案的發生。
由于演算法交易是目前研究的主題,在此從文獻中整理一小部分,羅列于下(由于擔心太過學術性,讓網友反胃,我略去技術細節…,另外,必須特別聲明,這些內容整理自我們收集到的文獻,不敢略美;雖然,我們據此做了一些研究,但還未成熟到可以公開…)
「
演算法交易又稱為自動交易(Automated Trading)、無人執行交易(Robot Trading),系「在程式交易模型中加入演算法,設定目標并在限制條件下,設定最佳交易時點與交易量,并自動執行交易命令」,由于具可變與不可預測性,又稱「黑箱交易」。
演算法交易的實現必須透過資訊系統之應用,借助電腦執行各種交易策略,藉以銜接不同定量交易策略,為不同複雜交易模型提供執行方法。
演算法交易用以設定下單最佳執行路徑、執行時間、執行價格與執行數量的交易方法,以實現并保護程式交易的佈單;不同類型交易模型之佈單最佳化目標不同,趨勢交易者希望交易能迅速完成,但可接受較高成本;價值型交易者傾向延長交易時間以得到較佳價格;而套利交易對于價格極為敏感;而機構投資者希望提高交易隱蔽性與并降低衝擊成本。
演算法交易功能包括了,智慧路由選擇、降低衝擊成本、提高執行效率、減少人力成本與增加投資組合收益;透過演算法交易可:(1)降低交易市場衝擊,隱藏交易動機;(2)完成複雜程式交易,提高交易效率;(3)降低交易成本,提高投資報酬率;(4)降低人力成本,提高交易工作效率與品質。
演算法交易發展過程,起源于80年代后期美國證券市場全面電子化交易開始發展;NYSE在1997年開始推動分數制報價制度改為十進位小數點報價,降低了造市者的交易優勢、降低了市場流動性,也改變了金融市場微觀結構。市場流動性的降低導致機構投資者使用電腦分割交易指令,以執行更優越價格,此即最初的演算法交易策略—VWAP與TWAP演算法所希望達成的目標。交易者希望藉由「直接趨近市場」(Direct Market Access)的交易方式提高交易效率。
演算法交易不僅被使用于大量交易的買方,提供流動性的造市者、避險基金均使用之。對于同時在許多不同市場交易的商品,演算法交易提供最佳執行條件的路由選擇。
演算法交易的使用大幅改變下單執行方式,至2007年的統計資料顯示,在美國約有80%的機構投資者使用演算法交易;歐洲市場約有58%交易筆數與50%交易量採用;而倫敦交易所的演算法交易約為總交易量的60%。經濟學人預期美國市場在2010年以后的交易量將以AT,交易仲介者被迫提升基礎建設(Economist(2007))。由于演算法交易使用數量化模型自動產生定時與定量的指令流輸入市場,使基金經理人工作簡化,也促使更多樣化的演算法被開發出來。
關于演算法交易的相關研究整理如下:整體而言,演算法交易的目標在于同時平衡低交易成本與低交易風險兩大目標。市場交易成本包括了,傭金、交易費用、稅、買賣價差、延誤成本、價格浮動、市場衝擊、時間風險與機會成本等項目(其中傭金、交易費用與稅為可見的固定成本,其他為隱藏性的交易成本)。交易成本的負面影響包括:降低預期報酬率、影響定量策略(高頻交易、價差交易、套利交易等)模型實際收益率,以及影響組合實際配置比例等。
交易成本在市場微觀結構分析向為重要議題,Merton(1998)曾指出交易成本的降低是證券創新的動力;如何降低交易過程的成本之問題衍生出所謂「交易最佳化策略」的研究,其目標為「透過對證券交易成本的計算,制定出最佳的交易步驟,以降低交易成本,提高執行效率」。
演算法交易的使用確實能有效降低交易成本(Reinganum,1989),Domowitz與Yegerman的研究(2005)發現未採用演算法交易的交易成本為24 bp,而採用者為10 bp;此外,由于演算法交易將大交易單位切割成小的交易單位,亦可有效避免市場衝擊(Keim與Mashavan,1995);Hendershott、Jones與Menkveld的研究(2008)顯示演算法交易可提高流動性。
在確認演算法交易降低交易成本的功能后,Bertsimas與Lo(1998)研究如何在市場時序價格衝擊下擬定最佳執行策略;Almgren與Chriss(2000)延續其研究,探討訂單切割以至于延緩執行下單時間所可能引致的成本;Obizhaeva與Wang(2005)則嘗試在流動性不能立即滿足下,建立最佳化動態下單策略;Obizhaeva與Wang的研究依據市價報價列表(Limit-order-book)擬定最佳執行策略。
以上研究開啟了演算法交易的實務應用,因此產生更多樣化的演算法交易策略,但也因為背后的獲利潛能,使得更多的演算法交易策略被視為商業機密,只留下有趣的策略名稱與大致目標;公開的策略只是冰山一角,且往往過時,或被懷疑只是用以「釣魚」(引導市場形成特定Pattern以期設計后設策略以獲利)的演算法策略。(www.kzuj.com.cn )
演算法交易可視為程式交易的分支,但與程式交易不同之處在于,演算法交易較強調交易的執行,即如何快速、低成本、隱蔽的執行大量下單;而程式交易則強調下單指令的形成;簡單的說,程式交易可定位為「下單管理系統」(Order Management System; OMS),而演算法交易為「下單執行管理系統」(Execution Management System; EMS),演算法交易決定了下單時點、價格與交易量,動態觀察市場條件變化,做最佳化佈單,以維持程式交易策略的績效。
同時,演算法交易策略亦可保護程式交易策略,以避免被人為作價的干擾(試想,上下一筆不合理的買賣報價,就足以讓程式交易策略產生誤判),因此演算法交易可以做為程式交易的免疫策略。
如前述,演算法交易用以「降低市場衝擊成本、提高交易執行效率、增加投資組合收益、降低手續費、減少人力成本、執行複雜交易與投資策略」,提高程式交易策略績效。目前常用的演算法交易策略如下列:
1. 交易量加權平均價格(VWAP):依據歷史成交量在開盤期間的比例,分配下單量,并以交易量平均價格為比較標竿。
2. 保證交易量加權平均價格(Guaranteed VWAP):在VWAP外,再加上保證成交價格與交易量加權平均價格一致,否則交易商將承受損失。
3. 時間加權平均價格(TWAP):在下單期間的時間點平均下單,用于價格衝擊小時。
4. 交易量固定百分比(TVOL):下單量依據成交量同向調整,用以跟上市場趨勢變化。
5. 基準價交易算法(Price In Line):設定基準價,在接近基準價時放大交易,并于交易時間內完成,用于對價格比較敏感的投資者。
6. 執行差額(IS):提供風險參數與承受限度,并平衡降低衝擊成本與風險兩目標做最佳化計算。
7. 隱藏交易單(Hidden):等待期望交易價格出現時立即下單或取消,以確保成交價位并隱藏交易企圖。
8. 游擊戰(Guerrilla):將數量較大的買賣單分散成小單并使用多種交易技術,以免被跟蹤下單企圖。
9. 狙擊兵(Sniper):以分散并隱藏交易方式不暴露交易企圖并偵測對手交易策略,使攻擊性演算法。
10. 搜尋者(Sniffers):搜尋其他交易者正進行的交易,并偵測所選用的下單策略,通常以少量下單誘敵,以待對手上鉤,繼而嘗試增加下單數量。設計目的系找出市場中正使用的演算法或程式交易策略,以從跟作或對作中獲利。
11. 複雜事件處理(CEP):以歷史事件分析確認市場對事件的反應,再依據發生事件啟動交易以期獲利,如關連股票間的價差交易。
12. 模式識別(Pattern Recognition):以資料分析方式找出交易資料間的特徵模式,以形成交易策略。
演算法交易發展至今近30種,并已發展到第四代:第一代演算法為比較簡單的策略如TWAP、VWAP、TVOL、Price-In-Line等;第二代以IS為代表(包括IS、Atopen、Atclose、Float等);第三代以搜尋隱藏流動性(Hidden Liquidity)為目標,如Nighthawk、Sniper、Cobra策略,以因應特殊交易制度;第四代傾向智慧型交易,包括複雜事件處理(CEP)、新聞交易(News Trading)等。這些策略系根據不同市場特性與交易需求進行設計。( www.kzuj.com.cn 整理)
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯系技術人員 QQ: 511411198 進行 有償 編寫!(不貴!點擊查看價格!)
- 上一篇:從阿凡達延伸出的人工交易市場中智慧型代…
- 下一篇:沒有了!
相關文章
-
沒有相關內容