• 沒有找到結果。

程式交易相關研究---策略交易模型最佳化、演算法交易設計、代理人基礎模擬分析與資料趨導交易模式開發

N/A
N/A
Protected

Academic year: 2021

Share "程式交易相關研究---策略交易模型最佳化、演算法交易設計、代理人基礎模擬分析與資料趨導交易模式開發"

Copied!
38
0
0

加載中.... (立即查看全文)

全文

(1)

行政院國家科學委員會專題研究計畫 成果報告

程式交易相關研究—策略交易模型最佳化、演算法交易設

計、代理人基礎模擬分析與資料趨導交易模式開發

研究成果報告(精簡版)

計 畫 類 別 : 個別型 計 畫 編 號 : NSC 98-2410-H-151-011- 執 行 期 間 : 98 年 08 月 01 日至 99 年 07 月 31 日 執 行 單 位 : 國立高雄應用科技大學金融系 計 畫 主 持 人 : 姜林杰祐 計畫參與人員: 碩士班研究生-兼任助理人員:郭家祥 碩士班研究生-兼任助理人員:林依瑩 碩士班研究生-兼任助理人員:林蓉萱 碩士班研究生-兼任助理人員:蔡芷翎 碩士班研究生-兼任助理人員:白湘怡 處 理 方 式 : 本計畫可公開查詢

中 華 民 國 99 年 10 月 12 日

(2)

I

行政院國家科學委員會補助專題研究計畫

„成果報告

□期中進度報告

程式交易相關研究

—策略交易模型最佳化、演算法交易設計、代理人基礎模

擬分析與資料趨導交易模式開發

Research on Program Trading - Strategies Optimization, Algorithmic Trading Design,

Agent-based Simulation Analysis, and Data-driven Trading Model Development

計畫類別:„個別型計畫 □整合型計畫

計畫編號:NSC 98-2410-H-151-011

執行期間: 98 年 8 月 1 日至 99 年 7 月 31 日

執行機構及系所:國立高雄應用科技大學金融系(金融資訊研究所)

計畫主持人:姜林杰祐

計畫參與人員:郭家祥、林依瑩、林蓉萱、蔡芷翎、白湘怡

成果報告類型(依經費核定清單規定繳交):□精簡報告 „完整報告

處理方式:

除列管計畫及下列情形者外,得立即公開查詢

中 華 民 國 99 年 10 月 11 日

(3)

II

目錄

中文摘要及關鍵詞 1 英文摘要及關鍵詞 2 報告內容 3 前言 3 研究目的 4 文獻探討 5 研究方法 16 結果與討論(含結論與建議) 23 參考文獻 25 計畫成果自評 27 可供推廣之研發成果資料表 29

(4)

1

‰中文摘要

本計劃延續主持人過去對於「程式交易」的基礎研究,進行包含以下主題的研究。 1. 以程式語言建構「開放式的投資策略回測環境」,以尋找「在不同市場環境與條件下」、「具備 外推效果」、「能掌握策略變動趨勢」、「運用於期權股票商品」的「複合操作策略」之最佳規 則與參數組合 2. 繼而,設計執行交易策略的即時交易環境,在此環境中,並可運用經驗證有效的演算法交易策略 動態執行交易。 3. 建立「代理人基礎」的金融交易模擬環境,用以測試不同代理人學習機制的效果。 4. 藉由「資料採礦技術」,以「資料趨導」方式歸納不同市場條件與投資標的下,有效的技術面交 易模型,以期運用建構之程式交易回測環境驗證效果與代理人模擬環境,尋找模型變動特性,形 成追蹤「市場自我適應特性」的交易系統。 經過一年的努力,分別針對以上四項研究目標,進行研究,並已發表研究成果。 關鍵詞:程式交易、組合最佳化、演算法交易、代理人基礎模擬、資料趨導、資料探勘

(5)

2

‰Abstract

This project extends relative researches of the proposer in the past few years on the topic of program trading to advanced ones as shown in the following.

First, we established an open and flexible back-testing environment for various investment strategies and then search the best rules and their parameters in strategies under different markets and market conditions which can catch the changing of market and can be applied in stocks and their derivatives markets.

Second, Real-time trading system will be established as well to execute investment strategies. Besides, various algorithmic trading systems embedded in the real-time system can be tested empirically and furthermore improved in Taiwan stock and future markets.

Third, an agent-based artificial financial market was designed to test the behaviors of investors to verify whether changing strategies by learning can improve the investment performance of agents.

Finally, various data-mining techniques were applied to find the hidden patterns, i.e. investment strategies, in market, financial, and economical datum. The systems established in the previous trading system was used to verify the usability of the conductive patterns.

After one year research, various achievements have been made on the above four objections.

Keywords: Programming Trading, Combination Optimization, Algorithmic Trading, Agent-based Simulation, Data Driven, Data Mining.

(6)

3

報告內容

‰前言 對於在金融市場從事投資的交易者而言,最關心的莫過於是否存在可以恆久超越市場績效的操作 策略。欲尋找此操作策略,可由大量的歷史資料的實證中尋求。由於此尋找過程,必須以不同的策略 對大量資料(長期間與多投資標的)進行實證回測;而操作策略的實現,也必須透過即時交易系統的建 構,監控市場資訊並做出買賣決策。以上操作策略回測的系統,以及執行交易系統的即時資訊環境建 構,皆必須運用資訊工具「快速、準確、大量資料處理,以及遠端訊息的接收與傳送」等特性,此即 「程式交易」(Programming Trading)被廣泛運用於交易分析與執行的背景。 固然,目前有許多的軟體工具,例如TradeStation,可以實現技術指標的回測,但若非藉由自行 開發的程式交易平台,無法延伸後續自訂技術指標、自訂績效指標,以及客製出即時策略操作環境。 市場上的交易者希望尋找可以恆久打敗大盤績效的投資策略,但此策略存不存在呢?由過去針對 台股指數廣泛的實證分析發現,所謂市場的優質交易策略是否並非固定不變,指標參數會變,甚至指 標組合也會變,簡言之,「市場是活的,會因為市場參與者策略的不同,而不斷改變最佳操作策略的 本質」。 「操作策略樣本外績效顯著劣於樣本內績效」(即期望績效與觀察績效間的差異)的現象,學術上 提出三種可能性,即偏差的理由可能來自於「隨機變異」(但此種解釋無法說明為何外推績效通常變 差),或是「市場結構動態改變」(Lo, 2004; Timmermann, 2001)(但若如此,無法說明模式運用後績效 立即變差的狀況),或是因為「太多交易者同時採取同樣技術方法」(Kidd and Borson,2004)(但同時間 交易者同時採用的策略很多)。 本計畫過去的初步研究看,我們假設,金融市場之本質為「多類別參與者、無限期數、具學習與 自我適應特性、有時為常數和(但有時不是)」的競局結構,需要做更深入的研究,包括從「操作策略 組合最佳化技巧」、「參數與策略組成時間動態行為分析」、「人工金融市場建構與策略組成實證」、 「競局觀點分析」、「以資料趨導方式(資料採礦作法)形成創新操作策略及其市場驗證」、「部位建 立過程設計演算法交易策略以期無延遲取得最佳成交價格」等不同方向研究此課題,因此開啟了本計 畫之研究。

(7)

4 ‰研究目的 本計畫之申請原為3年期的研究計畫,起始設定目標如下。 如前述,單純以技術分析指標建構交易策略,在實證上的實測結果令人失望,可能的問題之一是, 或許擊敗市場的策略遠比單一交易策略複雜,必須以邏輯運算結合不同技術指標並考慮停利停損的設 定;也或許,在不同的市場條件(上漲、下跌、盤整)時期,針對不同的標的物,設計不同的交易策略。 這是本計劃第一年的重點。 為使系統化的程式交易策略可以落實到即時交易系統中真實獲利,本研究第一年的計劃中,亦將 建構在不同平台上的即時交易機制;此外,亦將設計不同的「演算法交易」(Algorithmic Trading)策略, 並以逐筆交易紀錄(Tick Data)測試交易演算法的成效,期望將程式交易的研究與實作環境推進至實務 應用的最前緣。 假若市場上不存在一套固定不變的交易策略可以恆久打敗市場,則另一個探索交易策略的方式是 以「競局理論」(Game Theory)的角度,由市場上存在的現有策略,擬定因應策略。過去學者運用「代 理人基礎模擬」(Agent Based Simulation)的技術,研究金融市場中個體的互動、學習、調適,如何在 沒有外在變數衝擊下,由內在變數的互動產生出厚尾的報酬分配型態,以及變異前後期相關的現象(根 據Cutler, Poterba 與Summers 等人研究,自1991 年以來美國股市50 次大幅漲跌中,絕大部份並非受 到外在變數的結果);關於此,主持人亦曾經進行相關研究。

