用户自定义函数衍生特征抽取:示例中部分代码的使用位置问题


(jijingling777) #1

示例中的下列代码(自定义因子和定义函数)应该放在哪个模块里呢,写在哪里?

#自定义的因子,这里是一个函数
timex(close_0,10)"""
)

定义函数
def timex(df,close_0,y):
    df['close_0']= df['close_0']*y
    return df['close_0']

m4_user_functions_bigquant_run = {
    'timex': timex
}






***********************************************************************
用户自定义函数衍生特征抽取:
示例代码
#使用M.instruments功能模块获取股票代码和起止日期,相当于上例代码中定义的start_date ,end_date和instruments。
m1 = M.instruments.v2(
    start_date='2015-01-01',
    end_date='2017-01-01',
    market='CN_STOCK_A',
    instrument_list='',
    max_count=0
)
#使用M.input_features功能模块指定特征因子,相当于上例代码中定义的features列表
m3 = M.input_features.v1(
    features="""

多个特征,每行一个,可以包含基础特征和衍生特征
return_0
close_0
"""
)
m2 = M.general_feature_extractor.v6(
    instruments=m1.data,
    features=m3.data,
    start_date='2016-01-01',
    end_date='2017-01-01',
    before_start_days=0
)
#使用M.input_features功能模块自定义因子
m5 = M.input_features.v1(
    features_ds=m3.data,
    features="""
#自定义的因子,这里是一个函数
timex(close_0,10)"""
)

定义函数
def timex(df,close_0,y):
    df['close_0']= df['close_0']*y
    return df['close_0']

m4_user_functions_bigquant_run = {
    'timex': timex
}

m4 = M.derived_feature_extractor.v3(
    input_data=m2.data,
    features=m5.data,
    date_col='date',
    instrument_col='instrument',
    user_functions=m4_user_functions_bigquant_run
)

(达达) #2

建议自定义函数使用自定义模块计算处理,衍生特征抽取模块通常用来计算表达式因子


(jijingling777) #3

没理解您说的意思能在具体详细点解答一下吗?我就是想了解这个示例中的代码具体是怎么在可视化策略里实现出来的。
另外自定义模块怎么使用?


(大胡子) #4

参看这篇帖子,就知道了。
主要是看下 衍生特征抽取里的参数是怎样填写的。