求解年化收益率换手率最大回撤的python代码
计算年化收益率的Python代码:
import numpy as np
def annual_return(pnl, trading_days):
total_return = np.prod(1 + pnl)
annual_return = total_return**(trading_days/len(pnl)) - 1
return annual_return
其中,pnl为一段时间内的收益率序列,trading_days为该时间段内的交易天数。
计算换手率的Python代码:
def turnover(trades, volume):
total_volume = np.sum(volume)
total_turnover = np.sum(volume * trades)
turnover_rate = total_turnover / total_volume
return turnover_rate
其中,trades为一段时间内的交易次数序列,volume为每次交易的成交量序列。
计算最大回撤的Python代码:
def max_drawdown(pnl):
peak = pnl[0]
trough = pnl[0]
max_dd = 0
for i in range(1, len(pnl)):
if pnl[i] > peak:
peak = pnl[i]
trough = pnl[i]
elif pnl[i] < trough:
trough = pnl[i]
dd = (peak - trough) / peak
if dd > max_dd:
max_dd = dd
return max_dd
其中,pnl为一段时间内的收益率序列。
原文地址: https://www.cveoy.top/t/topic/pe5 著作权归作者所有。请勿转载和采集!