而依據Gupta, Hauser 與Johnson的研究,以「少數者賽局」(Minority Game)的觀點,逐期偵測日 圓兌換美元的外匯市場價格中,可預測的期間,並對未來價格作出預測,此研究即以代理人模擬為方 法學,而其研究結果,調和了效率市場與非效率市場的衝突,亦即「當市場中存在少數策略時,將呈 現可追蹤的市場型態,因此此期間的市場是沒有效率的;當市場中不存在少數策略時,將無法呈現可 追蹤的市場型態,因此此期間的市場是有效率的」。本研究計畫第二年的重點,即是承續主持人與學 者過去的研究路線,以「代理人模擬」技術,實證台灣金融市場,驗證台灣金融市場的若干假設,以 期擬定有效的投資策略。 尋找可行操作策略的方法,除了可以本計畫第一年目標,以既有模型為基礎,據以調整外(也許 做指標參數最佳化的調整,或者進行不同指標的組合等),但若以金融市場是一個「少數者賽局的觀 點」,運用既有策略,無法成為絕對少數。另一個尋找優質投資策略的途徑是捨棄調整使用既有策略, 即「模式趨導」(Model Driven)之作法,不預設立場,讓「歷史資料」說話,改以「資料趨導」(Data Driven) 的方法,自行建構操作策略,如此創成策略的方法,方足以保證策略的稀有性(如果市場的內在規則 是變動的,則依據不同時期歸納出來的最佳策略,亦將不同)。

雖然,本計畫申請時為三年期的計畫,可惜未得評審委員肯定,僅通過一年期的研究經費,但研 究團隊仍勉力而為,在以上三年期的目標中完成上述研究項目,並得到顯著成果。

(8)

5 ‰文獻探討 與本計劃研究主題相關之國內外重要參考文獻如下。 程式交易相關研究 關於程式交易的定義與其在交易領域的普及狀況已如前述。Jain(2005)指出資訊技術使得人工現 場交易的方式逐漸被電子交易平台取代(估計目前 70%以上的交易量都是透過程式交易模型完成)。 回顧程式交易的歷史,其起源於 1975 年美國股票組合轉讓與交易,藉此經紀人可透過電腦與交 易所連線實施一次性買賣交易。其後的金融管制放鬆、固定佣金制度、電子訊息網路、交易市場網路 互連等均促成程式交易的蓬勃發展。程式交易在90 年代以後迅速發展,主要的程式交易策略被運用 於存續平均(Duration Averaging;確認交易標的的合理上下限,在區間內買低賣高)、組合保險(Portfolio Insurance;動態進出以達保本目標的操作方式)、指數套利(Index Arbitrage)與數量化交易(Quantitative Trading)等不同應用領域。 學者認為,1987 年全球股市崩盤部分原因導源於指數期貨程式交易的連續拋售行為,產生市場 不穩定的連鎖反應(參 Miller 的「Financial Innovation and Market Volatility」一書)。在多樣化的程式交 易模型被使用並提升交易執行速度的同時,市場上出現專門誘殺程式交易的「獵殺程式」與以假交易 反制「獵殺程式」的隱身程式。 程式交易被大量使用的原因,係因為交易過程最難克服的是貪婪(該出場但未出場)與恐懼(該進場 而未進場)的人性,其為獲利的最大障礙;因此許多大型機構的專業交易員選擇以確定邏輯與客觀實 證結果為基礎的交易系統輔助交易,以期達成長期穩定獲利的目標。 程式交易與人為交易的差異整理如表1。 表1 程式交易與人為交易的差異 程式交易 人為交易 交易決策判斷與交易方式理性客觀 交易決策判斷與交易方式感性主觀 以可以取得、能形成明確數值化交易規則, 以供驗證的分析面向為基礎 進一步可考慮較難量化的面向,但也因過多面向的 人為考慮,難以驗證,可能在操作模型中形成矛 盾、不穩定的交易策略 交易績效穩定性高 交易績效穩定性低 較不需依賴操作專業與經驗,而能有穩定的 表現 相當仰賴操作專業與經驗,表現不穩定 以資訊技術隨時監控市場狀況,並對所有狀 況提供應對,對於即時狀況處理速度快 需耗費人力監控市場,當市場訊息超出交易員的處 理極限時,容易漏掉重要訊息,導致錯誤判斷 Kahneman 與 Tversky 研究「風險下決策」提出的展望理論,開啟後續在財務行為與投資心理領 域的研究,也提供程式交易運用的必要性—以程式分析的理性克服交易過程的不理性。表 2 列表透過 程式交易如何克服投資心理偏誤。 表2 以程式交易克服投資心理偏誤 投資心理偏誤 運用程式交易的理由 注意力定錨 程式交易分析過程中,可以輕易分析任意期間的資料,而不受限於短期或近期 的認知,產生錯誤的範圍錨點,且程式交易形成的策略可以加入停利與停損之 設定,停利點與停損點的產生,也是根據理性的歷史資料分析。 誤 信 立 即 可 用 電腦對於資訊的處理較之於人,有更高的精確性(不會因為資訊強度與發生時

(9)

6 的 資 訊 與 過 度 自信 點不同而有認知差異),對於資訊的處理容量僅受限於記憶體空間大小,處理 速度亦以指數成長,因此對於各項資訊不會給予不同心理權重,而受短期訊息 左右。 避 免 後 悔 並 追 求自尊 以程式交易在計畫階段制定的投資策略,若能有紀律的執行,則不會因為不願 接受短期與少量虧損而賣不出手的情形。執行策略的執行者明白,即便此次停 損是錯誤的,責任也在於計畫階段,而應由下一次的計畫調整,而非在交易的 當下主觀調整。計畫與交易責任的分散(不管是否為同一執行個體),會減輕交 易過程的心理負擔。 情境效應 透過程式交易的交易執行階段,交易者或有部分權限依據即時情境調整,但有 其限度,可以將情境效應降到最低。有些優秀的交易員,確實可以由交易瞬間 的情境資訊,例如交易量變化、買賣盤張數、買賣價差、相關資產波動等,找 到更好的買賣時點與價格;若然,可以在下次的交易中,放寬此交易員的自行 決斷範圍,並作為績效考核的一部分,甚至使其參與程式交易的計畫過程;但 程式交易形成的大策略,仍應被遵守,否則制度將崩潰。 掉 到 心 理 帳 戶 的陷阱 程式交易不帶感情,不會錯誤分類資金,誤判資金價值,對於資產該買該賣的 判斷明確,不會陷入又想賣又想買,結果又買又賣,的心理帳戶陷阱。 對 資 產 分 散 的 錯誤認識 唯有程式可以理性分析資產的相關性並予以量化,也可以針對資產預期報酬, 給予不同權重,而不需天真的多角化。 代 表 性 偏 誤 與 熟 悉 度 偏 誤 的 盲點 程式交易對於所有投資交易標的一視同仁,也不會受限分析幅度,而可以作擴 及所有可能投資標的的廣泛分析。程式交易分析的過程,媒體知名度、個人熟 悉度均不在考慮之列,且媒體光環或印象績效等都必須在回溯測試過程受到客 觀檢驗,因此代表性偏誤與熟悉度偏誤的盲點可以排除。 盲從心理 程式交易冷靜的綜觀時空,不受短期干擾;甚至運用程式交易,可以搓破社會 化的假象。例如台海試射飛彈、911 事件、921 地震、SARS 等在當時被認為驚 天動地的事件,由歷史時空回溯過程可以發現,在一片槁木死灰中佈局資金, 後來都獲得正面回饋。如此,可以制定,如何「在反社會化趨勢或由盲從之後 的過度反應中獲利」之投資策略。 投資歷史上許多的市場狂熱以及伴隨而來的價格泡沫,都可以由投資過程的心理偏誤解釋;而了 解投資心理偏誤的積極意義,則在於「設法不要」掉到心理偏誤所形成的決策陷阱中。許多學者將技 術分析之所以可以得到實證上的支持,歸因於人類行為的一致性,此一致性更於Peterson 的著作中得 到神經科學上的支持。 Tvede 分析「市場趨勢」、「區間走勢」、「轉折點」、「恐慌心理」等市場可以觀察到的現象,都可 以由投資心理分析得到證實。Tvede 進一步分析多頭與空頭的回饋過程,發現其間的驅動力量均可歸 究於心理力量。在進貨過程中依序為「後見之明偏誤與後悔¾以圖形為根據的買進訊號¾代表性效應 ¾多頭玩弄莊家籌碼¾自我驗證¾媒體合理化¾銀行/營業員推銷股票活動增加¾財務流動性增加¾錯 誤共識效應¾放空者的停損買單」,在出貨過程中依序為「後見之明偏誤與後悔¾以圖形為根據的賣出 訊號¾代表性效應¾放空者玩弄莊家籌碼¾自我驗證¾媒體合理化¾銀行/營業員推銷股票活動減少¾ 財務流動性減少¾錯誤共識效應¾多頭者的停損賣單」。 許多操作策略模型,即以投資心理學的對作為基礎。例如在Peterson 的著作中,整理以下幾種: 1. 藉由風險觀感的過度反應建立策略。此策略包括對不同國家債券評等的不對稱,或不同價

