定 價:69 元
叢書名:數(shù)據(jù)科學(xué)與工程技術(shù)叢書
- 作者:[新加坡]馬偉明
- 出版時間:2017/3/1
- ISBN:9787111589983
- 出 版 社:機械工業(yè)出版社
- 中圖法分類:F830.2
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書將介紹股票、期權(quán)、利率衍生品等金融工具定價方法,如何根據(jù)市場指數(shù)進行大數(shù)據(jù)分析,以及如何使用NoSQL存儲tick數(shù)據(jù),可解決建模、交易策略優(yōu)化和風(fēng)險管理等金融領(lǐng)域的復(fù)雜問題。本書面向本科生、研究生、算法開發(fā)的初學(xué)者以及使用Python進行定量研究的金融領(lǐng)域軟件開發(fā)人員。你無需精通Python,熟悉其基本使用情況即可。
前言Python已廣泛應(yīng)用于銀行業(yè)、投資管理、保險業(yè)、房地產(chǎn)行業(yè)等金融領(lǐng)域,用于開發(fā)金融模型、管理風(fēng)險和自動完成交易。許多大型金融機構(gòu)依賴Python來搭建職位管理、資產(chǎn)定價、風(fēng)險管理和交易系統(tǒng)等基礎(chǔ)設(shè)施。
本書將介紹核心的金融理論,并給出它們的數(shù)學(xué)概念,以幫助讀者更好地理解它們在實際中的應(yīng)用價值。你將了解如何應(yīng)用Python求解經(jīng)典的資產(chǎn)定價模型,解決金融中的線性和非線性問題,開發(fā)數(shù)值程序和利率模型,以及如何根據(jù)有限差分法定價來描繪含有期權(quán)的隱含波動率曲線等。
隨著高級計算技術(shù)的出現(xiàn),我們必須要考慮如何存儲和處理大量數(shù)據(jù)。而Hadoop是目前處理大數(shù)據(jù)的流行工具。因此本書將介紹Hadoop的工作原理及其與Python的集成,以獲得金融數(shù)據(jù)的分析方法;以及如何利用Python實現(xiàn)NoSQL在存儲非結(jié)構(gòu)化數(shù)據(jù)中的應(yīng)用。
目前許多公司開始向客戶提供API,以使用他們定制的交易軟件進行交易。通過學(xué)習(xí)本書,你將了解如何連接到代理API,檢索市場數(shù)據(jù),生成交易信號并向交易所發(fā)送指令,以及平均回報和趨勢跟蹤等交易策略的實施。另外,本書還將介紹風(fēng)險管理、頭寸跟蹤和回溯測試技術(shù),以幫助你管理交易策略的實施效果。
金融行業(yè)中,使用Microsoft Excel處理債券交易和后臺業(yè)務(wù)是一種普遍現(xiàn)象。本書將介紹如何在Python中創(chuàng)建數(shù)字定價組件對象模型(COM)服務(wù)器,使你的電子表格能夠即時計算和更新模型值。
本書的主要內(nèi)容第1章探討了Python在金融領(lǐng)域的適用性,引入IPython作為可視化數(shù)據(jù)和執(zhí)行科學(xué)計算的有效工具。
第2章介紹了使用Python求解線性方程組的方法,執(zhí)行整數(shù)規(guī)劃,以及將矩陣應(yīng)用于投資組合分析的線性優(yōu)化。
第3章討論了使用Python構(gòu)建金融非線性模型以及術(shù)根方法。
第4章探討了如何使用三叉樹模型、二叉樹網(wǎng)格和有限差分法等進行期權(quán)估值。
第5章討論了收益率曲線的引導(dǎo)過程,涵蓋一些利用Python實現(xiàn)的衍生品利率的短期定價模型。
第6章討論了波動率指數(shù),對歐洲斯托克50指數(shù)波動率數(shù)據(jù)進行分析,并使用子指數(shù)的期權(quán)價格復(fù)制主要指數(shù)。
第7章介紹了Hadoop在大數(shù)據(jù)分析中的應(yīng)用,如何使用Python執(zhí)行MapReduce操作,以及如何使用NoSQL存儲數(shù)據(jù)。
第8章探討了逐步開發(fā)均值回歸算法交易和趨勢跟蹤算法交易策略,以及交易系統(tǒng)風(fēng)險管理等。
第9章討論如何設(shè)計并實現(xiàn)一個事件驅(qū)動的回溯測試系統(tǒng),幫助你把握模擬交易策略的性能。
第10章介紹了如何在Python中構(gòu)建一個組件對象模型服務(wù)器和客戶端界面與Excel融通,以及如何在Excel中即時計算期權(quán)價格。
學(xué)習(xí)本書的軟硬件支持學(xué)習(xí)本書需要安裝如下軟件:
操作系統(tǒng):
● 能使用Python 27或更高版本的操作系統(tǒng)● 第10章需要Windows XP或更高版本的操作系統(tǒng)● 第7章需要有至少4GB RAM的64位主機操作系統(tǒng)本書將使用以下Python包的Python、SciPy、pandas、IPython和Matplotlib模塊:
● Continuum Analytics的Anaconda 21或更高版本:https://storecontinuumio/cshop/anaconda/● Enthought的Canopy 15或更高版本:https://storeenthoughtcom/downloads/其他必需的Python模塊:
● Statsmodels,見http://statsmodelssourceforgenet/● PuLP(第2章),見https://githubcom/coinor/pulp● lxml(第6章),見http://lxmlde/● PyMongo 27(第7章),見https://pypipythonorg/pypi/pymongo/● IbPy(第8章),見https://githubcom/blampe/IbPy● oandapy(第8章),見https://githubcom/oanda/oandapy● pythonrequests(第8章),見https://pypipythonorg/pypi/requests/● PyWin32(第10章),見http://sourceforgenet/projects/pywin32/files/可選Python模塊:
● 使用pip 60自動安裝Python包,見https://pypipythonorg/pypi/pip需要的軟件:
● Mozilla Firefox,見https://wwwmozillaorg/enUS/firefox/new/● MongoDB 26(第7章),見http://wwwmongodb.org/downloads● VirtualBox 43(第7章),見https://wwwvirtualboxorg/wiki/Downloads● Cloudera QuickStart VM with CDH (Cloudera Distribution Including Apache Hadoop)(第7章),見http://wwwclouderacom/content/cloudera/en/downloads/quickstart_vmshtml● Interactive Brokers (IB) Trader Workstation (TWS)(第8章),見https://wwwinteractivebrokerscom/en/ indexphp?f=1537● 使用Oracle Java 7運行IB TWS和OANDA fxTrade平臺(第8章)● Microsoft Office Excel 2010或更高版本,并使用宏(第10章)本書的讀者對象本書面向開發(fā)金融應(yīng)用程序的學(xué)生和程序員,提供金融服務(wù)的顧問,金融分析師以及想要利用Python在數(shù)據(jù)可視化、交互式分析和科學(xué)計算方面的優(yōu)勢進行財務(wù)分析的人員。對此,你需要掌握一定的Python基礎(chǔ)知識和金融概念,在學(xué)習(xí)每一章的技術(shù)內(nèi)容之前,本書會為初學(xué)者介紹相關(guān)的背景資料。
目錄
前言
第1章Python在金融中的應(yīng)用
1.1Python適合我嗎
1.1.1免費+開源
1.1.2高級、強大、靈活的編程語言
1.1.3豐富的標準庫
1.2面向?qū)ο缶幊膛c函數(shù)式編程
1.2.1面向?qū)ο笫椒椒?br>1.2.2函數(shù)式方法
1.2.3我該使用哪種方法
1.3我該使用哪個版本的Python
1.4IPython簡介
1.4.1安裝IPython
1.4.2使用pip
1.4.3IPython Notebook
1.4.4Notebook單元格
1.4.5IPython Notebook簡單的練習(xí)
1.4.6Notebook與金融
1.5總結(jié)
第2章金融中的線性問題
2.1資本資產(chǎn)定價模型與證券市場線
2.2套利定價模型
2.3因子模型的多元線性回歸
2.4線性最優(yōu)化
2.4.1安裝PuLP
2.4.2一個簡單的線性優(yōu)化問題
2.4.3線性規(guī)劃的結(jié)果
2.4.4整數(shù)規(guī)劃
2.5使用矩陣解線性方程組
2.6LU分解
2.7Cholesky分解
2.8QR分解
2.9總結(jié)
第3章非線性與金融
3.1非線性建模
3.2非線性模型舉例
3.2.1隱含波動率模型
3.2.2馬爾可夫機制轉(zhuǎn)換模型
3.2.3門限自回歸模型
3.2.4平滑轉(zhuǎn)換模型
3.3非線性模型求根算法概述
3.4增量法
3.5二分法
3.6牛頓迭代法
3.7割線法
3.8求根法的結(jié)合使用
3.9利用SciPy求解
3.9.1SciPy求根標量函數(shù)
3.9.2通用非線性求解器
3.10總結(jié)
第4章利用數(shù)值方法為衍生品定價
4.1什么是期權(quán)
4.2二叉樹期權(quán)定價模型
4.2.1歐式期權(quán)定價
4.2.2編寫StockOption類
4.2.3編寫B(tài)inomialEuropeanOption類
4.2.4利用BinomialTreeOption類給美式期權(quán)定價
4.2.5CoxRossRubinstein模型
4.2.6LeisenReimer模型
4.3希臘值
4.4三叉樹期權(quán)定價模型
4.5期權(quán)定價中的Lattice方法
4.5.1二叉樹網(wǎng)格
4.5.2編寫B(tài)inomialCRROption類
4.5.3三叉樹網(wǎng)格
4.6有限差分法
4.6.1顯式方法
4.6.2隱式方法
4.6.3CrankNicolson方法
4.6.4奇異障礙期權(quán)定價
4.6.5美式期權(quán)定價的有限差分
4.7隱含波動率模型
4.8總結(jié)
第5章利率及其衍生工具
5.1固定收益證券
5.2收益率曲線
5.3無息債券
5.4自助法構(gòu)建收益率曲線
5.5遠期利率
5.6計算到期收益率
5.7計算債券定價
5.8久期
5.9凸度
5.10短期利率模型
5.10.1Vasicek模型
5.10.2CoxIngersollRoss模型
5.10.3Rendleman and Bartter模型
5.10.4Brennan and Schwartz模型
5.11債券期權(quán)
5.11.1可贖回債券
5.11.2可回售債券
5.11.3可轉(zhuǎn)換債券
5.11.4優(yōu)先股
5.12可贖回債券定價
5.12.1Vasicek模型定價無息債券
5.12.2提前行權(quán)定價
5.12.3有限差分策略迭代法
5.12.4可贖回債券定價的其他影響因素
5.13總結(jié)
第6章利用Python分析歐洲斯托克 50指數(shù)波動率
6.1波動率指數(shù)衍生品
6.1.1STOXX與歐洲期貨交易所
6.1.2EURO STOXX 50指數(shù)
6.1.3VSTOXX
6.1.4VIX
6.2獲取EUROX STOXX 50指數(shù)和VSTOXX數(shù)據(jù)
6.3數(shù)據(jù)合并
6.4SX5E與V2TX的財務(wù)分析
6.5SX5E與V2TX的相關(guān)性
6.6計算VSTOXX子指數(shù)
6.6.1獲取OESX數(shù)據(jù)
6.6.2計算VSTOXX子指數(shù)的公式
6.6.3VSTOXX子指數(shù)值的實現(xiàn)
6.6.4分析結(jié)果
6.7計算VSTOXX主指數(shù)
6.8總結(jié)
第7章大數(shù)據(jù)分析
7.1什么是大數(shù)據(jù)
7.2Hadoop
7.2.1HDFS
7.2.2YARN
7.2.3MapReduce
7.3大數(shù)據(jù)工具對我來說實用嗎
7.4獲取Apache Hadoop
7.4.1從Cloudera獲取QuickStart VM
7.4.2獲取VirtualBox
7.4.3在VirtualBox上運行Cloudera VM
7.5Hadoop中的字計數(shù)程序
7.5.1下載示例數(shù)據(jù)
7.5.2map程序
7.5.3reduce程序
7.5.4測試腳本
7.5.5在Hadoop上運行MapReduce
7.5.6使用Hue瀏覽HDFS
7.6Hadoop的金融實踐
7.6.1從Yahoo! Finance獲取IBM股票價格
7.6.2修改map程序
7.6.3使用IBM股票價格測試map程序
7.6.4運行MapReduce計算日內(nèi)價格變化
7.6.5分析MapReduce結(jié)果
7.7NoSQL簡介
7.7.1獲取MongoDB
7.7.2創(chuàng)建數(shù)據(jù)目錄并運行MongoDB
7.7.3獲取PyMongo
7.7.4運行測試連接
7.7.5獲取數(shù)據(jù)庫
7.7.6獲取集合
7.7.7插入文檔
7.7.8獲取單個文檔
7.7.9刪除文檔
7.7.10批量插入文檔
7.7.11統(tǒng)計集合文檔
7.7.12查找文檔
7.7.13文檔排序
7.7.14結(jié)論
7.8總結(jié)
第8章算法交易
8.1什么是算法交易
8.2帶有公共API的交易平臺列表
8.3有沒有最好的編程語言
8.4系統(tǒng)功能
8.5通過Interactive Brokers和IbPy進行算法交易
8.5.1獲取Interactive Brokers的Trader WorkStation
8.5.2獲取IbPy——IB API包裝器
8.5.3指令路由機制
8.6構(gòu)建均值回歸算法交易系統(tǒng)
8.6.1設(shè)置主程序
8.6.2處理事件
8.6.3實現(xiàn)均值回歸算法
8.6.4跟蹤頭寸
8.7使用OANDA API進行外匯交易
8.7.1什么是REST
8.7.2設(shè)置OANDA賬戶
8.7.3OANDA API使用方法
8.7.4獲取oandapy——OAND AREST API包裝器
8.7.5獲取并解析匯率數(shù)據(jù)
8.7.6發(fā)送指令
8.8構(gòu)建趨勢跟蹤外匯交易平臺
8.8.1設(shè)置主程序
8.8.2處理事件
8.8.3實現(xiàn)趨勢跟蹤算法
8.8.4跟蹤頭寸
8.9風(fēng)險價值模型
8.10總結(jié)
第9章回溯測試
9.1回溯測試概述
9.1.1回溯測試的缺陷
9.1.2事件驅(qū)動回溯測試系統(tǒng)
9.2設(shè)計并實施回溯測試系統(tǒng)
9.2.1TickData類
9.2.2MarketData類
9.2.3MarketDataSource類
9.2.4Order類
9.2.5Position類
9.2.6Strategy類
9.2.7MeanRe