自動化交易R語言實戰指南 | 如何做好生意 - 2024年5月

自動化交易R語言實戰指南

作者:(美)CHRIS CONLAN
出版社:人民郵電
出版日期:2017年08月01日
ISBN:9787115457455
語言:繁體中文

R語言是用於統計分析、繪圖的語言和操作環境,是屬於GNU系統的一個自由、免費、源代碼開放的軟件。它是一個用於統計計算和統計制圖的u秀工具。本書通過11章內容介紹了自動化交易的核心要點,並基於R語言給出了相應的編程方法。本書涉及編程、高性能計算、數值優化、金融以及網絡等眾多主題,書中的3個部分分別涵蓋了自動化交易簡介、平台搭建、產出交易等重要主題。本書內容詳細、示例豐富,非常適合對自動化交易感興趣或者想要使用R語言進行金融數據分析的人士閱讀參考。如果讀者有一定的編程基礎,將會對本書的學習提供不少助力。適當參考書中的公式和代碼示例,讀者能夠更好地掌握相關內容。Chris Conlan 是作為獨立從事交易算法的數據科學家開始他的職業生涯的。進入弗吉尼亞大學之后,他僅用 3 個學期就完成了本科統計學課程。在此期間,他籌資組建了一家高頻外匯交易集團,並擔任總裁和首席交易策略師。目前,他正管理着一家科技公司,該公司業務涉 及高頻外匯、機器視覺和動態報告等領域。

