code: def __init__(
      self,
      provider_uri="~/.qlib/qlib_data/cn_data",
      region=REG_CN,
      task_url="mongodb://10.0.0.4:27017/",
      task_db_name="rolling_db",
      experiment_name="rolling_exp",
      task_pool=None,  # if user want to  "rolling_task"
      task_config=None,
      rolling_step=550,
      rolling_type=RollingGen.ROLL_SD,
  ):
      # TaskManager config
      if task_config is None:
          task_config = [
              CSI100_RECORD_XGBOOST_TASK_CONFIG,
              CSI100_RECORD_LGB_TASK_CONFIG,
          ]
      mongo_conf = {
          "task_url": task_url,
          "task_db_name": task_db_name,
      }
      qlib.init(
          provider_uri=provider_uri, region=region, mongo=mongo_conf
      )
      self.experiment_name = experiment_name
      if task_pool is None:
          self.trainer = TrainerR(experiment_name=self.experiment_name)
      else:
          self.task_pool = task_pool
          self.trainer = TrainerRM(self.experiment_name, self.task_pool)
      self.task_config = task_config
      self.rolling_gen = RollingGen(
          step=rolling_step, rtype=rolling_type
      )
  
file_path: qlib/examples/model_rolling/task_manager_rolling.py
imports: from pprint import pprint
  import fire
  import qlib
  from qlib.constant import REG_CN
  from qlib.workflow import R
  from qlib.workflow.task.gen import RollingGen, task_generator
  from qlib.workflow.task.manage import TaskManager, run_task
  from qlib.workflow.task.collect import RecorderCollector
  from qlib.model.ens.group import RollingGroup
  from qlib.model.trainer import TrainerR, TrainerRM, task_train
  from qlib.tests.config import CSI100_RECORD_LGB_TASK_CONFIG, CSI100_RECORD_XGBOOST_TASK_CONFIG
label_desc: Use image node_id 1 to create a new RollingTaskExample object  with example: obj = RollingTaskExample(provider_uri, region, task_url, task_db_name, experiment_name, task_pool, task_config, rolling_step, rolling_type)