Python量化交易:策略、技巧與實戰(zhàn)
定 價:99 元
叢書名:量化交易叢書
- 作者:張彥橋
- 出版時間:2019/8/1
- ISBN:9787121370908
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:F830.91
- 頁碼:372
- 紙張:
- 版次:01
- 開本:16開
本書首先講解量化交易的基礎(chǔ)知識,即量化交易的定義、歷史、主要內(nèi)容及與傳統(tǒng)交易的區(qū)別、JoinQuant(聚寬)量化交易平臺;然后講解量化交易開發(fā)語言Python,即講解Python語言的開發(fā)環(huán)境、基本語法、基本流程控制、特征數(shù)據(jù)類型、函數(shù)及應(yīng)用、面向?qū)ο蟪绦蛟O(shè)計;接著講解如何利用Python語言編寫量化策略、如何回測、編寫量化策略所需要常用函數(shù)、因子分析、量化交易策略實例;最后講解量化選股的技巧、量化擇時的技巧及算法交易。在講解過程中即考慮讀者的學習習慣,又通過具體實例剖析講解量化實際交易過程中的熱點問題、關(guān)鍵問題及種種難題。
張彥橋,現(xiàn)任青島東勝偉業(yè)軟件科技有限公司項目開發(fā)部經(jīng) 理,具有8年以上Python、Java項目開發(fā)經(jīng)驗。精通VB、JS、PHP 、C、C#、Ruby等編 程語言,熟悉多種開源技術(shù),喜歡GET新技能,曾帶領(lǐng)團隊完成過多個中、小型項目 開發(fā),在量化交易、數(shù)據(jù)安全、云計算、機器學習、物聯(lián)網(wǎng)、區(qū)塊鏈等領(lǐng)域有豐富的經(jīng)驗。
目 錄
第1章 量化交易概述 1
1.1 初識量化交易 2
1.1.1 什么是量化交易 2
1.1.2 量化交易與算法交易 2
1.1.3 量化交易與程序化交易 2
1.1.4 量化交易與技術(shù)分析 3
1.1.5 量化交易與人工交易 3
1.1.6 為什么要學習量化交易 4
1.2 量化交易的特點 5
1.3 量化交易的應(yīng)用 6
1.3.1 投資品種選擇 7
1.3.2 投資時機選擇 7
1.3.3 算法交易 7
1.3.4 各種套利交易 9
1.3.5 資產(chǎn)配置 10
1.4 量化交易的故事 11
1.4.1 朱爾斯·雷格納特的量化交易故事 11
1.4.2 愛德華·索普的量化交易故事 12
1.4.3 詹姆斯·西蒙斯的量化交易故事 13
1.5 量化交易的歷史 14
1.5.1 國外量化交易的歷史 14
1.5.2 國內(nèi)量化交易的歷史 15
1.6 量化交易的注意事項 15
第2章 量化交易平臺 17
2.1 初識JoinQuant聚寬量化交易平臺 18
2.2 量化交易平臺的功能 18
2.2.1 高質(zhì)量數(shù)據(jù)和強大的研究平臺 18
2.2.2 頂級回測體驗和頂尖模擬交易 19
2.3 賬戶的注冊、登錄及量化交易策略的創(chuàng)建 19
2.3.1 量化交易平臺賬戶的注冊 19
2.3.2 量化交易平臺賬戶的登錄 20
2.3.3 量化交易策略的創(chuàng)建 22
2.4 量化交易策略的選股技巧 24
2.4.1 量化選股的基本設(shè)置 24
2.4.2 選股指標 27
2.5 量化交易策略的買賣條件模型 31
2.5.1 輪動模型 32
2.5.2 擇時模型 33
2.6 量化交易策略的風險控制技巧 35
2.6.1 止盈、止損指標 35
2.6.2 其他指標 36
2.7 量化交易策略的其他參數(shù)設(shè)置技巧 36
2.8 編寫Python代碼來創(chuàng)建量化交易策略 38
2.9 量化交易策略的回測 39
2.10 量化交易策略的模擬交易 41
2.10.1 新建模擬交易并運行 41
2.10.2 查看模擬交易 42
2.10.3 綁定微信 45
2.11 量化交易策略的實盤交易 46
第3章 Python開發(fā)環(huán)境及編程基礎(chǔ) 49
3.1 初識Python 50
3.1.1 Python的發(fā)展歷程 50
3.1.2 Python的特點 50
3.2 Python開發(fā)環(huán)境及配置 51
3.2.1 Python的下載和安裝 51
3.2.2 Python的環(huán)境變量配置 53
3.3 Python程序的編寫 57
3.4 利用量化交易平臺編寫Python程序 61
3.4.1 初識IPython Notebook研究平臺 62
3.4.2 利用IPython Notebook編寫Python程序 66
3.5 Python的基本數(shù)據(jù)類型 67
3.5.1 數(shù)值類型 67
3.5.2 字符串 69
3.6 Python的變量與賦值 73
3.6.1 變量命名規(guī)則 73
3.6.2 變量的賦值 74
3.7 Python的基本運算 74
3.7.1 算術(shù)運算 75
3.7.2 賦值運算 76
3.7.3 位運算 77
3.8 Python的代碼格式 78
3.8.1 代碼縮進 78
3.8.2 代碼注釋 79
3.8.3 空行 80
3.8.4 同一行顯示多條語句 80
第4章 Python流程控制與特征數(shù)據(jù)類型 81
4.1 Python的選擇結(jié)構(gòu) 82
4.1.1 關(guān)系運算 82
4.1.2 邏輯運算 83
4.1.3 if語句 84
4.1.4 嵌套if語句 86
4.2 Python的循環(huán)結(jié)構(gòu) 87
4.2.1 while循環(huán) 87
4.2.2 while循環(huán)使用else語句 88
4.2.3 無限循環(huán) 89
4.2.4 for循環(huán) 90
4.2.5 在for循環(huán)中使用range()函數(shù) 90
4.2.6 break語句 92
4.2.7 continue語句 92
4.2.8 pass語句 93
4.3 Python的特征數(shù)據(jù)類型 94
4.3.1 列表 94
4.3.2 元組 97
4.3.3 字典 99
4.3.4 集合 100
第5章 Python函數(shù)與面向?qū)ο?104
5.1 Python內(nèi)置函數(shù) 105
5.1.1 數(shù)學函數(shù) 105
5.1.2 隨機數(shù)函數(shù) 106
5.1.3 三角函數(shù) 108
5.1.4 字符串函數(shù) 110
5.2 用戶自定義函數(shù) 113
5.2.1 自定義函數(shù)的定義 113
5.2.2 調(diào)用自定義函數(shù) 114
5.2.3 函數(shù)的參數(shù)傳遞 116
5.2.4 函數(shù)的參數(shù)類型 118
5.2.5 匿名函數(shù) 123
5.3 Python的面向?qū)ο?123
5.3.1 面向?qū)ο蟾拍?124
5.3.2 類與實例 124
5.3.3 模塊的引用 127
5.3.4 包 127
5.4 變量作用域及類型 130
5.4.1 變量作用域 130
5.4.2 全局變量和局部變量 131
5.4.3 global和nonlocal關(guān)鍵字 132
第6章 Python量化交易策略的常用庫 135
6.1 Numpy庫 136
6.1.1 ndarray數(shù)組基礎(chǔ) 136
6.1.2 Numpy的矩陣對象 148
6.2 Pandas庫 149
6.2.1 一維數(shù)組Series 149
6.2.2 二維數(shù)組DataFrame 150
6.2.3 三維數(shù)組Panel 160
第7章 Python量化交易策略的常用函數(shù)與對象 163
7.1 Python量化交易策略的一般結(jié)構(gòu) 164
7.1.1 初始化函數(shù) 165
7.1.2 開盤前運行函數(shù) 166
7.1.3 開盤時運行函數(shù) 166
7.1.4 收盤后運行函數(shù) 167
7.2 Python量化交易策略的設(shè)置函數(shù) 167
7.2.1 設(shè)置基準函數(shù) 168
7.2.2 設(shè)置傭金/印花稅函數(shù) 168
7.2.3 設(shè)置滑點函數(shù) 169
7.2.4 設(shè)置動態(tài)復(fù)權(quán)(真實價格)模式函數(shù) 170
7.2.5 設(shè)置成交量比例函數(shù) 170
7.2.6 設(shè)置是否開啟盤口撮合模式函數(shù) 171
7.2.7 設(shè)置要操作的股票池函數(shù) 171
7.3 Python量化交易策略的定時函數(shù) 171
7.3.1 定時函數(shù)的定義及分類 172
7.3.2 定時函數(shù)各項參數(shù)的意義 172
7.3.3 定時函數(shù)的注意事項 173
7.3.4 定時函數(shù)的實例 174
7.4 Python量化交易策略的下單函數(shù) 174
7.4.1 按股數(shù)下單函數(shù) 174
7.4.2 目標股數(shù)下單函數(shù) 175
7.4.3 按價值下單函數(shù) 175
7.4.4 目標價值下單函數(shù) 176
7.4.5 撤單函數(shù) 176
7.4.6 獲取未完成訂單函數(shù) 177
7.4.7 獲取訂單信息函數(shù) 177
7.4.8 獲取成交信息函數(shù) 178
7.5 Python量化交易策略的日志log 178
7.5.1 設(shè)定log級別 178
7.5.2 log.info 179
7.6 Python量化交易策略的常用對象 179
7.6.1 Order對象 179
7.6.2 全局對象g 180
7.6.3 Trade對象 180
7.6.4 tick對象 180
7.6.5 Context對象 181
7.6.6 Position對象 182
7.6.7 SubPortfolio對象 183
7.6.8 Portfolio對象 184
7.6.9 SecurityUnitData對象 184
第8章 Python量化交易策略的獲取數(shù)據(jù)函數(shù)運用技巧 186
8.1 history()函數(shù)的運用技巧 187
8.1.1 各項參數(shù)的意義 187
8.1.2 history()函數(shù)的應(yīng)用實例 188
8.2 attribute_history ()函數(shù)的運用技巧 191
8.3 get_fundamentals ()函數(shù)的運用技巧 192
8.3.1 各項參數(shù)的意義 192
8.3.2 get_fundamentals ()函數(shù)的應(yīng)用實例 193
8.4 get_fundamentals_continuously ()函數(shù)的運用技巧 198
8.5 get_current_data ()函數(shù)的運用技巧 199
8.6 get_index_stocks ()函數(shù)的運用技巧 200
8.6.1 各項參數(shù)的意義 200
8.6.2 get_index_stocks ()函數(shù)的應(yīng)用實例 201
8.7 get_industry_stocks()函數(shù)的運用技巧 202
8.8 get_concept_stocks ()函數(shù)的運用技巧 203
8.9 get_all_securities()函數(shù)的運用技巧 205
8.9.1 各項參數(shù)的意義 205
8.9.2 get_all_securities()函數(shù)的應(yīng)用實例 206
8.10 get_security_info ()函數(shù)的運用技巧 207
8.11 get_billboard_list ()函數(shù)的運用技巧 208
8.11.1 各項參數(shù)的意義 208
8.11.2 get_billboard_list()函數(shù)的應(yīng)用實例 209
8.12 get_locked_shares ()函數(shù)的運用技巧 210
第9章 Python量化交易策略的基本面選股技巧 211
9.1 量化選股概述 212
9.2 成長類因子選股技巧 212
9.2.1 營業(yè)收入同比增長率選股技巧 212
9.2.2 營業(yè)收入環(huán)比增長率選股技巧 214
9.2.3 凈利潤同比增長率選股技巧 215
9.2.4 凈利潤環(huán)比增長率選股技巧 216
9.2.5 營業(yè)利潤率選股技巧 217
9.2.6 銷售凈利率選股技巧 217
9.2.7 銷售毛利率選股技巧 218
9.3 規(guī)模類因子選股技巧 220
9.3.1 總市值選股技巧 220
9.3.2 流通市值選股技巧 221
9.3.3 總股本選股技巧 222
9.3.4 流通股本選股技巧 222
9.4 價值類因子選股技巧 223
9.4.1 市凈率選股技巧 223
9.4.2 市銷率選股技巧 224
9.4.3 市現(xiàn)率選股技巧 225
9.4.4 動態(tài)市盈率選股技巧 226
9.4.5 靜態(tài)市盈率選股技巧 227
9.5 質(zhì)量類因子選股技巧 228
9.5.1 凈資產(chǎn)收益率選股技巧 228
9.5.2 總資產(chǎn)凈利率選股技巧 229
9.6 基本面多因子量化選股 230
第10章 Python量化交易策略的技術(shù)指標函數(shù)運用技巧 232
10.1 量化擇時概述 233
10.2 趨向指標函數(shù)運用技巧 234
10.2.1 MACD指標函數(shù) 234
10.2.2 EMV指標函數(shù) 235
10.2.3 UOS指標函數(shù) 237
10.2.4 GDX指標函數(shù) 238
10.2.5 DMA指標函數(shù) 239
10.2.6 JS指標函數(shù) 240
10.2.7 MA指標函數(shù) 241
10.2.8 EXPMA指標函數(shù) 242
10.2.9 VMA指標函數(shù) 243
10.3 反趨向指標函數(shù)運用技巧 245
10.3.1 KD指標函數(shù) 245
10.3.2 MFI指標函數(shù) 246
10.3.3 RSI指標函數(shù) 247
10.3.4 OSC指標函數(shù) 248
10.3.5 WR指標函數(shù) 249
10.3.6 CCI指標函數(shù) 250
10.4 壓力支撐指標函數(shù)運用技巧 251
10.4.1 BOLL指標函數(shù) 251
10.4.2 MIKE指標函數(shù) 253
10.4.3 XS指標函數(shù) 254
10.5 量價指標函數(shù)運用技巧 256
10.5.1 OBV指標函數(shù) 256
10.5.2 VOL指標函數(shù) 257
10.5.3 VR指標函數(shù) 258
10.5.4 MASS指標函數(shù) 259
第11章 Python量化交易策略的回測方法與技巧 261
11.1 量化交易策略回測的流程 262
11.2 利用Python編寫MACD指標量化交易策略 262
11.2.1 量化交易策略的編輯頁面 262
11.2.2 編寫初始化函數(shù) 265
11.2.3 編寫單位時間調(diào)用的函數(shù) 265
11.3 設(shè)置MACD指標量化交易策略的回測參數(shù) 266
11.4 MACD指標量化交易策略的回測詳情 269
11.5 MACD指標量化交易策略的風險指標 272
11.5.1 Alpha(阿爾法) 272
11.5.2 Beta(貝塔) 273
11.5.3 Sharpe(夏普比率) 274
11.5.4 Sortino(索提諾比率) 275
11.5.5 Information Ratio(信息比率) 276
11.5.6 Volatility(策略波動率) 277
11.5.7 Benchmark Volatility(基準波動率) 278
11.5.8 Max Drawdown(最大回撤) 279
第12章 Python量化交易策略的機器算法運用技巧 280
12.1 隨機森林在量化交易中的運用技巧 281
12.1.1 隨機森林的構(gòu)建 281
12.1.2 隨機森林的優(yōu)缺點 281
12.1.3 隨機森林在量化交易中的運用實例 282
12.2 支持向量機(SVM)在量化交易中的運用技巧 284
12.2.1 什么是支持向量機(SVM) 285
12.2.2 支持向量機(SVM)的工作原理 285
12.2.3 核函數(shù) 287
12.2.4 支持向量機(SVM)的優(yōu)點 288
12.2.5 支持向量機(SVM)的缺點 288
12.2.6 支持向量機(SVM)在量化交易中的運用實例 289
12.3 樸素貝葉斯在量化交易中的運用技巧 292
12.3.1 什么是樸素貝葉斯 292
12.3.2 樸素貝葉斯的算法思想 292
12.3.3 樸素貝葉斯的算法步驟 292
12.3.4 樸素貝葉斯的優(yōu)缺點 293
12.3.5 樸素貝葉斯在量化交易中的運用實例 293
12.4 神經(jīng)網(wǎng)絡(luò)在量化交易中的運用技巧 296
12.4.1 什么是人工神經(jīng)網(wǎng)絡(luò) 296
12.4.2 大腦中的神經(jīng)元細胞和神經(jīng)元細胞網(wǎng)絡(luò) 297
12.4.3 人工神經(jīng)網(wǎng)絡(luò)的基本特征 298
12.4.4 人工神經(jīng)網(wǎng)絡(luò)的特點 299
12.4.5 人工神經(jīng)網(wǎng)絡(luò)的算法 299
12.4.6 人工神經(jīng)網(wǎng)絡(luò)在量化交易中的運用實例 301
第13章 Python量化交易策略的因子分析運用技巧 305
13.1 因子的類型及因子分析的作用 306
13.2 因子分析的Python代碼 306
13.2.1 因子分析中的三個變量 306
13.2.2 因子分析中可以使用的基礎(chǔ)因子 307
13.2.3 calc的參數(shù)及返回值 308
13.3 因子的新建及常見分析 308
13.3.1 因子的新建 308
13.3.2 因子的收益分析 311
13.3.3 因子的IC分析 314
13.3.4 因子的換手分析 315
13.4 因子在研究和回測中的使用 317
13.5 基本面因子運用實例 319
第14章 Python量化交易策略實戰(zhàn)案例 323
14.1 MA均線量化交易策略實戰(zhàn)案例 324
14.1.1 編寫初始化函數(shù) 324
14.1.2 編寫單位時間調(diào)用的函數(shù) 326
14.1.3 MA均線量化交易策略的回測 327
14.2 多均線量化交易策略實戰(zhàn)案例 327
14.2.1 編寫初始化函數(shù) 328
14.2.2 編寫交易程序函數(shù) 328
14.2.3 多均線量化交易策略的回測 330
14.3 MACD指標量化交易策略實戰(zhàn)案例 330
14.3.1 編寫初始化函數(shù) 331
14.3.2 編寫單位時間調(diào)用的函數(shù) 331
14.3.3 MACD指標量化交易策略的回測 332
14.4 KD指標量化交易策略實戰(zhàn)案例 333
14.4.1 編寫初始化函數(shù) 333
14.4.2 編寫開盤前運行函數(shù) 334
14.4.3 編寫開盤時運行函數(shù) 334
14.4.4 編寫收盤后運行函數(shù) 335
14.4.5 KD指標量化交易策略的回測 335
14.5 BOLL指標量化交易策略實戰(zhàn)案例 336
14.5.1 編寫初始化函數(shù) 336
14.5.2 編寫開盤前運行函數(shù) 337
14.5.3 編寫開盤時運行函數(shù) 337
14.5.4 編寫收盤后運行函數(shù) 338
14.5.5 BOLL指標量化交易策略的回測 339
14.6 多股票持倉量化交易策略實戰(zhàn)案例 339
14.6.1 編寫初始化函數(shù) 340
14.6.2 編寫單位時間調(diào)用的函數(shù) 340
14.6.3 多股票持倉量化交易策略的回測 341
14.7 醫(yī)藥股輪動量化交易策略實戰(zhàn)案例 342
14.7.1 編寫初始化函數(shù) 342
14.7.2 編寫選股函數(shù) 342
14.7.3 編寫交易函數(shù) 343
14.7.4 醫(yī)藥股輪動量化交易策略的回測 343
14.8 小市值股票量化交易策略實戰(zhàn)案例 344
14.8.1 編寫初始化函數(shù) 344
14.8.2 編寫選股函數(shù) 345
14.8.3 編寫過濾停牌股票函數(shù) 345
14.8.4 編寫交易函數(shù) 346
14.8.5 小市值股票量化交易策略的回測 346
14.9 機器算法多因子量化交易策略實戰(zhàn)案例 347
14.9.1 編寫初始化函數(shù) 347
14.9.2 編寫自定義的交易函數(shù) 348
14.9.3 機器算法多因子量化交易策略的回測 353