COCO研究院

 找回密碼
 註冊
搜索
查看: 29792|回復: 13

轉貼:策略經理人雙周報(三) 風險管理

[複製鏈接]
發表於 13-3-1 04:33 | 顯示全部樓層 |閱讀模式
此篇幅將探討的主題:
  • 1. 風險管理的概念。
  • 2. 損益拉回。
  • 3. 風險值VaR。
  • 4. 尾端期望損失。

策略經理人擁有目前交易回測分析工具中最強的風險管理功能,可透過系統做計算並做測試。上一回的雙周報,有簡單提到風險的概念,基本上是以損益的波動來做風險的衡量,還舉了兩個賭客對賭的例子,最後導到了相對績效指標的概念,而本次的雙周報將焦點放在風險管理的部分,從下一回的的雙周報更依此延伸資金管理的議題。

風險管理概念

數量化的風險管理,會用到一些基礎的估計法去對風險做估計;以統計的角度來看估計的定義,這個動作筆者一言以蔽之的譬喻即是「以管窺天」。歷史的樣本代表「管」;母體是未來到永久的真值代表「天」。以過去的資料去取樣,經過處理後用來預估將來實戰時的數值,將此比喻為估計,而我們做回測的時候也就是在建立一道管的連貫流程,以管窺天本身沒有錯,錯的問題是在於使用者的管子是否正確。
因此在建立管的過程中,如果樣本愈大,管子的對焦將會愈清楚,最好能更能有一段實單績效,那對著「天」的方向將會愈正確。本回的焦點放在風險管理,用到的估計方法,即是建立在歷史樣本,去估計未來風險的數值,首先第一步要做的事情,是定義風險,才能知道你要估計的母體-「天」是在哪邊。

風險的定義,我們上次有簡單提到-獲利的不確定性」,對此不確定性,有可能會造成獲利,也有機會造成虧損,我們如果要做估計,則是要把焦點放在虧損的機會跟金額。對於風險的測量,我們假設:

(1)估計未來交易者帳戶的權益最低會落在哪個值?
(2)估計一段時間後交易者帳戶的損益最差的狀況下會低於多少值?
(2)估計一段時間後交易者帳戶的損益最差的狀況下會虧損於多少值?

看到這邊很容易霧煞煞,以為筆者在玩文字遊戲,但筆者自認沒在耍人,有點概念的讀者很容易就可以知道,假設(1)講的即是拉回,假設(2)指的即是VaR,假設(3)指的即是尾端期望損失;如果交易策略的獲利不確定性愈大,你的權益上上下下的幅度也就愈大,當然拉回的幅度也會愈大,一段時間後,最差的狀況會虧損於更大的。

操作者定義完這些母體風險,接下來要做的事情就是要如何利用樣本去估計母體,這邊要描述正確有用的統計量有以下特性:


(1)不偏性:樣本夠大的話估計出的統計量要與母體相等。
(2)一致性:採用的樣本愈大,估出的統計量愈逼近母體真值。
(3)有效性:許多的估計模型裡,與母體真值偏差愈小的,代表愈有效,這是一個比較來的特性。
(4)充分性:採用的樣本是否能充分代表母體變數,這考量到採樣方式因此並非本文探討的重點。


本文將焦點放在(1)(2),不偏跟一致是相輔相成的,如果樣本愈多,跟母體真值的偏誤就能愈少的話,那此估計模型將會具有代表性。在風險管理的過程中,如果歷史資料給得愈多,估計出的風險值就要愈能收斂逼近到母體真值,估計量就跟實戰風險偏誤愈少

損益拉回(DrawDown)
拉回代表的意思顧名思義,在未來的損益,最大會虧損到甚麼程度。計算上很簡單:
第T個投資基準日的DrawDown = T期累積損益 -  T期以後最低累積損益



因此在每個投資點,都可以從後面的累積損益資料算出拉回值,而一段資料中最大的拉回值即為最大拉回值(MaxDrawDown)。

