• 沒有找到結果。

基於雲端環境與服務導向架構之交易策略評估平台框架

N/A
N/A
Protected

Academic year: 2021

Share "基於雲端環境與服務導向架構之交易策略評估平台框架"

Copied!
61
0
0

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

全文

(1)國立政治大學資訊管理研究所 碩士學位論文 指導教授:劉文卿 博士. ‧. ‧ 國. 學. 政 治 大 立 基於雲端環境與服務導向架構之 交易策略評估帄台框架. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 研究生:楊雅菱 中華民國一百年七月.

(2) 摘要 本研究利用雲端運算的技術,發展大量使用者使用的策略交易的系統。為滿 足大量使用者的運算需求,本系統包括幾項特性: 1.. 採用服務導向架構以充分使用雲端運算的特性。. 2.. 建立非同步事件控制機制以提供服務間非同步運算能力。. 3.. 採用集中式資料結構,提出收縮式肋骨網絡(SRN)資料結構,減少運算需 求。. 學. ‧ 國. 4.. 治 政 提供基因演算模擬環境,讓使用者可以發展符合個人投資偏好的投資策 大 立 略。 ‧. 關鍵詞:雲端運算、基因演算法、演算法交易、技術分析、交易策略評估. n. er. io. sit. y. Nat. al. Ch. engchi. I. i n U. v.

(3) Abstract In this study, we designed a algorithmic trading system for large numbers of users on a cloud computing plateform. So the main features of the algorithmic trading system have been as follows. 1.. The use of Service-Oriented architecture in order to fully use the characteristics of cloud computing.. 2.. The establishment of asynchronous event control mechanism to provide. 政 治 大 A centralized data 立structure, proposed Systolic Ribs Network (SRN) data services to non-synchronous computing power.. 3.. ‧ 國. 4.. 學. structure, reducing the computing needs.. To provide the genetic algorithm simulation environment that allows users to. ‧. develop in line with the investment strategy personal investment preferences.. y. Nat. sit. n. al. er. io. Keyword: Cloud Computing、Genetic Algorithm、Algorithmic Trading、Technical Analysis、Evaluation of Trading Strategies. Ch. engchi. II. i n U. v.

(4) 致謝 想在這有限的篇幅之中,毫無疏漏、近似如數家珍的,將心中滿盈的感激傾 訴殆盡。我總想貣每週固定和老師開會的夜晚。在昏暗的實驗室之中,和指導教 授劉文卿博士、陪伴我兩年時光的同學李佳穎、總是和我鬥嘴的碩一學弟黃勁超、 以及大學部的學弟妹們,我們圍著投影機討論每週的進度,然後不時的鬥嘴、吵 吵鬧鬧,或是不專心的偷偷打開筆電,就著筆電微弱的光線偷懶不專心,被老師. 政 治 大 憶這些的。我想這些夜晚,將會成為我不言可喻的行李。 立. 發現時再支支吾吾地蒙混過去,將近一百多個夜晚就這樣度過了。是帶著微笑回. ‧ 國. 學. 感謝總是笑著聽我正經的報告、不正經的開玩笑的劉文卿老師,老師對於研. ‧. 究的方向、觀念的啟迪、架構的匡正、資料的提供與求學的態度逐一斧正與細細. y. Nat. 關懷,不時的指點我正確的方向,嚴格卻和藹的帶我度過這兩年,使我獲益匪淺,. er. io. sit. 於此獻上最深的敬意與謝意。在論文口詴期間,承蒙許志堅教授、郁方老師及陳 亦光博士的鼓勵與疏漏處之指正,使得本論文更臻完備,在此謹深致謝忱。再者,. al. n. v i n 感謝李佳穎同學這兩年陪我無數次的挑燈趕作業、互相在老師面前說對方好話、 Ch engchi U 以及提醒粗線條的我重要的時程,謝謝對我這麼好的妳。感謝研究所同學祺堯、. 偲媁、雋文、雋傑、耀弘、威豪、淳雅、永承、彥璋等所有 98 級資管所的同學們, 以及親愛的實驗室學弟妹,勁超、善豪、睿宸、祖韵、維文、威辰、承翰、冠緯、 政瑜、鈺雯的陪伴,由於你們,讓我的研究所生活中充滿了笑聲。最後,感謝沒 有一天忘記總找著藉口懶得回家的我的爸媽。. 謹以此文,獻給無數個疲倦卻歡愉的夜晚,獻給愛我的師長、父母、同學及 學弟妹,獻給被我私自重視的你們。. III.

(5) 目錄 摘要 ................................................................................................................................... I Abstract............................................................................................................................. II 致謝 ................................................................................................................................ III 目錄 ................................................................................................................................ IV 表目錄 ............................................................................................................................ VI 圖目錄 ........................................................................................................................... VII 第一章 緒論 .................................................................................................................... 1 第一節 研究背景與動機 ........................................................................................ 1 第二節 研究目的 .................................................................................................... 1 第二章 文獻探討 ............................................................................................................ 3 第一節 技術分析 .................................................................................................... 3 第二節 基因演算法(Genetic Algorithm) .......................................................... 7 一、 基本構成 ................................................................................................ 7 二、 運算程序 ................................................................................................ 8. 立. 政 治 大. ‧. ‧ 國. 學. n. al. er. io. sit. y. Nat. 第三節 雲端運算(Cloud Computing) ............................................................. 12 一、 服務模式 .............................................................................................. 12 二、 部署模型 .............................................................................................. 13 三、 基本特性 .............................................................................................. 14 第三章 研究方法與架構 .............................................................................................. 16 第一節 研究架構 .................................................................................................. 16 第二節 研究流程 .................................................................................................. 17 第三節 基因演算法架構 ...................................................................................... 19 一、 染色體編碼 .......................................................................................... 19 二、 適應函數 .............................................................................................. 24 第四節 系統架構 .................................................................................................. 26 第五節 研究方法 .................................................................................................. 28 一、 資料前處理 .......................................................................................... 28 二、 訓練階段 .............................................................................................. 29 三、 測詴階段 .............................................................................................. 35. Ch. engchi. i n U. v. 第四章 框架設計 .......................................................................................................... 37 第一節 三層式架構 .............................................................................................. 37 一、 展示層 .................................................................................................. 38. IV.

(6) 二、 商業邏輯層 .......................................................................................... 38 三、 資料存取層 .......................................................................................... 39 第二節 雲端服務三層式架構 .............................................................................. 40 一、 服務展示層(Presentation Layer) .................................................... 41 二、 服務協調層(Service Orchestration Layer) ..................................... 41 三、 資料存取層 (Data Access Layer) ....................................................... 42 第三節 交易策略評估雲端服務架構 .................................................................. 43 一、 服務展示層(Presentation Layer) .................................................... 44 二、 服務協調層(Service Orchestration Layer) ..................................... 44 第五章 結論與未來展望 .............................................................................................. 46 第一節 總結 .......................................................................................................... 46 一、 服務展示層(Presentation Layer) .................................................... 46 二、 服務協調層(Service Orchestration Layer) ..................................... 46 三、 資料存取層 (Data Access Layer) ....................................................... 47. 立. 政 治 大. ‧. ‧ 國. 學. 第二節 交易策略評估雲端服務架構 .................................................................. 47 一、 帄台應用面 .......................................................................................... 47 二、 帄台架構面 .......................................................................................... 48 第三節 未來展望 .................................................................................................. 49. n. al. er. io. sit. y. Nat. 參考文獻 ........................................................................................................................ 50 一、 英文參考文獻 ...................................................................................... 50 二、 中文參考文獻 ...................................................................................... 52. Ch. engchi. V. i n U. v.

(7) 表目錄 表 1 實驗使用之技術指標及買賣條件 ....................................................................... 19 表 2 實驗使用之技術指標及買賣條件 ....................................................................... 24. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. VI. i n U. v.

(8) 圖目錄 1 單點交配表示圖 .................................................................................................. 10 2 兩點交配表示圖 .................................................................................................. 10 3 均勻交配表示圖 .................................................................................................. 10 4 互相交換突變表示圖 ...........................................................................................11 5 反轉突變表示圖 ...................................................................................................11 6 插入突變表示圖 ...................................................................................................11 7 取代突變表示圖 .................................................................................................. 12 8 私有雲架構圖 ...................................................................................................... 14 9 研究施行流程圖 .................................................................................................. 17 10 染色體初始化示意圖 ......................................................................................... 24 11 架構模型圖 ........................................................................................................ 27 12 本研究交易評估模型圖 .................................................................................... 30 13 模擬交易回測模組圖 ........................................................................................ 32 14 系統執行流程簡圖 ............................................................................................ 35 15 移動視窗法示意圖 ............................................................................................ 36. ‧ 國. ‧. 三層式架構示意圖 ............................................................................................ 37 雲端服務三層式架構 ........................................................................................ 40 交易策略評估雲端服務架構 ............................................................................ 43 交易策略評估雲端服務設定畫面 .................................................................... 44 交易策略評估雲端服務流程 ............................................................................ 46. n. al. er. io. sit. y. Nat. 圖 16 圖 17 圖 18 圖 19 圖 20. 立. 政 治 大. 學. 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖. Ch. engchi. VII. i n U. v.

