1. 程式人生 > >Python金融系列第七篇:市場風險

Python金融系列第七篇:市場風險

作者:chen_h
微訊號 & QQ:862251340
微信公眾號:coderpai


第一篇:計算股票回報率,均值和方差

第二篇:簡單線性迴歸

第三篇:隨機變數和分佈

第四篇:置信區間和假設檢驗

第五篇:多元線性迴歸和殘差分析

第六篇:現代投資組合理論

第七篇:市場風險

第八篇:Fama-French 多因子模型


介紹

在有關金融的論文中,你可能會經常聽到資產的 “beta” 或者 “市場風險” 等詞。本章將解釋這些術語的來源以及它們的用處。

資本資產定價模型

正如我們稍後將要看到的,“資產定價” 這個名稱有點誤導,因為 CAPM 告訴我們資產的預期收益而不是價格。在前面的內容中,我們已經介紹了以黑色線顯示的資本市場線(CML):

在這裡插入圖片描述

所有投資者都應該持有 CML 的投資組合,該投資組合是通過在市場投資組合中投入我們的財富的一小部分以及在無風險資產中的剩餘部分(1-w)來構建的。所以 CML 投資組合的回報是:

R = w R m a

r k e t + ( 1 w
) R 0 R = wR_{market} + (1-w)R_{0}

如果,我們讓 β = w \beta = w ,那麼上面的等式就可以變為:

R R 0 = β ( R m a r k e t R 0 ) R - R_{0} = \beta (R_{market} - R_{0})

請注意, β \beta 是衡量我們的 CML 投資組合回報對市場回報的敏感程度的指標。我們對等式兩邊都計算期望:

