复制链接
克隆策略
In [1]:
def timex(df,s,x):
    return s * x


m2_user_functions_bigquant_run = {
    'timex' : timex
}
# isZhangting=where((return_0 > 1.0)&(close_0==high_0),1,0)
# ztnum=group_sum(date,isZhangting)
# firstIndustry=group_sum(industry_sw_level1_0,isZhangting)
# secondIndustry=group_sum(industry_sw_level2_0,isZhangting)
# industry1Rank=rank(firstIndustry)
# industry2Rank=rank(secondIndustry)
m1 = M.input_features.v1(
    features="""
# #号开始的表示注释,注释需单独一行
# 多个特征,每行一个,可以包含基础特征和衍生特征,特征须为本平台特征
ts_min(amount_0,20)/mean(amount_0,20)
rank_swing_volatility_5_0
rank(mean(mf_net_amount_xl_0,5))/rank(mean(mf_net_amount_xl_0,20))
rank(sum(high_0/close_0,20))/rank(sum(close_0/low_0,10))
mean(mf_net_amount_m_0,10)/mean(mf_net_amount_m_0,20)
rank(mean(amount_0/deal_number_0,5))/rank(mean(amount_0/deal_number_0,20))
rank(mean(mf_net_amount_s_0,5))/rank(mean(mf_net_amount_s_0,20))
rank(mean(mf_net_amount_m_0,5))/rank(mean(mf_net_amount_m_0,10))
rank(mean(mf_net_amount_l_0,5))/rank(mean(mf_net_amount_l_0,10))
turn_0
avg_turn_3
"""
)

m4 = M.instruments.v2(
    start_date='2022-04-25',
    end_date='2022-05-06',
    market='CN_STOCK_A',
    instrument_list='',
    max_count=0
)

m3 = M.general_feature_extractor.v7(
    instruments=m4.data,
    features=m1.data,
    start_date='',
    end_date='',
    before_start_days=90
)

m2 = M.derived_feature_extractor.v3(
    input_data=m3.data,
    features=m1.data,
    date_col='date',
    instrument_col='instrument',
    drop_na=False,
    remove_extra_columns=False,
    user_functions=m2_user_functions_bigquant_run
)
m2.data.read()
Out[1]:
amount_0 avg_turn_3 close_0 date deal_number_0 high_0 instrument low_0 mf_net_amount_l_0 mf_net_amount_m_0 ... rank_swing_volatility_5_0 turn_0 ts_min(amount_0,20)/mean(amount_0,20) rank(mean(mf_net_amount_xl_0,5))/rank(mean(mf_net_amount_xl_0,20)) rank(sum(high_0/close_0,20))/rank(sum(close_0/low_0,10)) mean(mf_net_amount_m_0,10)/mean(mf_net_amount_m_0,20) rank(mean(amount_0/deal_number_0,5))/rank(mean(amount_0/deal_number_0,20)) rank(mean(mf_net_amount_s_0,5))/rank(mean(mf_net_amount_s_0,20)) rank(mean(mf_net_amount_m_0,5))/rank(mean(mf_net_amount_m_0,10)) rank(mean(mf_net_amount_l_0,5))/rank(mean(mf_net_amount_l_0,10))
0 1.851999e+09 0.834924 1885.885132 2022-01-25 84865 1911.627197 000001.SZA 1881.408203 27914192.0 -79350432.0 ... 0.605207 0.563381 NaN NaN NaN NaN NaN NaN NaN NaN
1 1.646385e+09 0.571314 1863.500732 2022-01-26 82553 1913.865601 000001.SZA 1851.189331 -237880432.0 62080272.0 ... 0.594324 0.507569 NaN NaN NaN NaN NaN NaN NaN NaN
2 1.677261e+09 0.512435 1824.328003 2022-01-27 96859 1851.189331 000001.SZA 1818.731934 -33817840.0 15172192.0 ... 0.059915 0.528010 NaN NaN NaN NaN NaN NaN NaN NaN
3 2.695470e+09 0.615599 1771.724731 2022-01-28 144813 1841.116333 000001.SZA 1770.605469 -257308880.0 94253648.0 ... 0.188965 0.863437 NaN NaN NaN NaN NaN NaN NaN NaN
4 2.451798e+09 0.669989 1834.401001 2022-02-07 110841 1836.639404 000001.SZA 1778.440063 109925296.0 -157969904.0 ... 0.189097 0.780942 NaN NaN NaN NaN NaN NaN NaN NaN
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
303205 6.790403e+06 6.695279 6.120000 2022-04-27 0 6.400000 873169.BJA 5.850000 NaN NaN ... 0.494861 4.656439 NaN NaN NaN NaN NaN NaN NaN NaN
303206 4.096088e+06 5.738766 6.020000 2022-04-28 0 6.190000 873169.BJA 6.000000 NaN NaN ... 0.530659 2.806766 NaN NaN NaN NaN NaN NaN NaN NaN
303207 6.716115e+06 4.441566 6.210000 2022-04-29 0 6.310000 873169.BJA 6.060000 NaN NaN ... 0.631435 4.516720 NaN NaN NaN NaN NaN NaN NaN NaN
303208 1.127591e+07 4.830303 6.520000 2022-05-05 0 6.580000 873169.BJA 6.160000 NaN NaN ... 0.720204 7.341288 NaN NaN NaN NaN NaN NaN NaN NaN
303209 5.765132e+06 4.610190 6.350000 2022-05-06 0 6.460000 873169.BJA 6.200000 NaN NaN ... 0.664417 3.775985 NaN NaN NaN NaN NaN NaN NaN NaN

303210 rows × 22 columns