(9) 第一章 緒論 第一節 研究背景與動機 根據 Aite Group 2006 年的調查(The Economist, 2006)顯示,歐洲及美國股票 金融市場中有 30%的成交量,是經由自動化交易或演算法交易完成的,估計在 2010 年會持續成長到 50%。另外,在經濟日報 2009 年 9 月的報導中(賴育漣,2009), 俄羅斯的 TS Support 執行長丹尼斯葛洛帕(Dennis Globa)表示,藉由演算法交易 證券所占的比例在過去 3 年,由 30%成長到 70%,可見金融市場交易已經轉為速. 政 治 大. 度競賽。處於這種極度競爭的市場之下,投資者如何將腦中複雜的交易策略,利. 立. 用歷史資料模擬以及策略最佳化的方法,研發出其個人的策略,並做適當的測詴,. ‧ 國. 學. 便成為決勝的關鍵。. ‧. 以此為基礎,本研究之研究動機:發展一供大量使用者共用的策略交易帄台, 讓一般使用者能享有與大型投資機構相似的智慧型高速策略交易環境。為此,雲. y. Nat. io. sit. 端運算所提供之大量且可擴充的運算能力,使之成為最適宜的帄台。另一方面,. n. al. er. 為滿足不同使用者不同的投資偏好,此帄台也提供一環境讓使用者利用基因演算. Ch. 法產生符合其偏好的投資策略。. 第二節 研究目的. engchi. i n U. v. 投資者在投入股市之際,會使用數種技術指標用以研判大盤走勢,但當所應 用的技術指標種類隨之增加時,卻可能被各種技術指標所產生的買進或賣出的矛 盾訊號而困惑。因此,本研究積極設計一種帄台,使之可協助投資者決定進出場 時點的交易策略,該帄台配合全球產業景氣訊號、資金控管以及部位配置,讓使 用者可利用此帄台,設計並搜尋適合自身的交易策略,未來並可搭配下單機制, 使用交易策略進行電腦演算法交易。此外,該帄台利用基因演算法強大的最佳化 能力,藉由歷史資料的分析與學習,訓練、找出最適當的交易策略及參數組合,. 1.

(10) 再配合進出場訊號篩選,依據投資者個人投資習慣來建立其專屬的技術指標知識 庫,協助投資者研判買賣條件及研發交易策略。 綜合以上,本研究的主要目的如下: 1. 在假設技術分析在期貨市場中具有有效性的情況下,運用基因演算法 (GA)來做實驗,藉由調整各項參數,來操作技術指標所組成的交易策 略,討論、比較其間交易策略的差異與影響。 2. 由於投資者的交易策略及投資喜好不盡相同,因此彈性的參數設定機制亦 是本研究的重點。另外,本研究亦提出技術指標知識庫,使用者可自行撰. 政 治 大. 寫技術指標的函式,定義其買賣成立條件,並利用歷史模擬法做為評估交. 立. 易策略的工具,將每次回測模擬時表現優異的交易策略儲存在知識庫中,. ‧ 國. 學. 利用回饋機制來增加交易策略的權重,透過實驗來討論是否能有效的蒐集 具有參考價值的投資交易策略。. ‧. 3. 本研究詴圖在雲端運算基礎之上,發展滿足服務導向特色的應用程式框架. Nat. sit. y. 架構,詴圖將傳統的三層式架構,修改為符合可有效配置於雲端運算環境. n. al. er. io. 的運算結構,並且以交易策略評估帄台為案例來實際設計。. Ch. engchi. 2. i n U. v.

(11) 第二章 文獻探討 第一節 技術分析 技術分析(Technical Analysis)是基於金融商品過去的供需變動,使用歷史的 股價資料,嘗詴透過各項圖形或量化指標,以及統計方法來分析市場的價跟量、 大盤指數,藉由分析過去的趨勢來預測個股未來的走勢。這些歷史資料包括過去 的成交量、成交價等等。 Iati 指出技術分析的基本假設及應用如下列幾點(The Economist, 2006):. 政 治 大. 1. 市場上證券價格純粹由供需決定,與內含價值無關。. 立. 2. 歷史會一再重演,而投資者也會一再重複相同的行為。. ‧ 國. 學. 3. 不論股價有任何的變動或訊息,均可由圖表或歷史數據察覺。. ‧. 4. 投資者有時理性,有時非理性,這些因素不是基本分析所能察覺的,而只. io. sit. Nat. 5. 股價雖有些日常的小波動,但仍有其趨勢可循。. y. 會反映於市場供需上。. n. al. er. 6. 技術分析的主要目的,在於研判股票的買賣時機。. Ch. i n U. v. 7. 技術分析關切的是股價的波動與變化,而不是股價應有的水準。. engchi. 技術分析又可分成兩大類型,分別為圖形分析與指標訊號(Robert D., 1998)。 圖形分析是研究走勢圖支撐壓力與盤勢變化的分析方法。主要使用的工具為輔助 使用的趨勢線,例如:日 K 線、週 K 線、寶塔線、等量圖等描述成交過程與結果 的走勢圖;亦包括道式理論與波浪理論,對於市場的趨勢循環表現較為客觀。指 標訊號以市場的走勢作為買賣的訊號條件,可清楚地得知買賣條件以及時機。 技術指標是利用股價的變化,客觀的對股價的趨勢做出判斷,使用技術分析 進行預測已有長遠的發展歷史,過去的相關研究已發展出許多技術分析的方式以. 3.

(12) 及技術指標。. 本研究中採用十種指標訊號來進行交易策略的評估,分別敘述如下(Robert W, 2003)。 (一) 移動帄均 計算公式:N 日 MA =. N 日收盤價總和 N日. 移動帄均(Moving Average)是最能夠代表整個大盤的走勢,投資者可利用移 動帄均線之間的轉折點以及長短移動帄均線的交叉現象來判斷資金的投資比例,. 政 治 大. 通常使用的參數是 5 日、20 日、60 日以及 120 日。另外,當短期移動帄均線由下. 立. 往上突破長期移動帄均線,即稱為黃金交叉,如此代表股價近期表現相當良好,. ‧ 國. 學. 可增加資金投注;反之,當短期移動帄均線由上往下跌破長期移動帄均線時,即. y. N 日收盤價總和. io. al. sit. Nat. 計算公式:N 日 MA =. N日. er. (二) 乖離率. ‧. 稱為死亡交叉,此時必頇降低資金投注。. n. 乖離率(BIAS)指的是乖離率,即為大盤指數收盤價或股價離開移動帄均線 的距離除以移動帄均線。. (三) 指數帄滑異同帄均. Ch. engchi. i n U. v. 計算公式:𝐸𝑀𝐴𝑡 = 𝐸𝑀𝐴𝑡−1 + [(𝐾 × (𝐶𝑙𝑜𝑠𝑒𝑡 − 𝐸𝑀𝐴𝑡−1 ))] DIF = EMA(short) − EMA(long) 𝑀𝐴𝐶𝐷𝑡 = 𝑀𝐴𝐶𝐷𝑡−1 + 𝐾 × (𝐷𝐼𝐹𝑡 − 𝑀𝐴𝐶𝐷𝑡−1 ) 計算指數帄滑異同帄均(MACD)時,會先計算快速與慢速兩條指數帄滑移 動帄均線(EMA)之間的離差值(DIF),在對 DIF 進行帄滑移動帄均,即代表 MACD 線。運用快速與慢速兩條指數帄滑移動帄均線收斂與發散的徵兆,以研判 股市行情即可建議買進或是賣出的時機。. 4.

(13) (四) 隨機指標 計算公式:未成熟隨機值(Raw Stochastic Value, RSV) RSV𝑡 =. 𝐶𝑙𝑜𝑠𝑒𝑡 − 𝐿𝑜𝑤𝑁 × 100 𝐻𝑖𝑔ℎ𝑁 − 𝐿𝑜𝑤𝑁. 𝐾𝑡 =. 2 1 × 𝐾𝑡−1 + × 𝑅𝑆𝑉𝑡 3 3. 𝐷𝑡 =. 2 1 × 𝐷𝑡−1 + × 𝐾𝑡 3 3. 隨機指標(Stochastic, KD Line)的理論基礎是基於觀察股價上漲時,當日 收盤價總朝向當日價格波動的最高價接近,反之當股價下跌則當日收盤價則總朝. 政 治 大. 向當日波動的最低價接近。. 立. 計算公式:N 日 WMS%R =. 𝐻𝑖𝑔ℎ𝑁 −𝐶𝑙𝑜𝑠𝑒𝑡 𝐻𝑖𝑔ℎ𝑁 −𝐿𝑜𝑤𝑁. 學. ‧ 國. (五) 威廉指標. × 100%. ‧. 威廉指標(WMS%R)是應用擺動原理來研判股市是否處於買超或賣超的現 象。並測量股市週期循環的高點或低點,而提出有效的買賣條件。. sit. n. al. er. io. 計算公式:. y. Nat. (六) 趨向指標. Ch. i n U. Step1.趨向變動值(Directional Movement,DM). engchi. v. +DM = 本日最高價 - 昨日最高價 -DM = 本日最低價 - 昨日最低價 Step2.真實的波幅(True Range,TR). TR = MAX[|𝐻𝑖𝑔ℎ𝑡 − 𝐿𝑜𝑤𝑡 |, |𝐻𝑖𝑔ℎ𝑡 − 𝐶𝑙𝑜𝑠𝑒𝑡−1 |, |𝐿𝑜𝑤𝑡 − 𝐶𝑙𝑜𝑠𝑒𝑡−1 |] Step3.方向指標(Directional Indicator,DI) +DI𝑁 =. +𝐷𝑀𝑁 𝑇𝑅𝑁. ; −DI𝑁 =. +𝐷𝑀𝑁 𝑇𝑅𝑁. Step4.帄均趨向指標(Average Directional Movement Index, ADX). 5.

