Python 量化交易實戰 — 使用 vn.py 構建交易系統

歐陽鵬程

  • Python 量化交易實戰 — 使用 vn.py 構建交易系統-preview-1
  • Python 量化交易實戰 — 使用 vn.py 構建交易系統-preview-2
  • Python 量化交易實戰 — 使用 vn.py 構建交易系統-preview-3
Python 量化交易實戰 — 使用 vn.py 構建交易系統-preview-1

買這商品的人也買了...

商品描述

本書就Python基礎知識和交易策略的基本原理為切入點,由淺入深介紹瞭如何從零基礎使用vn.py搭建自己交易系統。本書從原理著手到代碼實踐,內容由最基本的Python基礎知識與Python中金融分析的常用包,逐步由淺入深介紹常用的指標並將使用vn.py進行實現。 本書共分為8章,第1章與第2章介紹vn.py的環境搭建與Python常用的工具包,為後面使用vn.py實現交易策略做準備;第3章與第4章介紹vn.py框架和量化交易的基礎知識;第5章到第7章從易到難介紹不同的交易策略並配合大量的實例講解,進一步鞏固vn.py代碼的使用,第8章講解如何在實盤中運行交易策略。 本書面向零基礎的新手和有一定電腦與金融知識基礎的讀者,以通俗易懂的語言和示例闡述量化交易的實現原理,適於對於量化交易有興趣的讀者。帶有詳細註釋的代碼將幫助讀者進一步理解vn.py的框架和交易策略。

目錄大綱

  

  

  

  

  

 

本書源碼

第1章  簡介 1

1.1  量化交易的概念 1

1.1.1  趨勢性交易 2

1.1.2  市場中性交易 3

1.1.3  高頻交易 4

1.2  量化交易的歷史 5

1.3  量化交易的工具 6

1.3.1  基於Web端的工具 6

1.3.2  本地離線的工具 9

1.4  vn.py的優勢 10

1.5  vn.py的安裝與環境配置 11

1.5.1  VeighNa Studio安裝 11

1.5.2  手動安裝 14

1.6  小結 22

第2章  常用的Python數據包 23

2.1  NumPy的使用 23

2.1.1  NumPy中的數據類型 23

2.1.2  NumPy中數組的使用 23

2.2  Matplotlib的使用 30

2.2.1  Matplotlib中的相關概念 30

2.2.2  使用Matplotlib繪圖 30

2.3  Pandas的使用 41

2.3.1  Pandas中的數據結構 41

2.3.2  使用Pandas讀取數據 42

2.3.3  使用Pandas處理數據 44

2.4  SciPy的使用 47

2.4.1  使用SciPy寫入mat文件 47

2.4.2  使用SciPy讀取mat文件 48

2.5  scikit-learn的使用 48

2.5.1  使用scikit-learn進行回歸 49

2.5.2  使用scikit-learn進行分類 52

2.6  Pillow的使用 57

2.6.1  使用Pillow讀取並顯示圖像 57

2.6.2  使用Pillow處理圖像 58

2.7  OpenCV的使用 69

2.7.1  使用OpenCV讀取與顯示圖像 70

2.7.2  使用OpenCV處理圖像 71

2.8  collections的使用 76

2.8.1  namedtuple 76

2.8.2  Counter 77

2.8.3  OrderedDict 77

2.8.4  defaultdict 78

2.9  typing的使用 78

2.9.1  標準數據類型標識 79

2.9.2  collections中的數據類型標識 81

2.9.3  其他常用標識 82

2.10  argparse的使用 83

2.10.1  argparse的使用框架 83

2.10.2  使用argparse解析命令行參數 84

2.11  JSON的使用 86

2.11.1  使用JSON寫入數據 86

2.11.2  使用JSON讀取數據 87

2.12  TA-Lib的使用 88

2.12.1  技術指標 88

2.12.2  模式識別 90

2.13  Tushare的使用 91

2.14  Orange的使用 93

2.14.1  Orange中的示例 94

2.14.2  創建自己的工作流 97

2.15  Optunity的使用 99

2.16  Optuna的使用 100

2.17  小結 101

第3章  vn.py基礎 102

3.1  vn.py的整體架構 102

3.1.1  底層接口 102

3.1.2  中層引擎 103

3.1.3  上層應用 106

3.2  vn.py文件中的交易接口 106

3.2.1  CTP接口 106

3.2.2  UFT接口 115

3.3  vn.py文件中的數據庫 116

3.4  vn.py文件中的回測模塊 125

3.5  vn.py文件中的自動交易模塊 128

3.6  vn.py文件中的實盤行情記錄模塊 129

3.7  vn.py文件中的歷史數據管理模塊 130

3.8  vn.py文件中的實時K線圖表模塊 132

3.9  vn.py文件中的投資組合管理模塊 132

3.10  vn.py文件中的事前風控管理模塊 133

3.11  vn.py文件中的本地模擬交易模塊 134

3.12  vn.py文件中的算法委托執行交易模塊 135

3.13  vn.py文件中的多合約組合策略模塊 137

3.14  vn.py文件中的多合約價差組合套利模塊 137

3.15  小結 138

第4章  量化交易的基礎知識 139

4.1  交易策略 139

4.2  倉位與資金管理 139

4.2.1  固定倉位/資金管理策略 140

4.2.2  漏鬥形管理策略 141

4.2.3  金字塔形策略 142

4.2.4  馬丁策略 143

4.2.5  反馬丁策略 144

4.2.6  凱利公式 144

4.3  事前風控 145

4.4  事中風控 145

4.5  事後風控 145

4.6  小結 146

第5章  基於指標的交易策略 147

5.1  交易策略框架 147

5.2  雙均線交易策略 150

5.3  KDJ交易策略 158

5.4  MACD交易策略 164

5.5  BIAS交易策略 169

5.6  布林帶交易策略 174

5.7  ATR交易策略 179

5.8  ADX交易策略 183

5.9  Dual Thrust交易策略 188

5.10  AR交易策略 193

5.11  EMD交易策略 197

5.12  均線排列交易策略 203

5.13  R-Breaker交易策略 208

5.14  超級趨勢交易策略 212

5.15  布林海盜交易策略 217

5.16  Hans123交易策略 221

5.17  海龜交易策略 227

5.18  海龜湯交易策略 233

5.19  網格交易策略 237

5.20  CMO交易策略 241

5.21  小結 245

第6章  基於模型的交易策略 246

6.1  基於ARMA模型的交易策略 246

6.2  基於ARIMA模型的交易策略 254

6.3  基於SARIMA模型的交易策略 261

6.4  基於SVM的交易策略 267

6.5  基於電腦視覺的交易策略 271

6.6  小結 286

第7章  交易策略的集成 287

7.1  策略集成的方法 287

7.2  基於分類模型集成交易策略 288

7.3  基於回歸模型集成交易策略 299

7.4  小結 304

第8章  實盤交易 305

8.1  實盤交易與回測的區別 305

8.2  準備工作 306

8.3  運行策略 310

8.3.1  基於tick數據的實盤策略 310

8.3.2  基於分鐘K線數據的實盤策略 317

8.4  小結 323

 

 

  

IV

 

 

V