(10)

7 內外與遠近期選擇權波動性的錯誤認知。 2. 風險溢酬的期望差異策略。此策略藉由預測市場預期之改變,提前建立部位以獲利;或如 投資人對於財報透漏訊息反應不足以獲利。 3. 藉由風格投資獲利。例如選取價值股、小型股或動能投資等特色標的建立投資組合以獲 利。(根據 Haugen 的看法,基金經理人基於跟隨市場績效的考量,較可能選取大型成長股, 因此小型價值股得以持續有獲利機會;即使效率市場的支持者 Fama,其所管理的基金也 採投資小型價值股的策略) 4. 藉由「聽謠言買進,消息發表時賣出」的方式獲利。 5. 藉由「心理帳戶」偏誤獲利。 投資心理的偏誤提供了系統交易的理由(操作策略使用前必須先經過實證回測),而交易者生理上 的限制,則提供建構高效率即時交易環境的必要性。假若投資人作較短的交易,可能會面臨生理上的 障礙。 在短線下單過程,概可分為三個階段,分別是「看盤」、「判斷」與「下單」。在「看盤」階段,當 報價的速度超過視神經的反應速度(我們看電影,每個分割畫面出現的速度只要在 24 分之 1 秒之內, 會被視為是連續畫面,即所謂「視覺暫留原理」),則人工看盤已經沒有任何意義,許多穿價是觀察 不到的,可稱之為「人類看盤極限」;目前券商提供的看盤軟體之報價頻率通常以秒計,投資人以為 觀察到每一個瞬間價格,但其實沒有;交易所的撮合報價係以毫秒(0.001 秒)計,而國外有些交易所 之報價甚至以微秒(0.000001 秒)計。以此觀之,當進行諸如逐筆交易、套利交易、價差交易、造市交 易等類型的極短交易時, 以人工看盤是很可笑的。 在「決策判斷」階段,投資人又將卡到「人類處理訊息極限」(約 2 秒)的問題;有一個有名的心 理實驗說明了此困境,首先心理學家說出一段亂數序列(例如,39584207126570….),請受試者嘗試背 出他所聽到的亂數序,一般人只能回憶到 5~7 個(超過 9 個數字已經很少),為什麼呢?因為短期記憶 能存留的時間只有大約2 秒,再長的訊息已被遺忘。回到看盤下單的環境,排山倒海的相關資訊湧入, 投資人能掌握多少呢?盤前設定的交易策略,投資人又能記得多少?更何況還要針對看盤資訊進行策略 執行前題的比對,還有多少記憶空間可以處理呢?更別忘了,投資決策身處在一個任何下單決策都會 影響大幅盈虧的壓力環境中。 最後,提到在看盤、下決策後的「下單」階段,假若投資人經過以上兩階段的考驗,決定下單了; 如果投資人使用「鍵盤設定、滑鼠點按」的網路下單方式(這是除了程式交易自動下單最快的下單方 式,無奈也是目前合法下單方式中最快的),不考慮看盤與決策判斷,儘管瘋狂下單(聽起來像是玩電 玩射擊遊戲),又能有多快呢?根據報導,有紀錄的人類最快按鍵速度 1 分鐘可以敲滑鼠 370 次,對於 交易而言仍然不夠快。 更何況,短Trade 下單時,面臨的是前述「3 合 1 的障礙」。唯一的選擇唯有透過電腦程式交易, 也就是把「看盤、判斷、執行」的工作交給電腦。這是我們支持程式交易除了投資心理困境的另一個 理由—為了突破「生理障礙」。 正因頂尖操盤天賦不易習得,許多國外避險基金與期貨交易大量使用程式交易,究其背景,與「可 投資標的商品劇增」,「分析構面越趨複雜」,「分析模型越來越精緻」等因素有關,若純以人力觀察、 交易,容易失誤(更遑論人對標的的「看法」多少會主觀)。因此,為求穩定的投資績效,程式交易漸 成主流。 另一方面,市場上定義程式交易概以「投機」操作為主,但廣義而言,只要是可透過電腦程式回 測、過濾、交易的操作策略,如套利交易、避險交易、價差交易等等,均可視為程式交易的應用範圍。

(11)

8 在程式交易的操作標的方面,也不僅限於權益市場商品(股票);固定收益市場(債券、票券),外匯市 場,以及這些金融現貨市場的衍生市場(遠期契約、期貨、選擇權、交換,以及再衍生商品),均可為 應用標的。 有些交易策略本身是矛盾的,例如技術分析中的擺蕩指標與趨勢指標、基本分析中的價值股投資 與成長股投資。或許並非所有的操作策略適合所有的環境,「也許」擺蕩系統適用於盤整時期,趨勢 系統適用於上漲或下跌格局;「也許」價值股投資在盤勢低迷時有效,成長股投資在市場有炒作題材, 趨向狂熱的情況下有效。也許有很多的也許,這些都有待驗證;除了運用資訊科技形成有效率的實證 環境,提供假設驗證外,又能憑藉什麼。 依據 Pardo 的整理,交易策略發展的程序如下: 1. 形成交易策略想法(Formulate Strategy)

2. 將交易策略設計成可執行的形式(Specify in Testable Form) 3. 前期測試(Preliminary Check)

4. 多階段多市場測試(Multiperiod, Multimarket Test)

5. 多階段多市場最佳化(Multiperiod, Multimarket Optimization) 6. 多市場分階段分析(Multimarket Walk-Forward Analysis) 7. 即時交易(Real-Time Trading)

8. 比較交易與測試績效(Compare Real-Time Performance to Expected Performance) 9. 修正策略(Refine Strategy) 程式交易模型係「不斷成長」的模型(相對的,市場操作難度也越來越高),簡單的模型可以發展 成: 1. 條件式的操作系統。例如先於上層判斷適用之程式交易系統類型,再於下層運用不同的模型,如 大幅震盪行情中,運用趨勢系統,在小幅震盪行情中,運用擺盪系統。其它分層可能包括區別不 同市況(交易量高低、上漲下跌或盤整市場),或不同產業使用不同模型。此部份的分析可運用統 計多變量分析,以確認不同模型確實在不同變量下具備顯著差異性。 2. 整合式的操作系統。在不同市況運用不同操作策略時,結合相關金融商品,形成整合式操作策略。 例如某股票操作模型擅長於選股,但不擅長於選時,則可以配合指數期貨的避險操作,「對沖」 (Hedge)選時的可能誤差,守住選股的相對優勢。又如某操作模型屬於震盪系統(例如箱型操作策 略,或如心理線操作策略),弱點在於面臨大波段漲跌,則可以以指數選擇權的下跨式策略(買入 買權同時買入賣權),對可能的模型失效作保險。 3. 跨市場交易系統。例如套利交易、價差交易(同類股票的價差,或者作多優質股同時放空劣勢股, 以賺取價差)等,其交易策略特性並非作單一市場的投機,而是押注在跨市場的特定關係。 4. 具時變性的交易系統。程式交易形成的規則並非一成不變的定律,隨著每次交易循環之完成,必 須檢討交易成敗,確認使用交易策略模型的指標並未鈍化,若已經有部分規則參數、規則本身, 甚或整套交易策略失效,則應隨時調整。畢竟市場是活的,交易規則之不變特性也許存在於其可 掌握的變化特性,例如成長股與價值股間的輪動趨勢。 如前述,不同程式交易系統(模組或策略),有其存在的條件(就像許多財務金融理論,有假設條件 一樣),這帶來的另一個問題是,要如何確認操作系統的前提條件呢? 例如經過實證分析發現,確實擺蕩系統適用於盤整市場,但是又如何尋找先行指標確認市場即將 進入盤整?這也要透過程式交易來確認,亦即在原來的模型之上,再架構一個上層模型(Meta-model)。 再則,萬一模式失效時,又該如何?除了停損以外,又有何因應對策。對此,衍生性金融商品或許

(12)