E ( R ) R 0 = β ( E ( R m a r k e t R 0 ) E(R) - R_{0} = \beta (E(R_{market} - R_{0})

我們再對兩邊都取協方差:

C o v ( R R 0 , R m a r k e t ) = β C o v ( R m a r k e t R 0 , R m a r k e t ) Cov(R-R_{0}, R_{market}) = \beta Cov(R_{market} - R_{0}, R_{market})

現在應用協方差兩個基本事實:

  • Cov(X+c, Y) = Cov(X, Y),其中 c 是一個常量
  • Cov(X, X) = Var(X)

因此,我們可以得到 β \beta 值為:

β = C o v ( R , R m a r k e t ) V a r ( R m a r k e t ) \beta = \frac{Cov(R, R_{market})}{Var(R_{market})}

在實踐中如何計算 beta

雖然資本資產定價模型很簡單,但是應用中如何計算可不簡單。我們首先需要選擇計算回報的時間範圍:我們應該使用每日,每週還是每月的回報呢?然後我們需要考慮可用於線性迴歸的資料點的數量。例如,如果我們使用過去1年的月度回報計算 bata 值,那麼我們只有 12 個數據點太少了。此外,資產的 β \beta 可以隨著時間變化。以下圖表是 GE 股票的每日資料,其中有6個月的回滾資料視窗:

在這裡插入圖片描述

GE 的 β \beta 值約為 0.1 至 0.5 。這就是使用 β \beta 時需要小心的原因,因為不考慮時間間隔,談論 β \beta 是沒有意義的。

下圖是 beta 的滾動 p 值。p 值在大多數時間保持接近零。然而,在一段時間內,它突然增加到接近 0.1,這就相當於 90% 的置信區間了。這可能是由於一些錯誤定價或者市場動盪造成的。

在這裡插入圖片描述

市場中心

如果投資組合的 β \beta 為零,則該投資組合是市場中性的。換句話說,投資組合的回報與市場回報無關。我們說它沒有“市場風險”。一些經典的市場中性策略是配對交易,beta 對衝股票投資組合和其他衍生品策略。我們從 2012 年 3月到 2015年 1 月每日都有道瓊斯 30 種股票的回報。對於每隻股票,其在任何特定日期的 β \beta 均使用過去 6 個月的回報計算。隨著這個 6 個月的視窗向前移動, β \beta 當然會改變。一旦我們知道每隻股票的 β \beta 隨時間的變化,我們可以問:哪些股票的 β \beta 彼此相關?下表顯示了每隻股票的 β \beta 之間的相關性。

在這裡插入圖片描述

那麼我們如何構建市場中立的投資組合呢?我們來考慮兩個股票 A 和 B:

R A = R 0 + β ( R m a r k e t R 0 ) R_{A} = R_{0} + \beta (R_{market} - R_{0})

R B = R 0 + β ( R m a r k e t R 0 ) R_{B} = R_{0} + \beta (R_{market} - R_{0})

我們將我們的資金在股票 A 上面分配 w,在股票 B 上面分配 1-w,然後市場中立意味著:

w β A + ( 1 w ) β B = 0            w = β B β B β A w\beta_{A} + (1-w)\beta_{B} = 0 \space\space\space\space \Rightarrow \space\space\space\space\space w = \frac{\beta_{B}}{\beta_{B} - \beta_{A}}

如前所述, β A \beta_{A} β B \beta_{B} 將隨著時間而變化,因此市場中性投資組合也將變成如此。然而,只要 β A \beta_{A} β B \beta_{B} 具有線性關係,我們就可以用常數 w 來實現市場中性:

β A = m β B + c \beta_{A} = m \beta_{B} + c

相關推薦

Python金融系列市場風險

作者:chen_h 微訊號 & QQ:862251340 微信公眾號:coderpai 第一篇:計算股票回報率,均值和方差 第二篇:簡單線性迴歸 第三篇:隨機變數和分佈 第四篇:置信區間和假設檢驗 第五篇:多元線性迴歸和殘差分析 第六篇:現代投資組合

Python金融系列現代投資組合理論

作者:chen_h 微訊號 & QQ:862251340 微信公眾號:coderpai 第一篇:計算股票回報率,均值和方差 第二篇:簡單線性迴歸 第三篇:隨機變數和分佈 第四篇:置信區間和假設檢驗 第五篇:多元線性迴歸和殘差分析 第六篇:現代投資組合

Python金融系列多元線性迴歸和殘差分析

作者:chen_h 微訊號 & QQ:862251340 微信公眾號:coderpai 第一篇:計算股票回報率,均值和方差 第二篇:簡單線性迴歸 第三篇:隨機變數和分佈 第四篇:置信區間和假設檢驗 第五篇:多元線性迴歸和殘差分析 第六篇:現代投資組合

Python金融系列Fama-French 多因子模型

作者:chen_h 微訊號 & QQ:862251340 微信公眾號:coderpai 第一篇:計算股票回報率,均值和方差 第二篇:簡單線性迴歸 第三篇:隨機變數和分佈 第四篇:置信區間和假設檢驗 第五篇:多元線性迴歸和殘差分析 第六篇:現代投資組合

Python金融系列置信區間和假設檢驗

作者:chen_h 微訊號 & QQ:862251340 微信公眾號:coderpai 第五篇:多元線性迴歸和殘差分析 第六篇:現代投資組合理論 第七篇:市場風險 第八篇:Fama-French 多因子模型 介紹 在上一章中,我們討論了隨機變

Python 語言學習 函式1(定義、呼叫和變數的作用域)

函式是把一些語句集合在一起的程式結構,用於把複雜的流程細分成不同的元件,能夠減少程式碼的冗餘、程式碼的複用和修改程式碼的代價。 函式可以0個、1個或多個引數,向函式傳遞引數,可以控制函式的流程。函式還可以返回程式碼執行的結果,從技術上講,任何函式都要返回結果,一個沒有返回值的函式會自動返回none物件。如果

Python開發【面向物件初級

面向物件初級篇 概述 面向過程:根據業務邏輯從上到下寫壘程式碼 函式式:將某功能程式碼封裝到函式中,日後便無需重複編寫,僅呼叫函式即可 面向物件:對函式進行分類和封裝,讓開發“更快更好更強...” 面向過程程式設計最易被初學者接受,其往往用一長段程式碼來實現指定功能,開發過程中最常見的

Python開發【面向物件(進階

上一篇《Python 面向物件(初級篇)》文章介紹了面向物件基本知識: 面向物件是一種程式設計方式,此程式設計方式的實現是基於對 類 和 物件 的使用 類 是一個模板,模板中包裝了多個“函式”供使用(可以講多函式中公用的變數封裝到物件中) 物件,根據模板

Spring Cloud系列教程 | 使用Spring Cloud Zuul實現過濾器或攔截器功能案例

推薦 Spring Cloud 視訊: 使用Spring Cloud Zuul實現過濾器或攔截器功能案例   Spring Cloud的API閘道器不但可以實現類似NGINX+Lua強大的路由分發,實現動靜頁面的分流,更重要可以實現對所有發往後端微服務請求的攔

數據預處理(四) - 數據歸約(PCA/EFA為例)

通過 mage 如果 解釋 最大似然法 能力 似然 模擬 ont 前言 這部分也許是數據預處理最為關鍵的一個階段。 如何對數據降維是一個很有挑戰,很有深度的話題,很多理論書本均有詳細深入的講解分析。 本文僅介紹主成分分析法(P

深入理解ajax系列

gin 開發工程師 tar component fin hasattr mar tex 員工 前面的話   雖然ajax全稱是asynchronous javascript and XML。但目前使用ajax技術時,傳遞JSON已經成為事實上的標準。因為相較於XML而言,J

Python 學習日記 -- 函數相關

函數裝飾器一、裝飾器前戲-閉包簡單來說,python中函數的閉包就是在內部函數裏對外部作用域(但不是全局作用域)的變量進行引用,這麽說,不太好理解,下面的示例幫助理解 def outer(): a = 1 def inner(): # 內部函數inner print(a)

R語言學習 列表

方法 靈活的數據類型 引號 bounds 參考 最大的 post 長度 索引操作 列表(List)是R中最復雜的數據類型,一般來說,列表是數據對象的有序集合,但是,列表的各個元素(item)的數據類型可以不同,每個元素的長度可以不同,是R中最靈活的數據類型。列表項可以是列表

Python3連接MySQL

定義 執行 對象 delet l數據庫 hal gin sele fault 第七篇:Python3連接MySQL 連接數據庫 註意事項 在進行本文以下內容之前需要註意: 你有一個MySQL數據庫,並且已經啟動。 你有可以連接該數據庫的用戶名和密碼 你有一個有權限操作的d

Jmeter連接MySQL的測試

jmeter 數據表 準備 技術 con image sql數據庫 添加 參數配置 .準備一個有數據表格的MySQL數據庫; 2.在測試計劃面板上點擊瀏覽按鈕,把你的JDBC驅動添加進來; mysql-connector-java-5.1.26-bin.jar 3

Linux系統啟動流程

.com 標誌位 linu http 操作系統 流程 mbr 我們 png 1.bios:是在主板上的一段程序,決定計算機從哪一塊啟動介質中讀操作系統。2.硬盤最小單位是扇區,一個扇區512byte,計算機啟動第一個讀的扇區叫“主引導記錄”(MBR),446B:引導信息 6

遞迴插入,修改版

專案場景:        將一個樹上的節點插入到資料庫,節點之間有父子關係,每個節點有一個id和pId,父子關係表述為:父節點的id為子節點的pId值。在上一個日誌中,所有節點的值已經全部打包完傳給了後臺。現在執行插入操作。難點:

MongoDB基礎教程系列-- MongoDB 聚合管道

https://www.cnblogs.com/liruihuan/p/6686570.html 在講解聚合管道(Aggregation Pipeline)之前,我們先介紹一下 MongoDB 的聚合功能,聚合操作主要用於對資料的批量處理,往往將記錄按條件分組以後,然後再進行一系列操作

史上最簡單的SpringCloud教程 | 高可用的分散式配置中心(Spring Cloud Config)

最新Finchley版本請訪問: https://www.fangzhipeng.com/springcloud/2018/08/30/sc-f7-config/ 或者 http://blog.csdn.net/forezp/article/details/81041

微信粉絲一鍵同步工具類

1、前言   在公眾號開發的過程中,一般都需要獲取粉絲資料,針對單個粉絲,我們可以通過openid獲取其粉絲資訊; 但不排除這種業務,比如目前開發的公眾號已經在使用中,,當前的框架或者功能已經不能夠滿足使用者的需求、需要重新開發,那麼這個時候你開發的新的微信專案將要接入到之前老的微