筆者看過很多交易者的討論,絕大多數的人在交易策略的回測中在乎的都是最大拉回值,幾乎以此數值去斷定一個策略的風險程度。在這裡筆者要鄭重強調採用MDD去估計風險值是不適當的,更甚者以MDD被破去判斷一個策略有沒有失效,是有謬誤的做法。

關鍵就在於它是個「MAX」的統計量,筆者在此舉例,假設某一次全國智力測驗,若抽樣出一個班級,想要以那個班級的最高智商,去代表全國最高智商,不可能沒有偏誤,而若樣本擴大一間學校,則全校最聰明又會更高於全班最聰明,在擴大樣本到全市最高分也更會高於全校最聰明,因此樣本愈大,估計數不會愈來愈趨近一個數字,樣本最高智力也會愈高,除非樣本數量已經大到接近母體,Max才會接近母體真值,但最怕的是母體深不可測;譬如測驗再擴大舉行到全亞洲(母體由全國擴張到全亞洲),那最母體最高智力又更深不可測,無論用任何樣本都很難估計,完全沒有達到樣本愈大愈逼近真值的效果;假設以回測MDD做估計量去估母體,母體即是未來的最大拉回(未來是無限持續下去的深不可測),會發生以下兩件事情:

(1)回測時間愈長,MDD愈大,很多人發現MDD無法固定住又歸咎於樣本不夠多,但給資料愈多卻又把MDD撐大。
(2)當實戰時間一直累積下去後,MDD也將會愈來愈大,因為觀察樣本也漸漸增加了,MDD不會穩定。


最後我們得到一個結論,「隨著交易時間經過,MDD遲早會破」,當然回測的時間愈長,MDD會需要較久的時間才會刷新紀錄。這是正常且合理的事情,千萬別因此覺得因此策略失效了。筆者早些年剛開始在做交易的時候,回測皆針對縮小MDD為目標,MDD愈小愈安心,還甚至以MDD作為每口保證金準備的依據,但開始實戰後,發現到MDD紛紛跌破,當時認為慘不忍睹,認為策略無效而紛紛把策略停用,另行開發新策略;但再過一段時間後策略績效紛紛回檔,但筆者自己已經被「掃出場外」,錯過賺回來的機會,而筆者當時手上的250萬到最後只剩下60萬,這是一個錯誤的資金控管與風險估計的概念,當時沒領悟到MDD的真相(卻也在當時另行開發新策略的過程中又斬獲更多新策略,也才能在日後能建立完整的策略組合)。

在策略經理人中,針對績效拉回的測試亦採用了另一個角度-平均拉回,原因在於利用歷史樣本去估計最大拉回實在過於困難,就向金氏世界紀錄人很難永遠保持紀錄一樣,而採用平均拉回是比較適當的方式,譬如取樣100人的平均智力去推估全國平均智力,會有偏誤,但取樣1000人的平均智力將會很逼近全國智力,取樣到5000人後相信幾乎沒有差距,如此符合估計量的不偏性與一致性。

以下圖為例,平均拉回在17632元(此策略為小台),當然樣本數夠的話,平均拉回是愈小愈好,用此數字去做比較會比MDD更能充分代表母體。




在歷史回測模組的拉回測試中可以找到這個畫面,每個投資基準日都有一個拉回權益值(表格第四列),把所有拉回權益值平均起來即可。

拉回測試中能設定拉回臨界值(可自行設定),隨著滑鼠游標移動的淡藍色橫槓代表臨界線(投資基準日的累積損益-臨界值);只要拉回值超過臨界值的點全部列為滅亡(即為圖中的紅色叉叉),會發現到一個現象,通常滅亡都是再破新高那一天開始投資的。

再進一步,把「顯示全部樣本」的勾勾取消掉,則下方的表將只會列出滅亡的投資日,很清楚可以看到如果在2006-07-19開始投資此策略,將會在2007-05-31拉破臨界值而滅亡(圖中的橘色星號,已經低於藍色臨界線了)。



