• 沒有找到結果。

第四章 雲端分散式架構實作

第一節 系統架構

四、 交易室

立 政 治 大 學

Na tiona

l Ch engchi University

Cluster 的管理規範與 JBoss Cluster Job Dispatching Model 的結構來表現,將會如下 圖所示(以下為抽象的結構表現,實際的佈署結構請詳見本章第二節-「系統模組 切分」之內容):

圖 29 JBoss Cluster 切分圖-規劃室之統計模型模組 (資料來源:本研究整理)

四、交易室

交易室主要的功能是提供使用者一個即時的策略執行環境,並隨時回報策略 的執行現況與交易績效報告。一旦投資策略在交易室中被啟動,投資策略物件會 被置入策略監控模組中,並不斷接收市場狀態資料以判斷是否在當下的時間點做 買賣的動作。當策略物件確認要交易下單時,會將下單請求統一傳遞給交易報告 匯總模組,由該模組管理並轉交給遠端的下單機。而下單之後所產生的交易報告 也會先經由交易報告匯總模組接收後,再轉發回給策略監控模組中的投資策略物 件。

‧ 國

立 政 治 大 學

Na tiona

l Ch engchi University

圖 30 交易室之 Use Case Diagram (資料來源:本研究整理)

‧ 國

立 政 治 大 學

Na tiona

l Ch engchi University

圖 31 交易室之簡易 Sequence Diagram (資料來源:本研究整理)

交易報告匯總模組的設計採用了代理人模式(Proxy Pattern),事實上,交易報 告匯總模組扮演了另一個系統模組-下單機的遠端代理人。下單機因為引用外部第 三方的 C#下單 API 的關係,在撰寫上使用了與其他的系統模組不同的語言,也被 佈署在不同的遠端環境之上。為了簡化程式的複雜度、提高下單功能的安全性,

並讓流動於策略監控模組與下單機之間的交易單與交易報告可以被有效率地集中 管理,我們在交易室的設計中增加了交易報告匯總模組作為下單機的遠端代理人,

讓代理人利用 Http 協定轉交所有策略監控模組的 Request 給下單機,同時也利用 HornetQ 的 Topic 訂閱/傳播機制將下單機的 Response 傳遞給策略監控模組底下對 應的投資策略物件。

‧ 國

立 政 治 大 學

Na tiona

l Ch engchi University

圖 32 交易室之代理人模式示意圖 (資料來源:本研究整理)

由於策略監控模組時常需要同時監控多個在即時環境下測試的交易策略,當 系統的使用者越多、啟動的即時策略越多的時候,此一模組的運算需求量越高,

故本研究在策略監控模組也採用 JBoss Cluster Job Dispatching Model 的架構。

在策略監控模組,一個 Job 的單位為在即時環境下啟動的交易策略。由五種屬 性可以決定策略監控模組的一個 Job,分別為區域(Region,如 Taiwan,台灣)、市 場(Market,如 future,期貨)、投資商品名稱(Symbol,如 TXN4,台指期)、時間 粒度(Time Granularity,如 1s,以秒為單位)以及交易策略(Strategy,有可能是各種 可以判斷買賣時機的統計模型或者演算法物件)。

以下為採用了 JBoss Cluster Job Dispatching Model 改良後的策略監控模組之示 意圖與整個交易室於 JBoss Cluster 上佈署之結構示意圖(以下為抽象的結構表現,

實際的佈署結構請詳見本章第二節-「系統模組切分」之內容):

‧ 國

立 政 治 大 學

Na tiona

l Ch engchi University

圖 33 策略監控模組採用 JBoss Cluster Job Dispatching Model 之架構示意圖 (資料來源:本研究整理)

‧ 國

立 政 治 大 學

Na tiona

l Ch engchi University

圖 34 JBoss Cluster 切分圖-交易室 (資料來源:本研究整理)

相關文件