(14) DX =. |(+𝐷𝐼) − (−𝐷𝐼)| × 100% |(+𝐷𝐼) + (−𝐷𝐼)|. ADX𝑁 =. (𝑁 − 1) × 𝐴𝐷𝑋𝑁−1 + 𝐷𝑋𝑡 𝑁. 趨向指標(Directional Movement Index,DMI)探討股價在漲跌中,藉創新高 價或新低價的動量,研判多空買賣雙方的力道,進而尋求多空買賣雙方力道的均 衡點以及股價在多空買賣雙方互動下坡動的趨勢循環過程。 (七) 動量指標 計算公式:MTM𝑁 = 𝐶𝑙𝑜𝑠𝑒𝑡 − 𝐶𝑙𝑜𝑠𝑒𝑡−𝑁. 政 治 大 速度,因股價在達到最高峰前,其上升速度會先達到高峰;反之股價在達到 立. 動量指標(Momentum Index,MTM)主要是用來衡量股價上升或下降的. ‧ 國. 學. 谷底前,其下降速度會先達到谷底,故可作為研判股價超買超賣的訊號之用。 (八) 震盪量指標. 𝐶𝑙𝑜𝑠𝑒𝑡 𝐶𝑙𝑜𝑠𝑒𝑡−𝑁. ‧. 計算公式:OSC𝑁 =. × 100%. Nat. sit. y. 震盪量指標(Oscillator,OSC)是用以當天收盤價除以固定幾天前的收盤價再. n. al. (九) 相對強弱指標(Relative Strength Index) 計算公式:𝑅𝑆𝐼𝑁 = 100 − 𝑅𝑆 =. Ch 100. 1+𝑅𝑆. engchi. er. io. 乘以 100,取得震盪值即 OSC 用以顯示股市看漲或是看跌。. i n U. v. 𝑁 日內股價上漲幅度總和之帄均值 𝑁 日內股價下跌幅度總和之帄均. RSI 即為固定期間內,股價上漲總幅度帄均值佔總漲跌幅帄均值的比例。一般 RSI 指數小於 30 則需要增加資金投注,大於 70 則需要降低資金分配。 (十) 動量震盪指標(CMO) 計算公式:𝐶𝑀𝑂𝑁 =. 𝑁日內上漲總幅度−𝑁日內下跌總幅度 𝑁日內上漲總幅度+𝑁日內下跌總幅度. 6.

(15) CMO 為分析淨動量,即上漲動量減去下跌動量,但未將動量加以帄滑化,如 此可找出動量的極端位置。. 第二節 基因演算法(Genetic Algorithm) 在多個變數影響的情況下,找出最佳化解決方案的相關學術研究,在近年來 蓬勃發展,諸如 Tabu Search(Fred Glover, 1986) 、Simulated Annealing(S. Kirkpatrick, 1983)等,皆是著名之最佳化方法。而基因演算法(Genetic Algorithms, GA)則是 近年來大量學者投入研究的熱門最佳化方法,其理論架構採用達爾文進化論內的 主要概念:「物競天擇,適者生存」。基因演算法即是以此概念為其精髓而發展出 來的一套最佳化演算法。. 政 治 大. 立. John Holland 於 1975 年在其著作”Adaption in Natural and Artificial Systems”. ‧ 國. 學. 中,提出基因演算法的概念與想法,他認為基因演算法應有兩大主要目的:. 的演化過程。. ‧. (一)以縝密且具體的科學方法,來詮釋、演繹自然界中「物競天擇,適者生存」. y. Nat. io. sit. (二)之後 De Jong(1975)及 Goldberg(1989)等人也陸續研究此方法並廣為推廣,將. n. al. er. 生物界中基因演化的重要機制於資訊世界以軟體實作模擬。基因演算法也被廣泛. Ch. i n U. v. 應用於財務決策與投資決策問題,經濟學家更利用其作為時間序列的預測。 一、基本構成. engchi. (一)染色體(chromosome): 染色體(chromosome)是由一些引數所構成的集合,用來定義基因演算法解決問 題的各種可能答案。 (二)染色體族群(population): 一群染色體的集合。基因演算法運算過程中,會將染色體集合中的染色體進 行比較,藉此得到較佳的染色體。. 7.

(16) 二、 運算程序 基因演算法其精神為演化(Evolution)與選擇(Select) 。演化由三大機制所組 成:複製(Reproduction)、交配(Crossover)與突變(Mutation);透過此三種機 制交互運作以產生新的基因組合。演化產生之後代,由事先制定的適應函式(Fitness Function)與選擇函式(Selection Function) ,決定該後代是否要保留到下一代。基 因演算法預期透過不斷演化與選擇之流程,在演化一定數量的世代內,得到最佳 基因組合,亦即為最佳解決方案。 基因演算法運算流程依序為初始化、適應函數、複製、交配、突變,各運算 過程細部操作解釋如下:. 立. (一)初始化(Initialization). 政 治 大. ‧ 國. 學. 初始化染色體即代表設定基因演算法的初始族群,此步驟的目的是為了產生 染色體族群,並給予族群中每條染色體初始值、以及族群架構。. ‧. (二)適應函數(Fitness function). Nat. sit. y. 在遺傳演算法中,適應函數的設計主要用於搜尋最佳解的依據。適應函數決. n. al. er. io. 定了每一個族群中染色體適應環境的能力,是基因演算法用以評估一個問題解的. i n U. v. 優劣的依據。染色體經由適應函數的運算後得到一個值,稱為「適應值」。通常適 應值越高的,參考價值越大。. Ch. engchi. (三)複製(Reproduction) 複製,是依據物種的適應程度來決定是否淘汰或者保留的過程,適應度程度 高之物種的染色體會大量複製以產生優良的下一個演化世代(Generation)。在群 組中染色體依據適應值的高低決定此染色體在下一代中存活的個數,適應值較高 的染色體被選擇存活到下一代的機會就較高,因此適應值較低的染色體後代就會 逐漸減少,最終被淘汰。基因演算法常用的選擇機制有以下四種(蔡安燦, 2006)。 1. 輪盤法(Roulette wheel selection) 針對不同適應值大小對應不同的大小之輪盤面積,面積越大者越容易被選. 8.

(17) 中。此法之缺點若有一染色體特別突出,導致最佳解尚未出現便支配全部群聚, 落入局部最佳化之謬誤。 2. 競爭法(Tournament selection) 隨機取二至多個染色體,選擇其中最大適應值成為下一代之父代,直到產生 一族群之父代,此法可避免提早收斂,但也相對忽略染色體間的差異程度。 3. 菁英法(Elitist selection) 將適應值最大者與前數名的染色體保留,其餘替代並產生新的族群,此法常 搭配其他方法一併使用。. 政 治 大. 4. 期望值法(Expected value selection). 立. 為輪盤法之改良版本,其針對所有適應值之整數部分,按照比例分配被選中. ‧ 國. 學. 之機率,小數點之部分再由輪盤法再次分配,如此一來可改良輪盤法之缺點。 (四)交配(Crossover). ‧. 交配的機制是在某個染色體上隨機選取一個或數個切點,擷取某一段基因,. Nat. sit. y. 與另一個染色體相對應的基因交換,經由特定方法交換部分的基因群,形成兩個. al. n. 型(林銘郎,2005)。. er. io. 新的染色體做為後代,目的為產生新染色體。常見的交配機制大致有以下幾種類. Ch. engchi. 1. 單點交配(One-point crossover). i n U. v. 隨機選取一個特定交配點,交配點兩側交換兩母代的染色體,並得出新的子 代,如圖 1 所示。 子代染色體1. 母代染色體1. A. B. A. 子代染色體2. 母代染色體2. C. D. D. C. 9. B.

(18) 圖 1 單點交配表示圖 (資料來源:莊子德,2010) 2. 兩點交配(Two-point crossover) 隨機選取兩個交配點,兩個母代染色體互相交換此兩交配點之間的基因,產 生新的子染色體,如圖 2 所示。 母代染色體1. A. B. 母代染色體2. E. E. A. C. 政 治D 子代染色體2 大B. F. 立. F. 學. ‧ 國. D. 子代染色體1. C. 圖 2 兩點交配表示圖. ‧. (資料來源:莊子德,2010). Nat. sit. y. 3. 均勻交配(Uniform crossover). n. al. 配,並依據此條件互相交換基因,如圖 3 所示。. Ch. 母代染色體1. A. B. C. engchi A. D. er. io. 母代的染色體中的每個基因都視為交配點,每個交配點都隨機選擇是否交. i n U. v. 子代染色體1. F. C. H. 0 0 1 0 0 0 1 1 母代染色體2. E. F. G. 子代染色體2. E. H. B. 0 0 1 0 0 0 1 1. 圖 3 均勻交配表示圖 (資料來源:莊子德,2010). 10. G. D.

(19) (五)突變(Mutation) 突變的機制是為了避免讓染色體在演化的過程中落入區域的最佳解。突變的 方是主要有下列四種。 1. 互相交換突變(Reciprocal Exchange Mutation) 隨機選取染色體中的兩個突變點,並交換位置,如圖 4 所示。 突變 1 2 3 4 5 6 7 8. 1 2 7 4 5 6 3 8. 圖 4 互相交換突變表示圖. 政 治 大. (資料來源:莊子德,2010). 立. 2. 反轉突變(Inversion Mutation). ‧. ‧ 國. 突變. y. 1 2 7 6 5 4 3 8. io. 圖 5 反轉突變表示圖. sit. Nat. 1 2 3 4 5 6 7 8. er. 所示。. 學. 將染色體中隨機選擇兩個突變點,將兩個突變點中的基因依序反轉,如圖 5. n. a l (資料來源:莊子德,2010)i v n Ch U 3. 插入突變(Insertion Mutation) e n g c h i. 隨機選取基因並隨機選取染色體中的突變點插入。如圖 6 所示。 突變 1 2 3 4 5 6 7 8. 1 2 7 3 4 5 6 8. 圖 6 插入突變表示圖 (資料來源:莊子德,2010) 4. 取代突變(Reciprocal Exchange Mutation) 隨機選取染色體中的任一段基因插入染色體中的任一個位置並取待開位置原 有基因。如圖 7 所示。. 11.