這個圖表可以幫助我們控制風險,如果一個策略的滅亡都是發生在持續往上突破所創的新高,那此屬合理現象,但若是在績效下跌一大段後還繼續發生滅亡的話,代表此策略的風險難以控制,可能就要當成重要警訊了。

以下這張圖是以另一個方式表示同樣的概念,拉回愈大則下面的柱狀圖愈長,在一些回測軟體也能看的到,但策略經理人搭配拉回臨界值,只要拉回大於臨界值,則該投資日的柱狀圖標記為紅色(柱狀圖破黑色臨界線)。



風險值VaR

DrawDown有個缺點,如果策略沒有持續破新高,反而破新低,則策略的拉回全部都會重新刷新,反而沒有參考價值,它的假設是建立在策略有辦法續賺錢的狀況下才能採行的方式,我們不知道策略是否能持續賺錢,也不知道甚麼時候績效會破新低,但我們還有另一種風險衡量的選擇,也就是當代風險管理最知名的VaR(Value at Risk)模型。

VaR是一種區間估計的概念,他注重的是「期末損益」分配的左端虧損範圍。
如下圖所示,此圖直接解讀成,在2012-9-19日投資此策略,則預估期末在22個交易日後(即一個月2012-10-19),累積損益有99%(信心水準)的機會不會低於-84318元,但相對的,有1%的機會將會虧損超過84318元(即左方紅色柱狀圖與右方淡藍色星號)。






筆者在此公布計算方式,VaR的計算法很多種,最常見的有下列三種:
(1)變異數法:最常見的是以常態分配或是t分配作為假設的左尾區間估計。
(2)拔靴法:直接以歷史樣本作排序,好處是不需要經過分配假設。
(3)蒙地卡羅:適合較複雜的分配假設,透過電腦產生分配亂數進行估計。

我們要分析期貨交易策略,績效通常不會是左右對稱的常態分配或t分配,所以(1)不適用,另外(3)蒙地卡羅要進行複雜的假設才有意義(大部分都是客製化的假設,使用者通常也不知道要假設甚麼),因此策略經理人採用的是(2)拔靴法。

上面提到透過樣本排序出柱狀圖產生VaR,首先要了解柱狀圖怎麼產生,以上面的例子-樣本100筆,每筆樣本22個交易日,則會有100筆22天的累積損益。取樣的方式就如同以下排列,以下的取樣區間就是在上圖的淡藍色透明方塊:



要達成以上的取樣,至少要往前取樣121個交易日(取100個22日樣本),在策略經理人中有提供檢查樣本的功能,按下樣本明細,則系統會將所有取樣排序好:



排序好後,如果信心水準是99%,就取此序列的第99個百分位數,(如果信心水準是50%,則取中位數),而基於保守穩健的原則,取出的第99百分位數要經過調整,調整的方法即減去樣本的平均累積損益,就能求得VaR,因此如果樣本是大賺,則VaR調整後也會相對更大,因此只要樣本的波動提高,無論是賺賠,都會導致VaR變大。



而將排序的樣本數列全都減去樣本平均累積損益,即可做出分配的柱狀圖(柱狀圖低於VaR的部分標為紅色),有興趣的人可以一根根算,每一根的長度全部累加起來剛好會是樣本數100。







了解VaR的算法後,交易者可透過策略經理人建構自己的VaR模型,主要透過設定以下參數:

(1)信心水準:調整機率去做預估虧損。
(2)預估交易日:設定距離估計的期末有多長,此設定會影響取樣長度。
(3)樣本數:此設定會影響取樣的筆數,筆數愈小愈敏感,愈大則更具有不偏一致的統計量特性(較穩定)。

VaR是隨著時間進行變動的,每個交易日,往前取樣的樣本區間都會有所差異,因此我們可以對此進行歷史回測。而VaR到底可不可信,也可以利用歷史資料進行回測能知道,我們利用此模型進行歷史回測。



