[
  {
    "signal_date": "20181206",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20181212",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20181218",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20181224",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20181228",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20190109",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20190115",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20190121",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20190125",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20190131",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20190201",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512880.SH",
        "fund": "国泰中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20190212",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512880.SH",
        "fund": "国泰中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20190218",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 60.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512880.SH",
        "fund": "国泰中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20190222",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 0.8494295327653826,
    "holdings": [
      {
        "code": "512880.SH",
        "fund": "国泰中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 67.95436262123062
      }
    ]
  },
  {
    "signal_date": "20190228",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.681372151006955,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 13.627443020139102
      },
      {
        "code": "512880.SH",
        "fund": "国泰中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 54.50977208055641
      }
    ]
  },
  {
    "signal_date": "20190307",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7080367871163453,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 14.160735742326908
      },
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 14.160735742326908
      },
      {
        "code": "512880.SH",
        "fund": "国泰中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 42.48220722698072
      }
    ]
  },
  {
    "signal_date": "20190313",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6523780564586014,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 13.047561129172028
      },
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 13.047561129172028
      },
      {
        "code": "512880.SH",
        "fund": "国泰中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 39.14268338751608
      }
    ]
  },
  {
    "signal_date": "20190319",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6447240243799424,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 12.894480487598848
      },
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 12.894480487598848
      },
      {
        "code": "512880.SH",
        "fund": "国泰中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 38.683441462796544
      }
    ]
  },
  {
    "signal_date": "20190325",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6341310269041629,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 12.682620538083258
      },
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 12.682620538083258
      },
      {
        "code": "512880.SH",
        "fund": "国泰中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 38.047861614249776
      }
    ]
  },
  {
    "signal_date": "20190329",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5994774898795016,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 11.989549797590032
      },
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 11.989549797590032
      },
      {
        "code": "512880.SH",
        "fund": "国泰中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 35.96864939277009
      }
    ]
  },
  {
    "signal_date": "20190408",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6653891056036068,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 13.307782112072136
      },
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 13.307782112072136
      },
      {
        "code": "512880.SH",
        "fund": "国泰中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 39.923346336216404
      }
    ]
  },
  {
    "signal_date": "20190412",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7515477086644599,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 30.0619083465784
      },
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 15.0309541732892
      },
      {
        "code": "512880.SH",
        "fund": "国泰中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 30.0619083465784
      }
    ]
  },
  {
    "signal_date": "20190418",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8307858290986845,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 49.847149745921065
      },
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 16.61571658197369
      },
      {
        "code": "512880.SH",
        "fund": "国泰中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 16.61571658197369
      }
    ]
  },
  {
    "signal_date": "20190424",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8641377358494238,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 69.13101886795391
      },
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 17.282754716988478
      }
    ]
  },
  {
    "signal_date": "20190430",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8555745617620417,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 68.44596494096335
      },
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 17.111491235240837
      }
    ]
  },
  {
    "signal_date": "20190509",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.729464472326862,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 72.9464472326862
      }
    ]
  },
  {
    "signal_date": "20190515",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6880093105938706,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 68.80093105938705
      }
    ]
  },
  {
    "signal_date": "20190521",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6802567581360851,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 68.02567581360852
      }
    ]
  },
  {
    "signal_date": "20190527",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6870922448377103,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 68.70922448377102
      }
    ]
  },
  {
    "signal_date": "20190531",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6970492217186772,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 69.70492217186772
      }
    ]
  },
  {
    "signal_date": "20190605",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7014139341804931,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 70.14139341804932
      }
    ]
  },
  {
    "signal_date": "20190612",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6821127744750095,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 68.21127744750095
      }
    ]
  },
  {
    "signal_date": "20190618",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7455912797531088,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 74.55912797531087
      }
    ]
  },
  {
    "signal_date": "20190624",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7550573362078332,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 75.50573362078332
      }
    ]
  },
  {
    "signal_date": "20190628",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8335403351745652,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 66.6832268139652
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 16.6708067034913
      }
    ]
  },
  {
    "signal_date": "20190709",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8592036070161985,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 51.55221642097191
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 17.18407214032397
      },
      {
        "code": "512900.SH",
        "fund": "南方中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 17.18407214032397
      }
    ]
  },
  {
    "signal_date": "20190715",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8880750346538222,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 53.284502079229334
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 17.761500693076446
      },
      {
        "code": "512900.SH",
        "fund": "南方中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 17.761500693076446
      }
    ]
  },
  {
    "signal_date": "20190719",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8837087985524406,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 53.02252791314643
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 17.67417597104881
      },
      {
        "code": "512900.SH",
        "fund": "南方中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 17.67417597104881
      }
    ]
  },
  {
    "signal_date": "20190725",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8904150560118702,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 53.42490336071221
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 17.808301120237406
      },
      {
        "code": "512900.SH",
        "fund": "南方中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 17.808301120237406
      }
    ]
  },
  {
    "signal_date": "20190731",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 60.0
      },
      {
        "code": "512660.SH",
        "fund": "国泰中证军工ETF",
        "group": "军工航天",
        "target_pct": 20.0
      },
      {
        "code": "512900.SH",
        "fund": "南方中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20190808",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 60.0
      },
      {
        "code": "512660.SH",
        "fund": "国泰中证军工ETF",
        "group": "军工航天",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20190814",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 40.0
      },
      {
        "code": "512660.SH",
        "fund": "国泰中证军工ETF",
        "group": "军工航天",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20190820",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 20.0
      },
      {
        "code": "512660.SH",
        "fund": "国泰中证军工ETF",
        "group": "军工航天",
        "target_pct": 20.0
      },
      {
        "code": "512700.SH",
        "fund": "南方中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20190826",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 20.0
      },
      {
        "code": "512660.SH",
        "fund": "国泰中证军工ETF",
        "group": "军工航天",
        "target_pct": 20.0
      },
      {
        "code": "512700.SH",
        "fund": "南方中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20190830",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 40.0
      },
      {
        "code": "512700.SH",
        "fund": "南方中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20190905",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 40.0
      },
      {
        "code": "512700.SH",
        "fund": "南方中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20190911",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 40.0
      },
      {
        "code": "512700.SH",
        "fund": "南方中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20190918",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20190924",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 20.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20190930",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20191009",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20191015",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20191021",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20191025",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512700.SH",
        "fund": "南方中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20191031",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512700.SH",
        "fund": "南方中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "512800.SH",
        "fund": "华宝中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20191107",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512700.SH",
        "fund": "南方中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "512800.SH",
        "fund": "华宝中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20191113",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512700.SH",
        "fund": "南方中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "512800.SH",
        "fund": "华宝中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20191119",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512700.SH",
        "fund": "南方中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "512800.SH",
        "fund": "华宝中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20191125",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512800.SH",
        "fund": "华宝中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20191129",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20191209",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20191213",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20191219",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 20.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20191225",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 40.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20191231",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 60.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200102",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 80.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200107",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 80.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200113",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 80.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200117",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 80.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200123",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 80.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200206",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 60.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200212",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 60.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200218",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "510660.SH",
        "fund": "华夏上证医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 40.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200224",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "510660.SH",
        "fund": "华夏上证医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 20.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200228",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "510660.SH",
        "fund": "华夏上证医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200309",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "510660.SH",
        "fund": "华夏上证医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200313",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "510660.SH",
        "fund": "华夏上证医药卫生ETF",
        "group": "医药",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20200319",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "510660.SH",
        "fund": "华夏上证医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200325",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200331",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200408",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20200414",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20200420",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20200424",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20200430",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20200507",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20200513",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512290.SH",
        "fund": "国泰中证生物医药ETF",
        "group": "医药",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200519",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512290.SH",
        "fund": "国泰中证生物医药ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200525",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512290.SH",
        "fund": "国泰中证生物医药ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200529",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512290.SH",
        "fund": "国泰中证生物医药ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200604",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512290.SH",
        "fund": "国泰中证生物医药ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20200610",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 60.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20200616",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 60.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20200622",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 80.0
      }
    ]
  },
  {
    "signal_date": "20200630",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512290.SH",
        "fund": "国泰中证生物医药ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 80.0
      }
    ]
  },
  {
    "signal_date": "20200709",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512290.SH",
        "fund": "国泰中证生物医药ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 80.0
      }
    ]
  },
  {
    "signal_date": "20200715",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512290.SH",
        "fund": "国泰中证生物医药ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 60.0
      },
      {
        "code": "512900.SH",
        "fund": "南方中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20200721",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8879738623703974,
    "holdings": [
      {
        "code": "512290.SH",
        "fund": "国泰中证生物医药ETF",
        "group": "医药",
        "target_pct": 17.75947724740795
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 35.5189544948159
      },
      {
        "code": "512900.SH",
        "fund": "南方中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 35.5189544948159
      }
    ]
  },
  {
    "signal_date": "20200727",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7224856606492746,
    "holdings": [
      {
        "code": "512290.SH",
        "fund": "国泰中证生物医药ETF",
        "group": "医药",
        "target_pct": 14.44971321298549
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 14.44971321298549
      },
      {
        "code": "512900.SH",
        "fund": "南方中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 43.34913963895647
      }
    ]
  },
  {
    "signal_date": "20200731",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6574191850670997,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 13.148383701341995
      },
      {
        "code": "512710.SH",
        "fund": "富国中证军工龙头ETF",
        "group": "军工航天",
        "target_pct": 13.148383701341995
      },
      {
        "code": "512900.SH",
        "fund": "南方中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 39.44515110402598
      }
    ]
  },
  {
    "signal_date": "20200807",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5781173548543787,
    "holdings": [
      {
        "code": "512710.SH",
        "fund": "富国中证军工龙头ETF",
        "group": "军工航天",
        "target_pct": 23.124694194175145
      },
      {
        "code": "512900.SH",
        "fund": "南方中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 34.687041291262716
      }
    ]
  },
  {
    "signal_date": "20200813",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5834897324166133,
    "holdings": [
      {
        "code": "512680.SH",
        "fund": "广发中证军工ETF",
        "group": "军工航天",
        "target_pct": 11.669794648332266
      },
      {
        "code": "512710.SH",
        "fund": "富国中证军工龙头ETF",
        "group": "军工航天",
        "target_pct": 23.33958929666453
      },
      {
        "code": "512900.SH",
        "fund": "南方中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 23.33958929666453
      }
    ]
  },
  {
    "signal_date": "20200819",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5699810432038236,
    "holdings": [
      {
        "code": "512680.SH",
        "fund": "广发中证军工ETF",
        "group": "军工航天",
        "target_pct": 22.799241728152943
      },
      {
        "code": "512710.SH",
        "fund": "富国中证军工龙头ETF",
        "group": "军工航天",
        "target_pct": 22.799241728152943
      },
      {
        "code": "512900.SH",
        "fund": "南方中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 11.399620864076471
      }
    ]
  },
  {
    "signal_date": "20200825",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5217161748429858,
    "holdings": [
      {
        "code": "512680.SH",
        "fund": "广发中证军工ETF",
        "group": "军工航天",
        "target_pct": 31.302970490579145
      },
      {
        "code": "512710.SH",
        "fund": "富国中证军工龙头ETF",
        "group": "军工航天",
        "target_pct": 20.868646993719434
      }
    ]
  },
  {
    "signal_date": "20200831",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5167930406772457,
    "holdings": [
      {
        "code": "512680.SH",
        "fund": "广发中证军工ETF",
        "group": "军工航天",
        "target_pct": 31.007582440634746
      },
      {
        "code": "512710.SH",
        "fund": "富国中证军工龙头ETF",
        "group": "军工航天",
        "target_pct": 20.67172162708983
      }
    ]
  },
  {
    "signal_date": "20200908",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5943312885944896,
    "holdings": [
      {
        "code": "510630.SH",
        "fund": "华夏上证主要消费ETF",
        "group": "消费",
        "target_pct": 11.886625771889792
      },
      {
        "code": "512680.SH",
        "fund": "广发中证军工ETF",
        "group": "军工航天",
        "target_pct": 35.65987731566938
      },
      {
        "code": "512710.SH",
        "fund": "富国中证军工龙头ETF",
        "group": "军工航天",
        "target_pct": 11.886625771889792
      }
    ]
  },
  {
    "signal_date": "20200914",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7000716501707445,
    "holdings": [
      {
        "code": "510630.SH",
        "fund": "华夏上证主要消费ETF",
        "group": "消费",
        "target_pct": 14.00143300341489
      },
      {
        "code": "512680.SH",
        "fund": "广发中证军工ETF",
        "group": "军工航天",
        "target_pct": 28.00286600682978
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 14.00143300341489
      },
      {
        "code": "512710.SH",
        "fund": "富国中证军工龙头ETF",
        "group": "军工航天",
        "target_pct": 14.00143300341489
      }
    ]
  },
  {
    "signal_date": "20200918",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7785731181147549,
    "holdings": [
      {
        "code": "510630.SH",
        "fund": "华夏上证主要消费ETF",
        "group": "消费",
        "target_pct": 15.5714623622951
      },
      {
        "code": "512680.SH",
        "fund": "广发中证军工ETF",
        "group": "军工航天",
        "target_pct": 15.5714623622951
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 31.1429247245902
      },
      {
        "code": "512710.SH",
        "fund": "富国中证军工龙头ETF",
        "group": "军工航天",
        "target_pct": 15.5714623622951
      }
    ]
  },
  {
    "signal_date": "20200924",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7943081937539265,
    "holdings": [
      {
        "code": "510630.SH",
        "fund": "华夏上证主要消费ETF",
        "group": "消费",
        "target_pct": 15.88616387507853
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 47.65849162523559
      },
      {
        "code": "512710.SH",
        "fund": "富国中证军工龙头ETF",
        "group": "军工航天",
        "target_pct": 15.88616387507853
      }
    ]
  },
  {
    "signal_date": "20200930",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7357467922359298,
    "holdings": [
      {
        "code": "510630.SH",
        "fund": "华夏上证主要消费ETF",
        "group": "消费",
        "target_pct": 14.714935844718596
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 58.859743378874384
      }
    ]
  },
  {
    "signal_date": "20201009",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7355641384315212,
    "holdings": [
      {
        "code": "510630.SH",
        "fund": "华夏上证主要消费ETF",
        "group": "消费",
        "target_pct": 14.711282768630426
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 58.8451310745217
      }
    ]
  },
  {
    "signal_date": "20201014",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7532545436791259,
    "holdings": [
      {
        "code": "510630.SH",
        "fund": "华夏上证主要消费ETF",
        "group": "消费",
        "target_pct": 15.06509087358252
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 60.26036349433008
      }
    ]
  },
  {
    "signal_date": "20201020",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8677109032375576,
    "holdings": [
      {
        "code": "510630.SH",
        "fund": "华夏上证主要消费ETF",
        "group": "消费",
        "target_pct": 17.354218064751155
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 69.41687225900462
      }
    ]
  },
  {
    "signal_date": "20201026",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "510630.SH",
        "fund": "华夏上证主要消费ETF",
        "group": "消费",
        "target_pct": 20.0
      },
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20201030",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.9796801029906469,
    "holdings": [
      {
        "code": "510630.SH",
        "fund": "华夏上证主要消费ETF",
        "group": "消费",
        "target_pct": 19.59360205981294
      },
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 19.59360205981294
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 58.78080617943881
      }
    ]
  },
  {
    "signal_date": "20201106",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.9086634631194396,
    "holdings": [
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 18.173269262388793
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 72.69307704955517
      }
    ]
  },
  {
    "signal_date": "20201112",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.918153984561799,
    "holdings": [
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 18.36307969123598
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 73.45231876494393
      }
    ]
  },
  {
    "signal_date": "20201118",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8733880212762318,
    "holdings": [
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 17.467760425524638
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 69.87104170209855
      }
    ]
  },
  {
    "signal_date": "20201124",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7867289087581973,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 78.67289087581973
      }
    ]
  },
  {
    "signal_date": "20201130",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7858102581010048,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 78.58102581010048
      }
    ]
  },
  {
    "signal_date": "20201209",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8044724875439391,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 80.44724875439391
      }
    ]
  },
  {
    "signal_date": "20201215",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8229399397639532,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 82.29399397639531
      }
    ]
  },
  {
    "signal_date": "20201221",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8363570437743048,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 83.63570437743047
      }
    ]
  },
  {
    "signal_date": "20201225",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.835748450908592,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 83.5748450908592
      }
    ]
  },
  {
    "signal_date": "20201231",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7917402939443531,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 79.17402939443531
      }
    ]
  },
  {
    "signal_date": "20210107",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7879478650812275,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 78.79478650812275
      }
    ]
  },
  {
    "signal_date": "20210113",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8149957250494739,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 65.19965800395792
      },
      {
        "code": "515030.SH",
        "fund": "华夏中证新能源汽车ETF",
        "group": "新能源",
        "target_pct": 16.29991450098948
      }
    ]
  },
  {
    "signal_date": "20210119",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7971560071404753,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 47.829360428428515
      },
      {
        "code": "515030.SH",
        "fund": "华夏中证新能源汽车ETF",
        "group": "新能源",
        "target_pct": 15.943120142809509
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 15.943120142809509
      }
    ]
  },
  {
    "signal_date": "20210125",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7520543562948345,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 30.082174251793383
      },
      {
        "code": "515030.SH",
        "fund": "华夏中证新能源汽车ETF",
        "group": "新能源",
        "target_pct": 15.041087125896691
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 30.082174251793383
      }
    ]
  },
  {
    "signal_date": "20210129",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6809955782703014,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 13.619911565406028
      },
      {
        "code": "515030.SH",
        "fund": "华夏中证新能源汽车ETF",
        "group": "新能源",
        "target_pct": 13.619911565406028
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 40.859734696218084
      }
    ]
  },
  {
    "signal_date": "20210201",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6007236534684245,
    "holdings": [
      {
        "code": "515030.SH",
        "fund": "华夏中证新能源汽车ETF",
        "group": "新能源",
        "target_pct": 12.01447306936849
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 48.05789227747396
      }
    ]
  },
  {
    "signal_date": "20210203",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5847104592273311,
    "holdings": [
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 58.47104592273311
      }
    ]
  },
  {
    "signal_date": "20210209",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5753966644967753,
    "holdings": [
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 57.539666449677526
      }
    ]
  },
  {
    "signal_date": "20210222",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6647598739177824,
    "holdings": [
      {
        "code": "512170.SH",
        "fund": "华宝中证医疗ETF",
        "group": "医药",
        "target_pct": 13.295197478355647
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 53.180789913422586
      }
    ]
  },
  {
    "signal_date": "20210226",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8213947084564072,
    "holdings": [
      {
        "code": "512170.SH",
        "fund": "华宝中证医疗ETF",
        "group": "医药",
        "target_pct": 16.427894169128145
      },
      {
        "code": "512730.SH",
        "fund": "鹏华中证银行ETF",
        "group": "金融",
        "target_pct": 16.427894169128145
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 49.28368250738443
      }
    ]
  },
  {
    "signal_date": "20210309",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 0.9924178805223325,
    "holdings": [
      {
        "code": "512170.SH",
        "fund": "华宝中证医疗ETF",
        "group": "医药",
        "target_pct": 19.84835761044665
      },
      {
        "code": "512730.SH",
        "fund": "鹏华中证银行ETF",
        "group": "金融",
        "target_pct": 19.84835761044665
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 39.6967152208933
      }
    ]
  },
  {
    "signal_date": "20210315",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512170.SH",
        "fund": "华宝中证医疗ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512730.SH",
        "fund": "鹏华中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20210319",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512170.SH",
        "fund": "华宝中证医疗ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "512730.SH",
        "fund": "鹏华中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20210325",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512730.SH",
        "fund": "鹏华中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20210331",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210408",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210414",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210420",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210426",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210430",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210507",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210513",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210519",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210525",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512170.SH",
        "fund": "华宝中证医疗ETF",
        "group": "医药",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20210531",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159806.SZ",
        "fund": "国泰中证新能源汽车ETF",
        "group": "新能源",
        "target_pct": 20.0
      },
      {
        "code": "512170.SH",
        "fund": "华宝中证医疗ETF",
        "group": "医药",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20210607",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159806.SZ",
        "fund": "国泰中证新能源汽车ETF",
        "group": "新能源",
        "target_pct": 20.0
      },
      {
        "code": "512170.SH",
        "fund": "华宝中证医疗ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20210611",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159806.SZ",
        "fund": "国泰中证新能源汽车ETF",
        "group": "新能源",
        "target_pct": 20.0
      },
      {
        "code": "512170.SH",
        "fund": "华宝中证医疗ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20210618",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 0.946357639548441,
    "holdings": [
      {
        "code": "159806.SZ",
        "fund": "国泰中证新能源汽车ETF",
        "group": "新能源",
        "target_pct": 18.927152790968822
      },
      {
        "code": "512170.SH",
        "fund": "华宝中证医疗ETF",
        "group": "医药",
        "target_pct": 18.927152790968822
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 37.854305581937645
      }
    ]
  },
  {
    "signal_date": "20210624",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159806.SZ",
        "fund": "国泰中证新能源汽车ETF",
        "group": "新能源",
        "target_pct": 20.0
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20210630",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512480.SH",
        "fund": "国联安中证全指半导体产品与设备ETF",
        "group": "半导体",
        "target_pct": 20.0
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20210708",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512480.SH",
        "fund": "国联安中证全指半导体产品与设备ETF",
        "group": "半导体",
        "target_pct": 20.0
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20210714",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512480.SH",
        "fund": "国联安中证全指半导体产品与设备ETF",
        "group": "半导体",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20210720",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512480.SH",
        "fund": "国联安中证全指半导体产品与设备ETF",
        "group": "半导体",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20210726",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512480.SH",
        "fund": "国联安中证全指半导体产品与设备ETF",
        "group": "半导体",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20210730",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210809",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210813",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210819",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210825",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210831",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210906",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210910",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210916",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210924",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210930",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20211008",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20211013",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20211019",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20211025",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20211029",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20211108",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20211112",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20211118",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20211124",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20211130",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20211209",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515250.SH",
        "fund": "富国中证智能汽车主题ETF",
        "group": "汽车",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20211215",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515250.SH",
        "fund": "富国中证智能汽车主题ETF",
        "group": "汽车",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20211221",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515250.SH",
        "fund": "富国中证智能汽车主题ETF",
        "group": "汽车",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20211227",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159855.SZ",
        "fund": "银华中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      },
      {
        "code": "515250.SH",
        "fund": "富国中证智能汽车主题ETF",
        "group": "汽车",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20211231",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159855.SZ",
        "fund": "银华中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 40.0
      },
      {
        "code": "515250.SH",
        "fund": "富国中证智能汽车主题ETF",
        "group": "汽车",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20220106",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159855.SZ",
        "fund": "银华中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 40.0
      },
      {
        "code": "515250.SH",
        "fund": "富国中证智能汽车主题ETF",
        "group": "汽车",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20220112",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159855.SZ",
        "fund": "银华中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20220118",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159855.SZ",
        "fund": "银华中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20220124",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159855.SZ",
        "fund": "银华中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20220128",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220207",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220210",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220216",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220222",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220228",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220309",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220315",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220321",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220325",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220331",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220407",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220413",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220419",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220425",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220429",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220509",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220513",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220519",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220525",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220531",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220608",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220614",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220620",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220624",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159767.SZ",
        "fund": "兴银国证新能源车电池ETF",
        "group": "新能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20220630",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159767.SZ",
        "fund": "兴银国证新能源车电池ETF",
        "group": "新能源",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20220707",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 0.9261763924887743,
    "holdings": [
      {
        "code": "159767.SZ",
        "fund": "兴银国证新能源车电池ETF",
        "group": "新能源",
        "target_pct": 37.047055699550974
      },
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 18.523527849775487
      }
    ]
  },
  {
    "signal_date": "20220713",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 0.6929588678960581,
    "holdings": [
      {
        "code": "159767.SZ",
        "fund": "兴银国证新能源车电池ETF",
        "group": "新能源",
        "target_pct": 27.718354715842324
      },
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 27.718354715842324
      }
    ]
  },
  {
    "signal_date": "20220719",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5551416627912518,
    "holdings": [
      {
        "code": "159767.SZ",
        "fund": "兴银国证新能源车电池ETF",
        "group": "新能源",
        "target_pct": 22.205666511650072
      },
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 33.308499767475105
      }
    ]
  },
  {
    "signal_date": "20220725",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 0.7611508280877987,
    "holdings": [
      {
        "code": "159767.SZ",
        "fund": "兴银国证新能源车电池ETF",
        "group": "新能源",
        "target_pct": 15.223016561755976
      },
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 45.669049685267915
      }
    ]
  },
  {
    "signal_date": "20220729",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 60.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20220809",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20220815",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 20.0
      },
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20220819",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20220825",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20220831",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20220907",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20220914",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220920",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220926",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220930",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221010",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221013",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221019",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221025",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221031",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221108",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221114",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221118",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221124",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221130",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221208",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221214",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221220",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221226",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221230",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230103",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230106",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20230112",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20230118",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 60.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20230131",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 0.9654402002931144,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 77.23521602344915
      }
    ]
  },
  {
    "signal_date": "20230206",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 80.0
      },
      {
        "code": "515400.SH",
        "fund": "富国中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20230210",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 60.0
      },
      {
        "code": "515400.SH",
        "fund": "富国中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 20.0
      },
      {
        "code": "516510.SH",
        "fund": "易方达中证云计算与大数据主题ETF",
        "group": "软件AI",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20230216",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 40.0
      },
      {
        "code": "515400.SH",
        "fund": "富国中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 20.0
      },
      {
        "code": "516510.SH",
        "fund": "易方达中证云计算与大数据主题ETF",
        "group": "软件AI",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20230222",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 20.0
      },
      {
        "code": "515400.SH",
        "fund": "富国中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 20.0
      },
      {
        "code": "516510.SH",
        "fund": "易方达中证云计算与大数据主题ETF",
        "group": "软件AI",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20230228",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.9826620868997792,
    "holdings": [
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 39.30648347599117
      },
      {
        "code": "515400.SH",
        "fund": "富国中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 19.653241737995586
      },
      {
        "code": "516510.SH",
        "fund": "易方达中证云计算与大数据主题ETF",
        "group": "软件AI",
        "target_pct": 39.30648347599117
      }
    ]
  },
  {
    "signal_date": "20230309",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.9192430168431809,
    "holdings": [
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 36.769720673727235
      },
      {
        "code": "515400.SH",
        "fund": "富国中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 18.384860336863618
      },
      {
        "code": "516510.SH",
        "fund": "易方达中证云计算与大数据主题ETF",
        "group": "软件AI",
        "target_pct": 36.769720673727235
      }
    ]
  },
  {
    "signal_date": "20230315",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159619.SZ",
        "fund": "国泰中证基建ETF",
        "group": "地产基建",
        "target_pct": 20.0
      },
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 40.0
      },
      {
        "code": "515400.SH",
        "fund": "富国中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 20.0
      },
      {
        "code": "516510.SH",
        "fund": "易方达中证云计算与大数据主题ETF",
        "group": "软件AI",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20230321",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159619.SZ",
        "fund": "国泰中证基建ETF",
        "group": "地产基建",
        "target_pct": 40.0
      },
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 40.0
      },
      {
        "code": "515400.SH",
        "fund": "富国中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20230327",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159619.SZ",
        "fund": "国泰中证基建ETF",
        "group": "地产基建",
        "target_pct": 60.0
      },
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      },
      {
        "code": "515400.SH",
        "fund": "富国中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20230331",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159619.SZ",
        "fund": "国泰中证基建ETF",
        "group": "地产基建",
        "target_pct": 60.0
      },
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      },
      {
        "code": "515400.SH",
        "fund": "富国中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20230406",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159619.SZ",
        "fund": "国泰中证基建ETF",
        "group": "地产基建",
        "target_pct": 60.0
      },
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20230412",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8125977685678207,
    "holdings": [
      {
        "code": "159619.SZ",
        "fund": "国泰中证基建ETF",
        "group": "地产基建",
        "target_pct": 32.50391074271283
      },
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 48.75586611406924
      }
    ]
  },
  {
    "signal_date": "20230418",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6410384421572005,
    "holdings": [
      {
        "code": "159619.SZ",
        "fund": "国泰中证基建ETF",
        "group": "地产基建",
        "target_pct": 12.820768843144013
      },
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 51.28307537257605
      }
    ]
  },
  {
    "signal_date": "20230424",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.4969952400784329,
    "holdings": [
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 49.69952400784329
      }
    ]
  },
  {
    "signal_date": "20230428",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.4463213029357516,
    "holdings": [
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 44.63213029357516
      }
    ]
  },
  {
    "signal_date": "20230509",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.4214584257610665,
    "holdings": [
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 42.14584257610665
      }
    ]
  },
  {
    "signal_date": "20230515",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 0.5148058984779114,
    "holdings": [
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 41.18447187823291
      }
    ]
  },
  {
    "signal_date": "20230519",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 60.0,
    "risk_factor": 0.6798656899130597,
    "holdings": [
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 40.791941394783585
      }
    ]
  },
  {
    "signal_date": "20230525",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20230531",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20230606",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230612",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230616",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230626",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230630",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230707",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230713",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230719",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230725",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230731",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "516110.SH",
        "fund": "国泰中证800汽车与零部件ETF",
        "group": "汽车",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20230809",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515850.SH",
        "fund": "富国中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "516110.SH",
        "fund": "国泰中证800汽车与零部件ETF",
        "group": "汽车",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20230815",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515850.SH",
        "fund": "富国中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "516110.SH",
        "fund": "国泰中证800汽车与零部件ETF",
        "group": "汽车",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20230821",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515850.SH",
        "fund": "富国中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "516110.SH",
        "fund": "国泰中证800汽车与零部件ETF",
        "group": "汽车",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20230825",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515850.SH",
        "fund": "富国中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "516110.SH",
        "fund": "国泰中证800汽车与零部件ETF",
        "group": "汽车",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20230831",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515850.SH",
        "fund": "富国中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20230906",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230912",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230918",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230922",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230928",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231009",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231013",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231019",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231025",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231031",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231108",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231114",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231120",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231124",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231130",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231207",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231213",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231219",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231225",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231229",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240109",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240115",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240119",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240125",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240131",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240201",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240205",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240219",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240223",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240229",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159887.SZ",
        "fund": "富国中证800银行ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20240307",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159887.SZ",
        "fund": "富国中证800银行ETF",
        "group": "金融",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20240313",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159887.SZ",
        "fund": "富国中证800银行ETF",
        "group": "金融",
        "target_pct": 40.0
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20240319",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159887.SZ",
        "fund": "富国中证800银行ETF",
        "group": "金融",
        "target_pct": 40.0
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20240325",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8746501436893821,
    "holdings": [
      {
        "code": "159887.SZ",
        "fund": "富国中证800银行ETF",
        "group": "金融",
        "target_pct": 34.98600574757529
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 52.47900862136292
      }
    ]
  },
  {
    "signal_date": "20240329",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6620272562797163,
    "holdings": [
      {
        "code": "159887.SZ",
        "fund": "富国中证800银行ETF",
        "group": "金融",
        "target_pct": 13.240545125594325
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 52.9621805023773
      }
    ]
  },
  {
    "signal_date": "20240408",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6095648068944138,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 48.76518455155311
      },
      {
        "code": "561330.SH",
        "fund": "国泰中证有色金属矿业主题ETF",
        "group": "材料",
        "target_pct": 12.191296137888278
      }
    ]
  },
  {
    "signal_date": "20240412",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7032588596923948,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 42.19553158154368
      },
      {
        "code": "561330.SH",
        "fund": "国泰中证有色金属矿业主题ETF",
        "group": "材料",
        "target_pct": 28.130354387695792
      }
    ]
  },
  {
    "signal_date": "20240418",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7715955758493693,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 30.863823033974775
      },
      {
        "code": "516650.SH",
        "fund": "华夏中证细分有色金属产业主题ETF",
        "group": "材料",
        "target_pct": 15.431911516987388
      },
      {
        "code": "561330.SH",
        "fund": "国泰中证有色金属矿业主题ETF",
        "group": "材料",
        "target_pct": 30.863823033974775
      }
    ]
  },
  {
    "signal_date": "20240424",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8042643782939723,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 16.085287565879447
      },
      {
        "code": "516650.SH",
        "fund": "华夏中证细分有色金属产业主题ETF",
        "group": "材料",
        "target_pct": 32.170575131758895
      },
      {
        "code": "561330.SH",
        "fund": "国泰中证有色金属矿业主题ETF",
        "group": "材料",
        "target_pct": 32.170575131758895
      }
    ]
  },
  {
    "signal_date": "20240430",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8418196365787431,
    "holdings": [
      {
        "code": "516650.SH",
        "fund": "华夏中证细分有色金属产业主题ETF",
        "group": "材料",
        "target_pct": 50.50917819472459
      },
      {
        "code": "561330.SH",
        "fund": "国泰中证有色金属矿业主题ETF",
        "group": "材料",
        "target_pct": 33.67278546314973
      }
    ]
  },
  {
    "signal_date": "20240509",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159730.SZ",
        "fund": "博时国证龙头家电ETF",
        "group": "消费",
        "target_pct": 20.0
      },
      {
        "code": "516650.SH",
        "fund": "华夏中证细分有色金属产业主题ETF",
        "group": "材料",
        "target_pct": 60.0
      },
      {
        "code": "561330.SH",
        "fund": "国泰中证有色金属矿业主题ETF",
        "group": "材料",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20240515",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159730.SZ",
        "fund": "博时国证龙头家电ETF",
        "group": "消费",
        "target_pct": 40.0
      },
      {
        "code": "516650.SH",
        "fund": "华夏中证细分有色金属产业主题ETF",
        "group": "材料",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20240521",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159730.SZ",
        "fund": "博时国证龙头家电ETF",
        "group": "消费",
        "target_pct": 40.0
      },
      {
        "code": "516650.SH",
        "fund": "华夏中证细分有色金属产业主题ETF",
        "group": "材料",
        "target_pct": 40.0
      },
      {
        "code": "516910.SH",
        "fund": "富国中证现代物流ETF",
        "group": "地产基建",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20240527",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159730.SZ",
        "fund": "博时国证龙头家电ETF",
        "group": "消费",
        "target_pct": 40.0
      },
      {
        "code": "516650.SH",
        "fund": "华夏中证细分有色金属产业主题ETF",
        "group": "材料",
        "target_pct": 20.0
      },
      {
        "code": "516910.SH",
        "fund": "富国中证现代物流ETF",
        "group": "地产基建",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20240531",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159730.SZ",
        "fund": "博时国证龙头家电ETF",
        "group": "消费",
        "target_pct": 40.0
      },
      {
        "code": "516910.SH",
        "fund": "富国中证现代物流ETF",
        "group": "地产基建",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20240605",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159707.SZ",
        "fund": "华宝中证800地产ETF",
        "group": "地产基建",
        "target_pct": 20.0
      },
      {
        "code": "159730.SZ",
        "fund": "博时国证龙头家电ETF",
        "group": "消费",
        "target_pct": 20.0
      },
      {
        "code": "516910.SH",
        "fund": "富国中证现代物流ETF",
        "group": "地产基建",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20240612",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159707.SZ",
        "fund": "华宝中证800地产ETF",
        "group": "地产基建",
        "target_pct": 40.0
      },
      {
        "code": "516910.SH",
        "fund": "富国中证现代物流ETF",
        "group": "地产基建",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20240618",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159625.SZ",
        "fund": "嘉实国证绿色电力ETF",
        "group": "能源",
        "target_pct": 20.0
      },
      {
        "code": "159707.SZ",
        "fund": "华宝中证800地产ETF",
        "group": "地产基建",
        "target_pct": 40.0
      },
      {
        "code": "516910.SH",
        "fund": "富国中证现代物流ETF",
        "group": "地产基建",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20240624",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159625.SZ",
        "fund": "嘉实国证绿色电力ETF",
        "group": "能源",
        "target_pct": 20.0
      },
      {
        "code": "159707.SZ",
        "fund": "华宝中证800地产ETF",
        "group": "地产基建",
        "target_pct": 40.0
      },
      {
        "code": "516910.SH",
        "fund": "富国中证现代物流ETF",
        "group": "地产基建",
        "target_pct": 20.0
      },
      {
        "code": "561560.SH",
        "fund": "华泰柏瑞中证全指电力公用事业ETF",
        "group": "能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20240628",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159625.SZ",
        "fund": "嘉实国证绿色电力ETF",
        "group": "能源",
        "target_pct": 20.0
      },
      {
        "code": "159707.SZ",
        "fund": "华宝中证800地产ETF",
        "group": "地产基建",
        "target_pct": 40.0
      },
      {
        "code": "561560.SH",
        "fund": "华泰柏瑞中证全指电力公用事业ETF",
        "group": "能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20240709",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159625.SZ",
        "fund": "嘉实国证绿色电力ETF",
        "group": "能源",
        "target_pct": 20.0
      },
      {
        "code": "159707.SZ",
        "fund": "华宝中证800地产ETF",
        "group": "地产基建",
        "target_pct": 20.0
      },
      {
        "code": "561560.SH",
        "fund": "华泰柏瑞中证全指电力公用事业ETF",
        "group": "能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20240715",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159625.SZ",
        "fund": "嘉实国证绿色电力ETF",
        "group": "能源",
        "target_pct": 20.0
      },
      {
        "code": "159994.SZ",
        "fund": "银华中证5G通信主题ETF",
        "group": "通信",
        "target_pct": 20.0
      },
      {
        "code": "561560.SH",
        "fund": "华泰柏瑞中证全指电力公用事业ETF",
        "group": "能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20240719",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159732.SZ",
        "fund": "华夏国证消费电子主题ETF",
        "group": "电子",
        "target_pct": 20.0
      },
      {
        "code": "159994.SZ",
        "fund": "银华中证5G通信主题ETF",
        "group": "通信",
        "target_pct": 20.0
      },
      {
        "code": "561560.SH",
        "fund": "华泰柏瑞中证全指电力公用事业ETF",
        "group": "能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20240725",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159732.SZ",
        "fund": "华夏国证消费电子主题ETF",
        "group": "电子",
        "target_pct": 20.0
      },
      {
        "code": "159994.SZ",
        "fund": "银华中证5G通信主题ETF",
        "group": "通信",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20240731",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159732.SZ",
        "fund": "华夏国证消费电子主题ETF",
        "group": "电子",
        "target_pct": 20.0
      },
      {
        "code": "159994.SZ",
        "fund": "银华中证5G通信主题ETF",
        "group": "通信",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20240808",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159732.SZ",
        "fund": "华夏国证消费电子主题ETF",
        "group": "电子",
        "target_pct": 20.0
      },
      {
        "code": "159994.SZ",
        "fund": "银华中证5G通信主题ETF",
        "group": "通信",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20240814",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159732.SZ",
        "fund": "华夏国证消费电子主题ETF",
        "group": "电子",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20240820",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240826",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240830",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240904",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240910",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240918",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240924",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240930",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20241009",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20241015",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 0.868577055080034,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 34.74308220320136
      },
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 17.37154110160068
      }
    ]
  },
  {
    "signal_date": "20241021",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 0.6169310774131781,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 24.677243096527125
      },
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 12.338621548263562
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 12.338621548263562
      }
    ]
  },
  {
    "signal_date": "20241025",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.4817975335857991,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 19.271901343431963
      },
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 9.635950671715982
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 19.271901343431963
      }
    ]
  },
  {
    "signal_date": "20241031",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.43657156040614326,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 17.46286241624573
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 26.19429362436859
      }
    ]
  },
  {
    "signal_date": "20241107",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.40128976051638854,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 16.051590420655543
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 24.07738563098331
      }
    ]
  },
  {
    "signal_date": "20241113",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.39995808633067864,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 15.998323453227147
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 23.997485179840716
      }
    ]
  },
  {
    "signal_date": "20241119",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.38073410747527864,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 15.229364299011147
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 22.844046448516718
      }
    ]
  },
  {
    "signal_date": "20241125",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.3813465319690207,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 15.253861278760827
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 22.88079191814124
      }
    ]
  },
  {
    "signal_date": "20241129",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.3743893522085899,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 14.975574088343595
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 22.46336113251539
      }
    ]
  },
  {
    "signal_date": "20241209",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.4272962751872246,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 8.545925503744492
      },
      {
        "code": "516620.SH",
        "fund": "国泰中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 8.545925503744492
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 25.637776511233472
      }
    ]
  },
  {
    "signal_date": "20241213",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.48231497227502956,
    "holdings": [
      {
        "code": "516620.SH",
        "fund": "国泰中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 19.292598891001184
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 28.938898336501772
      }
    ]
  },
  {
    "signal_date": "20241219",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5186754441854033,
    "holdings": [
      {
        "code": "516620.SH",
        "fund": "国泰中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 31.120526651124198
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 20.747017767416136
      }
    ]
  },
  {
    "signal_date": "20241225",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5126644907803221,
    "holdings": [
      {
        "code": "516620.SH",
        "fund": "国泰中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 41.013159262425766
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 10.253289815606442
      }
    ]
  },
  {
    "signal_date": "20241231",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6866772313880669,
    "holdings": [
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 13.733544627761338
      },
      {
        "code": "516620.SH",
        "fund": "国泰中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 54.93417851104535
      }
    ]
  },
  {
    "signal_date": "20250103",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 40.0
      },
      {
        "code": "516620.SH",
        "fund": "国泰中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20250109",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 60.0
      },
      {
        "code": "516620.SH",
        "fund": "国泰中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20250115",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159887.SZ",
        "fund": "富国中证800银行ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 60.0
      },
      {
        "code": "516620.SH",
        "fund": "国泰中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20250121",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159887.SZ",
        "fund": "富国中证800银行ETF",
        "group": "金融",
        "target_pct": 40.0
      },
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20250127",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159887.SZ",
        "fund": "富国中证800银行ETF",
        "group": "金融",
        "target_pct": 40.0
      },
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20250206",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159887.SZ",
        "fund": "富国中证800银行ETF",
        "group": "金融",
        "target_pct": 40.0
      },
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20250212",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159887.SZ",
        "fund": "富国中证800银行ETF",
        "group": "金融",
        "target_pct": 40.0
      },
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20250218",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159887.SZ",
        "fund": "富国中证800银行ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 60.0
      },
      {
        "code": "562500.SH",
        "fund": "华夏中证机器人ETF",
        "group": "高端制造",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20250224",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 60.0
      },
      {
        "code": "562500.SH",
        "fund": "华夏中证机器人ETF",
        "group": "高端制造",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20250228",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.9745408687109265,
    "holdings": [
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 38.98163474843706
      },
      {
        "code": "562500.SH",
        "fund": "华夏中证机器人ETF",
        "group": "高端制造",
        "target_pct": 58.47245212265558
      }
    ]
  },
  {
    "signal_date": "20250307",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7940409258354978,
    "holdings": [
      {
        "code": "516000.SH",
        "fund": "华夏中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 15.880818516709958
      },
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 15.880818516709958
      },
      {
        "code": "562500.SH",
        "fund": "华夏中证机器人ETF",
        "group": "高端制造",
        "target_pct": 47.64245555012987
      }
    ]
  },
  {
    "signal_date": "20250313",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6288076534706776,
    "holdings": [
      {
        "code": "516000.SH",
        "fund": "华夏中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 25.1523061388271
      },
      {
        "code": "562500.SH",
        "fund": "华夏中证机器人ETF",
        "group": "高端制造",
        "target_pct": 37.72845920824066
      }
    ]
  },
  {
    "signal_date": "20250319",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7245081024817687,
    "holdings": [
      {
        "code": "516000.SH",
        "fund": "华夏中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 28.98032409927075
      },
      {
        "code": "560280.SH",
        "fund": "广发中证工程机械主题ETF",
        "group": "高端制造",
        "target_pct": 14.490162049635375
      },
      {
        "code": "562500.SH",
        "fund": "华夏中证机器人ETF",
        "group": "高端制造",
        "target_pct": 28.98032409927075
      }
    ]
  },
  {
    "signal_date": "20250325",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8122537855688906,
    "holdings": [
      {
        "code": "516000.SH",
        "fund": "华夏中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 32.49015142275562
      },
      {
        "code": "560280.SH",
        "fund": "广发中证工程机械主题ETF",
        "group": "高端制造",
        "target_pct": 32.49015142275562
      },
      {
        "code": "562500.SH",
        "fund": "华夏中证机器人ETF",
        "group": "高端制造",
        "target_pct": 16.24507571137781
      }
    ]
  },
  {
    "signal_date": "20250331",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "516000.SH",
        "fund": "华夏中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 40.0
      },
      {
        "code": "560280.SH",
        "fund": "广发中证工程机械主题ETF",
        "group": "高端制造",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20250408",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "516000.SH",
        "fund": "华夏中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 20.0
      },
      {
        "code": "560280.SH",
        "fund": "广发中证工程机械主题ETF",
        "group": "高端制造",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20250414",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "560280.SH",
        "fund": "广发中证工程机械主题ETF",
        "group": "高端制造",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20250418",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "560280.SH",
        "fund": "广发中证工程机械主题ETF",
        "group": "高端制造",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20250424",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20250430",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20250508",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20250514",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "562550.SH",
        "fund": "华夏中证绿色电力ETF",
        "group": "能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20250520",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515020.SH",
        "fund": "华夏中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "562550.SH",
        "fund": "华夏中证绿色电力ETF",
        "group": "能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20250526",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515020.SH",
        "fund": "华夏中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "562550.SH",
        "fund": "华夏中证绿色电力ETF",
        "group": "能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20250530",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515020.SH",
        "fund": "华夏中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "562550.SH",
        "fund": "华夏中证绿色电力ETF",
        "group": "能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20250606",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515020.SH",
        "fund": "华夏中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 20.0
      },
      {
        "code": "562550.SH",
        "fund": "华夏中证绿色电力ETF",
        "group": "能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20250612",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159858.SZ",
        "fund": "南方中证创新药产业ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "515020.SH",
        "fund": "华夏中证银行ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20250618",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 60.00000000000001,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159858.SZ",
        "fund": "南方中证创新药产业ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20250624",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159858.SZ",
        "fund": "南方中证创新药产业ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20250630",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8864942754209317,
    "holdings": [
      {
        "code": "159858.SZ",
        "fund": "南方中证创新药产业ETF",
        "group": "医药",
        "target_pct": 35.45977101683727
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 53.1896565252559
      }
    ]
  },
  {
    "signal_date": "20250709",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159858.SZ",
        "fund": "南方中证创新药产业ETF",
        "group": "医药",
        "target_pct": 40.0
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20250715",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 20.0
      },
      {
        "code": "159858.SZ",
        "fund": "南方中证创新药产业ETF",
        "group": "医药",
        "target_pct": 20.0
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 60.0
      }
    ]
  },
  {
    "signal_date": "20250721",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.924909427193373,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 18.49818854386746
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 73.99275417546984
      }
    ]
  },
  {
    "signal_date": "20250725",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.953120327033473,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 19.062406540669464
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 76.24962616267786
      }
    ]
  },
  {
    "signal_date": "20250731",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.9508123534310773,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 19.016247068621546
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 76.06498827448618
      }
    ]
  },
  {
    "signal_date": "20250807",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.9901985120476536,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 19.803970240953074
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 79.2158809638123
      }
    ]
  },
  {
    "signal_date": "20250813",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8506833517698723,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 85.06833517698723
      }
    ]
  },
  {
    "signal_date": "20250819",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8065262097324774,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 80.65262097324774
      }
    ]
  },
  {
    "signal_date": "20250825",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7547123922822486,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 75.47123922822486
      }
    ]
  },
  {
    "signal_date": "20250829",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6682164230406066,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 66.82164230406066
      }
    ]
  },
  {
    "signal_date": "20250908",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5137080960157836,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 51.37080960157836
      }
    ]
  },
  {
    "signal_date": "20250912",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.47356027428304653,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 47.35602742830466
      }
    ]
  },
  {
    "signal_date": "20250918",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.47095107644158396,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 47.0951076441584
      }
    ]
  },
  {
    "signal_date": "20250924",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5593347406748035,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 44.74677925398428
      },
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 11.18669481349607
      }
    ]
  },
  {
    "signal_date": "20250930",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6586491486629047,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 39.51894891977428
      },
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 26.345965946516188
      }
    ]
  },
  {
    "signal_date": "20251009",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7596231172116993,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 30.384924688467972
      },
      {
        "code": "561160.SH",
        "fund": "富国中证电池主题ETF",
        "group": "新能源",
        "target_pct": 15.192462344233986
      },
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 30.384924688467972
      }
    ]
  },
  {
    "signal_date": "20251015",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6878510812328813,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 13.757021624657625
      },
      {
        "code": "561160.SH",
        "fund": "富国中证电池主题ETF",
        "group": "新能源",
        "target_pct": 27.51404324931525
      },
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 27.51404324931525
      }
    ]
  },
  {
    "signal_date": "20251021",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6192160490502866,
    "holdings": [
      {
        "code": "561160.SH",
        "fund": "富国中证电池主题ETF",
        "group": "新能源",
        "target_pct": 37.152962943017194
      },
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 24.768641962011465
      }
    ]
  },
  {
    "signal_date": "20251027",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6170056866238637,
    "holdings": [
      {
        "code": "561160.SH",
        "fund": "富国中证电池主题ETF",
        "group": "新能源",
        "target_pct": 49.360454929909096
      },
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 12.340113732477274
      }
    ]
  },
  {
    "signal_date": "20251031",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6608623305207951,
    "holdings": [
      {
        "code": "159558.SZ",
        "fund": "易方达中证半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 13.217246610415904
      },
      {
        "code": "561160.SH",
        "fund": "富国中证电池主题ETF",
        "group": "新能源",
        "target_pct": 52.868986441663615
      }
    ]
  },
  {
    "signal_date": "20251106",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8075244199937063,
    "holdings": [
      {
        "code": "159558.SZ",
        "fund": "易方达中证半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 16.150488399874128
      },
      {
        "code": "515220.SH",
        "fund": "国泰中证煤炭ETF",
        "group": "能源",
        "target_pct": 16.150488399874128
      },
      {
        "code": "561160.SH",
        "fund": "富国中证电池主题ETF",
        "group": "新能源",
        "target_pct": 48.451465199622376
      }
    ]
  },
  {
    "signal_date": "20251112",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159558.SZ",
        "fund": "易方达中证半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 20.0
      },
      {
        "code": "515220.SH",
        "fund": "国泰中证煤炭ETF",
        "group": "能源",
        "target_pct": 40.0
      },
      {
        "code": "561160.SH",
        "fund": "富国中证电池主题ETF",
        "group": "新能源",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20251118",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159558.SZ",
        "fund": "易方达中证半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 20.0
      },
      {
        "code": "515220.SH",
        "fund": "国泰中证煤炭ETF",
        "group": "能源",
        "target_pct": 40.0
      },
      {
        "code": "516090.SH",
        "fund": "易方达中证新能源ETF",
        "group": "新能源",
        "target_pct": 20.0
      },
      {
        "code": "561160.SH",
        "fund": "富国中证电池主题ETF",
        "group": "新能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20251124",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159558.SZ",
        "fund": "易方达中证半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 20.0
      },
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 20.0
      },
      {
        "code": "515220.SH",
        "fund": "国泰中证煤炭ETF",
        "group": "能源",
        "target_pct": 40.0
      },
      {
        "code": "516090.SH",
        "fund": "易方达中证新能源ETF",
        "group": "新能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20251128",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 20.0
      },
      {
        "code": "515220.SH",
        "fund": "国泰中证煤炭ETF",
        "group": "能源",
        "target_pct": 40.0
      },
      {
        "code": "516090.SH",
        "fund": "易方达中证新能源ETF",
        "group": "新能源",
        "target_pct": 20.0
      },
      {
        "code": "562510.SH",
        "fund": "华夏中证旅游主题ETF",
        "group": "消费",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20251209",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 40.0
      },
      {
        "code": "515220.SH",
        "fund": "国泰中证煤炭ETF",
        "group": "能源",
        "target_pct": 20.0
      },
      {
        "code": "516090.SH",
        "fund": "易方达中证新能源ETF",
        "group": "新能源",
        "target_pct": 20.0
      },
      {
        "code": "562510.SH",
        "fund": "华夏中证旅游主题ETF",
        "group": "消费",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20251215",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 40.0
      },
      {
        "code": "516090.SH",
        "fund": "易方达中证新能源ETF",
        "group": "新能源",
        "target_pct": 20.0
      },
      {
        "code": "516120.SH",
        "fund": "富国中证细分化工产业主题ETF",
        "group": "材料",
        "target_pct": 20.0
      },
      {
        "code": "562510.SH",
        "fund": "华夏中证旅游主题ETF",
        "group": "消费",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20251219",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159583.SZ",
        "fund": "富国中证通信设备主题ETF",
        "group": "通信",
        "target_pct": 20.0
      },
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 40.0
      },
      {
        "code": "516120.SH",
        "fund": "富国中证细分化工产业主题ETF",
        "group": "材料",
        "target_pct": 20.0
      },
      {
        "code": "562510.SH",
        "fund": "华夏中证旅游主题ETF",
        "group": "消费",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20251225",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159583.SZ",
        "fund": "富国中证通信设备主题ETF",
        "group": "通信",
        "target_pct": 40.0
      },
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 20.0
      },
      {
        "code": "516120.SH",
        "fund": "富国中证细分化工产业主题ETF",
        "group": "材料",
        "target_pct": 20.0
      },
      {
        "code": "562510.SH",
        "fund": "华夏中证旅游主题ETF",
        "group": "消费",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20251231",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8691642578992863,
    "holdings": [
      {
        "code": "159583.SZ",
        "fund": "富国中证通信设备主题ETF",
        "group": "通信",
        "target_pct": 52.149855473957174
      },
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 17.38328515798573
      },
      {
        "code": "516120.SH",
        "fund": "富国中证细分化工产业主题ETF",
        "group": "材料",
        "target_pct": 17.38328515798573
      }
    ]
  },
  {
    "signal_date": "20260108",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8406707564253435,
    "holdings": [
      {
        "code": "159206.SZ",
        "fund": "永赢国证商用卫星通信产业ETF",
        "group": "通信",
        "target_pct": 16.81341512850687
      },
      {
        "code": "159583.SZ",
        "fund": "富国中证通信设备主题ETF",
        "group": "通信",
        "target_pct": 50.44024538552061
      },
      {
        "code": "516120.SH",
        "fund": "富国中证细分化工产业主题ETF",
        "group": "材料",
        "target_pct": 16.81341512850687
      }
    ]
  },
  {
    "signal_date": "20260114",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6893694842879311,
    "holdings": [
      {
        "code": "159206.SZ",
        "fund": "永赢国证商用卫星通信产业ETF",
        "group": "通信",
        "target_pct": 27.574779371517245
      },
      {
        "code": "159583.SZ",
        "fund": "富国中证通信设备主题ETF",
        "group": "通信",
        "target_pct": 41.362169057275864
      }
    ]
  },
  {
    "signal_date": "20260120",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6543399434653757,
    "holdings": [
      {
        "code": "159206.SZ",
        "fund": "永赢国证商用卫星通信产业ETF",
        "group": "通信",
        "target_pct": 39.260396607922544
      },
      {
        "code": "159583.SZ",
        "fund": "富国中证通信设备主题ETF",
        "group": "通信",
        "target_pct": 26.17359773861503
      }
    ]
  },
  {
    "signal_date": "20260126",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5424776172506739,
    "holdings": [
      {
        "code": "159206.SZ",
        "fund": "永赢国证商用卫星通信产业ETF",
        "group": "通信",
        "target_pct": 43.39820938005391
      },
      {
        "code": "159583.SZ",
        "fund": "富国中证通信设备主题ETF",
        "group": "通信",
        "target_pct": 10.849552345013478
      }
    ]
  },
  {
    "signal_date": "20260130",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.47580745894518545,
    "holdings": [
      {
        "code": "159206.SZ",
        "fund": "永赢国证商用卫星通信产业ETF",
        "group": "通信",
        "target_pct": 47.58074589451854
      }
    ]
  },
  {
    "signal_date": "20260202",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.473801503522414,
    "holdings": [
      {
        "code": "159206.SZ",
        "fund": "永赢国证商用卫星通信产业ETF",
        "group": "通信",
        "target_pct": 47.3801503522414
      }
    ]
  },
  {
    "signal_date": "20260203",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.46903939010710305,
    "holdings": [
      {
        "code": "159206.SZ",
        "fund": "永赢国证商用卫星通信产业ETF",
        "group": "通信",
        "target_pct": 46.9039390107103
      }
    ]
  },
  {
    "signal_date": "20260209",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5406229741024015,
    "holdings": [
      {
        "code": "159206.SZ",
        "fund": "永赢国证商用卫星通信产业ETF",
        "group": "通信",
        "target_pct": 43.24983792819212
      },
      {
        "code": "560860.SH",
        "fund": "万家中证工业有色金属主题ETF",
        "group": "材料",
        "target_pct": 10.81245948204803
      }
    ]
  },
  {
    "signal_date": "20260213",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6106434962004266,
    "holdings": [
      {
        "code": "159206.SZ",
        "fund": "永赢国证商用卫星通信产业ETF",
        "group": "通信",
        "target_pct": 36.638609772025596
      },
      {
        "code": "560860.SH",
        "fund": "万家中证工业有色金属主题ETF",
        "group": "材料",
        "target_pct": 24.425739848017063
      }
    ]
  },
  {
    "signal_date": "20260227",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7452593283504857,
    "holdings": [
      {
        "code": "159206.SZ",
        "fund": "永赢国证商用卫星通信产业ETF",
        "group": "通信",
        "target_pct": 29.81037313401943
      },
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 14.905186567009714
      },
      {
        "code": "560860.SH",
        "fund": "万家中证工业有色金属主题ETF",
        "group": "材料",
        "target_pct": 29.81037313401943
      }
    ]
  },
  {
    "signal_date": "20260309",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7605739350927219,
    "holdings": [
      {
        "code": "159206.SZ",
        "fund": "永赢国证商用卫星通信产业ETF",
        "group": "通信",
        "target_pct": 15.211478701854439
      },
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 30.422957403708878
      },
      {
        "code": "560860.SH",
        "fund": "万家中证工业有色金属主题ETF",
        "group": "材料",
        "target_pct": 30.422957403708878
      }
    ]
  },
  {
    "signal_date": "20260313",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6734768273958917,
    "holdings": [
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 40.40860964375349
      },
      {
        "code": "560860.SH",
        "fund": "万家中证工业有色金属主题ETF",
        "group": "材料",
        "target_pct": 26.93907309583567
      }
    ]
  },
  {
    "signal_date": "20260319",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 0.8267753214730081,
    "holdings": [
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 49.60651928838048
      },
      {
        "code": "560860.SH",
        "fund": "万家中证工业有色金属主题ETF",
        "group": "材料",
        "target_pct": 16.535506429460163
      }
    ]
  },
  {
    "signal_date": "20260325",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 60.0,
    "risk_factor": 0.9812227298952181,
    "holdings": [
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 58.87336379371308
      }
    ]
  },
  {
    "signal_date": "20260331",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20260408",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20260414",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 20.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 20.0
      }
    ]
  },
  {
    "signal_date": "20260420",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 40.0
      }
    ]
  },
  {
    "signal_date": "20260424",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 60.0,
    "risk_factor": 0.9838345995109019,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 59.03007597065412
      }
    ]
  },
  {
    "signal_date": "20260430",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 0.7424268493565513,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 59.394147948524115
      }
    ]
  },
  {
    "signal_date": "20260507",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5819048613693506,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 58.19048613693506
      }
    ]
  },
  {
    "signal_date": "20260513",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5973135249185403,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 59.731352491854025
      }
    ]
  },
  {
    "signal_date": "20260519",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6548965461916285,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 52.391723695330285
      },
      {
        "code": "588810.SH",
        "fund": "富国上证科创板芯片ETF",
        "group": "半导体",
        "target_pct": 13.097930923832571
      }
    ]
  },
  {
    "signal_date": "20260525",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6316506639562564,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 37.89903983737538
      },
      {
        "code": "588810.SH",
        "fund": "富国上证科创板芯片ETF",
        "group": "半导体",
        "target_pct": 25.266026558250253
      }
    ]
  },
  {
    "signal_date": "20260529",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6073472139169124,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 24.293888556676496
      },
      {
        "code": "588710.SH",
        "fund": "华泰柏瑞上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 12.146944278338248
      },
      {
        "code": "588810.SH",
        "fund": "富国上证科创板芯片ETF",
        "group": "半导体",
        "target_pct": 24.293888556676496
      }
    ]
  },
  {
    "signal_date": "20260605",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5631033301243882,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 11.262066602487764
      },
      {
        "code": "588170.SH",
        "fund": "华夏上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 11.262066602487764
      },
      {
        "code": "588710.SH",
        "fund": "华泰柏瑞上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 11.262066602487764
      },
      {
        "code": "588810.SH",
        "fund": "富国上证科创板芯片ETF",
        "group": "半导体",
        "target_pct": 22.524133204975527
      }
    ]
  },
  {
    "signal_date": "20260611",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.4982731594264572,
    "holdings": [
      {
        "code": "588170.SH",
        "fund": "华夏上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 19.930926377058288
      },
      {
        "code": "588710.SH",
        "fund": "华泰柏瑞上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 9.965463188529144
      },
      {
        "code": "588810.SH",
        "fund": "富国上证科创板芯片ETF",
        "group": "半导体",
        "target_pct": 19.930926377058288
      }
    ]
  },
  {
    "signal_date": "20260617",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.46772020333995523,
    "holdings": [
      {
        "code": "588170.SH",
        "fund": "华夏上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 28.063212200397313
      },
      {
        "code": "588710.SH",
        "fund": "华泰柏瑞上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 9.354404066799106
      },
      {
        "code": "588810.SH",
        "fund": "富国上证科创板芯片ETF",
        "group": "半导体",
        "target_pct": 9.354404066799106
      }
    ]
  },
  {
    "signal_date": "20260624",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.4548450359683521,
    "holdings": [
      {
        "code": "588170.SH",
        "fund": "华夏上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 36.38760287746817
      },
      {
        "code": "588710.SH",
        "fund": "华泰柏瑞上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 9.096900719367042
      }
    ]
  },
  {
    "signal_date": "20260630",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.4425425332905388,
    "holdings": [
      {
        "code": "588170.SH",
        "fund": "华夏上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 35.40340266324311
      },
      {
        "code": "588710.SH",
        "fund": "华泰柏瑞上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 8.850850665810777
      }
    ]
  },
  {
    "signal_date": "20260709",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.39186477072135983,
    "holdings": [
      {
        "code": "588170.SH",
        "fund": "华夏上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 31.34918165770879
      },
      {
        "code": "588710.SH",
        "fund": "华泰柏瑞上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 7.837295414427198
      }
    ]
  },
  {
    "signal_date": "20260715",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      3
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.3580755088872917,
    "holdings": [
      {
        "code": "588170.SH",
        "fund": "华夏上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 28.64604071098334
      },
      {
        "code": "588710.SH",
        "fund": "华泰柏瑞上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 7.161510177745835
      }
    ]
  },
  {
    "signal_date": "20260721",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.29884567390241923,
    "holdings": [
      {
        "code": "588170.SH",
        "fund": "华夏上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 23.90765391219354
      },
      {
        "code": "588710.SH",
        "fund": "华泰柏瑞上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 5.976913478048385
      }
    ]
  },
  {
    "signal_date": "20260727",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      1
    ],
    "raw_budget_pct": 80.0,
    "risk_factor": 0.3701010126950109,
    "holdings": [
      {
        "code": "588170.SH",
        "fund": "华夏上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 22.206060761700652
      },
      {
        "code": "588710.SH",
        "fund": "华泰柏瑞上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 7.4020202539002184
      }
    ]
  },
  {
    "signal_date": "20260731",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0
    ],
    "raw_budget_pct": 60.0,
    "risk_factor": 0.4738740205965511,
    "holdings": [
      {
        "code": "588170.SH",
        "fund": "华夏上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 28.432441235793064
      }
    ]
  },
  {
    "signal_date": "20260807",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      4
    ],
    "raw_budget_pct": 40.0,
    "risk_factor": 0.6825697825181397,
    "holdings": [
      {
        "code": "588170.SH",
        "fund": "华夏上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 27.302791300725588
      }
    ]
  }
]