(20) 1 2 3 4 5 6 7 8. 突變. 1 2 3 4 5 3 4 8. 圖 7 取代突變表示圖 (資料來源:莊子德,2010). 第三節 雲端運算(Cloud Computing) 美國國家標準局(NIST)針對雲端運算的標準定義:雲端運算為使用無所不 在、便利、隨需應變的網路,共享廣大的運算資源,如網絡、伺服器、儲存、應 用程式以及服務等,可透過最少的管理工作及服務供應者互動,快速提供各項服. 政 治 大. 務。美國國家標準局對雲端運算更細部分類後,分為有三種服務模式、四種部署. 立. 模型,以及五項基本特性,並且分述如下(NIST, 2010)。. ‧ 國. 學. 一、服務模式. ‧. 雲端所提供服務的模式一般分類為:軟體即服務(Software as a Service, SaaS) 、帄台即服務(Plateform as a Service, PaaS) 、架構即服務(Infrastructure as a. y. Nat. io. sit. Service, IaaS)等三類。. n. al. er. (一)軟體即服務 (SaaS):. Ch. i n U. v. 消費者使用應用程式,但並不掌控作業系統、硬體或運作的網絡基礎架構。. engchi. 即代表透過網路提供商業應用軟體的一種新興服務模式,對於使用者來說,SaaS 讓軟體取得的成本與使用方式都跟以往不同,過去使用商業應用軟體必頇先購買 使用權,在 SaaS 模式下,軟體是存放在提供者端,使用者透過網路使用應用軟體。 (二)帄台即服務 (PaaS): 消費者使用主機操作應用程式。消費者掌控運作應用程式的環境(也擁有主 機部分掌控權) ,但並不掌控作業系統、硬體或運作的網絡基礎架構。帄台通常是 應用程式基礎架構。就是提供帄台的服務,讓客戶將開發的應用程式很容易部署 到雲端如 Google App Engine 或微軟的 Azure 帄台,給開發人員更大的方便與彈. 12.

(21) 性。 (三)基礎架構即服務 (IaaS): 消費者使用「基礎運算資源」 ,如處理能力、儲存空間、網絡元件或中介軟體。 消費者能掌控作業系統、儲存空間、已部署的應用程式及網絡元件(如防火牆、 負載帄衡器等),但並不掌控雲端基礎架構。 二、部署模型 NIST 定義四種部署模型: (一)公用雲:. 政 治 大. 簡而言之,公用雲服務可透過網路及第三方服務供應者,開放給客戶使用, 「公. 立. 用」一詞並不一定代表「免費」 ,但也可能代表免費或相當廉價,公用雲並不表示. ‧ 國. 學. 使用者資料可供任何人查看,公用雲供應者通常會對使用者實施使用存取控制機 制,公用雲作為解決方案,既有彈性,又具備成本效益。. ‧. (二)私有雲:. Nat. sit. y. 私有雲具備許多公用雲環境的優點,例如彈性、適合提供服務,兩者差別在. n. al. er. io. 於私有雲服務中,資料與程序皆在組織內管理,且與公用雲服務不同,不會受到. i n U. v. 網絡頻寬、安全疑慮、法規限制影響;此外,私有雲服務讓供應者及使用者更能. Ch. engchi. 掌控雲端基礎架構、改善安全與彈性,因為使用者與網絡都受到特殊限制,私有 雲架構可參考圖 8。. 13.

(22) 軟體即服務 Software as a Services. 帄台即服務 Platform as a Services. Application. Application. 身分認證管理. 來訪控制. 基 礎 服 務 基礎設施即服務 Infrastructure as a Services. 系統監控. Application. 管理性報表. 資源管理. 負載帄衡. Application. .... 資料備份. 虛擬化. 基 礎 設 施. 政 治 大. 運算主機. 立. 儲存設備. 網路設備. ‧ 國. 學. 圖 8 私有雲架構圖. 其他硬體. (資料來源:本研究整理). ‧. (三)社群雲:. Nat. sit. y. 社群雲由眾多利益相仿的組織掌控及使用,例如特定安全要求、共同宗旨等。. al. n. (四)混合雲:. er. io. 社群成員共同使用雲端資料及應用程式。. Ch. engchi. i n U. v. 混合雲結合公用雲及私有雲,這個模式中,使用者通常將非企業關鍵資訊外 包,並在公用雲上處理,但同時掌控企業關鍵服務及資料。 三、基本特性 NIST 定義雲端運算五項基本特性: (一)高度彈性: 彈性亦即能因應要求調整資源規模大小,對消費者而言,雲端似乎無窮無盡, 且能依據需求增減運算能力採購額,這是 NIST 對雲端運算的一大基本定義。 (二)計算服務: 計算服務中,雲端服務各層次均由雲端供應者掌控與監管,這對於計費、存. 14.

(23) 取控制、資源優化、處理能力規劃及其他工作相當重要。 (三)隨需應變自助服務: 隨需應變與自助代表消費者可自行使用雲端服務,毋需與雲端供應者互動。 (四)網路使用無所不在: 網路使用無所不在,亦即雲端供應者服務可隨時在網路取用,且使用者端無 論大小,均可透過標準機制使用網路。 (五)資源彙整: 資源彙整讓雲端供應者透過多重租賃模式服務消費者,依據消費者要求,來. 政 治 大. 指派或重新指派實體及虛擬資源,在所在地獨立性的概念下,消費者通常不知道. 立. 所有資源確切位置,只可能掌握國家、州或資料中心等大範圍的區域地點。. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. 15. i n U. v.

(24) 第三章 研究方法與架構 本章節將詳細的描述本研究所提出的交易策略評估方法,並說明應用基因演算 法實現歷史資料訓練及回測的架構。. 第一節 研究架構 過往的交易策略帄台運作模式如下:系統接收到投資需求後,便對其所採之技 術指標進行運算,此種運作模式當每個交易策略執行時,皆會重新運算該時點的. 政 治 大 浪費運算能力在重複運算技術指標上。而當帄台上有相當龐大的使用者同時使用 立 技術指標,若多個交易策略皆使用同一時點以及同一技術指標時,即會在無形中. ‧ 國. 學. 模擬服務時,運算能力的浪費便會影響帄台整體效能。. 故本研究擬著眼於雲端運算技術,建構改良式智慧型交易策略帄台,此帄台之. ‧. 運作模式有別以往於特定時間點,分別計算所需眾多技術指標之數值,改以特殊. y. sit. al. er. io. 勢加以輔助。. Nat. 結構儲存,而達資料集中管控之成效,並以雲端計算對大量運算及儲存時所占優. v. n. 此模式一改以往對具關聯性之技術指標,於運算過程中卻採個別計算之缺點,. Ch. engchi. i n U. 將技術指標運算賦予”合成”之特性,包裝為一整合性資料提供服務,降低重複運算 造成的浪費,提升個別技術指標運算結果之可用性,詴圖以此提升整體系統運算 效能。. 16.

(25) 第二節 研究流程. 定義問題. 文獻探討. 交易資料蒐集. 立. 政 治 大 建立交易策略 評估模型. ‧ 國. 學. Nat. y. ‧. 建置交易策略評估 雲端服務架構. n. i n U. 圖 9 研究施行流程圖. Ch. engchi. er. io. al. sit. 結論與 未來研究方向. v. (資料來源:本研究整理). 步驟一: 定義問題。針對期貨此投資標的,協助投資者研發出建議買賣時點的 擇時交易策略。透過多單進場、空單進場、多單出場、空單出場,這 四種交易規則,配合全球產業景氣訊號、資金控管以及部位配置之輔 助,利用基因演算法及歷史資料的訓練,建構出最適當的交易策略及 參數組合。 步驟二: 相關文獻探討。整理且分類與技術分析相關的理論、以及交易策略評 估模型,並介紹基因演算法的基本原理,再運用基因演算法建立實驗 的架構,並統整相關研究。本研究之文獻探討將著重於「技術分析」、. 17.

(26) 「演算法交易」及「基因演算法」這三種相關的主題,以此作為本研 究的理論基礎。 步驟三: 交易資料蒐集。本研究蒐集台灣經濟新報(TEJ)所提供的台灣指數 期貨資料,以及日本東工期貨交易所的黃金期貨指數資料;並在交易 資料蒐集階段即針對原始的交易資料進行預計算,透過技術指標函數 的撰寫,計算出時間數列所對應的技術指標值,將相關數據儲存至本 研究提出之 Systolic Rib Net 架構,中文譯為「收縮式肋骨網絡」 ,以 下將簡稱為 SRN。SRN 結構提供了 2 種功能:1. 提供大量使用者存. 政 治 大. 取,減少使用者對資料的處理。2.減少重複運算所需的時間,直接提. 立. 供計算所需資料給使用者。. ‧ 國. 學. 步驟四: 建立交易策略評估模型。根據相關理論基礎,設計出合適的交易策略 評估模型,此模型以基因演算法的概念為主體,其輸入包括了技術指. ‧. 標相關的隨機常數、基因演算法相關的設定參數、由技術指標組成的. Nat. sit. y. 交易策略,以及儲存在 SRN 結構中的交易資料;輸出則為模擬交易. n. al. er. io. 回測後所搜尋出最佳的交易策略,其中包含技術指標所組成的買賣條. i n U. v. 件及其權重,以及最佳化的買賣條件相關參數。. Ch. engchi. 步驟五: 建置交易策略評估雲端服務架構。本研究利用雲端服務三層式架構為 基礎,詴圖建構出交易策略評估雲端服務架構,在系統中所有使用者 的需求皆統一交由 Façade 處理,由 Façade 去查詢 Command 中對應 的服務流程,將需求及設定檔,交由非同步呼叫代理人去完成整體服 務流程。 步驟六: 結論與未來研究方向。探討本研究的發現、貢獻,對於不足或缺失的 部分,提供可行的改善方案及未來研究方向。. 18.

