quantile_turnover = pd.concat([alphalens.performance.quantile_turnover(quantile_factor, q, turnover_period...alphalens.plotting.plot_top_bottom_quantile_turnover(quantile_turnover, turnover_period) ? ...factor_autocorrelation = alphalens.performance.factor_rank_autocorrelation(factor_data, period=1) ?...alphalens.plotting.plot_factor_rank_auto_correlation(factor_autocorrelation) ? 当然,同样的,也有一个整个的函数。...alphalens.tears.create_turnover_tear_sheet(factor_data)
ic = alphalens.performance.fiactor_nformation_coefficient(factor_data) ? ...def plot_ic_ts(ic, ax=None): alphalens.plotting.plot_ic_ts(ic) ?...def plot_ic_qq(ic, theoretical_dist=stats.norm, ax=None): alphalens.plotting.plot_ic_qq(ic) ?...alphalens.plotting.plot_monthly_ic_heatmap(mean_monthly_ic) ?...和return analysis一样,也有一个所以一起生成的语句: alphalens.tears.create_information_tear_sheet(factor_data)
alphalens是quantopian下的三大quant利器这里,剩下两个是大名鼎鼎的zipline和pyfolio。...alphalens是用于因子回测的,使用很方便,但是,最大的一个特点就是,函数的名称真是长啊! 安装就不说了,似乎pip就可以了。 万事开头难,中间也难,结尾更难。很多事确实是这样。...alphalens第一个难点就是把要测试的因子相关的数据整理成alphalens需要的那样。我们从alphalens的一个数据标准化函数说起。...alphalens.get_clean_factor_and_forward_returns 函数定义如下: def get_clean_factor_and_forward_returns(factor
广告:本人的单因子测试视频教程 https://study.163.com/course/introduction/1005568012.htm 今天,我们讲alphalens下一个重要的因子测试的输出部分...Information Analysis中,alphalens提供给我们的信息大概就是这些,但是其实由于Information真的很重要,所以我们往往会自己加一些别的图来观察signal是否足够优秀,譬如
对于单因子测试,quantopian有一个很好的开源的python工具,就是alphalens,当然,如果我们想做一个让自己满意的单因子回测平台的话,必然是需要对原生的alphalens做一些修改的。...这一部分,我们先将我们的数据处理成alphalens可以接受的数据格式,然后做一个简单的测试,看看一切是否都正常。...1.数据处理 如果我们想使用alphalens,那么就要遵守alphalens的规矩。而alphalens的规矩,就是我们传入的数据要符合alphalens的要求。...( \ factor_df, price_df, quantiles=5, groupby=ind_dict ) # 利用alphalens自带的工具,生成alphalens可以接受的数据...具体,每一个部分,factor_df,price_df的具体结构是怎么样的,可以查看之前笔者关于alphalens的教程。
上面的按日期算均值的mean_ret有一个美丽的用法,就是结合alphalens.plotting.plot_quantile_returns_violin绘制提琴图。...alphalens.plotting.plot_quantile_returns_violin(mean_return_by_q_daily) ? ...alphalens.plotting.plot_cumulative_returns(ls_factor_returns[1]) alphalens.plotting.plot_cumulative_returns...7.整个函数 以上所有图片,我们可以用以下两句话来解决,这是alphalens里面常有的特性。...alphalens.tears.create_returns_tear_sheet(factor_data) plt.show()
而alphalens也正是围绕着这个展开的。 今天我们先来分析一下return这一部分,alphalens给我们提供了哪些视角,以及含义是什么。 ...在notebook里面,我们只需要运行下面这一句,alphalens就会把所有的关于return的分析展示出来: alphalens.tears.create_returns_tear_sheet(factor_data...具体怎么计算,后续如果分析源码的话,可以接触到,比较alphalens只是一个工具,首先要会使用,然后想着改进提高。毕竟学习的过程就是守、破、离。...注意的是,这里并不是一个zero-investment的组合(看alphalens的说明,是这样的)。...而事实上,zero-investment的组合也是一个很重要的指标,后期精益alphalens的时候,我们可以自己增加。 ?
广告:本人的单因子测试视频教程 https://study.163.com/course/introduction/1005568012.htm
相比于alphalens,pyfolio使用起来要简单很多。安装与alphalens一样,直接pip就可以了。
- 策略信息比率:月收益率/月标准差 - 其他:组合夏普比率、累计年化收益率等 本分组模块参考Alphalens的思路,引用了turnover模块等函数,详情请查阅Alphalens相关资料。
笔者亲自尝试了一下,发现确实不错,但是也会有很多问题,譬如,一些第三方包(例如statsmodels、alphalens等)的运算要求数据就是float64类型的,这使得我们很尴尬呀。 ...5.注意: 当然,笔者这里要说明的是,如果你把上面这样做过处理的dataframe直接放进alphalens或者用别的一些数学性很强的包进行运算,比如用statismodules进行回归,就会有错误
pricing = pricing.pivot(index='date', columns='ticker', values='adj_close') pricing 10 转为Dataframe Alphalens...在使用许多Alphalens函数之前,我们需要对齐索引并将时间转换为unix时间戳。...import alphalens as al factor_data = {} skipped_sentiments = [] for sentiment in sentiments: cs_df
所有的测试都基于开源因子测试工具AlphaLens。...图5 SENTI_MEAN_1D的因子值分布(偏度=0.05) Alphalens中对因子的收益率测试主要分为两部分,首先是计算因子的收益指标(如表格3中Ann.alpha及beta)。
接着调用 Quantopian 里的因子分析包 Alphalens,根据分位段数(2 段)来对情绪因子分成两类,并计算 1 天、5 天、10 天的收益。...总结一下: 要点 交易策略在流水线中制定,用 alphalens 里面的工具来验证交易策略,比如选取的因子是否能解释收益。
2、新闻情绪因子测试结果 基于以上不同的选择,我们做了以下详细的测试,我们所有的因子测试都是采用的开源因子测试工具Alphalens。
Quantopian :https://www.quantopian.com/posts 比较知名的平台,旗下有量化三大件:pyFolio,zipline,alphalens Quantstart:https
下帖讲用于因子分析的 Alphalens。Stay Tuned! ?
领取专属 10元无门槛券
手把手带您无忧上云