9 可以幫得上忙,假若投資人以指數選擇權架構一個下跨式選擇權(同時購買指數買權與賣權),則當指 數大漲大跌(即偏離原先模式設定的盤整架構)時可以獲利,藉此獲利或可補償原來擺蕩系統失效的損 失,下跨式策略的好處在於,假若盤勢脫離擺蕩的價格下限,由賣權部分的利得,除了涵蓋(Cover) 掉停損的損失,還可能獲利,同時下跨式策略的購入買權部分,可以補償價格突破擺蕩價格上限,系 統自動停利後的獲利損失。另一種做法是只啟動單邊保護,例如購買賣權,僅保護下方風險(此做法 成本較低)。 少數公開的程式交易模型均宣稱具備優異的績效,但投資策略是一場精密的賽局,當操作策略被 市場廣為週知並使用,可能無法持續所宣稱的績效。 技術分析方法與相關研究 雖然程式交易的應用,可以擴及任何「可以取得量化數據,形成邏輯化交易規則」的分析構面; 但目前程式交易模型的分析面向仍偏向於「技術分析」,對於技術分析的有效性Bruton Malkiel 認為(參 其「A Random Walk down Wall Street」一書)「在科學嚴密檢視下,圖表解盤與煉金術差不多」。技術 分析或有機會因為許多人的虛幻信念,成為「自我成真的預言」,但也有可能是因為太多人使用相同 的技術尋找獲利機會而失效。 投資人在市場中預測金融商品價格的未來走勢,以期「逢低作多、逢高作空」;以股票為例,預 測股價未來走勢的方法甚多,包括總經面、產業面、政治面、消息面、籌碼面、基本面(財務面)、技 術面…等不同面向的分析,這些分析各具特色亦各擅勝場;至於何者較能掌握股價未來走勢,難有定 論;或有「漲時重勢、跌時重質」之說法,即在強調在不同時期應採取不同分析方法之謂。 但限於「資料可取得」與「資料可定量」兩限制,並非所有分析構面均可作「程式交易」分析。 資料是否真實、是否乾淨,亦會影響分析成敗;技術面分析受到資料污染導致錯誤分析的機會,就比 使用基本面分析來得少。 技術分析的理論基礎在於認定股票的本質和市場上的一般商品相同,其買賣價格和成交數量決定 於買賣雙方供需力量的均衡,且過去的交易記錄可提供對未來股票價格預測的充分資料,故藉由分析 過去一段期間股票的價量記錄,可作為未來股價走勢的預測基礎。技術分析之資料來源主要是過去成 交記錄的價量資料,因此技術指標即對價與量之數值依合理的方式進行數學處理形成。 由於缺乏嚴謹理論支持,技術分析早期被認為是沒有根據的「金融煉金術」,在投資學術領域一 度受到忽略,例如,Arditti 的研究指出圖形分析專家根本無法分析實際股價走勢圖與隨機漫步程序所 產生的價格走勢圖間的差異。即使如此,技術分析方法在股票分析的實作領域仍佔有一席之地,在無 法進行基本分析與產業分析的期貨交易領域,更是主流分析方法。 雖然,無法找到技術分析論述的演繹基礎,學術界開始以統計方法檢驗技術分析的有效性;這些 肯定技術分析方法的研究包括:Jedadeesh 使用動能指標針測類股趨勢,顯示證券報酬可以預測;Blume 與Easley 研究指出,成交量可以做為股票走勢預測的依據;Gency 結合均線指標與類神經網路所形成 的非線性模型,運用於道瓊指數上可有優越的預測能力; Hsu 與 Kuan 的研究指出,個別或綜合使用 技術分析指標形成的操作策略,可以產生統計與經濟上的顯著利潤。這些發表在主流期刊的研究,並 未否認技術分析的價值。 為何「技術分析」可以成立,其原因為其它構面之影響均會「匯聚」在股票交易價量上,且其資 料最為「真實」而「乾淨」,此為其它構面分析所沒有的優點。 本研究計畫的前兩年所用以建構交易策略的分析方法,將以技術分析為主。 即時交易流程與下單系統簡介 在透過策略實證回測找到可獲利的交易策略後的下一步,是在交易市場中透過此模型實現獲利; 為此,就必須建構一可監控市場動態的即時交易系統(即盯盤系統)。策略執行階段的交易流程,其流 程如圖1 所示。

(13)

10 圖1 交易執行流程 首先,交易所(證交所或期交所)針對來自不同券商與期貨商的買賣單進行撮合,買賣價資訊與撮 合的成交價,逐筆由主機送出到券商、期貨商,以及提供即時資訊源的資訊廠商。投資人可以透過資 訊接收工具(看盤軟體或者讀取即時報價的軟體元件)取得即時報價,以之驅動判斷邏輯(可能存在於人 腦中,或者在幾條程式碼中),假若策略判斷邏輯被觸發成下單行動,可透過手動或下單傳送工具自 動下單,下單委託被送到券商或期貨商,券商或期貨商回送委託成功與否(此即委託回報)的訊息給原 發訊者(投資人),同時將下單指令透過專線傳送至交易所進行撮合,假若撮合成功,成交回報訊息會 透過券商或期貨商回報給投資人知道,以備進行後續動作;依此程序週而復始,此即下單的流程。 以上的程序可以使用半自動化完成(最快來回也要幾秒鐘),在技術上也可以做到完全自動化(至於 可不可以作到這麼快,還要考慮適法性);如果市場夠快,交易可以在一瞬間完成,需不需要這麼快 的速度,依據投資人的策略性質而定(當然也就跟投資人的交易習性有關)。一般而言,期權市場的交 易速度較之證券市場來得快,在1987 年的股災中,兩種市場的不同步,讓許多作指數期現貨交易的 套利者承受極大的風險。

圖1 的流程中,在「資訊接收」方面可使用如 DDE Quote 或 API Quote 等工具;在「下單判斷」 方面,可使用 Excel、VBA、VB 等開發環境設計系統達成,或使用如 TradeStation、MultiCharts 或 HTS 等工具;「下單傳送與訊息接收」方面可透過券商提供的 API 模組,或 OCX 元件、DLL 呼叫介 面等。 透過券商或期貨商的看盤軟體,從取得報價、人工判斷策略觸發、手動下單、取得委託回報與成 交回報的每一階段的耗時,大約都是以秒計,因此完成整個成交週期,再快也要數秒鐘的時間。但若 藉由客製下單系統(下單機)來執行交易流程,可以把交易流程時間大幅降低,甚至降到毫秒(0.001 秒) 的數量級。 客製下單系統依據執行效率與技術應用層次,可以分為兩種,以下分別介紹並比較之: 1. 文字檔下單機(可讀取文字檔的交易系統)。

最早期的下單機稱為「文字檔下單機」,其作法為藉由如TradeStation(TS)或 HTS(Home Trade System) 的軟體,讀入市場即時資料,測試交易策略是否觸發買賣行動;若是,則將買賣行動的交易訊息,

(14)

