回撤

Python 中的金融交易

Chelsea Yang

Data Science Instructor

什么是回撤?

回撤是资产或账户在特定时期内从峰值到谷值的下跌幅度。

回撤图

Python 中的金融交易

最大回撤

$\text{最大回撤} = (V_p - V_l)/ V_l $

$V_p$:最大下跌前的峰值

$V_l$:创出新高前的最低值

最大回撤示例

最大回撤

=(A 点数值 − D 点数值)/ A 点数值 =(1700 − 800)/ 1700 = 53%

Python 中的金融交易

从回测统计获取回撤指标

resInfo = bt_result.stats

# Get the max drawdown max_drawdown = resInfo.loc['max_drawdown'] print('Maximum drawdown: %.2f'% max_drawdown)
# Get the average drawdown avg_drawdown = resInfo.loc['avg_drawdown'] print('Average drawdown: %.2f'% avg_drawdown)
# Get the average drawdown days avg_drawdown_days = resInfo.loc['avg_drawdown_days'] print('Average drawdown days: %.0f'% avg_drawdown_days)
Maximum drawdown: -0.59
Average drawdown: -0.11
Average drawdown days: 22
Python 中的金融交易

Calmar 比率

CALMAR:California Managed Accounts Report(加州托管账户报告)

 

$ Calmar = CAGR / \text{最大回撤} $

  • Calmar 越高,风险调整后表现越好。
  • 一般认为 Calmar > 3 表现优秀。
Python 中的金融交易

手动计算 Calmar 比率

resInfo = bt_result.stats
# Get the CAGR
cagr = resInfo.loc['cagr']
# Get the max drawdown
max_drawdown = resInfo.loc['max_drawdown']

# Calculate Calmar ratio mannually calmar_calc = cagr / max_drawdown * (-1) print('Calmar Ratio calculated: %.2f'% calmar_calc)
Calmar Ratio calculated: 4.14
Python 中的金融交易

从回测统计获取 Calmar 比率

resInfo = bt_result.stats

# Get the Calmar ratio
calmar = resInfo.loc['calmar']
print('Calmar Ratio: %.2f'% calmar)
Calmar Ratio: 4.14
Python 中的金融交易

Passons à la pratique !

Python 中的金融交易

Preparing Video For Download...