此回測採用滾動樣本區間(Rolling Windows)的方法針對歷史每個交易日都取樣估計出VaR,如果每個期末累積損益低於VaR,則規類於滅亡,通常滅亡的原因在於投資日之後的估計期間發生突然性的大虧損,以此圖的例子,回測的總估計日數有1667天,只有22天滅亡,存活率有98.68%,非常接近99%,因此利用此設定的VaR模型可以了解策略的風險是否容易被控制住。




而此圖的策略有太多突然性的大虧損,因此回測出的存活率89.91%離99%差太多,代表策略的風險較不容易被控制住。





介紹到此我們整理並比較損益拉回跟VaR模型的優缺點:

DrawDownVaR
優點能考量估計期中的最低損益。
能觀察一段時間連續虧損狀況。
著重在一段時間後的期末虧損。
調整損益至中立。
缺點策略必須能持續獲利才有參考性。
較容易透過排列組合最佳化。
預估期中的最低損益會被忽略
相同點皆會因為波動度增加而變大。



尾端期望損失ETL
尾端期望損失(Expected Tailed Loss)又稱作CVaR(Conditional VaR)是個點估計法主要用來估計極端虧損發生時平均將會損失多少。譬如我們想要知道那1%的極端損失,在信心水準99%的VaR只會告訴有1%的損失會低於某個範圍以外(VaR屬於區間估計),然而ETL可以計算出發生這1%的平均期望值是多少。


ETL的計算不難,傳統假設若績效為常態分佈的話,針對分配做期望值的積分即可取得,而策略經理人處理非常態分佈的狀況依舊是採用拔靴法,直接取歷史資料最大虧損的1%做平均,對於估計極端損失的期望值是個不偏一致的統計量,代表給的樣本愈多,估計值會愈往母體真值收斂。


策略經理人在策略的逐日與逐筆皆有計算ETL,採用拔靴法計算ETL需要較大的資料才較有意義,這邊建議最短五年以上的區間以及最少500筆交易:




上圖是逐筆交易的的ETL就經濟意義上代表1%的極端交易發生時,平均一筆將虧損-87625元。




而此圖則是逐日交易的ETL就經濟意義解釋為1%的極端虧損日平均一天會虧損-87625元。
ETL在策略經理人中資金控管還占了很重要的腳色,在下一回的雙周報將會介紹資金控管的概念、方法、測試以及應用。



評分

參與人數 2金錢 +7 收起 理由
googleandy + 2 按一個讚
kilroy + 5 策略經理人作者這系列文章超讚~.

查看全部評分

發表於 13-3-2 10:24 | 顯示全部樓層
本帖最後由 0070007 於 13-3-2 11:02 編輯

很有學問,也是很有邏輯性的好文章,
我看了很多遍,但心中有疑問,自己找不到答案,也不太敢發問?
因為對這種文章有質疑?是否代表了自己有先天性的程式偏差感"與自我感覺良好的"自大"感?
但是,疑問不解?就有如魚刺在喉,不吐不快,還是要試試提出問一問?
1,幾乎所有接觸過程式交易的交易者都會有一句話過去不能代表未來
  也就是說過去的歷史未來的行情是不能畫上等號,
  既然有這個前提
  那此文中的(1)不偏性:樣本夠大的話估計出的統計量要與母體相等。
是否就會有”偏差”?
  既然”過去的歷史”不能等於”將來的行情”那就表示”過去”與”未來”是會有偏差的?
  那,1-a,過去的樣本越大?應該所產生的”偏差”也應該會越大越大?
(一個月之前我們可以很明確的知道沒有,319,沒有金融風暴,沒有總統就職,沒有飛彈危機,沒有任何的”巨變,但是日子久遠了,這些問題就都一一的出現了,
未來的時間越短,會出現巨變的機會也應該會相對的越少?
時間越長?問題就會越多?
將未來定為”永恆”?那未來的巨變也就會有”永恆”的機會?)
  我的思路是:
