定 價(jià):69 元
叢書名:數(shù)據(jù)科學(xué)與工程技術(shù)叢書
- 作者:[新加坡]馬偉明
- 出版時(shí)間:2017/3/1
- ISBN:9787111589983
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:F830.2
- 頁(yè)碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書將介紹股票、期權(quán)、利率衍生品等金融工具定價(jià)方法,如何根據(jù)市場(chǎng)指數(shù)進(jìn)行大數(shù)據(jù)分析,以及如何使用NoSQL存儲(chǔ)tick數(shù)據(jù),可解決建模、交易策略優(yōu)化和風(fēng)險(xiǎn)管理等金融領(lǐng)域的復(fù)雜問題。本書面向本科生、研究生、算法開發(fā)的初學(xué)者以及使用Python進(jìn)行定量研究的金融領(lǐng)域軟件開發(fā)人員。你無(wú)需精通Python,熟悉其基本使用情況即可。
前言Python已廣泛應(yīng)用于銀行業(yè)、投資管理、保險(xiǎn)業(yè)、房地產(chǎn)行業(yè)等金融領(lǐng)域,用于開發(fā)金融模型、管理風(fēng)險(xiǎn)和自動(dòng)完成交易。許多大型金融機(jī)構(gòu)依賴Python來搭建職位管理、資產(chǎn)定價(jià)、風(fēng)險(xiǎn)管理和交易系統(tǒng)等基礎(chǔ)設(shè)施。
本書將介紹核心的金融理論,并給出它們的數(shù)學(xué)概念,以幫助讀者更好地理解它們?cè)趯?shí)際中的應(yīng)用價(jià)值。你將了解如何應(yīng)用Python求解經(jīng)典的資產(chǎn)定價(jià)模型,解決金融中的線性和非線性問題,開發(fā)數(shù)值程序和利率模型,以及如何根據(jù)有限差分法定價(jià)來描繪含有期權(quán)的隱含波動(dòng)率曲線等。
隨著高級(jí)計(jì)算技術(shù)的出現(xiàn),我們必須要考慮如何存儲(chǔ)和處理大量數(shù)據(jù)。而Hadoop是目前處理大數(shù)據(jù)的流行工具。因此本書將介紹Hadoop的工作原理及其與Python的集成,以獲得金融數(shù)據(jù)的分析方法;以及如何利用Python實(shí)現(xiàn)NoSQL在存儲(chǔ)非結(jié)構(gòu)化數(shù)據(jù)中的應(yīng)用。
目前許多公司開始向客戶提供API,以使用他們定制的交易軟件進(jìn)行交易。通過學(xué)習(xí)本書,你將了解如何連接到代理API,檢索市場(chǎng)數(shù)據(jù),生成交易信號(hào)并向交易所發(fā)送指令,以及平均回報(bào)和趨勢(shì)跟蹤等交易策略的實(shí)施。另外,本書還將介紹風(fēng)險(xiǎn)管理、頭寸跟蹤和回溯測(cè)試技術(shù),以幫助你管理交易策略的實(shí)施效果。
金融行業(yè)中,使用Microsoft Excel處理債券交易和后臺(tái)業(yè)務(wù)是一種普遍現(xiàn)象。本書將介紹如何在Python中創(chuàng)建數(shù)字定價(jià)組件對(duì)象模型(COM)服務(wù)器,使你的電子表格能夠即時(shí)計(jì)算和更新模型值。
本書的主要內(nèi)容第1章探討了Python在金融領(lǐng)域的適用性,引入IPython作為可視化數(shù)據(jù)和執(zhí)行科學(xué)計(jì)算的有效工具。
第2章介紹了使用Python求解線性方程組的方法,執(zhí)行整數(shù)規(guī)劃,以及將矩陣應(yīng)用于投資組合分析的線性優(yōu)化。
第3章討論了使用Python構(gòu)建金融非線性模型以及術(shù)根方法。
第4章探討了如何使用三叉樹模型、二叉樹網(wǎng)格和有限差分法等進(jìn)行期權(quán)估值。
第5章討論了收益率曲線的引導(dǎo)過程,涵蓋一些利用Python實(shí)現(xiàn)的衍生品利率的短期定價(jià)模型。
第6章討論了波動(dòng)率指數(shù),對(duì)歐洲斯托克50指數(shù)波動(dòng)率數(shù)據(jù)進(jìn)行分析,并使用子指數(shù)的期權(quán)價(jià)格復(fù)制主要指數(shù)。
第7章介紹了Hadoop在大數(shù)據(jù)分析中的應(yīng)用,如何使用Python執(zhí)行MapReduce操作,以及如何使用NoSQL存儲(chǔ)數(shù)據(jù)。
第8章探討了逐步開發(fā)均值回歸算法交易和趨勢(shì)跟蹤算法交易策略,以及交易系統(tǒng)風(fēng)險(xiǎn)管理等。
第9章討論如何設(shè)計(jì)并實(shí)現(xiàn)一個(gè)事件驅(qū)動(dòng)的回溯測(cè)試系統(tǒng),幫助你把握模擬交易策略的性能。
第10章介紹了如何在Python中構(gòu)建一個(gè)組件對(duì)象模型服務(wù)器和客戶端界面與Excel融通,以及如何在Excel中即時(shí)計(jì)算期權(quán)價(jià)格。
學(xué)習(xí)本書的軟硬件支持學(xué)習(xí)本書需要安裝如下軟件:
操作系統(tǒng):
● 能使用Python 27或更高版本的操作系統(tǒng)● 第10章需要Windows XP或更高版本的操作系統(tǒng)● 第7章需要有至少4GB RAM的64位主機(jī)操作系統(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自動(dòng)安裝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運(yùn)行IB TWS和OANDA fxTrade平臺(tái)(第8章)● Microsoft Office Excel 2010或更高版本,并使用宏(第10章)本書的讀者對(duì)象本書面向開發(fā)金融應(yīng)用程序的學(xué)生和程序員,提供金融服務(wù)的顧問,金融分析師以及想要利用Python在數(shù)據(jù)可視化、交互式分析和科學(xué)計(jì)算方面的優(yōu)勢(shì)進(jìn)行財(cái)務(wù)分析的人員。對(duì)此,你需要掌握一定的Python基礎(chǔ)知識(shí)和金融概念,在學(xué)習(xí)每一章的技術(shù)內(nèi)容之前,本書會(huì)為初學(xué)者介紹相關(guān)的背景資料。
目錄
前言
第1章Python在金融中的應(yīng)用
1.1Python適合我嗎
1.1.1免費(fèi)+開源
1.1.2高級(jí)、強(qiáng)大、靈活的編程語(yǔ)言
1.1.3豐富的標(biāo)準(zhǔn)庫(kù)
1.2面向?qū)ο缶幊膛c函數(shù)式編程
1.2.1面向?qū)ο笫椒椒?br>1.2.2函數(shù)式方法
1.2.3我該使用哪種方法
1.3我該使用哪個(gè)版本的Python
1.4IPython簡(jiǎn)介
1.4.1安裝IPython
1.4.2使用pip
1.4.3IPython Notebook
1.4.4Notebook單元格
1.4.5IPython Notebook簡(jiǎn)單的練習(xí)
1.4.6Notebook與金融
1.5總結(jié)
第2章金融中的線性問題
2.1資本資產(chǎn)定價(jià)模型與證券市場(chǎng)線
2.2套利定價(jià)模型
2.3因子模型的多元線性回歸
2.4線性最優(yōu)化
2.4.1安裝PuLP
2.4.2一個(gè)簡(jiǎn)單的線性優(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隱含波動(dòng)率模型
3.2.2馬爾可夫機(jī)制轉(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求根標(biāo)量函數(shù)
3.9.2通用非線性求解器
3.10總結(jié)
第4章利用數(shù)值方法為衍生品定價(jià)
4.1什么是期權(quán)
4.2二叉樹期權(quán)定價(jià)模型
4.2.1歐式期權(quán)定價(jià)
4.2.2編寫StockOption類
4.2.3編寫B(tài)inomialEuropeanOption類
4.2.4利用BinomialTreeOption類給美式期權(quán)定價(jià)
4.2.5CoxRossRubinstein模型
4.2.6LeisenReimer模型
4.3希臘值
4.4三叉樹期權(quán)定價(jià)模型
4.5期權(quán)定價(jià)中的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)定價(jià)
4.6.5美式期權(quán)定價(jià)的有限差分
4.7隱含波動(dòng)率模型
4.8總結(jié)
第5章利率及其衍生工具
5.1固定收益證券
5.2收益率曲線
5.3無(wú)息債券
5.4自助法構(gòu)建收益率曲線
5.5遠(yuǎn)期利率
5.6計(jì)算到期收益率
5.7計(jì)算債券定價(jià)
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可贖回債券定價(jià)
5.12.1Vasicek模型定價(jià)無(wú)息債券
5.12.2提前行權(quán)定價(jià)
5.12.3有限差分策略迭代法
5.12.4可贖回債券定價(jià)的其他影響因素
5.13總結(jié)
第6章利用Python分析歐洲斯托克 50指數(shù)波動(dòng)率
6.1波動(dòng)率指數(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的財(cái)務(wù)分析
6.5SX5E與V2TX的相關(guān)性
6.6計(jì)算VSTOXX子指數(shù)
6.6.1獲取OESX數(shù)據(jù)
6.6.2計(jì)算VSTOXX子指數(shù)的公式
6.6.3VSTOXX子指數(shù)值的實(shí)現(xiàn)
6.6.4分析結(jié)果
6.7計(jì)算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ù)工具對(duì)我來說實(shí)用嗎
7.4獲取Apache Hadoop
7.4.1從Cloudera獲取QuickStart VM
7.4.2獲取VirtualBox
7.4.3在VirtualBox上運(yùn)行Cloudera VM
7.5Hadoop中的字計(jì)數(shù)程序
7.5.1下載示例數(shù)據(jù)
7.5.2map程序
7.5.3reduce程序
7.5.4測(cè)試腳本
7.5.5在Hadoop上運(yùn)行MapReduce
7.5.6使用Hue瀏覽HDFS
7.6Hadoop的金融實(shí)踐
7.6.1從Yahoo! Finance獲取IBM股票價(jià)格
7.6.2修改map程序
7.6.3使用IBM股票價(jià)格測(cè)試map程序
7.6.4運(yùn)行MapReduce計(jì)算日內(nèi)價(jià)格變化
7.6.5分析MapReduce結(jié)果
7.7NoSQL簡(jiǎn)介
7.7.1獲取MongoDB
7.7.2創(chuàng)建數(shù)據(jù)目錄并運(yùn)行MongoDB
7.7.3獲取PyMongo
7.7.4運(yùn)行測(cè)試連接
7.7.5獲取數(shù)據(jù)庫(kù)
7.7.6獲取集合
7.7.7插入文檔
7.7.8獲取單個(gè)文檔
7.7.9刪除文檔
7.7.10批量插入文檔
7.7.11統(tǒng)計(jì)集合文檔
7.7.12查找文檔
7.7.13文檔排序
7.7.14結(jié)論
7.8總結(jié)
第8章算法交易
8.1什么是算法交易
8.2帶有公共API的交易平臺(tái)列表
8.3有沒有最好的編程語(yǔ)言
8.4系統(tǒng)功能
8.5通過Interactive Brokers和IbPy進(jìn)行算法交易
8.5.1獲取Interactive Brokers的Trader WorkStation
8.5.2獲取IbPy——IB API包裝器
8.5.3指令路由機(jī)制
8.6構(gòu)建均值回歸算法交易系統(tǒng)
8.6.1設(shè)置主程序
8.6.2處理事件
8.6.3實(shí)現(xiàn)均值回歸算法
8.6.4跟蹤頭寸
8.7使用OANDA API進(jìn)行外匯交易
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)建趨勢(shì)跟蹤外匯交易平臺(tái)
8.8.1設(shè)置主程序
8.8.2處理事件
8.8.3實(shí)現(xiàn)趨勢(shì)跟蹤算法
8.8.4跟蹤頭寸
8.9風(fēng)險(xiǎn)價(jià)值模型
8.10總結(jié)
第9章回溯測(cè)試
9.1回溯測(cè)試概述
9.1.1回溯測(cè)試的缺陷
9.1.2事件驅(qū)動(dòng)回溯測(cè)試系統(tǒng)
9.2設(shè)計(jì)并實(shí)施回溯測(cè)試系統(tǒng)
9.2.1TickData類
9.2.2MarketData類
9.2.3MarketDataSource類
9.2.4Order類
9.2.5Position類
9.2.6Strategy類
9.2.7MeanRe