克隆策略
{"Description":"实验创建于2017/8/26","Summary":"","Graph":{"EdgesInternal":[{"DestinationInputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-15:instruments","SourceOutputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-8:data"},{"DestinationInputPortId":"-2744:instruments","SourceOutputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-8:data"},{"DestinationInputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-53:data1","SourceOutputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-15:data"},{"DestinationInputPortId":"-2744:features","SourceOutputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-24:data"},{"DestinationInputPortId":"-2751:features","SourceOutputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-24:data"},{"DestinationInputPortId":"-2758:features","SourceOutputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-24:data"},{"DestinationInputPortId":"-2765:features","SourceOutputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-24:data"},{"DestinationInputPortId":"-481:features","SourceOutputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-24:data"},{"DestinationInputPortId":"-495:input_data","SourceOutputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-53:data"},{"DestinationInputPortId":"-587:input_1","SourceOutputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-60:predictions"},{"DestinationInputPortId":"-2758:instruments","SourceOutputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-62:data"},{"DestinationInputPortId":"-2775:instruments","SourceOutputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-62:data"},{"DestinationInputPortId":"-2751:input_data","SourceOutputPortId":"-2744:data"},{"DestinationInputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-53:data2","SourceOutputPortId":"-2751:data"},{"DestinationInputPortId":"-2765:input_data","SourceOutputPortId":"-2758:data"},{"DestinationInputPortId":"-499:input_data","SourceOutputPortId":"-2765:data"},{"DestinationInputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-60:model","SourceOutputPortId":"-481:model"},{"DestinationInputPortId":"-481:training_ds","SourceOutputPortId":"-495:data"},{"DestinationInputPortId":"287d2cb0-f53c-4101-bdf8-104b137c8601-60:data","SourceOutputPortId":"-499:data"},{"DestinationInputPortId":"-9476:input_1","SourceOutputPortId":"-9473:data"},{"DestinationInputPortId":"-8068:input_1","SourceOutputPortId":"-9476:data_1"},{"DestinationInputPortId":"-2775:options_data","SourceOutputPortId":"-8068:data_1"},{"DestinationInputPortId":"-9473:input_1","SourceOutputPortId":"-584:data_1"},{"DestinationInputPortId":"-584:input_1","SourceOutputPortId":"-587:data"}],"ModuleNodes":[{"Id":"287d2cb0-f53c-4101-bdf8-104b137c8601-8","ModuleId":"BigQuantSpace.instruments.instruments-v2","ModuleParameters":[{"Name":"start_date","Value":"2012-01-02","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"end_date","Value":"2015-01-01","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"market","Value":"CN_STOCK_A","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"instrument_list","Value":"","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"max_count","Value":"0","ValueType":"Literal","LinkedGlobalParameter":null}],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"rolling_conf","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-8"}],"OutputPortsInternal":[{"Name":"data","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-8","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":1,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"287d2cb0-f53c-4101-bdf8-104b137c8601-15","ModuleId":"BigQuantSpace.advanced_auto_labeler.advanced_auto_labeler-v2","ModuleParameters":[{"Name":"label_expr","Value":"# #号开始的表示注释\n# 0. 每行一个,顺序执行,从第二个开始,可以使用label字段\n# 1. 可用数据字段见 https://bigquant.com/docs/data_history_data.html\n# 添加benchmark_前缀,可使用对应的benchmark数据\n# 2. 可用操作符和函数见 `表达式引擎 <https://bigquant.com/docs/big_expr.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","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"start_date","Value":"","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"end_date","Value":"","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"benchmark","Value":"000300.SHA","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"drop_na_label","Value":"True","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"cast_label_int","Value":"True","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"user_functions","Value":"","ValueType":"Literal","LinkedGlobalParameter":null}],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"instruments","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-15"}],"OutputPortsInternal":[{"Name":"data","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-15","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":2,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"287d2cb0-f53c-4101-bdf8-104b137c8601-24","ModuleId":"BigQuantSpace.input_features.input_features-v1","ModuleParameters":[{"Name":"features","Value":"","ValueType":"Literal","LinkedGlobalParameter":null}],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"features_ds","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-24"}],"OutputPortsInternal":[{"Name":"data","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-24","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":3,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"287d2cb0-f53c-4101-bdf8-104b137c8601-53","ModuleId":"BigQuantSpace.join.join-v3","ModuleParameters":[{"Name":"on","Value":"date,instrument","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"how","Value":"inner","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"sort","Value":"False","ValueType":"Literal","LinkedGlobalParameter":null}],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"data1","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-53"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"data2","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-53"}],"OutputPortsInternal":[{"Name":"data","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-53","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":7,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"287d2cb0-f53c-4101-bdf8-104b137c8601-60","ModuleId":"BigQuantSpace.stock_ranker_predict.stock_ranker_predict-v5","ModuleParameters":[{"Name":"m_lazy_run","Value":"False","ValueType":"Literal","LinkedGlobalParameter":null}],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"model","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-60"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"data","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-60"}],"OutputPortsInternal":[{"Name":"predictions","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-60","OutputType":null},{"Name":"m_lazy_run","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-60","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":8,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"287d2cb0-f53c-4101-bdf8-104b137c8601-62","ModuleId":"BigQuantSpace.instruments.instruments-v2","ModuleParameters":[{"Name":"start_date","Value":"2015-01-01","ValueType":"Literal","LinkedGlobalParameter":"交易日期"},{"Name":"end_date","Value":"2020-09-01","ValueType":"Literal","LinkedGlobalParameter":"交易日期"},{"Name":"market","Value":"CN_STOCK_A","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"instrument_list","Value":"","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"max_count","Value":"0","ValueType":"Literal","LinkedGlobalParameter":null}],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"rolling_conf","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-62"}],"OutputPortsInternal":[{"Name":"data","NodeId":"287d2cb0-f53c-4101-bdf8-104b137c8601-62","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":9,"IsPartOfPartialRun":null,"Comment":"预测数据,用于回测和模拟","CommentCollapsed":false},{"Id":"-2744","ModuleId":"BigQuantSpace.general_feature_extractor.general_feature_extractor-v7","ModuleParameters":[{"Name":"start_date","Value":"","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"end_date","Value":"","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"before_start_days","Value":0,"ValueType":"Literal","LinkedGlobalParameter":null}],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"instruments","NodeId":"-2744"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"features","NodeId":"-2744"}],"OutputPortsInternal":[{"Name":"data","NodeId":"-2744","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":15,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"-2751","ModuleId":"BigQuantSpace.derived_feature_extractor.derived_feature_extractor-v3","ModuleParameters":[{"Name":"date_col","Value":"date","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"instrument_col","Value":"instrument","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"drop_na","Value":"False","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"remove_extra_columns","Value":"False","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"user_functions","Value":"","ValueType":"Literal","LinkedGlobalParameter":null}],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"input_data","NodeId":"-2751"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"features","NodeId":"-2751"}],"OutputPortsInternal":[{"Name":"data","NodeId":"-2751","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":16,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"-2758","ModuleId":"BigQuantSpace.general_feature_extractor.general_feature_extractor-v7","ModuleParameters":[{"Name":"start_date","Value":"","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"end_date","Value":"","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"before_start_days","Value":"60","ValueType":"Literal","LinkedGlobalParameter":null}],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"instruments","NodeId":"-2758"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"features","NodeId":"-2758"}],"OutputPortsInternal":[{"Name":"data","NodeId":"-2758","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":17,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"-2765","ModuleId":"BigQuantSpace.derived_feature_extractor.derived_feature_extractor-v3","ModuleParameters":[{"Name":"date_col","Value":"date","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"instrument_col","Value":"instrument","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"drop_na","Value":"False","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"remove_extra_columns","Value":"False","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"user_functions","Value":"","ValueType":"Literal","LinkedGlobalParameter":null}],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"input_data","NodeId":"-2765"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"features","NodeId":"-2765"}],"OutputPortsInternal":[{"Name":"data","NodeId":"-2765","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":18,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"-2775","ModuleId":"BigQuantSpace.trade.trade-v4","ModuleParameters":[{"Name":"start_date","Value":"","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"end_date","Value":"","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"initialize","Value":"","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"handle_data","Value":"","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"prepare","Value":"# 回测引擎:准备数据,只执行一次\ndef bigquant_run(context):\n pass\n","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"before_trading_start","Value":"","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"volume_limit","Value":0.025,"ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"order_price_field_buy","Value":"open","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"order_price_field_sell","Value":"close","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"capital_base","Value":"200000","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"auto_cancel_non_tradable_orders","Value":"True","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"data_frequency","Value":"daily","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"price_type","Value":"后复权","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"product_type","Value":"股票","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"plot_charts","Value":"True","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"backtest_only","Value":"False","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"benchmark","Value":"","ValueType":"Literal","LinkedGlobalParameter":null}],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"instruments","NodeId":"-2775"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"options_data","NodeId":"-2775"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"history_ds","NodeId":"-2775"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"benchmark_ds","NodeId":"-2775"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"trading_calendar","NodeId":"-2775"}],"OutputPortsInternal":[{"Name":"raw_perf","NodeId":"-2775","OutputType":null}],"UsePreviousResults":false,"moduleIdForCode":19,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"-481","ModuleId":"BigQuantSpace.stock_ranker_train.stock_ranker_train-v6","ModuleParameters":[{"Name":"learning_algorithm","Value":"排序","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"number_of_leaves","Value":"10","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"minimum_docs_per_leaf","Value":"1000","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"number_of_trees","Value":"62","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"learning_rate","Value":"0.1","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"max_bins","Value":"1023","ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"feature_fraction","Value":1,"ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"data_row_fraction","Value":1,"ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"ndcg_discount_base","Value":1,"ValueType":"Literal","LinkedGlobalParameter":null},{"Name":"m_lazy_run","Value":"False","ValueType":"Literal","LinkedGlobalParameter":null}],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"training_ds","NodeId":"-481"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"features","NodeId":"-481"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"test_ds","NodeId":"-481"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"base_model","NodeId":"-481"}],"OutputPortsInternal":[{"Name":"model","NodeId":"-481","OutputType":null},{"Name":"feature_gains","NodeId":"-481","OutputType":null},{"Name":"m_lazy_run","NodeId":"-481","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":4,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"-495","ModuleId":"BigQuantSpace.dropnan.dropnan-v2","ModuleParameters":[],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"input_data","NodeId":"-495"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"features","NodeId":"-495"}],"OutputPortsInternal":[{"Name":"data","NodeId":"-495","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":5,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"-499","ModuleId":"BigQuantSpace.dropnan.dropnan-v2","ModuleParameters":[],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"input_data","NodeId":"-499"},{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"features","NodeId":"-499"}],"OutputPortsInternal":[{"Name":"data","NodeId":"-499","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":10,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"-9473","ModuleId":"BigQuantSpace.filter_delist_stocks.filter_delist_stocks-v3","ModuleParameters":[],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"input_1","NodeId":"-9473"}],"OutputPortsInternal":[{"Name":"data","NodeId":"-9473","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":6,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"-9476","ModuleId":"BigQuantSpace.filtet_st_stock_tomo.filtet_st_stock_tomo-v3","ModuleParameters":[],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"input_1","NodeId":"-9476"}],"OutputPortsInternal":[{"Name":"data_1","NodeId":"-9476","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":11,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"-8068","ModuleId":"BigQuantSpace.filter_stockcode.filter_stockcode-v2","ModuleParameters":[{"Name":"start","Value":"688","ValueType":"Literal","LinkedGlobalParameter":null}],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"input_1","NodeId":"-8068"}],"OutputPortsInternal":[{"Name":"data_1","NodeId":"-8068","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":12,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"-584","ModuleId":"BigQuantSpace.filtet_st_stock.filtet_st_stock-v7","ModuleParameters":[],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"input_1","NodeId":"-584"}],"OutputPortsInternal":[{"Name":"data_1","NodeId":"-584","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":14,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true},{"Id":"-587","ModuleId":"BigQuantSpace.filtet_st_stock_old.filtet_st_stock_old-v4","ModuleParameters":[],"InputPortsInternal":[{"DataSourceId":null,"TrainedModelId":null,"TransformModuleId":null,"Name":"input_1","NodeId":"-587"}],"OutputPortsInternal":[{"Name":"data","NodeId":"-587","OutputType":null}],"UsePreviousResults":true,"moduleIdForCode":20,"IsPartOfPartialRun":null,"Comment":"","CommentCollapsed":true}],"SerializedClientData":"<?xml version='1.0' encoding='utf-16'?><DataV1 xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'><Meta /><NodePositions><NodePosition Node='287d2cb0-f53c-4101-bdf8-104b137c8601-8' Position='208,66,200,200'/><NodePosition Node='287d2cb0-f53c-4101-bdf8-104b137c8601-15' Position='70,181,200,200'/><NodePosition Node='287d2cb0-f53c-4101-bdf8-104b137c8601-24' Position='765,16,200,200'/><NodePosition Node='287d2cb0-f53c-4101-bdf8-104b137c8601-53' Position='243,373,200,200'/><NodePosition Node='287d2cb0-f53c-4101-bdf8-104b137c8601-60' Position='909,666,200,200'/><NodePosition Node='287d2cb0-f53c-4101-bdf8-104b137c8601-62' Position='1074,127,200,200'/><NodePosition Node='-2744' Position='381,188,200,200'/><NodePosition Node='-2751' Position='385,280,200,200'/><NodePosition Node='-2758' Position='1078,236,200,200'/><NodePosition Node='-2765' Position='1081,327,200,200'/><NodePosition Node='-2775' Position='1147,859,200,200'/><NodePosition Node='-481' Position='638,552,200,200'/><NodePosition Node='-495' Position='376,467,200,200'/><NodePosition Node='-499' Position='1078,418,200,200'/><NodePosition Node='-9473' Position='1246,607,200,200'/><NodePosition Node='-9476' Position='1257,683,200,200'/><NodePosition Node='-8068' Position='1245,754,200,200'/><NodePosition Node='-584' Position='1261,547,200,200'/><NodePosition Node='-587' Position='1281,485,200,200'/></NodePositions><NodeGroups /></DataV1>"},"IsDraft":true,"ParentExperimentId":null,"WebService":{"IsWebServiceExperiment":false,"Inputs":[],"Outputs":[],"Parameters":[{"Name":"交易日期","Value":"","ParameterDefinition":{"Name":"交易日期","FriendlyName":"交易日期","DefaultValue":"","ParameterType":"String","HasDefaultValue":true,"IsOptional":true,"ParameterRules":[],"HasRules":false,"MarkupType":0,"CredentialDescriptor":null}}],"WebServiceGroupId":null,"SerializedClientData":"<?xml version='1.0' encoding='utf-16'?><DataV1 xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'><Meta /><NodePositions></NodePositions><NodeGroups /></DataV1>"},"DisableNodesUpdate":false,"Category":"user","Tags":[],"IsPartialRun":false}
In [ ]:
# 本代码由可视化策略环境自动生成 2020年9月18日 07:47
# 本代码单元只能在可视化模式下编辑。您也可以拷贝代码,粘贴到新建的代码单元或者策略,然后修改。
# 回测引擎:准备数据,只执行一次
def m19_prepare_bigquant_run(context):
pass
m1 = M.instruments.v2(
start_date='2012-01-02',
end_date='2015-01-01',
market='CN_STOCK_A',
instrument_list='',
max_count=0
)
m2 = M.advanced_auto_labeler.v2(
instruments=m1.data,
label_expr="""# #号开始的表示注释
# 0. 每行一个,顺序执行,从第二个开始,可以使用label字段
# 1. 可用数据字段见 https://bigquant.com/docs/data_history_data.html
# 添加benchmark_前缀,可使用对应的benchmark数据
# 2. 可用操作符和函数见 `表达式引擎 <https://bigquant.com/docs/big_expr.html>`_
# 计算收益:5日收盘价(作为卖出价格)除以明日开盘价(作为买入价格)
shift(close, -5) / shift(open, -1)
# 极值处理:用1%和99%分位的值做clip
clip(label, all_quantile(label, 0.01), all_quantile(label, 0.99))
# 将分数映射到分类,这里使用20个分类
all_wbins(label, 20)
# 过滤掉一字涨停的情况 (设置label为NaN,在后续处理和训练中会忽略NaN的label)
where(shift(high, -1) == shift(low, -1), NaN, label)
""",
start_date='',
end_date='',
benchmark='000300.SHA',
drop_na_label=True,
cast_label_int=True
)
m3 = M.input_features.v1(
features=''
)
m15 = M.general_feature_extractor.v7(
instruments=m1.data,
features=m3.data,
start_date='',
end_date='',
before_start_days=0
)
m16 = M.derived_feature_extractor.v3(
input_data=m15.data,
features=m3.data,
date_col='date',
instrument_col='instrument',
drop_na=False,
remove_extra_columns=False
)
m7 = M.join.v3(
data1=m2.data,
data2=m16.data,
on='date,instrument',
how='inner',
sort=False
)
m5 = M.dropnan.v2(
input_data=m7.data
)
m4 = M.stock_ranker_train.v6(
training_ds=m5.data,
features=m3.data,
learning_algorithm='排序',
number_of_leaves=10,
minimum_docs_per_leaf=1000,
number_of_trees=62,
learning_rate=0.1,
max_bins=1023,
feature_fraction=1,
data_row_fraction=1,
ndcg_discount_base=1,
m_lazy_run=False
)
m9 = M.instruments.v2(
start_date=T.live_run_param('trading_date', '2015-01-01'),
end_date=T.live_run_param('trading_date', '2020-09-01'),
market='CN_STOCK_A',
instrument_list='',
max_count=0
)
m17 = M.general_feature_extractor.v7(
instruments=m9.data,
features=m3.data,
start_date='',
end_date='',
before_start_days=60
)
m18 = M.derived_feature_extractor.v3(
input_data=m17.data,
features=m3.data,
date_col='date',
instrument_col='instrument',
drop_na=False,
remove_extra_columns=False
)
m10 = M.dropnan.v2(
input_data=m18.data
)
m8 = M.stock_ranker_predict.v5(
model=m4.model,
data=m10.data,
m_lazy_run=False
)
m20 = M.filtet_st_stock_old.v4(
input_1=m8.predictions
)
m14 = M.filtet_st_stock.v7(
input_1=m20.data
)
m6 = M.filter_delist_stocks.v3(
input_1=m14.data_1
)
m11 = M.filtet_st_stock_tomo.v3(
input_1=m6.data
)
m12 = M.filter_stockcode.v2(
input_1=m11.data_1,
start='688'
)
m19 = M.trade.v4(
instruments=m9.data,
options_data=m12.data_1,
start_date='',
end_date='',
prepare=m19_prepare_bigquant_run,
volume_limit=0.025,
order_price_field_buy='open',
order_price_field_sell='close',
capital_base=200000,
auto_cancel_non_tradable_orders=True,
data_frequency='daily',
price_type='后复权',
product_type='股票',
plot_charts=True,
backtest_only=False,
benchmark=''
)
日志 82 条,错误日志
0 条
[2020-09-18 07:43:04.439875] INFO: moduleinvoker: instruments.v2 开始运行..
[2020-09-18 07:43:04.504302] INFO: moduleinvoker: 命中缓存
[2020-09-18 07:43:04.505427] INFO: moduleinvoker: instruments.v2 运行完成[0.065564s].
[2020-09-18 07:43:04.509700] INFO: moduleinvoker: advanced_auto_labeler.v2 开始运行..
[2020-09-18 07:43:04.514192] INFO: moduleinvoker: 命中缓存
[2020-09-18 07:43:04.515709] INFO: moduleinvoker: advanced_auto_labeler.v2 运行完成[0.006005s].
[2020-09-18 07:43:04.518215] INFO: moduleinvoker: input_features.v1 开始运行..
[2020-09-18 07:43:04.548174] INFO: moduleinvoker: input_features.v1 运行完成[0.029937s].
[2020-09-18 07:43:04.600373] INFO: moduleinvoker: general_feature_extractor.v7 开始运行..
[2020-09-18 07:43:04.635562] WARNING: DataReader: factor [rank_beta_industry_5_0] will deprecated,you can replace with [rank_beta_industry1_5_0]
[2020-09-18 07:43:16.450911] INFO: 基础特征抽取: 年份 2012, 特征行数=565675
[2020-09-18 07:43:16.453120] WARNING: DataReader: factor [rank_beta_industry_5_0] will deprecated,you can replace with [rank_beta_industry1_5_0]
[2020-09-18 07:43:27.576987] INFO: 基础特征抽取: 年份 2013, 特征行数=564168
[2020-09-18 07:43:27.579016] WARNING: DataReader: factor [rank_beta_industry_5_0] will deprecated,you can replace with [rank_beta_industry1_5_0]
[2020-09-18 07:43:39.025241] INFO: 基础特征抽取: 年份 2014, 特征行数=569948
[2020-09-18 07:43:39.028224] WARNING: DataReader: factor [rank_beta_industry_5_0] will deprecated,you can replace with [rank_beta_industry1_5_0]
[2020-09-18 07:43:44.210949] INFO: 基础特征抽取: 年份 2015, 特征行数=0
[2020-09-18 07:43:45.992147] INFO: 基础特征抽取: 总行数: 1699791
[2020-09-18 07:43:45.998601] INFO: moduleinvoker: general_feature_extractor.v7 运行完成[41.398221s].
[2020-09-18 07:43:46.001363] INFO: moduleinvoker: derived_feature_extractor.v3 开始运行..
[2020-09-18 07:43:50.413157] INFO: derived_feature_extractor: 提取完成 rank_swing_volatility_5_0 #818.-32, 0.013s
[2020-09-18 07:43:50.429356] INFO: derived_feature_extractor: 提取完成 ta_sma_5_0/ta_sma_20_0 #1379.-34, 0.015s
[2020-09-18 07:43:50.436374] INFO: derived_feature_extractor: 提取完成 mf_net_pct_xl_0 #1044.-36, 0.006s
[2020-09-18 07:43:50.497136] INFO: derived_feature_extractor: 提取完成 rank_return_20 #1021.-33, 0.060s
[2020-09-18 07:43:50.507751] INFO: derived_feature_extractor: 提取完成 return_2 #1178.-34, 0.009s
[2020-09-18 07:43:50.530550] INFO: derived_feature_extractor: 提取完成 mf_net_pct_l_0 #1238.-31, 0.021s
[2020-09-18 07:43:50.538171] INFO: derived_feature_extractor: 提取完成 return_1 #847.-35, 0.006s
[2020-09-18 07:43:50.599433] INFO: derived_feature_extractor: 提取完成 avg_turn_15/turn_0 #1122.-36, 0.060s
[2020-09-18 07:43:54.639558] INFO: derived_feature_extractor: 提取完成 sum(mf_net_pct_l_0, 5) #1193.-32, 4.039s
[2020-09-18 07:43:54.647289] INFO: derived_feature_extractor: 提取完成 mf_net_amount_m_0 #1051-32, 0.007s
[2020-09-18 07:43:54.708137] INFO: derived_feature_extractor: 提取完成 rank_avg_amount_5 #840.-42, 0.060s
[2020-09-18 07:43:54.744179] INFO: derived_feature_extractor: 提取完成 (close_0/open_0 -1)*(volume_0/volume_1-1) #1238.-33, 0.035s
[2020-09-18 07:43:54.811313] INFO: derived_feature_extractor: 提取完成 (open_0-close_0)/close_0 #1034.-34, 0.065s
[2020-09-18 07:43:54.830053] INFO: derived_feature_extractor: 提取完成 mf_net_pct_m_0 #936.-30, 0.014s
[2020-09-18 07:43:54.898297] INFO: derived_feature_extractor: 提取完成 ta_sma_10_0/ta_sma_30_0 #1022.-48, 0.067s
[2020-09-18 07:43:54.932830] INFO: derived_feature_extractor: 提取完成 avg_turn_13/turn_0 #1238.-33, 0.033s
[2020-09-18 07:43:55.108874] INFO: derived_feature_extractor: 提取完成 (high_0-low_0+high_1-low_1+high_2-low_2+high_3-low_3+high_4-low_4+high_5-low_5+high_6-low_6+high_7-low_7+high_8-low_8), 0.175s
[2020-09-18 07:43:55.131758] INFO: derived_feature_extractor: 提取完成 mf_net_amount_l_0 #836.-37, 0.021s
[2020-09-18 07:43:55.197765] INFO: derived_feature_extractor: 提取完成 close_0/open_0, 0.065s
[2020-09-18 07:43:55.203955] INFO: derived_feature_extractor: 提取完成 rank_amount_0/rank_amount_9, 0.005s
[2020-09-18 07:43:55.212009] INFO: derived_feature_extractor: 提取完成 ta_atr_28_0/close_0*100, 0.007s
[2020-09-18 07:43:55.298320] INFO: derived_feature_extractor: 提取完成 close_3/close_0, 0.085s
[2020-09-18 07:43:55.312883] INFO: derived_feature_extractor: 提取完成 ta_wma_5_0/close_0, 0.013s
[2020-09-18 07:43:55.323549] INFO: derived_feature_extractor: 提取完成 close_10/close_0, 0.009s
[2020-09-18 07:43:55.405114] INFO: derived_feature_extractor: 提取完成 ta_sma_30_0/close_0, 0.080s
[2020-09-18 07:43:55.415825] INFO: derived_feature_extractor: 提取完成 return_30/return_10, 0.010s
[2020-09-18 07:44:03.198693] INFO: derived_feature_extractor: 提取完成 sum(high_0 - ((close_0 + high_0 + low_0) / 3), 20) / sum(((close_0 + high_0 + low_0) / 3) - low_0, 20), 7.782s
[2020-09-18 07:44:03.218694] INFO: derived_feature_extractor: 提取完成 close_20/close_0, 0.019s
[2020-09-18 07:44:03.230958] INFO: derived_feature_extractor: 提取完成 return_90/return_10, 0.011s
[2020-09-18 07:44:07.134773] INFO: derived_feature_extractor: 提取完成 sum(mf_net_pct_xl_0, 5), 3.903s
[2020-09-18 07:44:07.202044] INFO: derived_feature_extractor: 提取完成 rank_return_0/rank_return_4, 0.066s
[2020-09-18 07:44:07.213238] INFO: derived_feature_extractor: 提取完成 mf_net_amount_xl_0 #1238.-33, 0.010s
[2020-09-18 07:44:07.226976] INFO: derived_feature_extractor: 提取完成 rank_return_2 #962.-39, 0.012s
[2020-09-18 07:44:07.295992] INFO: derived_feature_extractor: 提取完成 rank_return_5 #, 0.068s
[2020-09-18 07:44:07.301328] INFO: derived_feature_extractor: 提取完成 mf_net_amount_10 #1230.-33, 0.004s
[2020-09-18 07:44:13.441166] INFO: derived_feature_extractor: /y_2012, 565675
[2020-09-18 07:44:17.815703] INFO: derived_feature_extractor: /y_2013, 564168
[2020-09-18 07:44:22.123491] INFO: derived_feature_extractor: /y_2014, 569948
[2020-09-18 07:44:31.822859] INFO: moduleinvoker: derived_feature_extractor.v3 运行完成[45.821473s].
[2020-09-18 07:44:31.827586] INFO: moduleinvoker: join.v3 开始运行..
[2020-09-18 07:44:40.130864] INFO: join: /y_2012, 行数=564582/565675, 耗时=7.391222s
[2020-09-18 07:44:47.425336] INFO: join: /y_2013, 行数=563132/564168, 耗时=7.252744s
[2020-09-18 07:44:57.601845] INFO: join: /y_2014, 行数=555191/569948, 耗时=10.06266s
[2020-09-18 07:45:01.870960] INFO: join: 最终行数: 1682905
[2020-09-18 07:45:01.917235] INFO: moduleinvoker: join.v3 运行完成[30.089635s].
[2020-09-18 07:45:01.920622] INFO: moduleinvoker: dropnan.v2 开始运行..
[2020-09-18 07:45:06.940187] INFO: dropnan: /y_2012, 498854/564582
[2020-09-18 07:45:13.139332] INFO: dropnan: /y_2013, 558333/563132
[2020-09-18 07:45:19.023602] INFO: dropnan: /y_2014, 545668/555191
[2020-09-18 07:45:21.976580] INFO: dropnan: 行数: 1602855/1682905
[2020-09-18 07:45:22.016567] INFO: moduleinvoker: dropnan.v2 运行完成[20.095921s].
[2020-09-18 07:45:22.022148] INFO: moduleinvoker: stock_ranker_train.v6 开始运行..
[2020-09-18 07:45:36.014466] INFO: StockRanker: 特征预处理 ..
[2020-09-18 07:45:49.103935] INFO: StockRanker: prepare data: training ..
[2020-09-18 07:46:19.705948] INFO: StockRanker: sort ..
[2020-09-18 07:47:17.429082] INFO: StockRanker训练: d9c90f50 准备训练: 1602855 行数
[2020-09-18 07:47:17.430340] INFO: StockRanker训练: AI模型训练,将在1602855*44=7052.56万数据上对模型训练进行62轮迭代训练。预计将需要63~127分钟。请耐心等待。
[2020-09-18 07:47:17.431214] WARNING: StockRanker训练: 成为高级会员/超级会员,将获得200%~1000%的加速 [url="https://bigquant.com/account/big_member/?from=lab1" style="display: inline-block;padding: 5px 7px;border-radius: 2px;background: #F0BC41;color: white"]快速开通会员[/url]
[2020-09-18 07:47:17.489806] INFO: StockRanker训练: 正在训练 ..
[2020-09-18 07:47:17.555624] INFO: StockRanker训练: 任务状态: Pending
[2020-09-18 07:47:27.644052] INFO: StockRanker训练: 任务状态: Running
[2020-09-18 07:47:47.748847] INFO: StockRanker训练: 00:00:20.8727324, finished iteration 1