{"description":"实验创建于2022/6/18","graph":{"edges":[{"to_node_id":"-331:instruments","from_node_id":"-263:data"},{"to_node_id":"-381:instruments","from_node_id":"-263:data"},{"to_node_id":"-331:features","from_node_id":"-278:data"},{"to_node_id":"-338:features","from_node_id":"-278:data"},{"to_node_id":"-367:features","from_node_id":"-278:data"},{"to_node_id":"-338:input_data","from_node_id":"-331:data"},{"to_node_id":"-356:data2","from_node_id":"-338:data"},{"to_node_id":"-401:input_data","from_node_id":"-356:data"},{"to_node_id":"-356:data1","from_node_id":"-381:data"},{"to_node_id":"-367:training_ds","from_node_id":"-401:data"},{"to_node_id":"-404:input_1","from_node_id":"-401:data"}],"nodes":[{"node_id":"-263","module_id":"BigQuantSpace.instruments.instruments-v2","parameters":[{"name":"start_date","value":"2010-01-01","type":"Literal","bound_global_parameter":null},{"name":"end_date","value":"2015-01-01","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":"-263"}],"output_ports":[{"name":"data","node_id":"-263"}],"cacheable":true,"seq_num":5,"comment":"","comment_collapsed":true},{"node_id":"-278","module_id":"BigQuantSpace.input_features.input_features-v1","parameters":[{"name":"features","value":"\n# #号开始的表示注释,注释需单独一行\n# 多个特征,每行一个,可以包含基础特征和衍生特征,特征须为本平台特征\nreturn_5\nreturn_10\nreturn_20\navg_amount_0/avg_amount_5\navg_amount_5/avg_amount_20\nrank_avg_amount_0/rank_avg_amount_5\nrank_avg_amount_5/rank_avg_amount_10\nrank_return_0\nrank_return_5\nrank_return_10\nrank_return_0/rank_return_5\nrank_return_5/rank_return_10\npe_ttm_0\n","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"features_ds","node_id":"-278"}],"output_ports":[{"name":"data","node_id":"-278"}],"cacheable":true,"seq_num":4,"comment":"","comment_collapsed":true},{"node_id":"-322","module_id":"BigQuantSpace.instruments.instruments-v2","parameters":[{"name":"start_date","value":"2015-01-01","type":"Literal","bound_global_parameter":null},{"name":"end_date","value":"2017-01-01","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":"-322"}],"output_ports":[{"name":"data","node_id":"-322"}],"cacheable":true,"seq_num":7,"comment":"","comment_collapsed":true},{"node_id":"-331","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":"-331"},{"name":"features","node_id":"-331"}],"output_ports":[{"name":"data","node_id":"-331"}],"cacheable":true,"seq_num":8,"comment":"","comment_collapsed":true},{"node_id":"-338","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":"-338"},{"name":"features","node_id":"-338"}],"output_ports":[{"name":"data","node_id":"-338"}],"cacheable":true,"seq_num":9,"comment":"","comment_collapsed":true},{"node_id":"-356","module_id":"BigQuantSpace.join.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":"data1","node_id":"-356"},{"name":"data2","node_id":"-356"}],"output_ports":[{"name":"data","node_id":"-356"}],"cacheable":true,"seq_num":10,"comment":"","comment_collapsed":true},{"node_id":"-367","module_id":"BigQuantSpace.stock_ranker_train.stock_ranker_train-v6","parameters":[{"name":"learning_algorithm","value":"排序","type":"Literal","bound_global_parameter":null},{"name":"number_of_leaves","value":30,"type":"Literal","bound_global_parameter":null},{"name":"minimum_docs_per_leaf","value":1000,"type":"Literal","bound_global_parameter":null},{"name":"number_of_trees","value":20,"type":"Literal","bound_global_parameter":null},{"name":"learning_rate","value":0.1,"type":"Literal","bound_global_parameter":null},{"name":"max_bins","value":1023,"type":"Literal","bound_global_parameter":null},{"name":"feature_fraction","value":1,"type":"Literal","bound_global_parameter":null},{"name":"data_row_fraction","value":1,"type":"Literal","bound_global_parameter":null},{"name":"plot_charts","value":"True","type":"Literal","bound_global_parameter":null},{"name":"ndcg_discount_base","value":1,"type":"Literal","bound_global_parameter":null},{"name":"m_lazy_run","value":"False","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"training_ds","node_id":"-367"},{"name":"features","node_id":"-367"},{"name":"test_ds","node_id":"-367"},{"name":"base_model","node_id":"-367"}],"output_ports":[{"name":"model","node_id":"-367"},{"name":"feature_gains","node_id":"-367"},{"name":"m_lazy_run","node_id":"-367"}],"cacheable":true,"seq_num":11,"comment":"","comment_collapsed":true},{"node_id":"-381","module_id":"BigQuantSpace.advanced_auto_labeler.advanced_auto_labeler-v2","parameters":[{"name":"label_expr","value":"# #号开始的表示注释\n# 0. 每行一个,顺序执行,从第二个开始,可以使用label字段\n# 1. 可用数据字段见 https://bigquant.com/docs/develop/datasource/deprecated/history_data.html\n# 添加benchmark_前缀,可使用对应的benchmark数据\n# 2. 可用操作符和函数见 `表达式引擎 <https://bigquant.com/docs/develop/bigexpr/usage.html>`_\n\n# 计算收益:5日收盘价(作为卖出价格)除以明日开盘价(作为买入价格)\nshift(close, -5) / shift(open, -1)\n\n# 极值处理:用1%和99%分位的值做clip\nclip(label, all_quantile(label, 0.01), all_quantile(label, 0.99))\n\n# 将分数映射到分类,这里使用20个分类\nall_wbins(label, 20)\n\n# 过滤掉一字涨停的情况 (设置label为NaN,在后续处理和训练中会忽略NaN的label)\nwhere(shift(high, -1) == shift(low, -1), NaN, label)\n","type":"Literal","bound_global_parameter":null},{"name":"start_date","value":"","type":"Literal","bound_global_parameter":null},{"name":"end_date","value":"","type":"Literal","bound_global_parameter":null},{"name":"benchmark","value":"000300.SHA","type":"Literal","bound_global_parameter":null},{"name":"drop_na_label","value":"True","type":"Literal","bound_global_parameter":null},{"name":"cast_label_int","value":"True","type":"Literal","bound_global_parameter":null},{"name":"user_functions","value":"{}","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"instruments","node_id":"-381"}],"output_ports":[{"name":"data","node_id":"-381"}],"cacheable":true,"seq_num":12,"comment":"","comment_collapsed":true},{"node_id":"-401","module_id":"BigQuantSpace.dropnan.dropnan-v2","parameters":[],"input_ports":[{"name":"input_data","node_id":"-401"},{"name":"features","node_id":"-401"}],"output_ports":[{"name":"data","node_id":"-401"}],"cacheable":true,"seq_num":2,"comment":"","comment_collapsed":true},{"node_id":"-404","module_id":"BigQuantSpace.stockpool_select.stockpool_select-v6","parameters":[{"name":"self_instruments","value":"[]","type":"Literal","bound_global_parameter":null},{"name":"input_concepts","value":"[]","type":"Literal","bound_global_parameter":null},{"name":"input_industrys","value":"[]","type":"Literal","bound_global_parameter":null},{"name":"input_indexs","value":"[]","type":"Literal","bound_global_parameter":null},{"name":"input_st","value":"过滤","type":"Literal","bound_global_parameter":null},{"name":"input_suspend","value":"过滤","type":"Literal","bound_global_parameter":null}],"input_ports":[{"name":"input_1","node_id":"-404"}],"output_ports":[{"name":"data","node_id":"-404"}],"cacheable":true,"seq_num":1,"comment":"","comment_collapsed":true}],"node_layout":"<node_postions><node_position Node='-263' Position='-74.31856536865234,-212.75603485107422,200,200'/><node_position Node='-278' Position='245.85989379882812,-215.4520721435547,200,200'/><node_position Node='-322' Position='650.3971557617188,24.513763427734375,200,200'/><node_position Node='-331' Position='69.33111572265625,18.395553588867188,200,200'/><node_position Node='-338' Position='114.19821166992188,188.54566955566406,200,200'/><node_position Node='-356' Position='-175.51539611816406,279.42901611328125,200,200'/><node_position Node='-367' Position='259.2971878051758,672.456787109375,200,200'/><node_position Node='-381' Position='-270.87762928009033,28.390146255493164,200,200'/><node_position Node='-401' Position='-159.87107181549072,435.822998046875,200,200'/><node_position Node='-404' Position='-174.17168617248535,582.2620849609375,200,200'/></node_postions>"},"nodes_readonly":false,"studio_version":"v2"}
[2022-06-18 14:59:17.316706] INFO: moduleinvoker: instruments.v2 开始运行..
[2022-06-18 14:59:17.324561] INFO: moduleinvoker: 命中缓存
[2022-06-18 14:59:17.326528] INFO: moduleinvoker: instruments.v2 运行完成[0.009829s].
[2022-06-18 14:59:17.335187] INFO: moduleinvoker: advanced_auto_labeler.v2 开始运行..
[2022-06-18 14:59:17.341690] INFO: moduleinvoker: 命中缓存
[2022-06-18 14:59:17.343454] INFO: moduleinvoker: advanced_auto_labeler.v2 运行完成[0.008271s].
[2022-06-18 14:59:17.347559] INFO: moduleinvoker: input_features.v1 开始运行..
[2022-06-18 14:59:17.353477] INFO: moduleinvoker: 命中缓存
[2022-06-18 14:59:17.355161] INFO: moduleinvoker: input_features.v1 运行完成[0.007606s].
[2022-06-18 14:59:17.368166] INFO: moduleinvoker: general_feature_extractor.v7 开始运行..
[2022-06-18 14:59:17.374367] INFO: moduleinvoker: 命中缓存
[2022-06-18 14:59:17.376924] INFO: moduleinvoker: general_feature_extractor.v7 运行完成[0.008741s].
[2022-06-18 14:59:17.385566] INFO: moduleinvoker: derived_feature_extractor.v3 开始运行..
[2022-06-18 14:59:17.391414] INFO: moduleinvoker: 命中缓存
[2022-06-18 14:59:17.393048] INFO: moduleinvoker: derived_feature_extractor.v3 运行完成[0.007487s].
[2022-06-18 14:59:17.400499] INFO: moduleinvoker: join.v3 开始运行..
[2022-06-18 14:59:17.407049] INFO: moduleinvoker: 命中缓存
[2022-06-18 14:59:17.409027] INFO: moduleinvoker: join.v3 运行完成[0.008526s].
[2022-06-18 14:59:17.416607] INFO: moduleinvoker: dropnan.v2 开始运行..
[2022-06-18 14:59:17.422375] INFO: moduleinvoker: 命中缓存
[2022-06-18 14:59:17.424229] INFO: moduleinvoker: dropnan.v2 运行完成[0.007626s].
[2022-06-18 14:59:17.430383] INFO: moduleinvoker: stockpool_select.v6 开始运行..
[2022-06-18 14:59:21.196642] ERROR: moduleinvoker: module name: stockpool_select, module version: v6, trackeback: KeyError: 'concept'
The above exception was the direct cause of the following exception:
KeyError: 'concept'
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
KeyError: 'concept'
The above exception was the direct cause of the following exception:
KeyError Traceback (most recent call last)
<ipython-input-150-cca3002ffef6> in <module>
89 )
90
---> 91 m1 = M.stockpool_select.v6(
92 input_1=m2.data,
93 self_instruments=[],
KeyError: 'concept'