BigQuant使用文档

AI StockRanker耍单票策略

由qxiao创建,最终由qxiao 被浏览 21 用户

导语

在之前的版本里,很多用户喜欢开发每日换仓、仓位集中度高的AI StockRanker策略,无需编写sql代码,因此本教程给出这样的一个策略实现,方便用户在此基础上根据自己需求调整策略。

本策略绩效

本策略年化收益74%,夏普比率2.5,最大回撤不到-8.5%,整体绩效不错,详细代码见文末,可直接克隆,查看源码。

\

本策略示例特点

每日轮动调仓

之前的模版,以线性策略为主,换仓都是定期轮动,比如每5天调仓一次,这样会出现这样的问题:比如今天提交的策略,得5天后才有信号,模拟交易体验不好。

每日调仓的逻辑在m14 BigTrader模块的主函数中编码实现,大家可以直接使用这个模块。从下图我们清晰看出,每天买入一部分票,卖出一部分票,天天如此,这样也能更好地使用到模型的预测选股能力。


无需sql,直接表达式函数构建因子

本例,无需编写sql表达式,更为简单,排查错误也更为直接。

如上图所示,直接输入因子即可,大大降低门槛,要重命名因子也比较方便。


标注更简单

我们直接使用m4\m5模块来抽取训练集数据,具体标注逻辑如下:


模块交互式开发

每个模块的输入数据和输出数据都可以通过代码查询获取,以便于对每一步了如指掌。


Python函数灵活使用

本例介绍了Python函数这个模块的使用,可实现复杂的代码需求,本例训练集数据不需要数据过滤相关的字段。


过滤数据更直观

直接使用因子字段和逻辑操作符就能实现数据过滤,过滤掉不想要的股票,更为直观。


数据合并更为直观

直接使用m8数据连接模块,即能实现两个pandas dataframe合并,比如m8模块就是把训练集的标注和训练集的特征按 instrument\date取交集合并,合并过程简单直观。


仓位集中,收益炸裂

可直接修改BigTrader模块初始化函数里的持股数量和持仓天数,实现更高收益(注意:但风险也更大)


好了,今天的介绍就到这里,大家使用有什么反馈和建议直接评论区见哈~

克隆代码

https://bigquant.com/codesharev3/af50a0c5-3fa9-4f98-8837-e17895af0d04


\

标签

夏普比率
{link}