![第一講python金融應(yīng)用概述_第1頁](http://file4.renrendoc.com/view/09e7069b6b8f597308a06a6532a53cef/09e7069b6b8f597308a06a6532a53cef1.gif)
![第一講python金融應(yīng)用概述_第2頁](http://file4.renrendoc.com/view/09e7069b6b8f597308a06a6532a53cef/09e7069b6b8f597308a06a6532a53cef2.gif)
![第一講python金融應(yīng)用概述_第3頁](http://file4.renrendoc.com/view/09e7069b6b8f597308a06a6532a53cef/09e7069b6b8f597308a06a6532a53cef3.gif)
![第一講python金融應(yīng)用概述_第4頁](http://file4.renrendoc.com/view/09e7069b6b8f597308a06a6532a53cef/09e7069b6b8f597308a06a6532a53cef4.gif)
![第一講python金融應(yīng)用概述_第5頁](http://file4.renrendoc.com/view/09e7069b6b8f597308a06a6532a53cef/09e7069b6b8f597308a06a6532a53cef5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
北風(fēng)網(wǎng)項目實戰(zhàn)培訓(xùn)Python與金融應(yīng)用概述大數(shù)據(jù)時代的Python金融應(yīng)用什么是PythonPython是一種高級、多目的的編程語言,在很多領(lǐng)域和技術(shù)層面都有廣泛的應(yīng)用。Pythonisaninterpreted,object-oriented,high-levelprogramminglanguagewithdynamicsemantics.Itshigh-levelbuiltindatastructures,combinedwithdynamictypinganddynamicbinding,makeitveryattractiveforRapidApplicationDevelopment,aswellasforuseasascriptingorgluelanguagetoconnectexistingcomponentstogether.Python’ssimple,easytolearnsyntaxemphasizesreadabilityandthereforereducesthecostofprogrammaintenance.Pythonsupportsmodulesandpackages,whichencouragesprogrammodularityandcodereuse.ThePythoninterpreterandtheextensivestandardlibraryareavailableinsourceorbinaryformwithoutchargeforallmajorplatforms,andcanbefreelydistributed.Python語言的主要特征開源Python和大多數(shù)的支撐庫和工具都是開源的,通??梢苑浅l`活的使用而且有開放的協(xié)議。解釋性也可以使用Cpython完成將解釋性語言轉(zhuǎn)化為實施可執(zhí)行的Python二進制代碼的應(yīng)用多框架Python語言支持不同的編程與實現(xiàn)框架,例如面向?qū)ο?、和必要的函?shù)型或過程化編程。多目的Python可以用于快速的、交互式的代碼開發(fā)以及建構(gòu)大型應(yīng)用系統(tǒng),它也可以用于底層系統(tǒng)操作以及高級分析的任務(wù)。Python的簡單歷史雖然Python可能對于某些人來說還是新事物,但是其實它已經(jīng)發(fā)展了很長時間。事實上,對Python的開發(fā)自1980年代就已經(jīng)開始,創(chuàng)始人是荷蘭的GuidovanRossum。需要注意的是,這一點也通常使剛剛接觸Python語言的人感到迷惑,就是目前有兩種可行的Python版本,都在開發(fā),而且自2008年以來被平行使用。目前,兩個版本之間并沒有100%的兼容,而且對Python3.0來說也不是所有的庫都可以使用。因此本課程主要使用的是2.7版本,雖然大多數(shù)的例子代碼在3.0中也是可以運行的。Python生態(tài)系統(tǒng)本課程中展示的例子都是使用Ipython這種流行的Python交互式開發(fā)環(huán)境(IDE)。雖然它開始的時候只是一個升級的外殼,但是今天的IDE中已經(jīng)有很多可選的東西(例如支持調(diào)試)。Ipython通常被稱為Python生態(tài)系統(tǒng)的killerapplication,在很多方面對標(biāo)準(zhǔn)的交互環(huán)境進行了改進。例如,提供了命令行歷史命令的功能,允許較為容易的觀測對象等。在這個系統(tǒng)中,獲得幫助也是非常容易的。Ipython提供了多種版本:包括一個殼版本,一個基于QT圖形用戶界面的版本以及一個基于瀏覽器的版本(NOTEBOOK)。Python的用戶群體Python不僅會吸引專業(yè)的軟件開發(fā)人員,而且可以為業(yè)務(wù)開發(fā)者,領(lǐng)域?qū)<液涂茖W(xué)計算開發(fā)者所使用。專業(yè)的軟件開發(fā)者:Python支持所有的編程框架,有大量的開發(fā)工具,專業(yè)的軟件開發(fā)者可以使用這些工具來構(gòu)建自定義的框架和類,與基礎(chǔ)的Python庫和科學(xué)計算庫一起,實現(xiàn)生態(tài)系統(tǒng)的最大化應(yīng)用。科學(xué)開發(fā)者和領(lǐng)域?qū)<遥哼@些用戶會大量的使用某些庫和框架的框架,來創(chuàng)建自己的應(yīng)用程序并且隨著時間進行提升和優(yōu)化,使得整個生態(tài)系統(tǒng)滿足他們的具體需求。這類用戶通常會致力于較長時間的交互操作,快速的形成新代碼的原型,并且對研究以及領(lǐng)域數(shù)據(jù)集進行探討和可視化。比較隨意的編程人員使用Python來處理他們認(rèn)為有優(yōu)勢的具體問題。例如可以將一些matplotlib的具體代碼進行復(fù)制,稍加修改來滿足特定的業(yè)務(wù)需要。另外,還有編程的初學(xué)者也會使用Python作為教學(xué)語言,這是因為它的基礎(chǔ)語法是比較容易學(xué)習(xí)和理解的,解釋對非編程人員來說也是這樣,而且Python還支持幾乎所有的編程模式??茖W(xué)計算庫科學(xué)計算庫是Python語言的重要組成部分,其包括:NumPy:提供了多維數(shù)組對象保存同質(zhì)或異質(zhì)的數(shù)據(jù),它還提供了處理這個數(shù)組對象的優(yōu)化函數(shù)/方法。SciPy:包含一系列子庫和函數(shù)來完成科學(xué)和金融領(lǐng)域的重要標(biāo)準(zhǔn)功能,比如三維曲線插值以及數(shù)值積分。Matplotlib:這是Python最為流行的繪圖和可視化庫,提供了2D和3D的繪圖功能。PyTables:是流行的HDF5數(shù)據(jù)存儲庫,這個庫可以完成基于有層次的數(shù)據(jù)庫和文件格式的優(yōu)化的,以磁盤為基礎(chǔ)的IO操作。Pandas:pandas基于NumPy來創(chuàng)建,提供了管理和分析時間序列以及表格數(shù)據(jù)的豐富的類;它與matplotlib庫緊密結(jié)合提供了繪圖功能,和PyTables類結(jié)合提供了數(shù)據(jù)讀取功能。討論一些量化金融中的例子,顯示使用Python以及其附屬的金融分析庫處理起來是多么方便。這些例子是描述性的,對于一些Python語言以及實際應(yīng)用中的細(xì)節(jié)問題并不做過多介紹。本講包括以下幾個例子:隱含波動率:不同到期期限期權(quán)的隱含波動率求解并作圖,這是很多期權(quán)交易者以及風(fēng)險管理者面對的一項日常任務(wù)。MonteCarlo模擬:通過MonteCarlo模擬來得到一組隨時間變化的股票指數(shù),將選擇的結(jié)果作圖,并計算歐式期權(quán)的價值。MonteCarlo模擬方法是數(shù)值期權(quán)定價以及value-at-risk風(fēng)險管理以及信用價值調(diào)整的基礎(chǔ)。技術(shù)分析:通過對歷史時間序列的分析,完成對一項基于趨勢信號的交易策略的回測,專業(yè)投資者以及激進的業(yè)余投資者通常都會進行這類型的投資分析。Python在金融中應(yīng)用的典型示例隱含波動率給定類似于Black-Scholes-Merton(1973)的期權(quán)定價公式,隱含波動率是指:在其他條件不變的情況下,通過將這個隱含波動率數(shù)值代入到公式中,可以得到不同的執(zhí)行價格和期限的期權(quán)的市場報價。本例中,波動率不是代入到模型或公式中的一個輸入?yún)?shù),而是給定這個公式而得到的一個(數(shù)值)優(yōu)化過程的結(jié)果。這里我們考慮的例子是關(guān)于一項新的期權(quán),即基于VSTOXX波動率指數(shù)的波動率期權(quán)。Eurex是提供基于VSTOXX和各種期貨合同的衍生品交易市場,于2013年6月建立了一個綜合化的Python為基礎(chǔ)的關(guān)于這個指數(shù)以及基于此指數(shù)的衍生品合同的教程,稱為”VSTOXXAdvancedServices”。隱含波動率
隱含波動率
隱含波動率隱含波動率從表中可以看出,交易的看漲期權(quán)中有非常實值的(指數(shù)的水平比期權(quán)執(zhí)行價格高出很多),也有非常虛值的(即指數(shù)的水平比期權(quán)執(zhí)行價格低很多)。因此,我們希望將分析限制在某種給定的(遠(yuǎn)期)moneyness水平上,給定分別期限的期貨價值。假設(shè)我們允許期貨水平上下50%的波動。首先,我們定義新的一列來存儲結(jié)果,并引入我們需要的函數(shù)?,F(xiàn)在我們計算看漲期權(quán)的隱含波動率。隱含波動率接著,我們將所選擇的期權(quán)的隱含波動率用圖形表示出來,我們首先取隱含波動率大于0的子集(也就是我們進行了隱含波動率計算的子集)。為了數(shù)據(jù)的可視化,我們對于數(shù)據(jù)集的所有到期日進行迭代,并且將隱含波動率做成線狀圖或者單點圖。因為所有的到期日顯示為多個時間,我們需要使用一點技巧來獲得沒有重復(fù)的,排序的日期列表。在Python中,set操作可以去掉重復(fù)項目,但是獲得的是沒有排序的期限集合。因此,我們還要對set進行排序。接著我們對所有的日期進行迭代并作圖。在這里可以看到一個明顯的波動率微笑圖形。而且對于長期的期權(quán)來說更為明顯。隱含波動率我們來看pandas另外一個強大的功能:對于按照邏輯索引的數(shù)據(jù),DataFrame對象options_data都有一個整數(shù)的索引。但是這個索引是沒有含義的,2014年3月31日交易的期權(quán)報價通過期限和執(zhí)行價格來唯一描述,也就是說每個到期日的每個執(zhí)行價格水平都對應(yīng)著唯一的一個看漲期權(quán)。Groupby方法可以得到一個更為有意義的索引,我們可以分別按照MATURITY和STRIKE進行索引。在這個例子中,我們只保留PRICE和IMP_VOL的列。這樣的操作會返回一個DataFrameGroupBy對象,為了獲得這個數(shù)據(jù),我們需要對這個對象進行加總操作。MonteCarlo模擬MonteCarlo模擬是金融和一般計算科學(xué)的一種非常重要的算法。其重要性來源于它在期權(quán)定價和風(fēng)險管理問題上非常有力的事實。與其他數(shù)值算法相比較,MonteCarlo方法可以很容易的處理高維的問題,應(yīng)對復(fù)雜性和計算的需求,而這些需求常常是線性增長的。MonteCarlo模擬方法的不足是其通常需要加大的內(nèi)存,即使是針對比較簡單的問題。因此,有效的運行MonteCarlo方法是必要的。這里的例子給出了Python中處理這個問題的不同策略,統(tǒng)統(tǒng)了不同的歐式期權(quán)Monte-Carlo模擬定價的處理方法。三種方法如下:純Python的解決方案:這個例子依賴于Python基本庫,即那些標(biāo)準(zhǔn)Python安裝時獲得的庫,并且使用內(nèi)在的Python能力來完成MonteCarlo計算。向量化的NumPy:這個實現(xiàn)使用NumPy的能力來進行更為緊湊和快速的處理。完全向量化的NumPy:最后的例子將一個不同的數(shù)學(xué)實現(xiàn)以及NumPy向量化的能力聯(lián)系起來來獲得相同算法的更為緊湊的版本。MonteCarlo模擬MonteCarlo模擬MonteCarlo模擬MonteCarlo模擬MonteCarlo模擬技術(shù)分析基于歷史價格信息的技術(shù)分析對于金融從業(yè)者和其他相關(guān)方而言是一項典型的工作。Infinance,technicalanalysisisasecurityanalysismethodologyforforecastingthedirectionofpricesthroughthestudyofpastmarketdata,primarilypriceandvolume.在下面的介紹中,我們關(guān)注的是為了回測的目的而研究過去的市場數(shù)據(jù),而不是特別的關(guān)注來預(yù)測未來的價格波動。我們研究的目標(biāo)是基準(zhǔn)指數(shù)S&P500,這通常被看作是美國股票整體市場變化的一項好的代理指標(biāo)。這是因為指數(shù)包含大量的股票范圍而且代表了市值的大部分。它還擁有大量具有流動性的期貨和期權(quán)市場。我們將從網(wǎng)絡(luò)資源中讀入歷史指數(shù)信息,并完成一項基于趨勢信號的交易系統(tǒng)的回測。首先我們需要讀入數(shù)據(jù),使用的是pandas庫。具體來說,我們使用pandas.io.data中的DataReader函數(shù)來獲得金融時間序列數(shù)據(jù)。同時,這段代碼還會隨Timestamp對象生成一個時間指數(shù)。通過作圖來簡要的看一下數(shù)據(jù)。技術(shù)分析基于歷史價格信息的技術(shù)分析對于金融從業(yè)者和其他相關(guān)方而言是一項典型的工作。Infinance,technicalanalysisisasecurityanalysismethodologyforforecastingthedirectionofpricesthroughthestudyofpastmarketdata,primarilypriceandvolume.在下面的介紹中,我們關(guān)注的是為了回測的目的而研究過去的市場數(shù)據(jù),而不是特別的關(guān)注來預(yù)測未來的價格波動。我們研究的目標(biāo)是基準(zhǔn)指數(shù)S&P500,這通常被看作是美國股票整體市場變化的一項好的代理指標(biāo)。這是因為指數(shù)包含大量的股票范圍而且代表了市值的大部分。它還擁有大量具有流動性的期貨和期權(quán)市場。我們將從網(wǎng)絡(luò)資源中讀入歷史指數(shù)信息,并完成一項基于趨勢信號的交易系統(tǒng)的回測。首先我們需要讀入數(shù)據(jù),使用的是pandas庫。具體來說,我們使用pandas.io.data中的DataReader函數(shù)來獲得金融時間序列數(shù)據(jù)。同時,這段代碼還會隨Timestamp對象生成一個時間指數(shù)。通過作圖來簡要的看一下數(shù)據(jù)。技術(shù)分析這里我們要實現(xiàn)的趨勢策略是基于兩個月(或42天)以及一年(即252天)的趨勢(即,對應(yīng)時期的指數(shù)水平的移動平均)。pandas會較為有效的生成對應(yīng)的時間序列并且可以將趨勢序列與原始序列表達(dá)在同一副圖中。我們首先在pandasDataFrame對象中加入新的兩列,分別代表趨勢。這樣數(shù)據(jù)會有所減少。接著對新的帶有趨勢數(shù)據(jù)的數(shù)據(jù)圖進行繪制。技術(shù)分析下面我們來設(shè)計一種規(guī)則來生成交易信號。這個規(guī)則如下:購買信號:42d的趨勢第一次超過252d的趨勢50個點。等待信號:42d的趨勢保持在252d趨勢的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國帶去重裝置動平衡機數(shù)據(jù)監(jiān)測研究報告
- 2025年中國子管聯(lián)結(jié)裝置市場調(diào)查研究報告
- 2025至2031年中國鋁型材拉手行業(yè)投資前景及策略咨詢研究報告
- 2025至2031年中國三目落射熒光顯微鏡行業(yè)投資前景及策略咨詢研究報告
- 2025至2030年中國竹根雕數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國煮呢機數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國雙層珠光吹瓶數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國冷凍黑椒牛柳飯數(shù)據(jù)監(jiān)測研究報告
- 2025年中國自動調(diào)整臂零件市場調(diào)查研究報告
- 專業(yè)知識的網(wǎng)絡(luò)與社交媒體考核試卷
- 縱隔腫物的護理查房
- 新能源汽車概論題庫
- 設(shè)備維保的維修成本和維護費用
- 客運站員工安全生產(chǎn)教育培訓(xùn)
- 口腔預(yù)防兒童宣教
- 綠城桃李春風(fēng)推廣方案
- 體質(zhì)健康概論
- 檔案管理流程優(yōu)化與效率提升
- 顱腦損傷的生物標(biāo)志物
- 2023高考語文實用類文本閱讀-新聞、通訊、訪談(含答案)
- 人工智能在商場應(yīng)用
評論
0/150
提交評論