历史文档

【历史文档】策略-数据标注

由undefined创建,最终由small_q 被浏览 2726 用户

更新

本文内容对应旧版平台与旧版资源,其内容不再适合最新版平台,请查看新版平台的使用说明

新版量化开发IDE(AIStudio):

https://bigquant.com/wiki/doc/aistudio-aiide-NzAjgKapzW

新版模版策略:

https://bigquant.com/wiki/doc/demos-ecdRvuM1TU

新版数据平台:

https://bigquant.com/data/home

https://bigquant.com/wiki/doc/dai-PLSbc1SbZX

新版表达式算子:

https://bigquant.com/wiki/doc/dai-sql-Rceb2JQBdS

新版因子平台:

https://bigquant.com/wiki/doc/bigalpha-EOVmVtJMS5

\

导语

在AI量化策略开发第一步中,我们已经完成了训练集和预测集数据范围的设置。接下来在第二步中,我们来学习如何使用数据标注模块来设置我们的训练目标。

数据标注是有监督学习算法的关键,标注是否能够准确描述问题的目标直接影响模型的有效性。


{w:100}{w:100}{w:100}{w:100}{w:100}{w:100}

数据标注

添加模块

第一步:在模块列表的数据标注下找到自动标注(股票)模块,并拖入画布中。


{w:100}{w:100}{w:100}{w:100}{w:100}{w:100}

连接模块

第二步:将训练集的证券代码列表模块的输出端连接至自动标注(股票)模块输入端。

这里提示一下,所有的模块上边界的  为数据连接点,下边界的  为数据输出连接点。


{w:100}{w:100}{w:100}{w:100}

参数设置

第三步:设置模块参数。点击选中该模块,在右侧属性栏可设置参数。

{w:100}{w:100}{w:100}{w:100}{w:100}{w:100}

\

  • 标注表达式:单击标注表达式文本框右上角的 图标,可打开独立的表达式编辑窗口,在编辑窗口内,可根据自己关注的指标条件组合。表达式的类型及语法学习可见站内文档-表达式引擎。 \n 本例中计算未来五日收益率,去掉1%以下和99%以上的极值数据,并离散为20档分数,作为评估股票好坏的标准。同时对于一字板股票当日数据进行了剔除过滤。模块运行后会得到的一个DataFrame表,其中有一个标注列(默认为label列),代表的是每只股票未来五日收益率这个目标的得分,得分越高表示目标值未来五日收益率越大。
  • 开始日期和结束日期:这里两个日期节点可不填,直接继承证券代码列表模块的时间范围
  • 基准指数:指数的代码可查阅文档-指数成分instrument字段的结果,获取需要的基准指数代码。

小结:至此,确定目标的数据标注步骤就完成了。想知道如何实现更加复杂的标注的小伙伴可以移步学习自定义标注 。下一步就是AI模型构建中非常关键的步骤:怎么选择因子组合,这直接关系到一个策略模型的性能质量。

标签

AI量化策略特征工程
评论
  • 五日后的收盘价格/明天的开盘价格>99%就是涨了呀,为什么要过滤掉? \
  • 因为在训练过程中这些极值可能会极大影响到训练效果,而且这个99%指的是涨幅前1%和后1%的股票
  • “因为在训练过程中这些极值可能会极大影响到训练效果,而且这个99%指的是涨幅前1%和后1%的股票”,有没有保留极值的训练方法,主观去掉极值,是不是模型失真的开始?
  • 在极值上训练的模型只会有overfitting的风险
  • # 过滤掉一字涨停的情况 (设置label为NaN,在后续处理和训练中会忽略NaN的label) where(shift(high, -1) == shift(low, -1), NaN, label) 为什么这段代码的含义是过滤掉一字涨停,一字跌停或者全天股价无变化也是最高价等于最低价。