qlib_init: provider_uri: "~/.qlib/qlib_data/cn_data" region: cn market: &market all benchmark: &benchmark SH000300 data_handler_config: &data_handler_config start_time: 2008-01-01 end_time: 2020-08-01 fit_start_time: 2008-01-01 fit_end_time: 2014-12-31 instruments: *market infer_processors: [] learn_processors: - class: DropnaLabel - class: CSRankNorm kwargs: fields_group: label label: ["Ref($close, -2) / Ref($close, -1) - 1"] port_analysis_config: &port_analysis_config strategy: class: TopkDropoutStrategy module_path: qlib.contrib.strategy.strategy kwargs: topk: 50 n_drop: 5 backtest: verbose: False limit_threshold: 0.095 account: 100000000 benchmark: *benchmark deal_price: close open_cost: 0.0005 close_cost: 0.0015 min_cost: 5 task: model: class: DEnsembleModel module_path: qlib.contrib.model.double_ensemble kwargs: base_model: "gbm" loss: mse num_models: 6 enable_sr: True enable_fs: True alpha1: 1 alpha2: 1 bins_sr: 10 bins_fs: 5 decay: 0.5 sample_ratios: - 0.8 - 0.7 - 0.6 - 0.5 - 0.4 sub_weights: - 1 - 0.2 - 0.2 - 0.2 - 0.2 - 0.2 epochs: 136 colsample_bytree: 0.8879 learning_rate: 0.0421 subsample: 0.8789 lambda_l1: 205.6999 lambda_l2: 580.9768 max_depth: 8 num_leaves: 210 num_threads: 20 verbosity: -1 dataset: class: DatasetH module_path: qlib.data.dataset kwargs: handler: class: Alpha360 module_path: qlib.contrib.data.handler kwargs: *data_handler_config segments: train: [2008-01-01, 2014-12-31] valid: [2015-01-01, 2016-12-31] test: [2017-01-01, 2020-08-01] record: - class: SignalRecord module_path: qlib.workflow.record_temp kwargs: {} - class: SigAnaRecord module_path: qlib.workflow.record_temp kwargs: ana_long_short: False ann_scaler: 252 - class: PortAnaRecord module_path: qlib.workflow.record_temp kwargs: config: *port_analysis_config