{"description":"实验创建于2020/2/14","graph":{"edges":[{"to_node_id":"-468:features","from_node_id":"-70:data"},{"to_node_id":"-837:features","from_node_id":"-70:data"},{"to_node_id":"-837:input_data","from_node_id":"-468:data"},{"to_node_id":"-468:instruments","from_node_id":"-492:data"},{"to_node_id":"-487:input_1","from_node_id":"-821:data_1"},{"to_node_id":"-821:input_1","from_node_id":"-837:data"},{"to_node_id":"-808:input_1","from_node_id":"-837:data"},{"to_node_id":"-141:input_data","from_node_id":"-487:data_1"},{"to_node_id":"-8309:features","from_node_id":"-293:data"},{"to_node_id":"-141:features","from_node_id":"-149:data"},{"to_node_id":"-8309:user_factor_data","from_node_id":"-141:data"}],"nodes":[{"node_id":"-70","module_id":"BigQuantSpace.input_features.input_features-v1","parameters":[{"name":"features","value":"P1=ta_macd_macd_12_26_9_0\nP2=ta_macd_macdhist_12_26_9_0 \nP3=ta_macd_macdsignal_12_26_9_0","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"features_ds","node_id":"-70"}],"output_ports":[{"name":"data","node_id":"-70"}],"cacheable":true,"seq_num":1,"comment":"","comment_collapsed":true},{"node_id":"-468","module_id":"BigQuantSpace.general_feature_extractor.general_feature_extractor-v7","parameters":[{"name":"start_date","value":"","type":"Literal","bound_global_parameter":null},{"name":"end_date","value":"","type":"Literal","bound_global_parameter":null},{"name":"before_start_days","value":90,"type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"instruments","node_id":"-468"},{"name":"features","node_id":"-468"}],"output_ports":[{"name":"data","node_id":"-468"}],"cacheable":true,"seq_num":4,"comment":"","comment_collapsed":true},{"node_id":"-492","module_id":"BigQuantSpace.instruments.instruments-v2","parameters":[{"name":"start_date","value":"2020-08-01","type":"Literal","bound_global_parameter":null},{"name":"end_date","value":"2022-08-20","type":"Literal","bound_global_parameter":null},{"name":"market","value":"CN_STOCK_A","type":"Literal","bound_global_parameter":null},{"name":"instrument_list","value":"","type":"Literal","bound_global_parameter":null},{"name":"max_count","value":0,"type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"rolling_conf","node_id":"-492"}],"output_ports":[{"name":"data","node_id":"-492"}],"cacheable":true,"seq_num":7,"comment":"","comment_collapsed":true},{"node_id":"-808","module_id":"BigQuantSpace.cached.cached-v3","parameters":[{"name":"run","value":"# Python 代码入口函数,input_1/2/3 对应三个输入端,data_1/2/3 对应三个输出端\ndef bigquant_run(input_1):\n # 示例代码如下。在这里编写您的代码\n df=input_1.read_df()\n df.fillna(method='ffill',inplace=True)\n df2=df.dropna()\n \n data_1 = DataSource.write_df(df)\n \n return Outputs(data_1=data_1 )\nTrue","type":"Literal","bound_global_parameter":null},{"name":"post_run","value":"# 后处理函数,可选。输入是主函数的输出,可以在这里对数据做处理,或者返回更友好的outputs数据格式。此函数输出不会被缓存。\ndef bigquant_run(outputs):\n return outputs\n","type":"Literal","bound_global_parameter":null},{"name":"input_ports","value":"input_1","type":"Literal","bound_global_parameter":null},{"name":"params","value":"{}","type":"Literal","bound_global_parameter":null},{"name":"output_ports","value":"data_1","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"input_1","node_id":"-808"},{"name":"input_2","node_id":"-808"},{"name":"input_3","node_id":"-808"}],"output_ports":[{"name":"data_1","node_id":"-808"},{"name":"data_2","node_id":"-808"},{"name":"data_3","node_id":"-808"}],"cacheable":true,"seq_num":5,"comment":"填充财务数据和删除数据 源代码","comment_collapsed":false},{"node_id":"-821","module_id":"BigQuantSpace.fillna_And_dropna.fillna_And_dropna-v2","parameters":[],"input_ports":[{"name":"input_1","node_id":"-821"}],"output_ports":[{"name":"data_1","node_id":"-821"}],"cacheable":true,"seq_num":9,"comment":"自定义填充和dropna封装后得模块","comment_collapsed":false},{"node_id":"-837","module_id":"BigQuantSpace.derived_feature_extractor.derived_feature_extractor-v3","parameters":[{"name":"date_col","value":"date","type":"Literal","bound_global_parameter":null},{"name":"instrument_col","value":"instrument","type":"Literal","bound_global_parameter":null},{"name":"drop_na","value":"False","type":"Literal","bound_global_parameter":null},{"name":"remove_extra_columns","value":"False","type":"Literal","bound_global_parameter":null},{"name":"user_functions","value":"{}","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"input_data","node_id":"-837"},{"name":"features","node_id":"-837"}],"output_ports":[{"name":"data","node_id":"-837"}],"cacheable":true,"seq_num":10,"comment":"","comment_collapsed":true},{"node_id":"-487","module_id":"BigQuantSpace.cached.cached-v3","parameters":[{"name":"run","value":"# Python 代码入口函数,input_1/2/3 对应三个输入端,data_1/2/3 对应三个输出端\nfrom sklearn.preprocessing import StandardScaler\nfrom sklearn.decomposition import PCA\n\nimport pandas as pd\ndef bigquant_run(input_1):\n #input_1是训练集输入, input_2是测试集输入\n # 示例代码如下。在这里编写您的代码\n df1= input_1.read_df() #训练集输入\n df=df1[['P1','P2','P3']]\n X_train=df.values.tolist() #训练集数据\n \n \n \n #X = StandardScaler().fit_transform(X)\n \n \n scaler = StandardScaler() #数据的标准化工具\n #注意fit时我们仅仅对训练集进行。\n scaler.fit(X_train) #数据标准化训练\n X_train = scaler.transform(X_train) #标准化训练数据\n \n #压缩至 2个成分(2个维度)\n pca = PCA(n_components=1) # PCA工具\n pca.fit(X_train) #使用训练集对数据进行PCA训练\n principalComponents=pca.transform(X_train) #对训练数据进行PCA转换\n#将数据化为dataframe,命名\n principalDf = pd.DataFrame(data=principalComponents, columns=['PMACD1'])\n df1.reset_index(drop=True,inplace=True)\n principalDf.reset_index(drop=True,inplace=True)\n finalDf = pd.concat([df1,principalDf], axis = 1)\n finalDf=finalDf[['date','instrument','PMACD1']]\n data_1 = DataSource.write_df(finalDf) \n \n pca_scaler_dict={'scaler':scaler,'pca':pca}\n data_2=DataSource.write_pickle(pca_scaler_dict)\n return Outputs(data_1=data_1 ,data_2=data_2)\n","type":"Literal","bound_global_parameter":null},{"name":"post_run","value":"# 后处理函数,可选。输入是主函数的输出,可以在这里对数据做处理,或者返回更友好的outputs数据格式。此函数输出不会被缓存。\ndef bigquant_run(outputs):\n return outputs\n","type":"Literal","bound_global_parameter":null},{"name":"input_ports","value":"input_1","type":"Literal","bound_global_parameter":null},{"name":"params","value":"{}","type":"Literal","bound_global_parameter":null},{"name":"output_ports","value":"data_1,data_2","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"input_1","node_id":"-487"},{"name":"input_2","node_id":"-487"},{"name":"input_3","node_id":"-487"}],"output_ports":[{"name":"data_1","node_id":"-487"},{"name":"data_2","node_id":"-487"},{"name":"data_3","node_id":"-487"}],"cacheable":true,"seq_num":2,"comment":"波动因子的PCA处理的源代码,","comment_collapsed":false},{"node_id":"-8309","module_id":"BigQuantSpace.factorlens.factorlens-v2","parameters":[{"name":"title","value":"因子分析: {factor_name}","type":"Literal","bound_global_parameter":null},{"name":"start_date","value":"2019-01-01","type":"Literal","bound_global_parameter":null},{"name":"end_date","value":"2019-12-31","type":"Literal","bound_global_parameter":null},{"name":"rebalance_period","value":"22","type":"Literal","bound_global_parameter":null},{"name":"delay_rebalance_days","value":0,"type":"Literal","bound_global_parameter":null},{"name":"rebalance_price","value":"close_0","type":"Literal","bound_global_parameter":null},{"name":"stock_pool","value":"全市场","type":"Literal","bound_global_parameter":null},{"name":"quantile_count","value":"5","type":"Literal","bound_global_parameter":null},{"name":"commission_rate","value":0.0016,"type":"Literal","bound_global_parameter":null},{"name":"returns_calculation_method","value":"累乘","type":"Literal","bound_global_parameter":null},{"name":"benchmark","value":"无","type":"Literal","bound_global_parameter":null},{"name":"drop_new_stocks","value":60,"type":"Literal","bound_global_parameter":null},{"name":"drop_price_limit_stocks","value":"True","type":"Literal","bound_global_parameter":null},{"name":"drop_st_stocks","value":"True","type":"Literal","bound_global_parameter":null},{"name":"drop_suspended_stocks","value":"True","type":"Literal","bound_global_parameter":null},{"name":"cutoutliers","value":"False","type":"Literal","bound_global_parameter":null},{"name":"normalization","value":"False","type":"Literal","bound_global_parameter":null},{"name":"neutralization","value":"%7B%22enumItems%22%3A%5B%7B%22value%22%3A%22%E8%A1%8C%E4%B8%9A%22%2C%22displayValue%22%3A%22%E8%A1%8C%E4%B8%9A%22%2C%22selected%22%3Afalse%7D%2C%7B%22value%22%3A%22%E5%B8%82%E5%80%BC%22%2C%22displayValue%22%3A%22%E5%B8%82%E5%80%BC%22%2C%22selected%22%3Afalse%7D%5D%7D","type":"Literal","bound_global_parameter":null},{"name":"metrics","value":"%7B%22enumItems%22%3A%5B%7B%22value%22%3A%22%E5%9B%A0%E5%AD%90%E8%A1%A8%E7%8E%B0%E6%A6%82%E8%A7%88%22%2C%22displayValue%22%3A%22%E5%9B%A0%E5%AD%90%E8%A1%A8%E7%8E%B0%E6%A6%82%E8%A7%88%22%2C%22selected%22%3Atrue%7D%2C%7B%22value%22%3A%22%E5%9B%A0%E5%AD%90%E5%88%86%E5%B8%83%22%2C%22displayValue%22%3A%22%E5%9B%A0%E5%AD%90%E5%88%86%E5%B8%83%22%2C%22selected%22%3Atrue%7D%2C%7B%22value%22%3A%22%E5%9B%A0%E5%AD%90%E8%A1%8C%E4%B8%9A%E5%88%86%E5%B8%83%22%2C%22displayValue%22%3A%22%E5%9B%A0%E5%AD%90%E8%A1%8C%E4%B8%9A%E5%88%86%E5%B8%83%22%2C%22selected%22%3Atrue%7D%2C%7B%22value%22%3A%22%E5%9B%A0%E5%AD%90%E5%B8%82%E5%80%BC%E5%88%86%E5%B8%83%22%2C%22displayValue%22%3A%22%E5%9B%A0%E5%AD%90%E5%B8%82%E5%80%BC%E5%88%86%E5%B8%83%22%2C%22selected%22%3Atrue%7D%2C%7B%22value%22%3A%22IC%E5%88%86%E6%9E%90%22%2C%22displayValue%22%3A%22IC%E5%88%86%E6%9E%90%22%2C%22selected%22%3Atrue%7D%2C%7B%22value%22%3A%22%E4%B9%B0%E5%85%A5%E4%BF%A1%E5%8F%B7%E9%87%8D%E5%90%88%E5%88%86%E6%9E%90%22%2C%22displayValue%22%3A%22%E4%B9%B0%E5%85%A5%E4%BF%A1%E5%8F%B7%E9%87%8D%E5%90%88%E5%88%86%E6%9E%90%22%2C%22selected%22%3Atrue%7D%2C%7B%22value%22%3A%22%E5%9B%A0%E5%AD%90%E4%BC%B0%E5%80%BC%E5%88%86%E6%9E%90%22%2C%22displayValue%22%3A%22%E5%9B%A0%E5%AD%90%E4%BC%B0%E5%80%BC%E5%88%86%E6%9E%90%22%2C%22selected%22%3Atrue%7D%2C%7B%22value%22%3A%22%E5%9B%A0%E5%AD%90%E6%8B%A5%E6%8C%A4%E5%BA%A6%E5%88%86%E6%9E%90%22%2C%22displayValue%22%3A%22%E5%9B%A0%E5%AD%90%E6%8B%A5%E6%8C%A4%E5%BA%A6%E5%88%86%E6%9E%90%22%2C%22selected%22%3Atrue%7D%2C%7B%22value%22%3A%22%E5%9B%A0%E5%AD%90%E5%80%BC%E6%9C%80%E5%A4%A7%2F%E6%9C%80%E5%B0%8F%E8%82%A1%E7%A5%A8%22%2C%22displayValue%22%3A%22%E5%9B%A0%E5%AD%90%E5%80%BC%E6%9C%80%E5%A4%A7%2F%E6%9C%80%E5%B0%8F%E8%82%A1%E7%A5%A8%22%2C%22selected%22%3Atrue%7D%2C%7B%22value%22%3A%22%E8%A1%A8%E8%BE%BE%E5%BC%8F%E5%9B%A0%E5%AD%90%E5%80%BC%22%2C%22displayValue%22%3A%22%E8%A1%A8%E8%BE%BE%E5%BC%8F%E5%9B%A0%E5%AD%90%E5%80%BC%22%2C%22selected%22%3Atrue%7D%2C%7B%22value%22%3A%22%E5%A4%9A%E5%9B%A0%E5%AD%90%E7%9B%B8%E5%85%B3%E6%80%A7%E5%88%86%E6%9E%90%22%2C%22displayValue%22%3A%22%E5%A4%9A%E5%9B%A0%E5%AD%90%E7%9B%B8%E5%85%B3%E6%80%A7%E5%88%86%E6%9E%90%22%2C%22selected%22%3Atrue%7D%5D%7D","type":"Literal","bound_global_parameter":null},{"name":"factor_coverage","value":0.5,"type":"Literal","bound_global_parameter":null},{"name":"user_data_merge","value":"left","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"features","node_id":"-8309"},{"name":"user_factor_data","node_id":"-8309"}],"output_ports":[{"name":"data","node_id":"-8309"},{"name":"save_data","node_id":"-8309"}],"cacheable":true,"seq_num":3,"comment":"","comment_collapsed":true},{"node_id":"-293","module_id":"BigQuantSpace.input_features.input_features-v1","parameters":[{"name":"features","value":"PMD1\n ","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"features_ds","node_id":"-293"}],"output_ports":[{"name":"data","node_id":"-293"}],"cacheable":true,"seq_num":6,"comment":"","comment_collapsed":true},{"node_id":"-149","module_id":"BigQuantSpace.input_features.input_features-v1","parameters":[{"name":"features","value":"PMD1=clip(normalize(PMACD1),-2,2)\n#PMD2=clip(normalize(PMACD2),-2,2)","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"features_ds","node_id":"-149"}],"output_ports":[{"name":"data","node_id":"-149"}],"cacheable":true,"seq_num":11,"comment":"","comment_collapsed":true},{"node_id":"-141","module_id":"BigQuantSpace.derived_feature_extractor.derived_feature_extractor-v3","parameters":[{"name":"date_col","value":"date","type":"Literal","bound_global_parameter":null},{"name":"instrument_col","value":"instrument","type":"Literal","bound_global_parameter":null},{"name":"drop_na","value":"False","type":"Literal","bound_global_parameter":null},{"name":"remove_extra_columns","value":"False","type":"Literal","bound_global_parameter":null},{"name":"user_functions","value":"{}","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"input_data","node_id":"-141"},{"name":"features","node_id":"-141"}],"output_ports":[{"name":"data","node_id":"-141"}],"cacheable":true,"seq_num":8,"comment":"","comment_collapsed":true}],"node_layout":"<node_postions><node_position Node='-70' Position='261,18,200,200'/><node_position Node='-468' Position='672,143,200,200'/><node_position Node='-492' Position='679,-15,200,200'/><node_position Node='-808' Position='1016,394,200,200'/><node_position Node='-821' Position='719,382,200,200'/><node_position Node='-837' Position='706,250,200,200'/><node_position Node='-487' Position='635,514,200,200'/><node_position Node='-8309' Position='540,738,200,200'/><node_position Node='-293' Position='209,498,200,200'/><node_position Node='-149' Position='377,394,200,200'/><node_position Node='-141' Position='617,642,200,200'/></node_postions>"},"nodes_readonly":false,"studio_version":"v2"}
[2022-09-03 22:16:25.317922] INFO: moduleinvoker: input_features.v1 开始运行..
[2022-09-03 22:16:25.489529] INFO: moduleinvoker: 命中缓存
[2022-09-03 22:16:25.492690] INFO: moduleinvoker: input_features.v1 运行完成[0.174771s].
[2022-09-03 22:16:25.502666] INFO: moduleinvoker: instruments.v2 开始运行..
[2022-09-03 22:16:25.513377] INFO: moduleinvoker: 命中缓存
[2022-09-03 22:16:25.515475] INFO: moduleinvoker: instruments.v2 运行完成[0.012826s].
[2022-09-03 22:16:25.530875] INFO: moduleinvoker: general_feature_extractor.v7 开始运行..
[2022-09-03 22:16:25.540013] INFO: moduleinvoker: 命中缓存
[2022-09-03 22:16:25.542295] INFO: moduleinvoker: general_feature_extractor.v7 运行完成[0.011452s].
[2022-09-03 22:16:25.563969] INFO: moduleinvoker: derived_feature_extractor.v3 开始运行..
[2022-09-03 22:16:25.579616] INFO: moduleinvoker: 命中缓存
[2022-09-03 22:16:25.584098] INFO: moduleinvoker: derived_feature_extractor.v3 运行完成[0.020145s].
[2022-09-03 22:16:25.613881] INFO: moduleinvoker: fillna_And_dropna.v2 开始运行..
[2022-09-03 22:16:25.628017] INFO: moduleinvoker: 命中缓存
[2022-09-03 22:16:25.630767] INFO: moduleinvoker: fillna_And_dropna.v2 运行完成[0.016918s].
[2022-09-03 22:16:25.649572] INFO: moduleinvoker: cached.v3 开始运行..
[2022-09-03 22:16:25.664673] INFO: moduleinvoker: 命中缓存
[2022-09-03 22:16:25.667277] INFO: moduleinvoker: cached.v3 运行完成[0.017729s].
[2022-09-03 22:16:25.678881] INFO: moduleinvoker: input_features.v1 开始运行..
[2022-09-03 22:16:25.693052] INFO: moduleinvoker: 命中缓存
[2022-09-03 22:16:25.695609] INFO: moduleinvoker: input_features.v1 运行完成[0.016774s].
[2022-09-03 22:16:25.702436] INFO: moduleinvoker: input_features.v1 开始运行..
[2022-09-03 22:16:25.711555] INFO: moduleinvoker: 命中缓存
[2022-09-03 22:16:25.714218] INFO: moduleinvoker: input_features.v1 运行完成[0.011777s].
[2022-09-03 22:16:25.725026] INFO: moduleinvoker: derived_feature_extractor.v3 开始运行..
[2022-09-03 22:16:25.733193] INFO: moduleinvoker: 命中缓存
[2022-09-03 22:16:25.735679] INFO: moduleinvoker: derived_feature_extractor.v3 运行完成[0.010664s].
[2022-09-03 22:16:25.747683] INFO: moduleinvoker: factorlens.v2 开始运行..
[2022-09-03 22:16:26.488698] INFO: 因子分析: batch_process start
[2022-09-03 22:16:26.495420] INFO: 因子分析: load_instruments 2019-01-01, 2019-12-31
[2022-09-03 22:16:26.936700] INFO: 因子分析: load_instruments, 3775 rows.
[2022-09-03 22:16:26.939350] INFO: 因子分析: load_benchmark_data 2019-01-01, 2019-12-31
[2022-09-03 22:16:27.018404] INFO: 因子分析: load_benchmark_data, 732 rows.
[2022-09-03 22:16:27.020838] INFO: 因子分析: StockPool.before_load_general_feature_data
[2022-09-03 22:16:27.023694] INFO: 因子分析: UserDataMerge.before_load_general_feature_data
[2022-09-03 22:16:27.026664] INFO: 因子分析: DropSTStocks.before_load_general_feature_data
[2022-09-03 22:16:27.031838] INFO: 因子分析: DropNewStocks.before_load_general_feature_data
[2022-09-03 22:16:27.040837] INFO: 因子分析: Neutralization.before_load_general_feature_data
[2022-09-03 22:16:27.043621] INFO: 因子分析: DelayRebalanceDays.before_load_general_feature_data
[2022-09-03 22:16:27.046511] INFO: 因子分析: RebalancePeriod.before_load_general_feature_data
[2022-09-03 22:16:27.049662] INFO: 因子分析: RebalancePrice.before_load_general_feature_data
[2022-09-03 22:16:27.053946] INFO: 因子分析: FactorCoverage.before_load_general_feature_data
[2022-09-03 22:16:27.057012] INFO: 因子分析: Industry.before_load_general_feature_data
[2022-09-03 22:16:27.059848] INFO: 因子分析: PBRatio.before_load_general_feature_data
[2022-09-03 22:16:27.062745] INFO: 因子分析: Turnover.before_load_general_feature_data
[2022-09-03 22:16:27.068516] INFO: 因子分析: MarketCap.before_load_general_feature_data
[2022-09-03 22:16:27.072365] INFO: 因子分析: load_general_feature_data, load data
[2022-09-03 22:17:09.075895] INFO: 因子分析: RebalancePeriod.after_load_general_feature_data
[2022-09-03 22:17:09.170999] INFO: 因子分析: RebalancePeriodsReturns.after_load_general_feature_data
[2022-09-03 22:17:36.713631] INFO: 因子分析: RebalancePrice.after_load_general_feature_data
[2022-09-03 22:17:36.717609] INFO: 因子分析: load_general_feature_data, 1701263 rows.
[2022-09-03 22:17:36.720935] INFO: 因子分析: load_derived_feature_data, 1701263 rows, 25 columns.
[2022-09-03 22:17:36.723447] INFO: 因子分析: process, PMD1
[2022-09-03 22:17:36.729902] INFO: 因子分析: calculate_factor, PMD1
[2022-09-03 22:17:37.131761] INFO: 因子分析: calculate_factor, done
[2022-09-03 22:17:37.315700] INFO: 因子分析: QuantileReturns.before_process
[2022-09-03 22:17:37.318239] INFO: 因子分析: IC.before_process
[2022-09-03 22:17:37.320614] INFO: 因子分析: BasicDescription.before_process
[2022-09-03 22:17:37.322914] INFO: 因子分析: Industry.before_process
[2022-09-03 22:17:37.325223] INFO: 因子分析: RebalanceOverlap.before_process
[2022-09-03 22:17:37.327588] INFO: 因子分析: PBRatio.before_process
[2022-09-03 22:17:37.329870] INFO: 因子分析: Turnover.before_process
[2022-09-03 22:17:37.332248] INFO: 因子分析: Stocks.before_process
[2022-09-03 22:17:37.334657] INFO: 因子分析: MarketCap.before_process
[2022-09-03 22:17:37.336960] INFO: 因子分析: FactorValue.before_process
[2022-09-03 22:17:37.339182] INFO: 因子分析: FactorPairwiseCorrelationMerged.before_process
[2022-09-03 22:17:37.448870] INFO: 因子分析: process metrics, start ..
[2022-09-03 22:17:37.454603] INFO: 因子分析: process, 0/884867 rows ..
[2022-09-03 22:17:37.460231] INFO: 因子分析: BacktestInterval.process, 0.000s
[2022-09-03 22:17:37.464894] INFO: 因子分析: Benchmark.process, 0.000s
[2022-09-03 22:17:37.470480] INFO: 因子分析: StockPool.process, 0.000s
[2022-09-03 22:17:37.474519] INFO: 因子分析: UserDataMerge.process, 0.000s
[2022-09-03 22:17:37.477744] INFO: 因子分析: DropSTStocks.process, 0.000s
[2022-09-03 22:17:37.488086] INFO: 因子分析: DropPriceLimitStocks.process, 0.000s
[2022-09-03 22:17:37.492522] INFO: 因子分析: DropNewStocks.process, 0.000s
[2022-09-03 22:17:37.499649] INFO: 因子分析: DropSuspendedStocks.process, 0.000s
[2022-09-03 22:17:37.503543] INFO: 因子分析: QuantileCount.process, 0.000s
[2022-09-03 22:17:37.506140] INFO: 因子分析: CommissionRates.process, 0.000s
[2022-09-03 22:17:37.508332] INFO: 因子分析: Cutoutliers.process, 0.000s
[2022-09-03 22:17:37.511073] INFO: 因子分析: Normalization.process, 0.000s
[2022-09-03 22:17:37.513646] INFO: 因子分析: Neutralization.process, 0.000s
[2022-09-03 22:17:37.516010] INFO: 因子分析: DelayRebalanceDays.process, 0.000s
[2022-09-03 22:17:37.528209] ERROR: 因子分析: 调仓日计算时输入数据异常,因子值分组计算失败
[2022-09-03 22:17:37.540326] ERROR: moduleinvoker: module name: factorlens, module version: v2, trackeback: ZeroDivisionError: float division
---------------------------------------------------------------------------
ZeroDivisionError Traceback (most recent call last)
<ipython-input-60-168a8f112cb1> in <module>
111 )
112
--> 113 m3 = M.factorlens.v2(
114 features=m6.data,
115 user_factor_data=m8.data,
ZeroDivisionError: float division