我們操作是在當下,所最該關注的是當下的”那一筆操作”而不是永恆的未來”?
用”最短暫的有效值”當做”過去的歷史資料”與最近的一筆操作當作是”未來”
是否會比較接近”現實?
舉例:我是用一分線作當冲的期貨操作者,
     那我用”前一週的K線現像”為操作發現的基礎,去決定”下單的訊號”(實際操作上我是以一天的K線為最長的參考值)
     而用前一週一分鐘K線的平均震幅值*0.5~0.618去作”停利的數據,(再配合"量能"作調整)
     用前一週一分鐘K線的”平均回測值*1~1.191去作”停損的數據”(已能在不會被執行的最大值為目標)
用這樣的邏輯去在下周一的盤勢中,去找尋操作的機會,
是否應該會比”用過去10年的資料”在”永恆的未來”中去尋找操作的機會來的”現實”?
其他此文中的每一條的(1)不偏性:(2)一致性:(3)有效性:(4)充分性:
在相同的邏輯下就都會出現相同的”不相容的反應”
就先用一條作樣本就來找尋我自己的”偏差”?
我沒有唸過統計學,所以不懂統計學的基本概念”
但我操作了10多年,我有我自己領悟出來的”自己的計算方法”
在這兩者有矛盾時,我理所當然的要認定是我自己的”領悟”有問題,
但是,我自己的領悟卻讓我10多年來在操作上可以做到”不輸”(當然也贏不多,)
這中間當然會有問題存在?
但問題在那裡?我掉入了”理不情,思還亂”的思想漩渦中?
有人能指點我一條”明路”嗎?謝謝!
發表於 13-3-2 11:36 | 顯示全部樓層
文章內也說到:
筆者一言以蔽之的譬喻即是「以管窺天」。歷史的樣本代表「管」;母體是未來到永久的真值代表「天」。以過去的資料去取樣,經過處理後用來預估將來實戰時的數值,將此比喻為估計,
過去的”,是已知的數據,
而母體是未來到永久的真值代表「天」,那這則是無限大的值
用有限的過去,要去預估”---無限大的未來?
還真是以管窺天”?
在實際的操作上,我們是否可以將縮小到最接近的那一次操作”?
我們的重點是當下的操作要能得勝獲利
而不是未來的操作夢”?
以一分鐘為操作時序的操作者為例,
就已180分鐘的k線現像為找尋操作訊號的寬度,
以一週的一分鐘平均震幅*0.386~0.618,為停利的取捨範圍,
以一週的一分鐘平均回測*1.00~1.191,為停損的取捨範圍,
以其他時序為操作規範的操作者,以此類推,
但標的物,是距離最近的可能下單操作點,
這樣就是以已知的經過自己測試過後能認定的有效範圍的計算值
去餵給最近一次的可能出現的下單位置當作訊號值,
未知縮小在最小範圍內,這樣的思想邏輯,是否有成立的可能性?
這樣的"估計"結果是否會較為"實際"?
哈!還是在同一個漩渦中打轉?
發表於 13-3-2 11:54 | 顯示全部樓層
0070007 發表於 13-3-2 11:36
文章內也說到:筆者一言以蔽之的譬喻即是「以管窺天」。歷史的樣本代表「管」;母體是未來到永久的真值代表 ...

請問持倉時間最大限制幾根k內?
發表於 13-3-2 12:02 | 顯示全部樓層
本帖最後由 0070007 於 13-3-2 12:06 編輯
sbox1024 發表於 13-3-2 11:54
請問持倉時間最大限制幾根k內?