11 包括商品類別、下單方式(市價或限價交易)、價格(如果是限價交易)、買賣單位數等訊息,寫出到 外部文字檔中(使用文字檔作為訊息傳遞媒介,係因為任何應用程式都可方便讀寫文字檔),再由 下單程式(交易系統)定頻讀取文字檔中的交易訊息;解析後,送入交易系統內含的下單元件(可能 為應用程式介面(API)或軟體元件(如 OCX)的函數呼叫)執行交易。 文字檔下單機在設計過程中,必須在「下單判斷邏輯系統」中,寫出下單指令到外部文字檔中, 並在內含下單API 的系統中,加入「不斷讀取下單指令文字檔的內容,以驅動 API 下單的程式碼」, 藉此達成「讀取即時訊息、觸發策略、立即下單」的即時交易功能。有些下單元件可以回傳委託 回報與成交回報,有些不可,但下單功能是一定需要的。在目前法規限制下,不能由程式直接丟 單,因此在讀取到文字訊息後,合法的作法為透過介面顯示出建議下單訊息,再由投資人驅動下 單。 文字檔下單機可能的限制包括: (1) 利用 TS 或 HTS 驅動策略在讀取訊號時可能造成延遲。以 TS 為例,必須透過 MetaServer 讀 取券商提供的DDE 資料,但券商的 DDE 資料本身的報價品質就不夠好。 (2) 由於 TS 系統本身佔用系統資源大,以之驅動策略可能會造成時間延遲。 (3) 由於 TS 系統係以 K 線驅動(而非逐筆交易資料)驅動交易策略,必須在該 K 線(不管是 5 分或 1 分線)結束後,才能驅動策略,因此造成延遲;此缺點,可透過讀取 TS 系統中內部資料庫 的方式,稍微舒緩,但技術要求較高。由於接下來我們會提及兩全其美的解決方式,因此就 不介紹解法,有興趣的讀者可以參考第十章所將介紹的程式交易論壇上的文章。 (4) 在策略觸發後,透過 TS 寫出文字檔也會延遲。 (5) 最後,下單系統讀取文字檔,不管在取樣時間或讀檔時間上也會造成延遲。 綜合以上所論,文字檔下單機雖然是一種方便的解法,但並非是有效率的解法,若投資人可以忍 受上述延遲,那麼使用在Excel 導入券商 DDE 資料進行交易的作法,甚至更直接、延遲更低。 基於文字檔下單機的以上限制,有資訊廠商提出改進解法,其作法仍然使用 TS 作為交易策略的 觸發平台,但改進了報價頻率(使用真正的 Tick 報價連接到 TS 中),而由 TS 驅動交易行動後,直 接把交易訊號送到下單機中的券商下單元件下單;換言之,不再丟出文字檔,也不需再由下單機 撈取下單資訊。 此作法,解決了以上傳統文字檔下單機第(1)、(4)、(5)的限制,但仍未解決(2)、(3)的限制;況且, 此作法繞過文字檔的媒介,在適法性上,也有疑慮。 2. 整合式下單系統。 以上文字檔下單機的缺點,可以藉由整合式下單機來解決。整合式下單機的作法希望把讀取即時 報價資訊、交易策略觸發、交易行動執行,甚至於委託回報取得、成交回報取得等全部一氣呵成 的在系統中完成,因此可以把延遲降至最低。系統開發者可以選取任何一般性程式語言開發,例 如Excel 上的 VBA、Visual BASIC 6.0、Visual Studio 中的 Visual BASIC、Visual C++、Visual C# 等。在即時訊息輸入時,整合式下單機可以讀取免費的DDE 即時資料(但必須忍受大約 1 秒的延 遲,對於非Tick 交易的交易者而言,或許已經足夠),或者購買能讀取逐筆交易資料的軟體元件; 至於下單、委託回報與成交回報等,與逐筆交易資料源的軟體元件同樣都是使用直接嵌入 (Embedded)在整合式下單機中的軟體元件(API);如此一來,交易者可以追求毫秒等級速度的交易 快感,此整合式下單系統對於進行價差、套利與逐筆交易的交易者而言,是必要的配備;此作法 最大的好處是,交易者可以在程式碼間自訂交易策略。 客製下單環境可說是交易者的終極武器,理想中的下單機應具備哪些功能呢?歸納下單機的基本

(15)

12 功能,如下: 1. 「帳號管理功能」。提供多帳號(甚至不同券商)的下單功能(以免被追蹤部位、跟單)。當然既然用 了帳號,憑證安全管理是一定要的。 2. 「策略管理功能」。可以啟動多組經驗證有效的策略。 3. 「商品管理功能」。可以交易多種金融商品,除了證期權商品外,也可以交易國外商品。 4. 「訊號擷取與下單功能」。訊號擷取指的是文字檔下單機需要讀取外部包含下單指令的文字檔,收 到後可以用API 下單,這是最基本的功能。 5. 「委託回報與成交回報功能」。到底有沒有委託成功,委託後有沒有成交,都要能夠回報。 6. 「交易記錄功能」。包括紀錄成交與未成交的資訊,以方便追蹤。 7. 「簡訊管理功能」。可在買賣訊號觸發後,第一時間以簡訊送出訊號到行動設備上(假若交易者沒 有在盤前的話)。 8. 「下單環境設定功能」。可支援如自動轉倉、最大下單口數、提前秒數下單(先跑先贏)等功能。 至於,下單機的進階功能,包括了: 1. 「模擬下單功能」。即 Paper Trade,在以真金白銀實際下單前,先模擬操作一段期間,但需要考慮 實際交易限制條件(例如模擬時,須有一定交易量的報價才算數)。 2. 「報價讀取功能」。便於市價交易與條件單交易,之前提到以券商看盤軟體的 DDE 讀取功能所得 到的報價並不精確。 3. 「帳戶(資金與部位)管理功能」。即時損益計算以支援盤中洗價功能。 4. 「條件單(智慧單)客製功能」。條件設定如「碰到均線穿越即成交」等功能。 5. 「操作策略客製功能」。提供自行編碼功能(Open Source 版本),使用者可以在下單機中直接編碼 策略,就不需要透過外部的TS 或 HTS 觸發後形成文字檔,再撈進來。此種作法,也可達到保護 策略的效果。 6. 「演算法交易策略功能」。交易方式很多,目前期貨交易只接受市價與限價單,但還有其它許多下 單功能(包括停損(限價)、觸價、開(收)盤市價、2 擇 1 委託、代換委託、長效、ROD、FOK、IOC… 等超過50 種),這些功能都必須透過下單機中編碼達成。 假若部位的建立與結清係在一段跨日交易期間完成;問題是,國內交易限制當日下單當日有效, 不支援長效單,交易者也只好每日記錄部位,以備隔日開盤重新計算進出條件,重行掛單。萬一某日 沒有看盤,錯過交易機會呢?這就需要「智慧單」功能的下單環境。 何謂智慧單?它跟前述的下單機一樣,可以支援「客製」(Customized)下單策略設計,幫交易者執 行他所要達成的下單方式,特別是可以擴展券商提供的下單方式(券商或期貨商無法提供法令允許之 外的下單方式,例如長效單,在此情況下,交易者只好自助了),它的應用可以延伸至演算法交易策 略 。 智慧單能幫交易者做甚麼呢?簡單的說,它可以提供無法每日盯盤的交易者作部位管理(例如支援 上班族的防呆功能),也就是可以提供跨日交易型態策略的部位管理與執行。 既然,智慧單用於支援「券商或期貨商所能提供的交易方式」之外的交易,那麼,目前法定券商 或期貨商可以幫忙客戶執行的交易方式有哪些呢? 交易者委託下單時,需說明,帳號、戶名、買進或賣出、契約數量、期交所名稱、到期月份與年 度、契約名稱、交割價格,以及委託方式。目前期貨委託單開放市價與限價單且限定為當日有效。至 於選擇權交易之限價單委託條件可分「當日有效單」、「全部成交否則取消單」與「立即成交否則取消 單」;而市價單的委託條件可分為「全部成交否則取消單」與「立即成交否則取消單」。

(16)

13

但除此外,下單方式還包括:停損單(Stop Order)、停損限價單(Stop Limit Order)、觸價單 (Market-if-Touched Order; MIT) 、 開 盤 市 價 單 (Market-on-Opening Order; MOO) 、 收 盤 市 價 單 (Market-on-Close Order; MOC)、二擇一委託單(One Cancels the Other Order; OCO)、代換委託單 (Cancel-Former-Order; CFO)、長效單(Good-till-Cancelled; GTC)等,這些都可透過包含智慧單功能的下 單機完成。 對於智慧單而言,由於是透過程式碼編碼下單方式,因此只要可以明確說出操作邏輯的下單方 式,這些未開放的下單功能都可運用智慧單達成。因此,智慧單的基本功能包括了:市價、限價、觸 價、停損、停利等靈活組合;智慧單的進階功能則沒有界限,目前許多國外網站提供了五花八門的下 單型態。 例如「InterActiveBroker 網站」,更提供高達50 種之交易單型式。這些交易單分別可以限定風險、 加快執行速度、取得更佳價格、支援下單隱私(以避免被跟單或對作)、掌握進場時機、支援進階交易 與演算法交易等。 演算法交易與相關研究

演算法交易又稱為自動交易(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))。 由於演算法交易使用數量化模型自動產生定時與定量的指令流輸入市場,使基金經理人工作簡 化,也促使更多樣化的演算法被開發出來。 關於演算法交易的相關研究整理如下:整體而言,演算法交易的目標在於同時平衡低交易成本與 低交易風險兩大目標。市場交易成本包括了,佣金、交易費用、稅、買賣價差、延誤成本、價格浮動、

(17)

