- 1、本文档共51页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
平行运算用于即时套利策略交易系统简报 - 戴天时
工作量三角形 3 1 4 2 2 5 4 3 3 6 6 4 6 4 7 8 5 9 8 5 8 10 6 12 12 10 6 9 12 7 15 16 15 12 7 ? ? ? ? ? ? # Exercise Price # Strategies 無Load Balance的壞處 以2007年1月為例,分別有1、2、3、6和9月的合約,其中每個月合約分別有33檔次,由5,600到8,800點。 工作量總共 Max = 16*16 = 256 Min = 31 兩者計算量差距為256 – 31 = 225個 GPU與CPU比較 CPU平均讀取1000次時間為 6,854.85 (ms) GPU在無Load Balance狀況,平均讀取1000次時間為 22,781(ms) 必須要Load Balance Load Balance Load Balance 目標是將工作平均分配給各個計算單元 Step 1: 將所有工作依照特定規律作排列 Step 2: 將各個工作以此排列順序給與編號 Step 3: 各個編號與工作都是一對一且映成 Step 4: 依照計算單元數目,將工作量平均分給每個 計算單元,以給定工作起點編號以及計算量 達到Load Balance效果 依工作量三角形的分配 可以準確的將工作量平均分配,每個計算節點工作量相同 可以調整最適分配比率 Load Balance舉例 假設選擇權合約包括3個近月期和2個遠月期,假設1月為例,共有1、2、3、6和9月合約,每個月合約分別有5檔次,履約價分別由5,700到6,100點 工作量總數為10個 要尋找的工作位置是6 5 4 3 3 0 0 0 X1 X2 X3 2 1 3 X2 X1 X3 6 – 3 = 3 0 3 – 4 = -1 0 3 – 2 = 1 0 4 – X2 = 2 1 – 2 = -1 0 X3 = X2 +剩餘工作量 策略單 Put-Call-Future parity和Convexity of Option Prices都需利用策略單達成套利必然性 Put-Call-Future parity需同時成交1口台指買權、1口台指賣權和1口小台指(4口台指買權、4口台指賣權和1口大台指) Convexity of Option Prices需按比例至少同時成交至少4口不同履約價之台指買權(至少4口不同履約價之台指賣權) 必須使用FOK下單方式 FOK:全部成交否則取消單 期交所的撮合系統會以「逐筆撮合」方式,檢視現在市場是否能全數滿足此筆委託單。若無法或僅能部份成交,該委託單將不成立,並自動取消該筆委託單 策略單的Race Condition 套利流程 Find Arbitrage X25,900 X15,700 X36,000 Trade X1 Trade X2 虛擬交易所 Trade 5,600 Trade X2 Trade 6,600 ? ? ? 策略單失敗 解決方案 Peterson N-Processors Protocol 套利流程 Find Arbitrage X25,900 X15,700 X36,000 Trade X1 Trade X2 虛擬交易所 Trade 5,600 Trade 7,600 Trade X2 Trade 6,600 ? ? ? Enter Region Region Trade X3 Leave Region Wait GPU的Initial Cost CPU 讀取 最佳五檔 尋找 套利機會 使用 策略委托單 GPU 讀取 最佳五檔 移動 最佳五檔記憶體 到GPU 尋找 套利機會 使用 策略委托單 移動 策略委托單記憶體 到CPU 平均1000次時間為 138 (ms) 呼叫CUDA function 平均1000次時間約59~70(ms) 平均1000次時間為11(ms) 平均讀取1000次時間為 6,854.85 (ms) 平均讀取1000次時間為 2,640 (ms) CPU仍舊有機會原因 為什麼CPU平均時間遠輸於GPU,但仍舊會贏的原因 GPU有Initial Cost,如果在Initial Cost中CPU找到套利機會, GPU就會套利失敗。 GPU必須要等到所有Thread算完才能將套利機會送出,因此在平均每次計算時間2.64 (ms)之間即便找到套利機會也無法提早送出。 實驗結果 (最適Load Balance比例) 實驗結果 (最佳計算節點工作量) 實驗結果(2007.1.3 套利成功次數) 實驗結果(2007.1.3 套利獲利) 實驗結果(2007.1.3 套利失敗次數) 實驗結果(2007.1.4 CPU套利次數)
文档评论(0)