(27) 第三節 基因演算法架構 第二章部份介紹了基因演算法的運算程序。根據不同的問題,使用基因演算 法時,需要進行一些調整,以下介紹基因演算法的架構設計。 一、 染色體編碼 此部分編碼以實數編碼為主,設計出一條染色體代表一個交易策略,而染色 體中的每一個基因皆為本研究定義的買賣條件(Rule)組成。本研究盡可能將目前 市場上常用的技術指標納入,同時為了比較各種指標間的重要差異性,提供每個 買賣條件一個權重值。本研究參考 Robert W. Colby(2003)與杜金龍(2006)整. 政 治 大. 理之技術指標,以及驗證後的常用交易買賣條件,彙整出本研究目前採用的技術. 立. 表 1 實驗使用之技術指標及買賣條件. 相關參數. 買入訊號. Nat. Average,MA). short、long 為整. n. 指數帄滑異同帄均線 ( Moving. Average. Convergence Divergence,MACD). N 為正整數. K 為帄滑常數 K=. 表當日. 2. 𝑀𝐴𝑠ℎ𝑜𝑟𝑡 − 𝑀𝐴𝑙𝑜𝑛𝑔 > 0, 2. 𝑀𝐴𝑠ℎ𝑜𝑟𝑡 − 𝑀𝐴𝑙𝑜𝑛𝑔 < 0,. C h short < long U n i engchi. short < long. 乖離率指標(BIAS). 表當日. er. io. ,. sit. y. N 為正整數. al. 賣出訊號. 1. 𝑀𝐴𝑡 − 𝑀𝐴𝑡−1 > 0,t 代 1. 𝑀𝐴𝑡 − 𝑀𝐴𝑡−1 < 0,t 代. 移動帄均線(Moving. 數. ‧. 技術指標名稱. 學. ‧ 國. 指標及買賣條件,整理如表 1。. 2 𝑁+1. v. short 、 long 為 整 數 ,. short 、 long 為 整 數 , short < long. 1. BIAS(𝑁) < 𝛽,0 ≤ 𝛽 ≤ 1. BIAS(𝑁) > 𝛽,0 ≤ 𝛽 ≤ −60%. 60%. 1. DIF > 0. 1. DIF < 0. 2. MACD > 0. 2. MACD < 0. 3. DIF − MACD > 0. 3. DIF − MACD < 0. short、long 為整 數 short < long. 19.

(28) 𝐶𝑙𝑜𝑠𝑒𝑡 為 當 天. 1. K > D. 1. K < D. ( Stochastic , KD. 收盤價. 2. D < β,0 ≤ β ≤ 40. 2. D > β,60 ≤ β ≤ 100. Line). 𝐿𝑜𝑤𝑁 為 N 天內. 隨. 機. 指. 標. (表示超賣). (表示超買). 3. K < β,0 ≤ β ≤ 40(表 3. K > β,60 ≤ β ≤ 100. 最低價 𝐻𝑖𝑔ℎ𝑁 為 N 天. 示超賣). (表示超買). 4. 3K − 2D < β,0 ≤ β ≤. 內最高價 𝐾𝑡 為當日 K 值. 4. 2D − 3K > β,0 ≤ β ≤. 20. 20. 𝐷𝑡 為當日 D 值 威 廉. 指 標. %R. (WMS%R). N 為正整數,通. 1. WMS%R > 𝛽,50% ≤. 1. WMS%R < 𝛽,0% ≤. 𝛽 ≤ 100%. 常為 9. 𝛽 ≤ 50%. 2. WMS%R > 50%. Movement. Index ,. 𝑡. 1. +DI < −DI 2. ADX𝑡 − 𝐴𝐷𝑋𝑡−1 < 0. 𝑡−1. 3. ADX < β,0% ≤ β ≤. 學. 100%. ‧ 國. DMI). −DI 政1. +DI >治 +DI 表 示 上 升 2. ADX − 𝐴𝐷𝑋 大 >0 立 方向指標 3. ADX > β,0% ≤ β ≤ N 為正整數. 4. ADX > +DI. 4. ADX < +DI 5. ADX < −DI. 1. MTM𝑠ℎ𝑜𝑟𝑡 < 𝑀𝑇𝑀𝑙𝑜𝑛𝑔. ‧. 5. ADX > −DI. 1. MTM𝑠ℎ𝑜𝑟𝑡 > 𝑀𝑇𝑀𝑙𝑜𝑛𝑔. Index,MTM). 𝐶𝑙𝑜𝑠𝑒𝑡−𝑁 為 N. 2. MTM𝑁,𝑡 − 𝑀𝑇𝑀𝑁,𝑡−1 >. n. al. 0. 盪. 量. 指. 標. Ch. N 為正整數. i n U. e1.nOSCg c> h𝛽,i 0 ≤ 𝛽 ≤ 𝑁. 200%. (Oscillator,OSC). 2. MTM𝑁,𝑡 − 𝑀𝑇𝑀𝑁,𝑡−1 <. er. io. 日前之收盤價. y. N 為正整數. Nat. 動量指標(Momentum. 震. 100%. sit. 趨向指標(Directional. 2. WMS%R < 50%. 0. v. 1. OSC𝑁 < 𝛽, − 100% ≤ 𝛽≤0. 相 對 強 弱 指 數. N 為正整數. 1. RSI𝑠ℎ𝑜𝑟𝑡 > 𝑅𝑆𝐼𝑙𝑜𝑛𝑔. ( Relative. short、long 為整. 2. RSI𝑁 < 𝛽,0 ≤ β ≤ 40 2. RSI𝑁 > 𝛽,60 ≤ β ≤. Index,RSI). Strength. 1. RSI𝑠ℎ𝑜𝑟𝑡 < 𝑅𝑆𝐼𝑙𝑜𝑛𝑔 100. 數 short < long. 動量震盪指標(CMO) N 為正整數. 1. CMO𝑁 < 𝛽, − 100% ≤ 𝛽 ≤ 0%. 20. 1. CMO𝑁 > 𝛽,0% ≤ 𝛽 ≤ 100%.

(29) 趨勢反轉指標(TRI). N 為正整數. 1. TRI(𝑁) < 𝛽,10 ≤ β ≤ 1. TRI(𝑁) > 𝛽,70 ≤ 30. 𝛽 ≤ 90. 1. BBWI > 𝛽,0.3 ≤ 𝛽 ≤. 布 林 波 段 指 數. 4. (Bollinger Band With Index,BBWI) 變動率指標(Rate of. N 為正整數. 1. ROC(N) < 𝛽, − 12 ≤ 𝛽 ≤ −5. change,ROC) 買賣意願指標(BR). N 為正整數. 1. BR(N) > AR(N) & BR(N) < 100, 0 ≤ 𝑁 ≤ 200. 政2. BR(N)治> AR(N)大. 立. & AR(N) < 50,. 3. BR(N) < AR(N), 0 ≤ 𝑁 ≤ 200 BR[0](N) > 𝛽,. 0 ≤ 𝛽 ≤ 5,BR[n]表示. n. al. er. io. 數據. sit. 該時間區段中第 n+1 筆. C h MA(𝐶𝑅(N), 10)U&n i engchi CR[0](N). N 為正整數. 1. CR(N) >. y. ‧. 4. BR[3](N) −. Nat 價格動量指標(CR). 學. ‧ 國. 0 ≤ 𝑁 ≤ 200. v. > MA[0](CR(N), 20) 2. CR[0](N) > MA[0](𝐶𝑅(N), 40) &. 1. CR[0](𝑁) < MA[0](CR(N), 10) & CR[0](N) < MA[0](CR(N), 20) 2. CR[0](N) < MA[0](CR(N), 40) &. CR[1](N). CR[1](N). < MA[1](CR(N), 62). > MA[1](CR(N), 62). 3. CR(N) < 𝛽 & CR[1](N) > 𝛽, 30 ≤ 𝛽 ≤ 50. 21. 3. CR(N) > 𝛽 & CR[1](N) < 𝛽.

(30) 集. 散. (. 指. 1. Close[0] < Close[1] &. 標. Accumulation. Distribution,AD). AD[0] > AD[1]. AD[0] < AD[1]. ,Close[n] 表示該時間. Close[n] 表示該時間區. 區段中第 n+1 筆收盤價. 段中第 n+1 筆收盤價. 1. ADDO < 𝛽, − 20 ≤. 進階衰弱震盪氣指標 (. 1. Close[0] > Close[1] &. 1. ADDO > 𝛽,0 ≤ 𝛽 ≤. 𝛽≤0. Advance-Decline. ,. 20. Divergence Oscillator,ADDO) 中軌布林線指標. N 為正整數. 1. Close > MB(N). 1. Close < MB(N). (Middle Boll,MB 成交量比率指標. N 為正整數. (Volume Ratio,VR). 立. 能 量 潮 指 標 ( On. OBV). 金錢流指標(Money. N 為正整數. Flow Index,MFI). K 為正整數. 1. Close[0] < Close[1] &. 1. Close[0] > Close[1] &. OBV[0] > 𝑂𝐵𝑉[1]. OBV[0] < 𝑂𝐵𝑉[1]. 1. MFI(N) > 𝛽,10 ≤ 𝛽 ≤ 1. MFI(N) < 𝛽,70 ≤ 𝛽 ≤ 30. 90. 2. MFI(N) >. ( Positive. sit. al. n. 正 成 交 量 指 標. 𝑀𝐴(𝑀𝐹𝐼(𝑁), 𝐾),4 ≤. er. io. Index,FI). y. Nat 強力指數指標(Force. VR(N)[0] > 𝑉𝑅(𝑁)[1]. ‧. ‧ 國. Volume ,. 1. VR(N) > 450 &. 學. Balance. 1. VR(N) > 𝛽,0 ≤ 𝛽 ≤ 1 政 治 大. C h FI[0] − 𝐹𝐼[1] >U0n i engchi 1. FI < 0 &. v. 𝐾≤8. 1. FI > 0 & FI[0] − 𝐹𝐼[1] > 0. N 為正整數. 1. PVI > 𝑀𝐴(𝑃𝑉𝐼, 𝑁). 1. PVI < 𝑀𝐴(𝑃𝑉𝐼, 𝑁). N 為正整數. 1. EMV(N) > 0. 1. EMV(N) < 0. 1. Close > SAR. 1. Close < SAR. Volume. Index,PVI) 簡易波動指標(Ease of Movement,EMV) 停損轉向操作點指標 (Stop And Reverse, SAR). 22.

(31) 震盪量買賣指標 (. Open. N 為正整數. 1. OSC(N) = 𝛽,70 ≤ 𝛽 ≤ 1. OSC(N) = 𝛽,110 ≤ 90. Source. 𝛽 ≤ 130. Commerce,OSC) 指數帄均數指標. N 為正整數. 1. EMA(VA(N)) < 𝛽,. 0≤𝛽≤3. (Exponential Moving Average,. 1. EMA(VA(N)) > 𝛽,. −3 ≤ 𝛽 ≤ 0. EMA). 隨 機 漫 步 指 標. N 為正整數. 1. RWIL(N)[0] >. (Random Walk Index. MAX(RWIL(N), 𝛽)[1],. for low,RWIL). 5 ≤ 𝛽 ≤ 15. 三重指數帄滑移動帄. N 為正整數. 均 指 標 ( Triple Exponentially Smoothed. 立. Moving. 漲 跌 比 率 指 標 ( Advance. 1. ADR(N) > 𝛽 & Close[0] − Close[1]. Decline. < 0,0.7 ≤ 𝛽 ≤ 2.7. Nat. sit. y. ‧. Line,ADR). N 為正整數. TRIX(N)[0] 治 政 > TRIX(N)[1] 大. 學. ‧ 國. Average,TRIX). 1. Close[0] < Close[1] &. io. er. 本研究染色體編碼採實數編碼方式,每一位元代表一個買賣條件,可參見圖. al. v i n Ch 究設計將前半段染色體視為買入訊號,後半段染色體的基因則為賣出訊號,若買 engchi U n. 15 染色體編碼示意圖;由於交易策略中是由買入訊號及賣出訊號組成,因此本研. 入訊號成立,值即為 1;反之當賣出訊號成立,值則為-1。買入訊號及賣出訊號皆 有其門檻值,此門檻值會隨著景氣影響,若景氣看好,則買入訊號門檻值下降, 賣出訊號門檻值上升。 對每一買賣條件配置一權重值的主要目的在於,提供較大彈性來表示複雜的 交易策略,且本研究希望在基因演算法的流程中,藉由微調權重值,或是回饋後 的技術指標知識庫針對權重的調整,可凸顯出交易法則,是否存在較重要或準確 的買賣條件。這樣的設計除了能讓基因演算法發揮最佳化參數搜尋的效能,亦可 讓交易策略有更多彈性的組合,本研究產生染色體之流程可參見圖 10 染色體初始. 23.

(32) 化示意圖。表 2 則為染色體內基因的中的買賣條件以及權重值之範例。. 表 2 實驗使用之技術指標及買賣條件 Rule1 染色體 1. 染色體 2. Weight1. True(1) 1. False(0) 1.5. Rule2. Weight2. Rule3. Weight3. Rule4. Weight4. False. 1. True. 1. True. 1. (0). (-1). (-1). True(1) 1.2. False(0) 1.2. False. 1.1. (0). 政 治 大. 技術指標知識庫 (TA Container) KD Line. WMS% R. DMI. MTM. OSC. RSI. CMO. ‧ 國. MACD. 隨機產生一組交易策略, 前半為買入訊號,後半為賣出訊號 RSI(Short)<RSI(Long). Nat. False(0). 1. y. sit. RSI(5)<RSI(20). i n U. 回測時,染色體適應值計算. Ch 0.8. e nTrue(-1) gchi. 1. WMS%R<30%. 1.2. True(-1). 1.2. er. al. 0.8. n 1.1. WMS%R<β,0%≤β≤50%. 提供各技術指標參數. DIF-MACD>0. io. True(1). ‧. DIF-MACD>0. 1.1. 學. BIAS. DIF>0. DIF>0. 立. MA. v. 圖 10 染色體初始化示意圖 二、 適應函數 適應函數所代表的是染色體的生存規則,亦是用來評估每個染色體代表問題 解的優劣,不良的適應函數將會導致染色體錯誤的演化方向及結果。由於本研究 希望能設計出一個可讓使用者客製化研發出適用的交易策略的方法,因此系統將 提供多種可行的適應函數作為選擇。目前預設使用的適應函數包括回測後的操作 收益率與勝率,計算公式如下:. 24.

(33) 操作收益率: N. 期末資金. 年獲利率 = ( √. 期初資金. (. N. 相對獲利指標 =. − 1) × 100%,N 代表總交易年數. 期末資金 ) 期初資金. 期末收盤價 ) √ 期初收盤價 (. 勝率: 買入成功率 =. 買入成功次數. 政 治 大 賣出成功次數 賣出成功率 = 立 買入交易次數. 交易成功率 =. 學. 買入成功次數 + 賣出成功次數 買入交易次數 + 賣出交易次數. ‧. ‧ 國. 賣出交易次數. sit. y. Nat. io. al. n. 保留繼續演化。. er. 回測後,系統將評估染色體的適應值,適應值越大表示該染色體越有機會被. Ch. engchi. 25. i n U. v.

(34) 第四節 系統架構 本研究之系統架構可分為資料前處理、訓練及測詴,將歷史原始資料進行預 計算並存放在 SRN 結構中,並且以技術指標、技術指標組合成的買賣條件,隨機 產生交易策略染色體及其買賣條件權重,運用基因演算法進而挑選出最好的投資 交易策略。透過使用者對於基因演算法相關參數的設定,考慮其交易策略的報酬 率相關因素,以歷史模擬法來估算其適應值,進行目標最佳化,最後實作出可提 供投資者具參考價值的「投資交易策略評估」帄台,本研究也將透過實驗來說明以 歷史資料訓練所預測投資交易策略的結果。圖 11 為本研究架構模型圖。. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. 26. i n U. v.

(35) 資料前處理模組 收縮式肋骨網絡(Systolic Rib Net,SRN). 原始日交易資料. 資料經過處理之最終 值,儲存至肋骨(Rib). 最新原始資料加入 脊椎(Spine)時間陣列. 各商品之 SRN群. 訓練階段 技術指標知識庫 (TA Knowledge Base) 依照回測結果針對 TA Knowledge Base 調整權重. 隨機選取使用 之技術指標 TA(i). 符號染色體 突變. 初始化符號 染色體族群. 立. 模擬交易回 測模組. 資金管理模型. 學. ‧ 國. 政 治 大. 挑選染色體. 評估染色體 適應程度. io. y. sit. 終止條件. 否. 是. er. 排序染色體. 總經產業景氣模組. ‧. 複製適應力 高的染色體. Nat. 基因演算法模組. 符號染色體 交配. 依照TA隨機產生 對應之買賣訊號 (Rule). 依TA(i)隨機產生其 對應參數數值. n. al. Ch. 測詴階段. i n U. v. 最佳染色體 (最佳策略組Strategy). 結束演化. engchi. 模擬交易回測結果. 模擬交易回測模組. 圖 11 架構模型圖 (資料來源:本研究整理). 27.

(36) 第五節 研究方法 本研究方法分成三個部分,分別為「資料前處理」、「訓練階段」、「測詴階段」, 以下詳細介紹此三部分的架構內容。 一、 資料前處理 資料前處理部分,本研究提出 Systolic Rib Net 此種資料儲存結構,中文譯為 「收縮式肋骨網絡」 ,以下簡稱 SRN。SRN 藉由模仿人類心臟收縮之過程,以人體 血流比喻為資料,將心臟能夠連續地把血流源源不絕地從中打出,以產生供給全 身所需之養分;在此過程中,心臟微妙的供給方式是整個過程最重要的部分,也. 政 治 大. 就是 SRN 處理資料最核心的部分。SRN 結構提供了 2 種功能:1. 提供大量使用者. 立. 存取,減少使用者對資料的處理。2.減少重複運算所需的時間,以最快速的方式提. ‧ 國. 學. 供資料給使用者,以下將完整說明 SRN 結構。. ‧. 從完整的架構來看,SRN 包含了 一根 Spine (脊椎) ,及所需數目之 Rib (肋 骨)。Spine 為一時間數列,而由於資料具有連續性的特性,每筆最新的原始資料. y. Nat. io. sit. 會隨著時間的推移,一筆一筆加入至 Spine 的最前端,也就是說,Spine 會隨著時. n. al. er. 間的推移而生長。由於 Spine 為一時間數列,在 Spine 的一時間點下,將有 Rib 連. Ch. i n U. v. 接至此時間點。Rib 之功用為儲存資料處理後的最終值,與資料處理中具有時間推. engchi. 移性的資料。資料經過處理後的最終值,放進 Rib 之中,以供大量的使用者存取, 免去讓使用者重複計算的資源浪費。資料運算中,有很多資料的產出是需要使用 過去的歷史資料做運算,而歷史資料也是由過去的歷史資料所計算出來,若不能 夠善用歷史資料的特性,將會在計算新資料時,重複對歷史資料做計算。SRN 能 夠對歷史資料「不重複運算」 ,藉由儲存已運算過之歷史資料與為了運算此歷史資 料所需之資料,而於下一個時間點時,成為新資料的運算資料,減少對新資料所 需資料的重複運算,達到「減少運算所需時間」 ,以最快速的方式提供給使用者最 新資料。需注意的是,需儲存於 SRN 的資料必頇對未來的資料有所貢獻,也就是. 28.

(37) 說,儲存在 SRN 結構中的資料,除了已運算過的歷史資料(也就是最終值)外, 其餘的資料必頇是未來歷史資料中所需運算的資料,才需存儲於 SRN 中,否則此 資料將因「無時間的推移性」,而永遠不會被未來資料所使用。 SRN 能夠支援不同的時間數列,並包含在一個 SRN 群內,也提供不同目標的 資料運算。以期貨為例,使用者對於一支期貨做回測時,可選擇不同的時間精度, 以秒、分鐘、小時做運算時,不同的時間精度需要不同的資料,因此能夠使用時 間精度為以秒為單位之 SRN,以分鐘為單位之 SRN,及以小時為單位之 SRN,這 三個 SRN 將會被包含在同一商品的 SRN 群內。若使用者需對以小時為單位之 SRN. 政 治 大. 做 MACD 指標之運算,則 SRN 中便有為了計算 MACD 之資料的 Rib。為了不同. 立. 的計算目標,SRN 提供不同的 Rib 來儲存。. ‧ 國. 學. 二、 訓練階段. 而訓練階段,則是利用基因演算法針對歷史資料的回測分析,來評估投資交. ‧. 易的優劣。整體流程部分分為市場資訊接收器服務、基因演算法交易策略評估帄. Nat. sit. y. 台、基因演算法交易策略評估執行服務、技術指標知識庫、模擬交易回測服務。. n. al. er. io. 請參考圖 12 交易評估模型圖。. Ch. engchi. 29. i n U. v.

(38) 市場報價 Financial Markets Quotes. 市場資訊接收器服務 Market Info Receiver Service 初始化符號 染色體族群. 符號染色體 突變 策略評估相關設定 Strategy Evaluation Configs. 基因演算法 交易策略評估帄台 GA Strategy Evaluation Platform. 模擬交易回 測模組. 挑選染色體 評估染色體 適應程度. 政 治 大. 基因演算法交易策略 評估執行服務 GA Strategy Evaluation Execute Service. 立. 基因演算法模組. 1.染色體長度 2.染色體族群數 3.基因交配機率 4.基因突變機率 5.基因演化代數 6.訓練期間 7.測詴期間 8.優良染色體的篩選量 9.選擇方式 10.交配方式 11.適應函式 12.買入信號強度係數 13.賣出信號強度係數 14.測詴資料顆粒度. 符號染色體 交配. 複製適應力 高的染色體. 排序染色體. 否. ‧ 國. 學. 技術指標知識庫 TA Knowledge Base. 終止條件 是. 結束演化. n. Ch. engchi. sit. er. io. al. (資料來源:本研究整理). y. ‧. Nat. 圖 12 本研究交易評估模型圖. i n U. v. 首先,市場報價的原始資料經由市場資訊接收器服務處理,取得投資標的之 每日開盤價、收盤價、最高價、最低價及交易量,並計算出研究中各種技術指標, 並將其存進技術指標資料庫以及 SRN 資料結構。 技術指標知識庫(TA Knowledge Base)則是將研究所需的技術指標(TA(i)) , 將其公式化,並可讓使用者客製化出買賣條件(Rule),買賣條件為一布林的表達 式,其中由多種 TA(i)組合成算術表達式,搭配布林運算子,最後在每根 K 線 或時間點來判斷買賣條件是否成立,回傳其狀態值(State) 。由於技術指標知識庫 為基因演算法模組初始化染色體的來源,因此本研究擬設計出一種回饋機制,藉. 30.

(39) 此蒐集在不同期間內是否存在特別強勢或準確的買賣條件,將表現優秀的買賣條 件權重提高,未來初始化染色體時選擇到的機會提升,而將表現不佳的買賣條件 權重降低,降低其選擇機會,以此機制來建立技術指標知識庫。 基因演算法交易策略評估帄台是使用者主要使用之程式介面,使用者藉由該 帄台去自定義或編輯技術指標或是買賣條件,並可客製化其基因演算法之相關設 定,包括染色體長度(即代表一交易策略包含多少個買賣條件)、染色體族群數、 基因交配機率、基因突變機率、基因演化代數、訓練期間、測詴期間、優良染色 體的篩選量、選擇、交配方式、適應函式、買入訊號強度係數、賣出訊號強度係. 政 治 大. 數、測詴資料顆粒度;策略評估相關設定完成後,即可呼叫基因演算法交易策略. 立. 評估執行服務,由評估執行服務來初始化一代染色體族群,並將一代染色體族群. ‧ 國. 學. 丟入並呼叫模擬交易回測模組,以進行整個基因演算法的演算流程。 模擬交易回測模組包括了模擬交易回測服務(Simulation Service)、策略執行. ‧. 服務(Strategy Frame Execution Service)、基因演算法服務(Genetic Algorithm. Nat. sit. y. Service) 、買賣條件編譯服務(Rule Compiler Service) 、買賣條件庫服務(Rule Library. n. al. er. io. Service)、收縮式肋骨網絡,請參考圖 13 模擬交易回測模組圖。模擬交易回測模. i n U. v. 組主要為處理一代染色體族群適應值的模組,即代表依照使用者設定之適應函. Ch. engchi. 式,用以進行其設定訓練期間的模擬回測。. 31.

(40) 職責鏈模式 Chain of Responsibility Pattern. 染色體族群. SRN Subnet. 模擬交易回測服務 Simulation Service 取得SRN Subnet. 策略執行服務 Strategy Frame Execution Service 基因演算法服務 Genetic Algorithm Service. 收縮式肋骨網路 SRN Service. 立. 政 治 大. 買賣條件編譯服務 Rule Compiler Service. ‧. ‧ 國. 學. 買賣條件庫服務 Rule Library Service. 圖 13 模擬交易回測模組圖. Nat. sit. y. (資料來源:本研究整理). n. al. er. io. (一)模擬交易回測服務. i n U. v. 當使用者將交易策略模擬相關條件設定完畢,即會呼叫模擬交易回測服務。. Ch. engchi. 模擬交易回測服務包含模擬控制器(Total Simulation) 、視窗模擬控制器(Window Simulation) ,模擬控制器負責整體模擬的流程,切割出適當大小的視窗以及時間區 間,以進行完整的一次基因演算法模擬。視窗模擬控制器則為實際運行交易策略 模擬的控制器,其負責呼叫買賣條件庫服務,以初始化一代完整的染色體族群, 並且取得該交易策略執行物件所使用之 SRN SubNet 資料。一條染色體即為一個交 易策略執行物件(Strategy Frame) 。交易策略執行物件是系統中,實際將交易策略 在每個時點,確認買賣條件是否成立的執行物件,其包含了:交易策略(染色體)、 資產清單,資金管理物件。資產清單包含了每個買賣時間以及資金投注狀態,最 終可以以資產清單為基礎產出模擬後報表,以報表中的報酬率或勝率為基準,來. 32.

(41) 評斷交易策略的優劣。 (二)策略執行服務 主要負責將一整代的族群,針對每條 K 線進行交易策略的買賣時點判斷,每 次時點上會呼叫買賣條件編譯服務,以進行交易策略買賣的判斷,交易執行物件 中若確認購買訊號成立,即呼叫其擁有的資金管理員,來確認商品的買賣量,並 且在資產清單寫入一筆交易紀錄。 (三)基因演算法服務 負責將一整代染色體族群,進行一次基因演算法的隨機更換流程,依照使用. 政 治 大. 者設定之適應函式來進行複製、突變、挑選以及排序等程序,產製下一代的染色. 立. 體族群並交由策略執行服務進行實際的買賣時點模擬。. ‧ 國. 學. (四)買賣條件編譯服務. 當交易策略需進行買賣時點判斷時,就會將買賣訊號的布林運算式,丟入買. ‧. 賣條件編譯服務中,由其服務去負責編譯買賣條件(基因)的內容,並回傳布林. Nat. sit. y. 值,最後由策略執行服務判斷買賣條件是否成立,並且將訊號強弱數值傳給資金. n. al. er. io. 管理員,以決定下單數量。 (五)買賣條件庫服務. Ch. engchi. i n U. v. 當染色體初始化時,即可呼叫買賣條件庫服務,以隨機挑選買賣訊號的運算 式以及其權重值。 (六)收縮式肋骨網絡 SRN 為一雲端儲存運算服務,主要著力於資料維護與提供技術指標數值給予 交易策略評估模擬使用,並且採用雲端非同步運算以降低對系統與資料庫的衝 擊,利用雲端運算的特性來達成巨量資料或是複雜結構的數據分析,或是即時模 擬服務,並且以「非同步」(Asynchronous) 方式透過軟體協調運作,形成所謂的 「 分 散 式 處 理 」 (Distributed Processing) , 並 達 到 包 括 連 續 性 運 作 (Continuous operation) 、 分 割 獨 立 性 (Fragmentation independence) 、 複 製 獨 立 性 (Replication. 33.

(42) independence)的帄行處理模式。 另外,SRN 負責留存各商品在每個時間區間以及時點的技術指標運算後的數 值,不同的時間區間劃分為不同 Spine,並在各時點上長出對應的 Rib,存入技術 指標在該時點的運算數值。由於 SRN 的資料運算量會日益提升,因此將其區隔為 獨立的服務,並且當服務啟動時將所有數據載入至記憶體中,使其運算量降至最 低。 若 SRN 服務負載量過載時,則需可以 Rib 為最小單位進行服務的切割,將服 務切割為相同的結構,載入不同的 Rib 資料後並將服務啟動至不同的虛擬機器中, 將負載量分散並維持服務品質。. 立. 政 治 大. 系統執行流程簡圖則請參考圖 14。. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. 34. i n U. v.

(43) 從指標指標知識庫中取出 買賣訊號條件. 隨機提供參數及權重. 依照時間維度進行 各K線之回測. 計算交易策略各 Condition的總和. 計算該K線的景氣訊號 狀態對應之門檻值. 立. 買入成立. 政 治 大 賣出成立. 學. ‧ 國. 交易策略是否成立. 賣出策略成立, 空單進場或多單出場. 買入策略成立, 多單進場或空單出場. 產生符號 染色體族群. ‧ sit. n. al. 終止條件. Ch. engchi. 基因演算流程結束 產出最佳交易策略. 是. er. io. 回測計算損益並提供 染色體適應值. 符號染色體 交配. y. Nat. 依照設定資金管理邏輯 計算下單數. 符號染色體 突變. i n U. v. 挑選染色體. 複製適應力 高的染色體. 否 排序染色體. 將交易策略參數組合 回饋至技術指標知識庫. 圖 14 系統執行流程簡圖 (資料來源:本研究整理) 三、 測詴階段 測詴階段主要是在測詴期進行模擬交易回測,並計算其報酬率是否如訓練時 期表現優異,是一種避免過度配適的方法,並且可測詴交易策略是否能適用於各 種時期及趨勢表現的市場,如此才可避免交易策略獲利不夠穩健,或是無法抵禦. 35.

(44) 不利市場的狀況,並可重複測詴及確認交易策略的耐用性及品質。而為了能讓所 產生的交易策略更能適應變化的環境,使其能隨著時間變動而重新學習並修正交 易策略及參數組合,本研究採取移動視窗機制,預設以三個月的期間做為訓練期, 後一個月的時間為測詴期,將訓練期得到的交易策略用在測詴期間進行測詴,完 成後再將時間視窗沿時間軸往後遞移一個月,重複進行訓練與測詴,其基本概念 流程如圖 15 所示。 移動視窗法 染色體 族群. 一月. 時間 二月. 三月. 四月. 訓練期. 測詴期. 立. 訓練期. 五月. 七月. 八月. 九月. 訓練期. 十一月. 十二月. 記錄5組優良策略. 記錄5組優良策略. 測詴期. 測詴期 訓練期. 學. 訓練期. 記錄5組優良策略 測詴期. ‧. 〃〃〃 〃〃〃. 訓練期. 測詴期. y. Nat. 記錄5組優良策略. sit. 策略染色體. 十月. 政 治 大 測詴期. ‧ 國. 六月. 依照參數「優良染色體」的篩選量,紀錄測詴後表現最佳的一組染色 體,Ex:5組優良策略. n. al. er. io. 累計共45組優良策略. Ch. 測詴期. engchi. i n U. v. 依照測詴期回測之適應值,如淨利,來排序此60組優良策略,並得到最佳交易策略染色體. 非移動視窗法 時間 一月. 二月. 三月. 四月. 五月. 六月. 七月. 八月. 九月. 十月. 十一月. 染色體族群 訓練期. 測詴期. 依照優良染色體的篩選量,紀錄測詴後表現最佳的一組染色體,Ex:5組優良策略. 圖 15 移動視窗法示意圖 (資料來源:本研究整理). 36. 十二月.

(45) 第四章框架設計 本研究詴圖在雲端運算基礎之上發展滿足服務導向特色的應用程式框架架 構,詴圖將傳統的三層式架構,修改為符合可有效配置於雲端運算環境的運算結 構。本章先針對框架的核心物件與執行流程進行說明,再藉由交易策略評估帄台 之應用,以說明本架構之可行性。. 第一節 三層式架構 展示層 (Presentation Layer). 立. Model - View - ViewModel. 政 治 大 Data Binding. 學. ‧ 國. View Components Data Binding. View Models. View Models Control. ‧. Web Services. Nat. sit. io. Facade. Commands. n. al. er. Task. y. 商業邏輯層 (Business Logic Layer). Business Objects BOManager. Ch. engchi. i n U. Business Objects. 資料存取層 (Data Access Layer). v. Builder. LINQ or DataSet. SQL Server. ADO.Net Data Provider. 圖 16 三層式架構示意圖 (資料來源:本研究整理). 37.

(46) 、 圖 16 為一般應用程式所使用之三層式架構圖,為展示層(Presentation Layer) 商業邏輯層(Business Logic Layer)以及資料存取層(Data Access Layer) ,以下將 分述之。 一、 展示層 在 展 示 層 部 分 , 本 研 究 採 取 微 軟 所 提 出 的 WPF ( Windows Presentation Foundation)來實作,並實作 MVVM 模式(Model-View-ViewModel) 。在 2005 年, John Gossman 提出 Model-View-ViewModel 模式,是 MVC 的一種變型。 View:其實就是 XAML 檔,也就是使用者介面。使用者介面設計人員只需要. 政 治 大. 在 Blend 中進行對它的編輯,並透過 Binding 來和 ViewModel 溝通,可將 DataContext. 立. 指定為某個 ViewModel,以更進一步的與其中的屬性進行 Binding。. ‧ 國. 學. ViewModel:顧名思義,ViewModel 就是供 View 使用的 Model,透過公開的 屬性(public property)給 View 進行 Binding 並供其使用。. ‧. Model:用來描述資料實體(Entity)的簡單類別(Class),可在 Model 部分實作商. Nat. sit. n. al. er. io. 二、 商業邏輯層. y. 業邏輯以及與資料庫溝通等資料存取相關的功能。. i n U. v. 商業邏輯層中,本研究使用設計模式中的 Facade 模式,可以簡化程式庫的使. Ch. engchi. 用、隱藏所依賴的程式庫、降低對程式庫的耦合、有利於分工合作。為了提供給 不同的用戶端適當的介面及跨系統整合等需求,所以把傳統商業邏輯層分為數個 Components,最上層的物件是 Facade,提供適當的介面給各種用戶端呼叫,Façade 將去找尋對應的 Command,Command 負責區隔開呼叫程序方法的物件實體以及實 際提供物件方法的物件實體,也就是說將動作的要求者以及動作的執行者之間鬆 綁,這將簡化新增新命令物件的作法,因為已經存在的命令物件不需要被變動到, 也就是說 若把每個特定的動作都封裝成物件來處理,每個特殊的動作都有其對應 的物件,就不會對既有的物件產生影響,因此相當適合用於 SOA 此種各種服務低 耦合的情境中。. 38.

(47) Business Objects 則是商業邏輯層中,實際提供業務邏輯進行運算的物件,當 某服務需要商業物件時,Business Objects 統一由 Business Objects Builder 從資料庫 或資料庫叢集中取出存放至記憶體中,以完成商業物件的初始化,並由 BO Manager 統一管理,如此可避免商業物件重複由資料庫中進行存取,以提升效能。 三、 資料存取層 資料存取層所定義的就是將資料的存取,與應用程式的邏輯分開。資料存取 層的特性包括:資料存取層不包含任何的商業邏輯,且可以抽出成為實體不同主 機的分層,而當資料庫更換時,只需修改資料存取層,不需修改商業邏輯層或者. 政 治 大. 介面層的程式。本研究使用微軟提出的 ADO.NET Entity Framework,其是微軟以. 立. ADO.NET 為基礎所發展出來的物件關聯對應 (O/R Mapping) 解決方案,Entity. ‧ 國. 學. Framework 利用了抽象化資料結構的方式,將每個資料庫物件都轉換成應用程式 物件 (entity),而資料欄位都轉換為屬性 (property),關聯則轉換為結合屬性. ‧. (association),讓資料庫的 E/R 模型完全的轉成物件模型,如此讓程式設計師能用. Nat. sit. y. 最熟悉的程式語言來呼叫存取。而在抽象化的結構之下,則是高度整合與對應結. n. al. er. io. 構 的 概 念 層 、 對 應 層 和 儲 存 層 , 以 及 支 援 Entity Framework 的 資 料 提 供 者. i n U. (provider),讓資料存取的工作得以順利與完整的進行。. Ch. engchi. v. 因此本研究將此種三層式架構,詴圖在雲端環境上以 SOA 的方式實現,並修 改為如圖 18,並解說於第四章第二節。. 39.

(48) 第二節 雲端服務三層式架構 圖 17 為本研究提出之雲端服務三層式架構圖,分別為服務展示層(Presentation Layer)、服務協調層(Service Orchestration Layer)以及資料存取層(Data Access Layer),以下將分述之。 服務介面層 (Presentation Layer) Model - View - ViewModel Data Binding View Components Data Binding. View Models. View Models Control. 政 治 大. Request / Result. 立. WCF Services. 學. Task. Facade. Commands. Services. Asynchronous Call Agent. n. al. Ch. BOManager. Service B. engchi. …... Service C. er. io. sit. y. Nat Service A. Business Objects. i n U. Business Objects. v. WCF Services Builder. LINQ or DataSet. 資料存取層 (Data Access Layer) DB Cluster DB Cluster. ‧. ‧ 國. 服務協調層 (Service Orchestration Layer). ADO.Net Data Provider. DB Cluster. 圖 17 雲端服務三層式架構 (資料來源:本研究整理). 40.

數據

圖  13  模擬交易回測模組圖  (資料來源:本研究整理)
圖  16  三層式架構示意圖  (資料來源:本研究整理)

參考文獻

相關文件

、機構應於受理之日起三十日內通知其復職,留職停薪人員應於服 務之學校、機構通知之日起,三十日內復職報到;其未申請提前復

第三節 研究方法 第四節 研究範圍 第五節 電影院簡介 第二章 文獻探討 第一節 電影片映演業 第二節 服務品質 第三節 服務行銷組合 第四節 顧客滿意度 第五節 顧客忠誠度

使用人工智慧框架基礎(Frame-based)的架構,這些努力的結果即為後來發展的 DAML+OIL。DAML+OIL 是 Web Resource 中可以用來描述語意的 Ontology 標 記語言,它是以 W3C

二、 求才人次:係以透過公立就業服務機構(包含中心、臺服務臨櫃及現場徵才)之求才 登記職缺並鍵入就服資訊系統之人次,及加上臺灣就業通求才登記工作地點為雲嘉

勞動部勞動力發展署雲嘉南區分署(以下簡稱本分署)下轄 7 個就業中心及 58

勞動部勞動力發展署雲嘉南區分署(以下簡稱本分署)下轄 7 個就業中心及 50

△△聯合診所所提供之服務範圍計有門診醫療服務(一樓)及 復健治療服務(二樓)兩項,本研究係針對一樓「門診醫療服務流 程」進行研究。由於△△聯合診所之門診醫療服務不具設計及研發

服務提供者透過 SOAP 訊息將網路服務註冊在 UDDI 中,服務需求者也可以透 過 SOAP 向服務仲介者查詢所需的 Web Service 並取得 Web Service 的 WSDL 文件,2.