14 市場衝擊、時間風險與機會成本等項目(其中佣金、交易費用與稅為可見的固定成本,其他為隱藏性 的交易成本)。交易成本的負面影響包括:降低預期報酬率、影響定量策略(高頻交易、價差交易、套 利交易等)模型實際收益率,以及影響組合實際配置比例等。 交易成本在市場微觀結構分析向為重要議題,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 以期設計後 設策略以獲利)的演算法策略。 演算法交易可是為程式交易的分支(參維基百科),但與程式交易不同之處在於,演算法交易較強 調交易的執行,即如何快速、低成本、隱蔽的執行大量下單;而程式交易則強調下單指令的形成;簡 單的說,程式交易可定位為「下單管理系統」(Order Management System; OMS),而演算法交易為「下 單執行管理系統」(Execution Management System; EMS),演算法交易決定了下單時點、價格與交易量, 動態觀察市場條件變化,做最佳化佈單,以維持程式交易策略的績效。 同時,演算法交易策略亦可保護程式交易策略,以避免被人為作價的干擾(試想,上下一筆不合 理的買賣報價,就足以讓程式交易策略產生誤判),因此演算法交易可以做為程式交易的免疫策略。 如前述,演算法交易用以「降低市場衝擊成本、提高交易執行效率、增加投資組合收益、降低手 續費、減少人力成本、執行複雜交易與投資策略」,提高程式交易策略績效。目前常用的演算法交易 策略列於表3。 表3 常用演算法交易策略列表 演算法交易策略 敘述 交易量加權平均價格 (VWAP) 依據歷史成交量在開盤期間的比例,分配下單量,並以交易量平均價格為比較標竿。 保證交易量加權平均價 格(Guaranteed VWAP) 在VWAP 外,再加上保證成交價格與交易量加權平均價格一致,否則交易商將承受損失。 時間加權平均價格 (TWAP) 在下單期間的時間點平均下單,用於價格衝擊小時。 交 易 量 固 定 百 分 比 (TVOL) 下單量依據成交量同向調整,用以跟上市場趨勢變化。 基準價交易算法 (Price In Line) 設定基準價,在接近基準價時放大交易,並於交易時間內完成,用於對價格比較敏感的投資 者。

(18)

15 執行差額(IS) 提供風險參數與承受限度,並平衡降低衝擊成本與風險兩目標做最佳化計算。 隱藏交易單(Hidden) 等待期望交易價格出現時立即下單或取消,以確保成交價位並隱藏交易企圖。 游擊戰(Guerrilla) 將數量較大的買賣單分散成小單並使用多種交易技術,以免被跟蹤下單企圖。 狙擊兵(Sniper) 以分散並隱藏交易方式不暴露交易企圖並偵測對手交易策略,使攻擊性演算法。 搜尋者(Sniffers) 搜尋其他交易者正進行的交易並偵測所選用的下單策略,通常以少量下單誘敵,以待對手上 鉤,繼而嘗試增加下單數量。設計目的係找出市場中正使用的演算法或程式交易策略,以從 跟作或對作中獲利。 複雜事件處理(CEP) 以歷史事件分析確認市場對事件的反應,再依據發生事件啟動交易以期獲利,如關連股票間 的價差交易。 模 式 識 別 (Pattern Recognition) 以資料分析方式找出交易資料間的特徵模式,以形成交易策略。 演算法交易發展至今近30 種,並已發展到第四代:第一代演算法為比較簡單的策略如 TWAP、 VWAP、TVOL、Price-In-Line 等;第二代以 IS 為代表(包括 IS、Atopen、Atclose、Float 等);第三代 以搜尋隱藏流動性(Hidden Liquidity)為目標,如 Nighthawk、Sniper、Cobra 策略,以因應特殊交易制 度;第四代傾向智慧型交易,包括複雜事件處理(CEP)、新聞交易(News Trading)等。這些策略係根據 不同市場特性與交易需求進行設計。

(19)

16 ‰研究方法(與研究成果) 本研究計畫在執行一年後,共計產生四項主要研究成果(分別完成碩士論文指導與論文發表)、程 式交易專書一冊、成立程式交易學術論壇,並於不同研訓單位推廣成果。說明於後。 一、程式交易研究成果 四項主要的研究成果包括: 1.「策略分析系統之建構與實證」 由於交易策略的獨特性、私密性與交易市場的競局本質,交易人不能滿足於僅能「組合既有技術分析 指標形成策略,進行回測」的簡單工具,而尋求能彈性自行編碼策略內容的策略開發與回測工具, TradeStation(TS)即為其中一種廣為使用的工具。由於 TS 內建的 EasyLanguage 語言為一種專用於編碼 交易策略的語言,可平衡策略設計者需要客製交易策略又不想學習泛用性程式語言(如 VB、C 等)的 衝突目標,TS 已成為程式交易者最常使用的工具。然而,TS 雖有針對程式交易需求的完美架構,卻 也因為放棄一般程式語言編碼,造成許多使用上的限制,即使仿效TS 並擴充限制的 MultiCharts 亦不 能突破若干限制。本研究因此嘗試以TS 之架構為基礎,使用物件導向分析與設計工具(UML 塑模工 具),在一般程式語言的開發環境(Visual Studio .Net)上,建構一套可供策略評價分析之程式交易回測 系統,使能有效率的回測眾多交易策略在不同期間與不同市場的獲利情形。此系統除具備TS 架構的 優點外,可進一步突破TS 軟體現存的若干限制,例如在策略參數最佳化部份,TS 軟體無法以開高收 低之價格參數進行最佳化,但本系統對此做了改善(整理如表 4)。透過本研究所開發的系統如圖 2 所 示。 表4 本系統針對 TS 系統限制之改善情形 功能限制 改善情形 資料庫無法讀入除了開高收低量、未平倉量等資料外的其他資料。 以Access 為資料庫進行存取,可彈性讀入任何資 料。 策略之參數最佳化僅限數值型態之變數,無法針對開高收低之價資料 變數進行最佳化分析。 本系統提供使用者對於價資料型態變數進行最 佳化之選擇。 不支援多策略與多標的之回測。 可進行多標的回測。 必須以終止日期回推指定數量的K Bar,無法指定特定期間進行回測。 新增指定區間回溯測試之選擇。 交易成本設定不符合台灣市場環境。 可設定保證金、交易稅、手續費、滑價影響與其 他成本考量。 績效報表無法得知每日保證金異動情形。 可得知每日帳戶餘額與是否有被追繳情形發生。 本研究在系統建置完成後,以台股期貨之歷史資料為實證資料,運用移動均線多頭交叉信號(MA Bullish Crossover Signal)及多頭追蹤停損信號(Trailing Stop Long Exit Signal)組合成「移動均線多頭交 叉策略」(MA Bullish Crossover Strategy)為實證策略,進行實證分析,確認系統可用性,並證明開發 系統可超越TS 之處。確認系統可用性後,本研究亦以台指期貨、電子期貨與金融期貨交易資料,實 證交易市場上使用廣泛的「海龜交易策略」,在本研究限制下,發現海龜交易系統績效皆優於買進持 有策略,經統計檢定後,以個別市場而言,僅金融期貨市場顯著優於買進持有策略,但若以全體樣本 進行分析,在顯著水準為10%下,本研究仍認為海龜交易策略之績效表現優於買進持有策略。

(20)

17 (a) (b) (c) (d) 圖2 程式交易策略分析系統 2.「演算法交易佈單系統建立與實證」 程式交易使用資訊技術於交易過程的分析與執行,在交易執行過程,必須在瞬息萬變的市場中,一方 面快速趨動交易策略產生交易指令,另一方面,當交易量大到足以衝擊市場價格時,如何以最適化的 佈單方式,以低成本、高隱蔽方式執行交易指令要求,為兩大目標。前者為即時交易管理的功能,後 者為交易執行的功能。本研究運用券商提供的報價下單元件,使用 UML 作為分析工具,在 Visual Studio .Net 的環境上,建立可管理跨日部位交易的系統,以及具備演算法交易功能的系統。 (a) (b) 圖3 智慧性下單系統與演算法佈單系統 研究中進行了兩個下單系統的設計,分別為智慧性下單系統與演算法佈單系統,對象分別屬於自然人

(21)

