分享

金融量化之绩效度量

 AI量化实验室 2023-10-12 发布于北京

一个量化系统有一个很重要的模块,就是如何衡量一个策略的绩效,主要是风险收益的量化度量。

这里介绍quantopian,这其实是国内quant平台的鼻祖了,它的回测引擎是zipline,也是开源的,其中有一个开源的度量模块是empyrical。

https://github.com/quantopian/empyrical

安装同样很简单:

pip install empyrical

针对交易收益率的时间序列来计算,收益率之于benchmark而言就是close的pct_change(),也就是日变化率;如果是组合的话,那就是capital组合的总市值的日变化率为单日简单收益率


from empyrical import stats

class Performance(object):
def __init__(self):
pass
   def calc(self,df):
df['cum_returns'] =stats.cum_returns(df['returns'])
self.peroid_return = df['cum_returns'][-1]
self.trading_days = len(df) #交易天数
       # 波动率
       self.volatility = stats.annual_volatility(df['returns'])

# 夏普比率
       self.sharpe = stats.sharpe_ratio(df['returns'])
# 最大回撤
       self.max_drawdown = stats.max_drawdown(df['returns'].values)

print(df)
print('收益率',self.peroid_return)
print('交易天数',self.trading_days)
print('波动率',self.volatility)
print('夏普比',self.sharpe)
print('最大回撤',self.max_drawdown)

波动率就是收益率序列的方差,衡量波动性也就是风险。

夏普比是单风险的超额收益。

关于作者:魏佳斌,互联网产品/技术总监,北京大学光华管理学院(MBA),特许金融分析师(CFA),资深产品经理/码农。偏爱python,深度关注互联网趋势,人工智能,AI金融量化。致力于使用最前沿的认知技术去理解这个复杂的世界。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多