{"description":"实验创建于2017/8/26","graph":{"edges":[{"to_node_id":"-52:features","from_node_id":"-331:data"},{"to_node_id":"-52:instruments","from_node_id":"-312:data"},{"to_node_id":"-88:instruments","from_node_id":"-312:data"},{"to_node_id":"-250:instruments","from_node_id":"-312:data"},{"to_node_id":"-101:input_1","from_node_id":"-52:data"},{"to_node_id":"-783:input_1","from_node_id":"-52:data"},{"to_node_id":"-41:features","from_node_id":"-64:data"},{"to_node_id":"-783:input_2","from_node_id":"-64:data"},{"to_node_id":"-88:features","from_node_id":"-79:data"},{"to_node_id":"-95:input_data","from_node_id":"-88:data"},{"to_node_id":"-101:input_2","from_node_id":"-95:data"},{"to_node_id":"-250:options_data","from_node_id":"-101:data"},{"to_node_id":"-52:user_functions","from_node_id":"-726:functions"},{"to_node_id":"-41:user_factor_data","from_node_id":"-783:data_1"}],"nodes":[{"node_id":"-331","module_id":"BigQuantSpace.input_features.input_features-v1","parameters":[{"name":"features","value":"_amt = amount\n_ret = ret_sim(close, open)\nbig_order_ret = np.prod(1 + _ret*where(_amt >= _amt.sort_values(ascending=False).iloc[np.int(240*0.3-1)], 1, 0))\n","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"features_ds","node_id":"-331"}],"output_ports":[{"name":"data","node_id":"-331"}],"cacheable":true,"seq_num":1,"comment":"","comment_collapsed":true},{"node_id":"-312","module_id":"BigQuantSpace.instruments.instruments-v2","parameters":[{"name":"start_date","value":"2019-01-01","type":"Literal","bound_global_parameter":null},{"name":"end_date","value":"2022-05-26","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":"-312"}],"output_ports":[{"name":"data","node_id":"-312"}],"cacheable":true,"seq_num":2,"comment":"","comment_collapsed":true},{"node_id":"-52","module_id":"BigQuantSpace.feature_extractor_1m.feature_extractor_1m-v2","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":"20","type":"Literal","bound_global_parameter":null},{"name":"workers","value":"20","type":"Literal","bound_global_parameter":null},{"name":"parallel_mode","value":"集群","type":"Literal","bound_global_parameter":null},{"name":"table_1m","value":"level2_bar1m_CN_STOCK_A","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"instruments","node_id":"-52"},{"name":"features","node_id":"-52"},{"name":"user_functions","node_id":"-52"}],"output_ports":[{"name":"data","node_id":"-52"}],"cacheable":true,"seq_num":7,"comment":"V2","comment_collapsed":true},{"node_id":"-41","module_id":"BigQuantSpace.factorlens.factorlens-v1","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":"2022-08-01","type":"Literal","bound_global_parameter":null},{"name":"rebalance_period","value":"2","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":"10","type":"Literal","bound_global_parameter":null},{"name":"commission_rate","value":"0.0002","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":"False","type":"Literal","bound_global_parameter":null},{"name":"drop_st_stocks","value":"False","type":"Literal","bound_global_parameter":null},{"name":"drop_suspended_stocks","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":"inner","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"features","node_id":"-41"},{"name":"user_factor_data","node_id":"-41"}],"output_ports":[{"name":"data","node_id":"-41"}],"cacheable":true,"seq_num":8,"comment":"","comment_collapsed":true},{"node_id":"-64","module_id":"BigQuantSpace.input_features.input_features-v1","parameters":[{"name":"features","value":"big_order_ret","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"features_ds","node_id":"-64"}],"output_ports":[{"name":"data","node_id":"-64"}],"cacheable":true,"seq_num":9,"comment":"","comment_collapsed":true},{"node_id":"-79","module_id":"BigQuantSpace.input_features.input_features-v1","parameters":[{"name":"features","value":"in_csi500_0","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"features_ds","node_id":"-79"}],"output_ports":[{"name":"data","node_id":"-79"}],"cacheable":true,"seq_num":12,"comment":"","comment_collapsed":true},{"node_id":"-88","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":"-88"},{"name":"features","node_id":"-88"}],"output_ports":[{"name":"data","node_id":"-88"}],"cacheable":true,"seq_num":13,"comment":"","comment_collapsed":true},{"node_id":"-95","module_id":"BigQuantSpace.filter.filter-v3","parameters":[{"name":"expr","value":"in_csi500_0 == 1","type":"Literal","bound_global_parameter":null},{"name":"output_left_data","value":"False","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"input_data","node_id":"-95"}],"output_ports":[{"name":"data","node_id":"-95"},{"name":"left_data","node_id":"-95"}],"cacheable":true,"seq_num":14,"comment":"","comment_collapsed":true},{"node_id":"-101","module_id":"BigQuantSpace.data_join.data_join-v3","parameters":[{"name":"on","value":"date,instrument","type":"Literal","bound_global_parameter":null},{"name":"how","value":"inner","type":"Literal","bound_global_parameter":null},{"name":"sort","value":"False","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"input_1","node_id":"-101"},{"name":"input_2","node_id":"-101"}],"output_ports":[{"name":"data","node_id":"-101"}],"cacheable":true,"seq_num":15,"comment":"","comment_collapsed":true},{"node_id":"-250","module_id":"BigQuantSpace.trade.trade-v4","parameters":[{"name":"start_date","value":"","type":"Literal","bound_global_parameter":null},{"name":"end_date","value":"","type":"Literal","bound_global_parameter":null},{"name":"initialize","value":"def bigquant_run(context):\n \n context.ranker_prediction = context.options['data'].read_df()\n factor_name = [i for i in context.ranker_prediction.columns if i not in ['date','instrument','in_csi500_0']]\n print('因子名称:', factor_name)\n \n context.ranker_prediction.sort_values(['date',factor_name[0]], ascending=[True,False], inplace=True)\n context.ranker_prediction.rename(columns={factor_name[0]:'prediction'}, inplace=True)\n \n # 股票数量 \n context.stock_count = 100\n # 组合权重\n #context.stock_weights = T.norm([1 / math.log(i + 2) for i in range(0, context.stock_count)])\n context.stock_weights = [1/ context.stock_count]* context.stock_count\n # 换仓频率\n context.rebalance_days = 1\n \n # 设置交易费用,买入是万三,卖出是千分之1.3,如果不足5元按5元算\n context.set_commission(PerOrder(buy_cost=0.00015, \n sell_cost=0.00015, min_cost=5))\n \n if 'index' not in context.extension:\n context.extension['index'] = 0","type":"Literal","bound_global_parameter":null},{"name":"handle_data","value":"# 回测引擎:每日数据处理函数,每天执行一次\ndef bigquant_run(context, data):\n # 日期\n date = data.current_dt.strftime('%Y-%m-%d')\n context.extension['index'] += 1\n \n if context.extension['index'] % context.rebalance_days != 0:\n return \n\n \n cur_df = context.ranker_prediction[context.ranker_prediction['date'] == date]\n stock_to_buy = cur_df.instrument.tolist()[: context.stock_count]\n \n # 目前持仓列表 \n stock_hold_now = [equity.symbol for equity in context.portfolio.positions]\n # 继续持有股票列表\n no_need_to_sell = [i for i in stock_hold_now if i in stock_to_buy]\n # 卖出股票列表 \n stock_to_sell = [i for i in stock_hold_now if i not in no_need_to_sell]\n \n # 执行卖出\n for stock in stock_to_sell:\n if data.can_trade(context.symbol(stock)):\n context.order_target_percent(context.symbol(stock), 0)\n \n if len(stock_to_buy) == 0:\n return\n \n # 执行买入\n for i in np.arange(len(stock_to_buy)):\n cp = stock_to_buy[i]\n weight = context.stock_weights[i]\n if data.can_trade(context.symbol(cp)):\n context.order_target_percent(context.symbol(cp), weight)","type":"Literal","bound_global_parameter":null},{"name":"prepare","value":"# 回测引擎:准备数据,只执行一次\ndef bigquant_run(context):\n pass\n","type":"Literal","bound_global_parameter":null},{"name":"before_trading_start","value":"","type":"Literal","bound_global_parameter":null},{"name":"volume_limit","value":"0.025","type":"Literal","bound_global_parameter":null},{"name":"order_price_field_buy","value":"open","type":"Literal","bound_global_parameter":null},{"name":"order_price_field_sell","value":"close","type":"Literal","bound_global_parameter":null},{"name":"capital_base","value":"10000000","type":"Literal","bound_global_parameter":null},{"name":"auto_cancel_non_tradable_orders","value":"True","type":"Literal","bound_global_parameter":null},{"name":"data_frequency","value":"daily","type":"Literal","bound_global_parameter":null},{"name":"price_type","value":"真实价格","type":"Literal","bound_global_parameter":null},{"name":"product_type","value":"股票","type":"Literal","bound_global_parameter":null},{"name":"plot_charts","value":"True","type":"Literal","bound_global_parameter":null},{"name":"backtest_only","value":"False","type":"Literal","bound_global_parameter":null},{"name":"benchmark","value":"000905.HIX","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"instruments","node_id":"-250"},{"name":"options_data","node_id":"-250"},{"name":"history_ds","node_id":"-250"},{"name":"benchmark_ds","node_id":"-250"},{"name":"trading_calendar","node_id":"-250"}],"output_ports":[{"name":"raw_perf","node_id":"-250"}],"cacheable":false,"seq_num":11,"comment":"指数增强","comment_collapsed":false},{"node_id":"-726","module_id":"BigQuantSpace.feature_extractor_user_function.feature_extractor_user_function-v1","parameters":[{"name":"name","value":"ret_sim","type":"Literal","bound_global_parameter":null},{"name":"func","value":"def bigquant_run(df, close, op):\n res = close.pct_change()\n res.iloc[0] = close.iloc[0] / op.iloc[0] - 1\n return res\n","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"input_functions","node_id":"-726"}],"output_ports":[{"name":"functions","node_id":"-726"}],"cacheable":false,"seq_num":4,"comment":"","comment_collapsed":true},{"node_id":"-783","module_id":"BigQuantSpace.cached.cached-v3","parameters":[{"name":"run","value":"# Python 代码入口函数,input_1/2/3 对应三个输入端,data_1/2/3 对应三个输出端\ndef bigquant_run(input_1, input_2, input_3):\n # 示例代码如下。在这里编写您的代码\n df = input_1.read() \n f = input_2.read()[0]\n df[f] = df[f] * -1\n data_1 = DataSource.write_df(df)\n return Outputs(data_1=data_1)","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":"","type":"Literal","bound_global_parameter":null},{"name":"params","value":"{}","type":"Literal","bound_global_parameter":null},{"name":"output_ports","value":"","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"input_1","node_id":"-783"},{"name":"input_2","node_id":"-783"},{"name":"input_3","node_id":"-783"}],"output_ports":[{"name":"data_1","node_id":"-783"},{"name":"data_2","node_id":"-783"},{"name":"data_3","node_id":"-783"}],"cacheable":true,"seq_num":5,"comment":"因子值越大越好","comment_collapsed":false}],"node_layout":"<node_postions><node_position Node='-331' Position='-528,-803,200,200'/><node_position Node='-312' Position='-852,-733,200,200'/><node_position Node='-52' Position='-540,-603,200,200'/><node_position Node='-41' Position='-366.3339385986328,-237.62039184570312,200,200'/><node_position Node='-64' Position='-207,-466,200,200'/><node_position Node='-79' Position='-819,-376,200,200'/><node_position Node='-88' Position='-819,-303,200,200'/><node_position Node='-95' Position='-821,-246,200,200'/><node_position Node='-101' Position='-819,-166,200,200'/><node_position Node='-250' Position='-561,-73,200,200'/><node_position Node='-726' Position='-223,-712,200,200'/><node_position Node='-783' Position='-341,-369,200,200'/></node_postions>"},"nodes_readonly":false,"studio_version":"v2"}
[2022-06-24 15:38:37.796268] INFO: moduleinvoker: input_features.v1 开始运行..
[2022-06-24 15:38:37.808315] INFO: moduleinvoker: 命中缓存
[2022-06-24 15:38:37.810151] INFO: moduleinvoker: input_features.v1 运行完成[0.013908s].
[2022-06-24 15:38:37.815705] INFO: moduleinvoker: instruments.v2 开始运行..
[2022-06-24 15:38:37.823396] INFO: moduleinvoker: 命中缓存
[2022-06-24 15:38:37.824943] INFO: moduleinvoker: instruments.v2 运行完成[0.009242s].
[2022-06-24 15:38:37.828695] INFO: moduleinvoker: input_features.v1 开始运行..
[2022-06-24 15:38:37.918530] INFO: moduleinvoker: input_features.v1 运行完成[0.089819s].
[2022-06-24 15:38:37.925428] INFO: moduleinvoker: feature_extractor_user_function.v1 运行完成[0.00015s].
[2022-06-24 15:38:37.933381] INFO: moduleinvoker: feature_extractor_1m.v2 开始运行..
[2022-06-24 15:38:37.939640] INFO: moduleinvoker: 命中缓存
[2022-06-24 15:38:37.941643] INFO: moduleinvoker: feature_extractor_1m.v2 运行完成[0.00827s].
[2022-06-24 15:38:37.956492] INFO: moduleinvoker: cached.v3 开始运行..
[2022-06-24 15:38:38.980829] INFO: moduleinvoker: cached.v3 运行完成[1.024325s].
[2022-06-24 15:38:38.997240] INFO: moduleinvoker: factorlens.v1 开始运行..
[2022-06-24 15:38:39.723115] INFO: 因子分析: batch_process start
[2022-06-24 15:38:39.725838] INFO: 因子分析: load_instruments 2019-01-01, 2022-08-01
[2022-06-24 15:38:41.095128] INFO: 因子分析: load_instruments, 4902 rows.
[2022-06-24 15:38:41.096666] INFO: 因子分析: load_benchmark_data 2019-01-01, 2022-08-01
[2022-06-24 15:38:41.217150] INFO: 因子分析: load_benchmark_data, 2526 rows.
[2022-06-24 15:38:41.219201] INFO: 因子分析: StockPool.before_load_general_feature_data
[2022-06-24 15:38:41.220911] INFO: 因子分析: UserDataMerge.before_load_general_feature_data
[2022-06-24 15:38:41.222122] INFO: 因子分析: DropSTStocks.before_load_general_feature_data
[2022-06-24 15:38:41.223263] INFO: 因子分析: DropNewStocks.before_load_general_feature_data
[2022-06-24 15:38:41.224432] INFO: 因子分析: Neutralization.before_load_general_feature_data
[2022-06-24 15:38:41.225530] INFO: 因子分析: DelayRebalanceDays.before_load_general_feature_data
[2022-06-24 15:38:41.226679] INFO: 因子分析: RebalancePeriod.before_load_general_feature_data
[2022-06-24 15:38:41.228026] INFO: 因子分析: RebalancePrice.before_load_general_feature_data
[2022-06-24 15:38:41.229370] INFO: 因子分析: FactorCoverage.before_load_general_feature_data
[2022-06-24 15:38:41.230656] INFO: 因子分析: Industry.before_load_general_feature_data
[2022-06-24 15:38:41.231854] INFO: 因子分析: PBRatio.before_load_general_feature_data
[2022-06-24 15:38:41.232843] INFO: 因子分析: Turnover.before_load_general_feature_data
[2022-06-24 15:38:41.233813] INFO: 因子分析: MarketCap.before_load_general_feature_data
[2022-06-24 15:38:41.234913] INFO: 因子分析: load_general_feature_data, load data
[2022-06-24 15:39:44.528305] INFO: 因子分析: RebalancePeriod.after_load_general_feature_data
[2022-06-24 15:39:44.651937] INFO: 因子分析: RebalancePeriodsReturns.after_load_general_feature_data
[2022-06-24 15:40:18.841595] INFO: 因子分析: RebalancePrice.after_load_general_feature_data
[2022-06-24 15:40:18.844019] INFO: 因子分析: load_general_feature_data, 3282215 rows.
[2022-06-24 15:40:18.846358] INFO: 因子分析: load_derived_feature_data, 3282215 rows, 24 columns.
[2022-06-24 15:40:18.848108] INFO: 因子分析: process, big_order_ret
[2022-06-24 15:40:18.849889] INFO: 因子分析: calculate_factor, big_order_ret
[2022-06-24 15:40:19.719967] INFO: 因子分析: calculate_factor, done
[2022-06-24 15:40:20.171418] INFO: 因子分析: QuantileReturns.before_process
[2022-06-24 15:40:20.172984] INFO: 因子分析: IC.before_process
[2022-06-24 15:40:20.174143] INFO: 因子分析: BasicDescription.before_process
[2022-06-24 15:40:20.175320] INFO: 因子分析: Industry.before_process
[2022-06-24 15:40:20.176487] INFO: 因子分析: RebalanceOverlap.before_process
[2022-06-24 15:40:20.177560] INFO: 因子分析: PBRatio.before_process
[2022-06-24 15:40:20.178680] INFO: 因子分析: Turnover.before_process
[2022-06-24 15:40:20.179931] INFO: 因子分析: Stocks.before_process
[2022-06-24 15:40:20.180962] INFO: 因子分析: MarketCap.before_process
[2022-06-24 15:40:20.181966] INFO: 因子分析: FactorValue.before_process
[2022-06-24 15:40:20.182924] INFO: 因子分析: FactorPairwiseCorrelationMerged.before_process
[2022-06-24 15:40:20.230789] INFO: 因子分析: process metrics, start ..
[2022-06-24 15:40:20.976140] INFO: 因子分析: process, 3184560/3236142 rows ..
[2022-06-24 15:40:20.977876] INFO: 因子分析: BacktestInterval.process, 0.000s
[2022-06-24 15:40:20.979468] INFO: 因子分析: Benchmark.process, 0.000s
[2022-06-24 15:40:20.981164] INFO: 因子分析: StockPool.process, 0.000s
[2022-06-24 15:40:20.982946] INFO: 因子分析: UserDataMerge.process, 0.000s
[2022-06-24 15:40:20.984215] INFO: 因子分析: DropSTStocks.process, 0.000s
[2022-06-24 15:40:20.985433] INFO: 因子分析: DropPriceLimitStocks.process, 0.000s
[2022-06-24 15:40:20.986623] INFO: 因子分析: DropNewStocks.process, 0.000s
[2022-06-24 15:40:20.987822] INFO: 因子分析: DropSuspendedStocks.process, 0.000s
[2022-06-24 15:40:20.989061] INFO: 因子分析: QuantileCount.process, 0.000s
[2022-06-24 15:40:20.990236] INFO: 因子分析: CommissionRates.process, 0.000s
[2022-06-24 15:40:20.991210] INFO: 因子分析: Cutoutliers.process, 0.000s
[2022-06-24 15:40:20.992242] INFO: 因子分析: Normalization.process, 0.000s
[2022-06-24 15:40:20.993201] INFO: 因子分析: Neutralization.process, 0.000s
[2022-06-24 15:40:20.994360] INFO: 因子分析: DelayRebalanceDays.process, 0.000s
[2022-06-24 15:41:13.227787] INFO: 因子分析: RebalancePeriod.process, 52.232s
[2022-06-24 15:41:13.229719] INFO: 因子分析: RebalancePeriodsReturns.process, 0.000s
[2022-06-24 15:41:13.231458] INFO: 因子分析: RebalancePrice.process, 0.000s
[2022-06-24 15:41:13.232732] INFO: 因子分析: ReturnsCalculationMethod.process, 0.000s
[2022-06-24 15:41:13.233881] INFO: 因子分析: FactorCoverage.process, 0.000s
[2022-06-24 15:41:13.410227] INFO: 因子分析: QuantileReturns.process, 0.175s
[2022-06-24 15:41:21.549672] INFO: 因子分析: IC.process, 8.137s
[2022-06-24 15:41:21.912490] INFO: 因子分析: BasicDescription.process, 0.361s
[2022-06-24 15:41:23.120897] INFO: 因子分析: Industry.process, 1.207s
[2022-06-24 15:41:23.906493] INFO: 因子分析: RebalanceOverlap.process, 0.784s
[2022-06-24 15:41:24.228088] INFO: 因子分析: PBRatio.process, 0.320s
[2022-06-24 15:41:24.403448] INFO: 因子分析: Turnover.process, 0.173s
[2022-06-24 15:41:24.450608] INFO: 因子分析: Stocks.process, 0.046s
[2022-06-24 15:41:25.649651] INFO: 因子分析: MarketCap.process, 1.197s
[2022-06-24 15:41:26.078049] INFO: 因子分析: FactorValue.process, 0.426s
[2022-06-24 15:41:26.436527] INFO: 因子分析: process metrics, 66.206s
[2022-06-24 15:41:26.480654] INFO: 因子分析: QuantileReturns.after_process
[2022-06-24 15:41:26.482244] INFO: 因子分析: IC.after_process
[2022-06-24 15:41:26.483579] INFO: 因子分析: BasicDescription.after_process
[2022-06-24 15:41:26.484630] INFO: 因子分析: Industry.after_process
[2022-06-24 15:41:26.485694] INFO: 因子分析: RebalanceOverlap.after_process
[2022-06-24 15:41:26.486732] INFO: 因子分析: PBRatio.after_process
[2022-06-24 15:41:26.487748] INFO: 因子分析: Turnover.after_process
[2022-06-24 15:41:26.488737] INFO: 因子分析: Stocks.after_process
[2022-06-24 15:41:26.489751] INFO: 因子分析: MarketCap.after_process
[2022-06-24 15:41:26.490909] INFO: 因子分析: FactorValue.after_process
[2022-06-24 15:41:26.491993] INFO: 因子分析: FactorPairwiseCorrelationMerged.after_process
[2022-06-24 15:41:26.493112] INFO: 因子分析: QuantileReturns.before_merged_process
[2022-06-24 15:41:26.494155] INFO: 因子分析: IC.before_merged_process
[2022-06-24 15:41:26.495185] INFO: 因子分析: BasicDescription.before_merged_process
[2022-06-24 15:41:26.496215] INFO: 因子分析: Industry.before_merged_process
[2022-06-24 15:41:26.497179] INFO: 因子分析: RebalanceOverlap.before_merged_process
[2022-06-24 15:41:26.498208] INFO: 因子分析: PBRatio.before_merged_process
[2022-06-24 15:41:26.499198] INFO: 因子分析: Turnover.before_merged_process
[2022-06-24 15:41:26.500246] INFO: 因子分析: Stocks.before_merged_process
[2022-06-24 15:41:26.501265] INFO: 因子分析: MarketCap.before_merged_process
[2022-06-24 15:41:26.502255] INFO: 因子分析: FactorValue.before_merged_process
[2022-06-24 15:41:26.503297] INFO: 因子分析: FactorPairwiseCorrelationMerged.before_merged_process
[2022-06-24 15:41:26.504870] INFO: 因子分析: QuantileReturns.after_merged_process
[2022-06-24 15:41:26.506119] INFO: 因子分析: IC.after_merged_process
[2022-06-24 15:41:26.508018] INFO: 因子分析: BasicDescription.after_merged_process
[2022-06-24 15:41:26.509065] INFO: 因子分析: Industry.after_merged_process
[2022-06-24 15:41:26.510115] INFO: 因子分析: RebalanceOverlap.after_merged_process
[2022-06-24 15:41:26.511296] INFO: 因子分析: PBRatio.after_merged_process
[2022-06-24 15:41:26.512354] INFO: 因子分析: Turnover.after_merged_process
[2022-06-24 15:41:26.513614] INFO: 因子分析: Stocks.after_merged_process
[2022-06-24 15:41:26.514885] INFO: 因子分析: MarketCap.after_merged_process
[2022-06-24 15:41:26.515908] INFO: 因子分析: FactorValue.after_merged_process
[2022-06-24 15:41:26.516909] INFO: 因子分析: FactorPairwiseCorrelationMerged.after_merged_process
[2022-06-24 15:41:26.522967] INFO: 因子分析: batch_process ended, 166.800s
[2022-06-24 15:41:27.391541] INFO: moduleinvoker: factorlens.v1 运行完成[168.394297s].
因子分析: big_order_ret
{
"type": "factor-track",
"data": {
"exprs": ["big_order_ret"],
"options": {"BacktestInterval": ["2019-01-01", "2022-08-01"], "Benchmark": "none", "StockPool": "all", "UserDataMerge": "inner", "DropSTStocks": 0, "DropPriceLimitStocks": 0, "DropNewStocks": 60, "DropSuspendedStocks": 0, "QuantileCount": 10, "CommissionRates": 0.0002, "Cutoutliers": 1, "Normalization": 0, "Neutralization": "", "DelayRebalanceDays": 0, "RebalancePeriod": 2, "RebalancePeriodsReturns": 0, "RebalancePrice": "close_0", "ReturnsCalculationMethod": "cumprod", "FactorCoverage": 0.5, "_HASH": "701e60fc1a4abfa6fe0173b644307153"}
}
}
|
累计收益 |
近1年收益 |
近3月收益 |
近1月收益 |
近1周收益 |
昨日收益 |
最大回撤 |
盈亏比 |
胜率 |
夏普比率 |
收益波动率 |
最小分位 |
51.97% |
23.57% |
-6.43% |
8.23% |
0.38% |
-0.24% |
29.97% |
0.97 |
0.54 |
0.51 |
24.79% |
最大分位 |
-32.01% |
-20.17% |
-22.30% |
-4.90% |
-1.55% |
0.13% |
52.12% |
0.86 |
0.52 |
-0.44 |
26.91% |
多空组合 |
46.97% |
23.80% |
9.43% |
6.51% |
0.96% |
-0.19% |
7.69% |
1.20 |
0.53 |
1.24 |
7.08% |
股票名称 |
股票代码 |
因子值 |
国茂股份 |
603915.SHA |
-1.2132 |
金埔园林 |
301098.SZA |
-1.1447 |
国瑞科技 |
300600.SZA |
-1.1415 |
宝塔实业 |
000595.SZA |
-1.1366 |
震裕科技 |
300953.SZA |
-1.1343 |
麦迪科技 |
603990.SHA |
-1.1313 |
青鸟消防 |
002960.SZA |
-1.1308 |
迈信林 |
688685.SHA |
-1.1289 |
苏文电能 |
300982.SZA |
-1.1284 |
上海能源 |
600508.SHA |
-1.1282 |
盛视科技 |
002990.SZA |
-1.1271 |
开立医疗 |
300633.SZA |
-1.1266 |
中文在线 |
300364.SZA |
-1.1261 |
火炬电子 |
603678.SHA |
-1.1166 |
退市游久 |
600652.SHA |
-1.1163 |
禾盛新材 |
002290.SZA |
-1.1158 |
粤传媒 |
002181.SZA |
-1.1150 |
陕西建工 |
600248.SHA |
-1.1136 |
贵人鸟 |
603555.SHA |
-1.1129 |
德新交运 |
603032.SHA |
-1.1124 |
股票名称 |
股票代码 |
因子值 |
奥普家居 |
603551.SHA |
-0.9041 |
*ST腾信 |
300392.SZA |
-0.9041 |
闽发铝业 |
002578.SZA |
-0.9017 |
恒玄科技 |
688608.SHA |
-0.9005 |
达志科技 |
300530.SZA |
-0.8996 |
卓郎智能 |
600545.SHA |
-0.8982 |
众源新材 |
603527.SHA |
-0.8975 |
数源科技 |
000909.SZA |
-0.8932 |
汇得科技 |
603192.SHA |
-0.8914 |
友阿股份 |
002277.SZA |
-0.8889 |
凤凰光学 |
600071.SHA |
-0.8813 |
远东传动 |
002406.SZA |
-0.8804 |
兴民智通 |
002355.SZA |
-0.8766 |
浙江世宝 |
002703.SZA |
-0.8736 |
万胜智能 |
300882.SZA |
-0.8723 |
德力股份 |
002571.SZA |
-0.8591 |
中岩大地 |
003001.SZA |
-0.8545 |
浩物股份 |
000757.SZA |
-0.8528 |
中水渔业 |
000798.SZA |
-0.8497 |
英特集团 |
000411.SZA |
-0.8256 |