18 與機構法人,如圖3 所示。由論文實證發現,智慧型下單系統確實可以讓沒有程式基礎的自然人,也 可經由該系統依其自身需求進行程式交易下單;另外經由演算法佈單系統實證,可以發現使用標準型 成交量加權平均價(VWAP)演算法交易,在不考慮流動性下,其執行效果與均價相關性很高,亦即表 示使用成交量加權平均價(VWAP)演算法進行佈單,的確可以達到降低衝擊成本的需求。但眾所皆知, 成交量加權平均價(VWAP)演算法是一種靜態策略,在佈單前利用過去已有的歷史訊息來確定其未來 的佈單策略,待真正進行交易後,並不考量實際交易期間的訊息,因此成交量加權平均價(VWAP)演 算法佈單的好壞,取決於預測交易量與實際交易量間的差異,當預測越準確,其誤差就越小,效果也 就越好(越接近當日均價);實際上就如我們所知,要準確的預測交易量分佈是很困難的一件事,因此, 當我們將歷史數據與市場行情都一起考慮近來,將標準型成交量加權平均價(VWAP)策略加以改進, 發現其戰勝市場均價的情形提高了,改進型策略在一分鐘,模型為簡單加權移動平均戰勝市場 2.05 個基點,另外一個預測模型以一分鐘與五分鐘而言,也戰勝0.77 與 0.11 個基點,因此改進型策略確 實比傳統標準策略有效。 3.「具學習能力的智慧型代理人在金融市場中之交易行為與績效分析」 代理人設計係人工智慧研究的核心。代理人在虛擬人工股市的行為始於 Arthur 的研究,本研究仿效 Arthur 的人工市場架構,研究在金融市場中,代理人具備學習能力與否,是否可以提高投資績效。 虛擬人工股市研究的架構如圖4 所示。 研究中,兩群代理人使用策略分別為趨勢指標與震盪指標各一組(分別為移動平均線與相對強弱指 標,以及多空指標與心理線指標),指標參數則以亂數給予之,在起點相同(相同資金,對策略起始偏 好相同)的情況下,比較不具學習能力與具備學習能力的代理人族群,在不同市場深度與不同市場型 態下的績效;於分析期間結束後,統計檢定族群的資金均數與變異,以確認績效差異的顯著性。 實證中的不同的學習能力包括「無限記憶」、「有限記憶」與「記憶衰退」等不同形式;至於不同型態 的市場,包括人工設定的趨勢市場、擺盪市場與相變市場等型態,也測試台指期貨市場的資料;市場 深度則以定價公式中的參數表示之。研究架構如圖5 所示。 研究結果發現:(1)在不同市場型態環境下,不論代理人對市場有無影響力,使用任一組指標策略, 其結果皆為具學習能力之代理人獲利能力較優於不具學習能力之代理人。(2)除在固定型態市場下使 用MA 及 RSI 策略及變動組合市場下使用 MA 及 RSI 策略時,「有限記憶」或「記憶衰退」學習能力 之代理人的績效表現較為突出,其他情況下,皆是具備「無限記憶」學習能力之代理人的績效表現較 好,故建議投資人在作決策時,可參考全部的歷史交易經驗。(3)在四組策略的績效表現方面,使用 BBI 趨勢指標與 PSY 震盪指標策略之整體績效表現較優於其他組合策略。(4)具備「無限記憶」學習 能力之代理人的績效表現較具備「有限記憶」或「記憶衰退」學習能力之代理人佳,故建議投資人在 作決策時,可參考全部的歷史交易經驗。(5)各種參數(如學習權重)的調整都會影響代理人獲利情形。 由上述幾點結論可知,投資人根據本身的歷史交易經驗修正自我的交易策略,在下一次的投資上增加 獲利,其可能性將比隨機使用策略的投資人還高。

(22)

19 圖4 交易代理人模擬方法架構 4. 「交易時點資料導向的交易策略開發」 金融市場中,交易者普遍運用技術分析指標形成策略作為買賣判斷準則,反之,投資人是否也可以利 用商品價格走勢中的交易買賣點,反向建構出交易策略呢?投資人是否可以依據交易策略公佈的交易 買賣時點,反向推出背後的指標策略呢?基於以上的想法,本研究以「資料趨導」(Data Driven)的方法, 找出最適的技術分析指標(含停利停損)策略。為了避免搜尋過程,略過策略特定參數組合的可能性, 研究中,使用模糊理論的歸屬函數,對搜尋過程的買賣點位置作模糊處理,以平衡搜尋速度與搜尋正 確性的兩難。為系統化的反向找出最佳策略,本研究以發展出的演算法為基礎;在系統建構過程中, 以VBA 為開發環境,建置一套以研究所建議之演算法反向找出交易策略的資訊系統,透過已知策略 實證模組、指數高低點策略模組與公開策略驗證模組,驗證系統之可用性與可行性。 本研究之研究結果包括: (1) 驗證系統反向推測策略之可行性。在已知策略模組實證結果發現,本系統可透過明確計分方法反 向找出已知策略,另一方面在模糊計分方面,雖然沒有完全猜到策略,但正確的回推策略,也在高積 分的策略中。 (2) 反推最佳策略模型。在投資標的高低點策略模組上,本系統透過明確計分方法反向與模糊計分法 之實證結果,找出可以在預設買賣區間進出之策略模組。 (3) 由策略進出點推測策略內容。在公開策略模組實證結果可知,不管是「單一指標」、「單一指標+ 停損停利」與「複合指標」三種組合情況,皆未能成功猜中隱藏在進出點背後的策略。推測原因為該 進出點背後的策略遠比本研究之系統所設定的策略組成更為複雜;可能該待推策略使用的技術指標超 出本系統的19 個指標之外,也可能指標使用的參數,在搜尋參數的跳動值之間,也可能該策略的指 標組成並非「單一指標」、「單一指標+停損停利」與「複合指標」三種組合情況。當然,也不排除該 策略的提供者在策略使用過程,為提高策略績效,動態更改策略內容與參數。 本研究之研究架構、明確比對與模糊比對方法之圖解如圖6 所示。

(23)

20

圖5 研究架構圖

(24)

21 (c)模糊空間定義 (d)模糊比對法 圖6 研究架構、明確比對與模糊比對方法圖解 二、程式交易專書寫作 計畫主持人投入程式交易領域已有數年時間,曾於2007 年發表「程式交易系統設計與建構—解 析金融資訊市場密碼,追尋投資市場聖盃」專書,接續最新研究成果,續於2009 年 11 月發表「程式 交易—觀念、方法、技術與解決方案」一書,以推廣程式交易方法與技術,全書架構如表 5 所示。 表5「程式交易—觀念、方法、技術與解決方案」一書架構與內容 章節 標題 內容 第一章 程式交易概論 交易方式的演變;交易策略剖析;程式交易之定義、趨勢與結構;程式交易與人為 交易的比較;程式交易的應用範圍;程式交易的計畫與執行;程式交易可能面臨的 風險與對策;建構不斷成長的程式交易模型;公開的程式交易模型與其宣稱績效 第二章 程式交易存在基 礎—投資決策的非 理性 投資心理研究之源頭—展望理論;投資心理學概論;以程式交易克服投資心理偏誤; 以程式交易克服投資過程生理限制;程式交易的理由—突破交易過程中的生理與心 理障礙 第三章 程式交易技術基 礎—程式設計

Excel 的基本與進階使用;使用 Excel VBA 作資訊系統開發;由 Excel VBA 學習 VB 6.0;Web Service、MS .NET 與 VB 6.0 系統的升級;C 語言與 Borland C++ Builder 的系統開發;在VBA 系統中連結使用關聯式資料庫;以 Excel 讀入即時資料;程式 交易系統開發環境的選擇 第四章 程式交易模型來源 程式交易的應用領域與投資程序;技術面分析;基本面分析;如何轉出分析用的資 料庫 第五章 基礎回溯測試系統 開發—由 Excel 到 VBA 在試算表中建立回溯測試環境;以Excel VBA 進行回溯測試分析;藉由讀寫外部檔 案設計獨立於工作表之回溯測試系統;可分析多組股票並選取任意期間的回測模 型;包含多重買賣規則的交易策略模型;考慮交易成本與分批買進策略的回測系統; 尋找交易策略中的最佳參數組合;回測系統的延伸課題 第六章 進階回溯測試系統 開發—由 VBA、VB 6.0 到 VS .NET 重新建構在VBA 上的回測系統;將 VBA 的回測系統轉移至 VB 6.0;將 VB 6.0 的 回測系統升級至VB 7.0(VB .Net);讓回測系統可以讀取關聯式資料庫;全功能回測 系統開發;投資標的過濾器的設計 第七章 TradeStation 軟體使 用介紹

TradeStation 軟體之操作原理;TradeStation 軟體之設計、執行與分析;EasyLanguage 重要功能、指令及語法解析;TradeStation 使用上的限制

第八章 即時交易系統建構 交易執行流程與下單系統;不同類型即時交易系統設計;不同下單型態與包含智慧 單功能的下單系統

(25)

22 討主題 管理資金;以資料採礦技術發展程式交易策略;程式交易面臨的風險;程式交易、 財務工程與金融創新;關於程式交易的研究 第十章 程式交易論壇 第十一章 結語 程式交易解決方案的選擇;程式交易產業中的位置;程式交易發展策略建議;市場 有效率嗎? 三、程式交易論壇 藉由本計畫,主持人成立學術性論壇--「程式交易論壇」(www.programtrading.tw),此論壇為 Google 「程式交易」關鍵字查詢全球第一的網站,至2010/10 止,共計吸收超過 6000 名會員,發表 5000 篇 主題,其中495 篇由主持人發文,論壇首頁如圖 1 所示。 圖7 程式交易論壇

(26)

