Giao dịch Tài chính với Python
Chelsea Yang
Data Science Instructor
Drawdown là mức giảm từ đỉnh xuống đáy trong một giai đoạn nhất định của tài sản hoặc tài khoản giao dịch.

$\text{Max Drawdown} = (V_p - V_l)/ V_l $
$V_p$: Giá trị đỉnh trước đợt giảm lớn nhất
$V_l$: Giá trị đáy trước khi tạo đỉnh mới

Max drawdown
= (Giá trị điểm A - giá trị điểm D)/Giá trị điểm A = (1700 - 800)/1700 = 53%
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
CALMAR: CALifornia Managed Accounts Report
$ Calmar = CAGR / \text{Max Drawdown} $
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
resInfo = bt_result.stats
# Get the Calmar ratio
calmar = resInfo.loc['calmar']
print('Calmar Ratio: %.2f'% calmar)
Calmar Ratio: 4.14
Giao dịch Tài chính với Python