第1部分 研究內容第1章 自動化交易的基礎 21.1 凈值曲線和收益率序列 21.1.1 凈值曲線的特征 31.1.2 收益率序列的特性 31.2 風險—收益模型 41.3 風險—收益模型的特征 51.3.1 夏普比率 81.3.2 最大回撤比率 91.3.3 偏矩比 111.3.4 基於回歸的性能指標 131.4 最優化性能指標 16第2部分 搭建平台第2章 網絡部分Ⅰ 182.1 雅虎金融數據接口 192.1.1 設置目錄 192.1.2 構建URL查詢 202.1.3 數據獲取 212.1.4 加載數據至內存 222.1.5 更新數據 232.2 YQL網絡服務 242.3 Quantmod的注釋 282.4 比較 292.5 組織成為日期一致的zoo對象 29第3章 數據准備 313.1 處理NA值(缺失值) 313.1.1 注意:R中NA和NaN的區別 313.1.2 IPO以及加入標准普爾500指數 313.1.3 合並到統一的日期模板 333.1.4 向前替換 343.1.5 線性平滑替換 353.1.6 交易量加權平滑替換 363.2 關於替換方法的討論 373.2.1 實時VS模擬 373.2.2 對波動率指標的影響 373.2.3 對交易決策的影響 383.2.4 結論 383.3 收盤價和調整收盤價 383.3.1 股票分割的調整 393.3.2 現金分紅的調整 403.3.3 有效更新和調整收盤價 403.3.4 實施調整 413.4 檢驗不活躍股票 413.5 計算收益矩陣 42第4章 指標 444.1 指標類型 444.1.1 疊加層 444.1.2 振盪器 444.1.3 累加器 454.1.4 模式/二元/三元 454.1.5 機器學習/非可視化、黑箱 454.2 示例指標 454.2.1 簡單移動平均 454.2.2 移動平均收斂發散振盪器(MACD) 464.2.3 布爾帶 474.2.4 使用相關性和斜率自定義指標 474.2.5 基於多個數據集的指標 484.3 小結 50第5章 規則集 515.1 作為嵌套函數的過程流 515.2 術語 515.3 示例的規則集 525.3.1 疊加層 535.3.2 振盪器 535.3.3 累加器 535.4 過濾、觸發以及定量的偏好 54第6章 高性能計算 566.1 硬件概覽 566.1.1 處理 566.1.2 多核處理 566.1.3 超線程 576.1.4 內存 586.1.5 磁盤 586.1.6 隨機存取存儲器 596.1.7 處理器緩存 596.1.8 交換空間 596.1.9 軟件概覽 606.1.10 編譯與解釋 606.1.11 腳本語言 616.1.12 速度與安全性 616.1.13 建議 626.1.14 for循環與apply函數 626.1.15 for循環與內存分配 636.1.16 apply族函數 646.1.17 創造性地使用二進制 646.1.18 測量計算時間的說明 656.2 R中的多核計算 666.2.1 令人尷尬的並行過程 666.2.2 doMC和doParallel 666.2.3 foreach程序包 676.3 實踐中的foreach程序包 686.3.1 整數映射 686.3.2 使用foreach計算收益率矩陣 696.3.3 使用foreach計算指標 70第7章 模擬和回測 747.1 交易策略示例 747.2 模擬工作流程 767.2.1 代碼清單7-1:偽代碼 767.2.2 代碼清單7-1:對輸入的解釋及用戶指南 767.2.3 討論 837.3 執行示例交易策略 847.4 總結性統計量和績效指標 887.5 小結 89第8章 優化方法 908.1 時間序列的交叉驗證 908.2 數值VS解析優化 918.3 數值優化概覽 928.4 聲明一個求值器 938.4.1 代碼清單8-1:偽代碼 948.4.2 代碼清單8-1:解釋輸入及用戶指南 948.5 通用模式搜索優化 1018.6 廣義模式搜索優化 1028.7 Nelder-Mead優化 1078.8 預測交易策略表現 1138.9 小結 116第9章 網絡部分II 1179.1 市場概覽:經紀商API 1179.2 安全連接 1189.2.1 建立SSL連接 1189.2.2 專有的SSL連接 1199.2.3 HTTP/HTTPS 1209.2.4 OAuth 1209.3 交易API的可行性分析 1209.3.1 自定義R程序包的可行性 1209.3.2 通過現存R程序包實現HTTPS + OAuth 1219.3.3 FIX引擎 1219.3.4 向被支持的語言輸出指引 1219.4 計划和執行交易 1219.4.1 PLAN任務 1229.4.2 TRADE任務 1249.5 一般性的數據格式 1259.5.1 處理XML 1259.5.2 生成XML文檔 1319.5.3 處理JSON數據 1329.5.4 金融信息eXchange協議 1339.5.5 FIX可擴展標記語言(FIXML) 1349.5.6 R中的OAuth 1359.6 小結 137第3部分 產出交易第10章 組織和自動運行腳本 14010.1 組織腳本成任務 14010.2 利用源函數調用任務 14010.3 通過源函數方式調用任務 14110.4 Windows中的任務調度 14110.4.1 在Windows中從命令行運行R語言 14110.4.2 設置和管理任務調度程序 14310.5 UNIX中的任務計划 14410.6 小結 145第11章 前瞻 14611.1 語言的注意事項 14611.1.1 Python 14611.1.2 C/C++ 14611.1.3 硬件描述語言 14711.2 零售經紀商和拒絕權 14711.3 連接延遲 14811.3.1 以太網與Wi-Fi 14811.3.2 臨近交易所 14911.4 優先零售商 14911.5 消化信息和基本面 14911.6 小結 150附錄A 源代碼 151A.1 Platform/config.R 151A.2 Platform/load 152A.2.1 Platform/load.R 152A.2.2 Platform/update.R 153A.2.3 Platform/functions/yahoo.R 153A.2.4 Platform/load/ initial.R 154A.2.5 Platform/load/ loadToMemory.R 155A.2.6 Platform/load/ updateStocks.R 156A.2.7 Platform/load/ dateUnif.R 160A.2.8 Platform/load/ spClean.R 161A.2.9 Platform/load/ adjustClose.R 161A.2.10 Platform/load/ return.R 162A.2.11 Platform/load/ fillInactive.R 162A.3 Platform/compute 162A.3.1 Platform/compute/MCinit.R 162A.3.2 Platform/compute/functions.R 163A.4 Platform/plan 168A.4.1 Platform/plan.R 169A.4.2 Platform/plan/decisionGen.R 169A.5 Platform/trade 173A.6 Platform/model 174A.6.1 Platform/model.R 174A.6.2 Platform/model/optimize. R 174A.6.3 Platform/model/evaluateFunc.R 174A.6.4 Platform/model/optimizeFunc. R 177附錄B 多核R的范圍 180B.1 R的作用域規則 180B.1.1 應用詞法作用域 180B.1.2 原型 181B.2 UNIX交叉系統調用 181B.2.1 fork調用和內存管理 182B.2.2 R作用域的應用 182B.3 Windows中的實例復制 184B.3.1 實例復制和內存管理 184B.3.2 R作用域應用 184


相關書籍