23 ‰結果與討論(含結論與建議) 如前述,本計畫經過一年的執行,總計指導相關主題碩士論文4 篇、發表論文 6 篇(尚有 多篇審稿中論文)、程式交易專書一冊、成立程式交易網路論壇,並於不同單位推廣程式交易 研究成果,彙整如表6。 表6 計畫成果 成果類別 成果列舉 碩士論文 ¾策略分析系統之建構與實證,郭家祥 ¾交易時點資料導向的交易策略開發,林蓉萱 ¾演算法交易佈單系統建立與實證,林依瑩 ¾具學習能力的智慧型代理人在金融市場中之交易行為與績效分析,蔡芷翎 學術論文發表 ¾姜林杰祐、林依瑩,演算法交易佈單系統建立與實證-以 VWAP 策略為例,2010 全球商業經營管理 學術研討會,正修科技大學,2010/4/30 ¾姜林杰祐、郭家祥,策略評價分析回測系統之建構與實測-以 MA 策略為例,2010 全球商業經營管 理學術研討會,正修科技大學,2010/4/30 ¾姜林杰祐、林依瑩,降低法人交易衝擊成本-以 VWAP 演算法交易策略為例,金融危機後全球經濟 與金融市場之新趨勢研討會,高雄應用科技大學,2010/5/3 ¾姜林杰祐、郭家祥,開發技術指標策略評價分析回測系統-以-以 MA 策略為例,金融危機後全球經 濟與金融市場之新趨勢研討會,高雄應用科技大學,2010/5/3 ¾姜林杰祐、林蓉萱,交易時點資料導向的交易策略開發,2010 年兩岸金融暨國際企業學術研討會, 高雄應用科技大學,2010/5/28 ¾姜林杰祐、蔡芷翎,具學習能力的智慧型代理人在金融市場中之交易行為與績效分析,2010 年兩岸 金融暨國際企業學術研討會,高雄應用科技大學,2010/5/28 專書 ¾姜林杰祐著,程式交易—觀念、方法、技術與解決方案,新陸,2009/11(共 664 頁) (ISBN:978-986-6333-10-1) 網路論壇 ¾程式交易網路論壇(www.programtrading.tw),至 2010/10/6 共計會員 6009 人,發表文章總數 5154 篇。 成果推廣 ¾台北科大演講「程式交易解決方案與研究方向」,1 場。 ¾玄奘大學演講「程式交易—觀念、方法與技術」,共 1 場。 ¾台灣證交所青年學子培訓班「期貨程式交易」(台北、台中、高雄),共 12 場。 ¾台灣期貨交易所演講「程式交易—觀念、方法、技術與解決方案」,共 10 場。 ¾金融研訓院第八期期貨操盤基礎人才培訓專班「避險交易模擬系統演練(含 VBA 應用)」、「套利交易 模擬系統演練(含 VBA 應用)」,共 3 場。 ¾金融研訓院第九期期貨操盤基礎人才培訓專班「程式交易模擬演練(含 VBA 應用)」,共 2 場。 ¾台北金融中心「程式交易」,共 3 場。 ¾證券期貨發展基金會「第八~十期期貨操盤基礎人才培訓專班」之「電腦程式交易簡介—VBA 語法 介紹 (1)、(2)」、「電腦程式交易進階(1)、(2)、(3)」、「TradeStation 金融程式交易概論(1)、(2)、(3)、(4)」 共27 場。 ¾台証期貨投資系列講座「程式化交易系統說明會(II)-認識與實務」,共 3 場。 ¾台証期貨營業員訓練課程「以程式交易為經紀業務加值方法與實務」,(台北、台中),共 4 場。

(27)

24 雖然國外金融市場多已開放程式交易,但國內主管機關對於程式交易的放行仍有疑慮,本計畫更 長遠的目標,是希望透過對於程式交易的研究,提供程式交易政策的參考,申請人認為,程式交易的 禁止,可能產生對於交易公平性的疑慮,並降低國內金融市場的交易量。 回顧過去過外的金融市場經驗,放鬆管制是促成市場完全性與公平性的推手。市場結構的不當設 計,反而造成了市場參與者間的不公平競爭;獲得相對優勢的交易者,只要掌握市場交易制度的不完 美,就可占盡便宜。 在「統計套利」一書中提到統計套利方法的興衰,與「報價單位的十進位化」息息相關。統計套 利源於Nunzio Tartaglia(1985)領導的一群計量研究團隊,其為一種配對交易(Pair Trading),作法為「找 出一對顯現出類似歷史價格行為的股票。當股票價格分開發散時,進行買低賣高,賭其終會收斂,收 斂後再反向部位」。此後近20 年,統計套利產生豐厚獲利,但從 2000 年始,獲利逐次下降,至 2002 年,此操作模式就不再獲利。究其原因,除了導因於模型的大量採用,報價單位的十進位化,被認為 是主要原因…「價差的買賣方報價單位,從原來的 25 美分(兩角五分),降到了 2 美分。這使得統計 套利的優勢因而消失」。依此推論,統計套利的存在基礎,與其說來自於資產間價格關係的精密分析, 不如說來自於價格跳動單位的獲利保證;因為市場交易機制的不公平(價格跳動單位過大),讓一群從 事高頻率的統計套利者佔盡優勢。 在「網路當沖交易」一書中提到,華爾街的造市者與報價商,長久以來享受更優惠價位、更快速 執行與更低手續費的優勢,他們不需公開手上來自於客戶的買賣單量與價格,藉由延後與選擇性執 行,可決定有利可圖的成交方式。此不平等的現象,直到1997 年「交易指令處理法規」生效才消除, 該法規規定造市者必須立即執行客戶的交易指令(不能扣住客戶的限價單),否則必需公開顯示交易指 令的報價;此外法規也嘗試建立單一市場以顯示最佳報價,個人交易者也可公開顯示買賣報價,彼此 進行搓合。從此,造市場利用市場結構弱點的超額獲利不再,網路當沖交易因此更為盛行。 但市場制度結構的不公平因此消失了嗎?恐怕未必。台灣期貨月刊一篇專題報導「交易所間掀起 禁止閃電交易討論聲浪」,提到…「就在美國證券交易委員會(SEC)8 月 4 日釋出將禁止閃電交易的訊 息後,美國第一大股票交易所那斯達克(Nasdaq)及美國第三大股票交易所 BATS 決定自 9 月 1 日停止 閃電交易(Flash Order)服務;Direct Edge 交易所也表示,暫停開發閃電交易功能的計劃。不過,Direct Edge 仍決定繼續提供特定交易人快閃報價預看服務。稍後,國際證券交易所(International Securities Exchange,簡稱 ISE)公開表示,希望 SEC 能夠允許閃電交易持續運作。ISE 提出一個方案,建議可 改變遊戲規則,讓閃電交易資訊不再只揭示給特定族群,而是揭示給每一個市場參與者。(摘自 Wallstreetandtech2009 年 8 月 6 日及 Traders Magazine Online2009 年 8 月 19 日訊息)」…

「閃電交易(Flash Order)可讓使用者在瞬間內比別的交易者早一步看到買賣交易資料(尤其針對演算 法程式交易者)。」…這篇報導中的「閃電交易訊息」就是「高頻率交易」的存在基礎。透過預知買 賣方向、價量等資訊,高頻交易者可提前買進、賣出,無風險的賺取原本應該屬於真正有買賣需求者 的獲利。 雖然,媒體的報導與事後法令的追加修訂,可以亡羊補牢;但又有多少未被揭露的不公平交易方 式存在於金融市場中呢?假若市場交易對參與者不盡公平,那麼,金融市場「投機者為避險者提供流 動性並承擔風險」的經濟功能,是否面臨考驗呢? 本計畫申請人過去推動程式交易的期望,一方面係通過對交易技術的公開,提升國內交易戰力, 再則希望透過研究後的政策建言,追求交易市場的公平性。交易市場的不公平競爭,不僅僅傷害另一 群人的財富而已,恐怕會挑戰好不容易建立起的交易市場。

數據

圖 1 的流程中,在「資訊接收」方面可使用如 DDE Quote 或 API Quote 等工具;在「下單判斷」
圖 5 研究架構圖

參考文獻

相關文件

包括三維機械設計的所更的功能(SolidWorks 三維建模軟體)、資料管 理軟體 PDMWorks Client、以及用於設計交流的常用工具:eDrawings 專 業版(基於 e-mail 的設計交流工具),

⼆、

Reading Task 6: Genre Structure and Language Features. • Now let’s look at how language features (e.g. sentence patterns) are connected to the structure

• 在特定時空內,人們普遍相信及接受作 為支付標準與交易媒介

Step 3: : : :模擬環境設定 模擬環境設定 模擬環境設定 模擬環境設定、 、 、 、存檔與執行模擬 存檔與執行模擬

前項公司從事交易時,有以不合交 易常規之安排,規避或減少其在中華民

微算機原理與應用 第6

深圳育才三小 本校教師到育才三小 作英文寫作課示範... 突破困難