只要不"隔日"就行,
以我個人的觀察,這些問題的癥結還是在於
K線中的分界線,(第一天的收盤到第2天開盤的自然時間有19小時)
60分線的小時間隔線在前一小時的結束到後一個小時的開始這中間的自然時間是”0”
”0””19小時之間是不均等的,
而這沒有開盤的19小時在歷史資料中是已知的”,而在未出現的K線右邊是未知的
只要有涵蓋這未知19小時的自然時間的K,就不能視為在操作上有均衡統計條件的資料,
所以我個人就放棄留倉的操作
而只要沒有包含這"未知19小時的K線間隔"的,都在持倉的允許範圍之內,
"0"跟"0"的已知與未知是沒有差別的,
而"19"與"19"的"已知"與"未知"這差別可就大了?
發表於 13-3-2 12:15 | 顯示全部樓層
0070007 發表於 13-3-2 12:02
只要不"隔日"就行,
以我個人的觀察,這些問題的癥結還是在於日K線中的分界線,(第一天的收盤到第2天開盤的 ...

請問最有效率的持倉時間?
 樓主| 發表於 13-3-2 12:17 | 顯示全部樓層
0070007 發表於 13-3-2 10:24
很有學問,也是很有邏輯性的好文章,我看了很多遍,但心中有疑問,自己找不到答案,也不太敢發問?因為對這種文章 ...

這篇文章的重點是在談一般人將統計的觀念用在交易上面,但是卻沒正確地使用統計的觀念與方法,他舉的是一些一般人最容易犯的錯誤。其實程式交易有很多的陷阱,沒有拿錢下去試還真的不會知道對錯。

發表於 13-3-2 12:22 | 顯示全部樓層
sbox1024 發表於 13-3-2 12:15
請問最有效率的持倉時間?

我目前是採用"面的下單法"一單已10口為極限,一分鐘一口為原則,
所以持倉時間是以"下單後的獲利厚度"為計算的基準,
用經驗值的話,應該是15分鐘~30分鐘,最長不超過45分鐘.
發表於 13-3-2 12:26 | 顯示全部樓層
comewish 發表於 13-3-2 12:17
這篇文章的重點是在談一般人將統計的觀念用在交易上面,但是卻沒正確地使用統計的觀念與方法,他舉的是一 ...

謝謝您的指導,我再仔細的多看幾遍,已能在正確的了解筆者的用意,謝謝您!
發表於 13-3-2 12:30 | 顯示全部樓層
0070007 發表於 13-3-2 12:22
我目前是採用"面的下單法"一單已10口為極限,一分鐘一口為原則,
所以持倉時間是以"下單後的獲利厚度"為計 ...

低標:15~30       中標:45            高標:90

發表於 13-4-18 15:12 | 顯示全部樓層
本帖最後由 rical 於 13-4-18 15:20 編輯
0070007 發表於 13-3-2 10:24
很有學問,也是很有邏輯性的好文章,我看了很多遍,但心中有疑問,自己找不到答案,也不太敢發問?因為對這種文章 ...

作者講的是風險 不是績效
風險是有一致性的 而且波動這種東西本身是會逼近的
但是績效這回事卻不一樣 回測不能代表未來

您的焦點一直放在訊號 跟操作上 看來並沒不是在講風險 而是在講績效 跟這篇文討論的東西有差距

一般人對風險的定義只是"容易賠錢"而已 但那並不是對的
發表於 13-4-19 07:05 | 顯示全部樓層
rical 發表於 13-4-18 15:12
作者講的是風險 不是績效
風險是有一致性的 而且波動這種東西本身是會逼近的
但是績效這回事卻不一樣 回測 ...

您的焦點一直放在訊號 跟操作上 看來並沒不是在講風險 而是在講績效 跟這篇文討論的東西有差距

是嗎?這可能是個人的思維方式有差異?
我個人以為我自己一切都是以"風險"為出發點?
最大的風險就是不=0的那19小時,
要去避開那不=0的19小時,就是在試圖避開最大的風險?
發表於 18-11-22 23:16 | 顯示全部樓層
還好我還沒開始程式交易就已經先看到C大大的溫馨轉貼提示了,肛溫
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

手機版|Archiver|站長信箱|廣告洽詢|COCO研究院

GMT+8, 24-11-26 12:18

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回復 返回頂部 返回列表
理財討論網站 |