用户如何自行构造有复杂计算的feature


(matrixreloaded) #1

现在的因子都是进行同位计算的,但是比如利用原始feature统计一段时间内的统计值,比如说求加和,最大最小值以后求比值这种复杂些的应该如何操作呢?一些研报中很多因子都是自制的,常规因子里面没有。敢问版主这个现阶段可以实现么?如果可以的话能不能举个例子?跪谢。@jLiang @wallstreetcat


(神龙斗士) #2

我们的基础因子库是提供历史回溯的。

所以,您可以用表达式(支持常见的多项式运算符号、max、min、log等等,我们将尽快提供一个详尽的文档),做出各种衍生因子:如下例子是 一个过去5日最高价 / 最低价

max(high_0, max(high_1, max(high_2, max(high_3, high_4)))) / min(low_0, min(low_1, min(low_2, min(low_3, low_4))))


(matrixreloaded) #3

@jliang多谢回复。

  1. 那像np.sum, np.mean这些是不是不支持了?
  2. max(high_0, max(high_1, max(high_2, max(high_3, high_4)))) / min(low_0, min(low_1, min(low_2, min(low_3, low_4))))
    是不是最近五天的是从high_1到high_5,因为如果从high_0会有未来数据?
  3. 写成这样可以么?
    max(high_5,high_4,high_3,high_2,high_1)

多谢回答


(神龙斗士) #4
  1. 目前还不支持 sum,mean等函数,可以用 (close_0 + close_2 + close_2) / 3 这样的表达式来实现
  2. 下标从0开始的,xxx_0 是 计算时能看到的最后一根bar的数据。比如,现在是晚上 20:45,close_0 表示的是今天收盘价。所以不会用到未来数据。
  3. max(high_5,high_4,high_3,high_2,high_1) 这个是可以的