Max Drawdown (MDD) 最大回撤

在程式交易中有許多數值來評價一個策略的特性或表現,這篇介紹其中一個重要的數值 MDD, 也稱作 “最大回撤" 或 “最大回檔" ,更嚴謹的策略品質分析中不只是看 MDD,也可能會看到2nd DD、3rd DD。發生的時間也是有相當的參考價值。這篇在介紹 MDD 定義與在 R 的應用。

Drawdown ( DD )

DD 又稱 “回撤" 或 “回檔" 也就如中文的字面意思,就是策略的 “累計獲利" 的損失。當交易出現為負的報酬,就會被稱為 DD ,DD 是一個連續虧損的概念,連續為負報酬會被紀錄為一筆 DD,而在一定期間內,如果策略的累計獲利,未形成一個損失的 peak 也會被紀錄為 DD。如下圖,紅色線段為一個 DD,而期間雖然有正報酬,但未形成一個損失的 peak 。而當第 101 筆交易打破損失形成一個 peak 才記錄成一個 DD。dd_2

Max Drawdown (MDD)

延續 DD 的概念,MDD 就是最大的一筆連續虧損,也就是 DD 中的最大值。為什麼對一個策略而言 MDD 如此重要呢? 因為一個策略不可能永遠是賺錢的狀況,MDD 則是讓我們了解到策略歷史最大的連續虧損,透過 MDD 來評量一個策略在目前市場表現的狀況,若出現連續虧損已經超過歷史的 MDD 則要考慮,這個策略在市場是否有效,或是因為事件所導致的正常狀況。同時的 MDD 也可以做為需要多少超額保證金的依據。

R 套件-fTrading

在這裡介紹 R 套件-fTrading,fTrading 提供簡單計算 MDD 的函數,只需要給函數累計獲利就可以計算 MDD。如下的結果,我們會得到 MDD 的值,第幾筆開始損失,第幾筆結束。

data(EuStockMarkets)
dax = log(EuStockMarkets[, "DAX"])
mdd = maxDrawDown(dax)
mdd

$maxdrawdown
[1] 0.256471
$from
[1] 236
$to
[1] 331

結論

MDD 作為評測策略的標準之一,但不盡然 MDD 越小就越好,投資人在選擇投資策略時,應該將 MDD 視為該策略的風險,就自己能力可以承擔的風險下,選擇最好的投資策略。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s