[
  {
    "signal_date": "20181228",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20190131",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20190228",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.9271034865197714,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 61.806899101318095
      },
      {
        "code": "512000.SH",
        "fund": "华宝中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 30.903449550659047
      }
    ]
  },
  {
    "signal_date": "20190329",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7779403490017295,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 51.86268993344862
      },
      {
        "code": "512900.SH",
        "fund": "南方中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 25.93134496672431
      }
    ]
  },
  {
    "signal_date": "20190430",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7928547179865978,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 79.28547179865978
      }
    ]
  },
  {
    "signal_date": "20190531",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6970492217186772,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 69.70492217186772
      }
    ]
  },
  {
    "signal_date": "20190628",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8337011958034194,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 27.79003986011398
      },
      {
        "code": "512000.SH",
        "fund": "华宝中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 27.79003986011398
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 27.79003986011398
      }
    ]
  },
  {
    "signal_date": "20190731",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 33.33333333333333
      },
      {
        "code": "512660.SH",
        "fund": "国泰中证军工ETF",
        "group": "军工航天",
        "target_pct": 33.33333333333333
      },
      {
        "code": "512700.SH",
        "fund": "南方中证银行ETF",
        "group": "金融",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20190830",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159928.SZ",
        "fund": "汇添富中证主要消费ETF",
        "group": "消费",
        "target_pct": 33.33333333333333
      },
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 33.33333333333333
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20190930",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 66.66666666666666
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20191031",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512010.SH",
        "fund": "易方达沪深300医药卫生ETF",
        "group": "医药",
        "target_pct": 66.66666666666666
      },
      {
        "code": "512800.SH",
        "fund": "华宝中证银行ETF",
        "group": "金融",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20191129",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20191231",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512000.SH",
        "fund": "华宝中证全指证券公司ETF",
        "group": "金融",
        "target_pct": 33.33333333333333
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 33.33333333333333
      },
      {
        "code": "512800.SH",
        "fund": "华宝中证银行ETF",
        "group": "金融",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20200123",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159938.SZ",
        "fund": "广发中证全指医药卫生ETF",
        "group": "医药",
        "target_pct": 33.33333333333333
      },
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 33.33333333333333
      },
      {
        "code": "512980.SH",
        "fund": "广发中证传媒ETF",
        "group": "传媒游戏",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20200228",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20200331",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20200430",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20200529",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20200630",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.9394624828527027,
    "holdings": [
      {
        "code": "512290.SH",
        "fund": "国泰中证生物医药ETF",
        "group": "医药",
        "target_pct": 93.94624828527027
      }
    ]
  },
  {
    "signal_date": "20200731",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.849228076040374,
    "holdings": [
      {
        "code": "512290.SH",
        "fund": "国泰中证生物医药ETF",
        "group": "医药",
        "target_pct": 56.61520506935827
      },
      {
        "code": "512710.SH",
        "fund": "富国中证军工龙头ETF",
        "group": "军工航天",
        "target_pct": 28.307602534679134
      }
    ]
  },
  {
    "signal_date": "20200831",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8583306849289493,
    "holdings": [
      {
        "code": "510150.SH",
        "fund": "招商上证消费80ETF",
        "group": "消费",
        "target_pct": 28.61102283096497
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 28.61102283096497
      },
      {
        "code": "512710.SH",
        "fund": "富国中证军工龙头ETF",
        "group": "军工航天",
        "target_pct": 28.61102283096497
      }
    ]
  },
  {
    "signal_date": "20200930",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.9103197063913073,
    "holdings": [
      {
        "code": "510150.SH",
        "fund": "招商上证消费80ETF",
        "group": "消费",
        "target_pct": 30.343990213043575
      },
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 30.343990213043575
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 30.343990213043575
      }
    ]
  },
  {
    "signal_date": "20201030",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8278459771777927,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 82.78459771777928
      }
    ]
  },
  {
    "signal_date": "20201130",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.9204702944821642,
    "holdings": [
      {
        "code": "512400.SH",
        "fund": "南方中证申万有色金属ETF",
        "group": "材料",
        "target_pct": 30.682343149405472
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 61.364686298810945
      }
    ]
  },
  {
    "signal_date": "20201231",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8847712535032282,
    "holdings": [
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 58.984750233548546
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 29.492375116774273
      }
    ]
  },
  {
    "signal_date": "20210129",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7248496631433495,
    "holdings": [
      {
        "code": "512170.SH",
        "fund": "华宝中证医疗ETF",
        "group": "医药",
        "target_pct": 24.16165543811165
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 48.3233108762233
      }
    ]
  },
  {
    "signal_date": "20210226",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "512730.SH",
        "fund": "鹏华中证银行ETF",
        "group": "金融",
        "target_pct": 33.33333333333333
      },
      {
        "code": "515210.SH",
        "fund": "国泰中证钢铁ETF",
        "group": "材料",
        "target_pct": 33.33333333333333
      },
      {
        "code": "515700.SH",
        "fund": "平安中证新能源汽车产业ETF",
        "group": "新能源",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20210331",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210430",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210531",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159806.SZ",
        "fund": "国泰中证新能源汽车ETF",
        "group": "新能源",
        "target_pct": 33.33333333333333
      },
      {
        "code": "512810.SH",
        "fund": "华宝中证军工ETF",
        "group": "军工航天",
        "target_pct": 33.33333333333333
      },
      {
        "code": "515210.SH",
        "fund": "国泰中证钢铁ETF",
        "group": "材料",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20210630",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.841374123524188,
    "holdings": [
      {
        "code": "159806.SZ",
        "fund": "国泰中证新能源汽车ETF",
        "group": "新能源",
        "target_pct": 28.045804117472926
      },
      {
        "code": "512480.SH",
        "fund": "国联安中证全指半导体产品与设备ETF",
        "group": "半导体",
        "target_pct": 56.09160823494585
      }
    ]
  },
  {
    "signal_date": "20210730",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210831",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20210930",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20211029",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20211130",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20211231",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159855.SZ",
        "fund": "银华中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 66.66666666666666
      },
      {
        "code": "516520.SH",
        "fund": "华泰柏瑞中证智能汽车主题ETF",
        "group": "汽车",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20220128",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220228",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220331",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220429",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220531",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220630",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.604994792621502,
    "holdings": [
      {
        "code": "159767.SZ",
        "fund": "兴银国证新能源车电池ETF",
        "group": "新能源",
        "target_pct": 20.1664930873834
      },
      {
        "code": "516110.SH",
        "fund": "国泰中证800汽车与零部件ETF",
        "group": "汽车",
        "target_pct": 20.1664930873834
      },
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 20.1664930873834
      }
    ]
  },
  {
    "signal_date": "20220729",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220831",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20220930",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221031",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221130",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20221230",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230131",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159851.SZ",
        "fund": "华宝中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 33.33333333333333
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 33.33333333333333
      },
      {
        "code": "516620.SH",
        "fund": "国泰中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20230228",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 33.33333333333333
      },
      {
        "code": "512690.SH",
        "fund": "鹏华中证酒ETF",
        "group": "消费",
        "target_pct": 33.33333333333333
      },
      {
        "code": "516950.SH",
        "fund": "银华中证基建ETF",
        "group": "地产基建",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20230331",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.74849547357482,
    "holdings": [
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 49.899698238321335
      },
      {
        "code": "516630.SH",
        "fund": "华夏中证云计算与大数据主题ETF",
        "group": "软件AI",
        "target_pct": 24.949849119160667
      }
    ]
  },
  {
    "signal_date": "20230428",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.4463213029357516,
    "holdings": [
      {
        "code": "159869.SZ",
        "fund": "华夏中证动漫游戏ETF",
        "group": "传媒游戏",
        "target_pct": 44.63213029357516
      }
    ]
  },
  {
    "signal_date": "20230531",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230630",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230731",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159745.SZ",
        "fund": "国泰中证全指建筑材料ETF",
        "group": "地产基建",
        "target_pct": 33.33333333333333
      },
      {
        "code": "516110.SH",
        "fund": "国泰中证800汽车与零部件ETF",
        "group": "汽车",
        "target_pct": 66.66666666666666
      }
    ]
  },
  {
    "signal_date": "20230831",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20230928",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231031",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231130",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20231229",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240131",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240229",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159887.SZ",
        "fund": "富国中证800银行ETF",
        "group": "金融",
        "target_pct": 33.33333333333333
      },
      {
        "code": "515220.SH",
        "fund": "国泰中证煤炭ETF",
        "group": "能源",
        "target_pct": 33.33333333333333
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20240329",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159652.SZ",
        "fund": "汇添富中证细分有色金属产业主题ETF",
        "group": "材料",
        "target_pct": 33.33333333333333
      },
      {
        "code": "512700.SH",
        "fund": "南方中证银行ETF",
        "group": "金融",
        "target_pct": 33.33333333333333
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20240430",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159652.SZ",
        "fund": "汇添富中证细分有色金属产业主题ETF",
        "group": "材料",
        "target_pct": 33.33333333333333
      },
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 33.33333333333333
      },
      {
        "code": "516650.SH",
        "fund": "华夏中证细分有色金属产业主题ETF",
        "group": "材料",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20240531",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159652.SZ",
        "fund": "汇添富中证细分有色金属产业主题ETF",
        "group": "材料",
        "target_pct": 33.33333333333333
      },
      {
        "code": "159707.SZ",
        "fund": "华宝中证800地产ETF",
        "group": "地产基建",
        "target_pct": 33.33333333333333
      },
      {
        "code": "516910.SH",
        "fund": "富国中证现代物流ETF",
        "group": "地产基建",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20240628",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240731",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240830",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20240930",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6809436794478045,
    "holdings": [
      {
        "code": "512070.SH",
        "fund": "易方达沪深300非银行金融ETF",
        "group": "金融",
        "target_pct": 45.3962452965203
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 22.69812264826015
      }
    ]
  },
  {
    "signal_date": "20241031",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.43849268996014573,
    "holdings": [
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 43.84926899601457
      }
    ]
  },
  {
    "signal_date": "20241129",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.4625199195324557,
    "holdings": [
      {
        "code": "516620.SH",
        "fund": "国泰中证影视主题ETF",
        "group": "传媒游戏",
        "target_pct": 15.417330651081857
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 30.834661302163713
      }
    ]
  },
  {
    "signal_date": "20241231",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8845707372508693,
    "holdings": [
      {
        "code": "159994.SZ",
        "fund": "银华中证5G通信主题ETF",
        "group": "通信",
        "target_pct": 29.485691241695644
      },
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 29.485691241695644
      },
      {
        "code": "516860.SH",
        "fund": "博时中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 29.485691241695644
      }
    ]
  },
  {
    "signal_date": "20250127",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8832942837871522,
    "holdings": [
      {
        "code": "159770.SZ",
        "fund": "天弘中证机器人ETF",
        "group": "高端制造",
        "target_pct": 29.443142792905075
      },
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 29.443142792905075
      },
      {
        "code": "562500.SH",
        "fund": "华夏中证机器人ETF",
        "group": "高端制造",
        "target_pct": 29.443142792905075
      }
    ]
  },
  {
    "signal_date": "20250228",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6266519483889029,
    "holdings": [
      {
        "code": "159770.SZ",
        "fund": "天弘中证机器人ETF",
        "group": "高端制造",
        "target_pct": 20.888398279630096
      },
      {
        "code": "515400.SH",
        "fund": "富国中证大数据产业ETF",
        "group": "软件AI",
        "target_pct": 20.888398279630096
      },
      {
        "code": "562500.SH",
        "fund": "华夏中证机器人ETF",
        "group": "高端制造",
        "target_pct": 20.888398279630096
      }
    ]
  },
  {
    "signal_date": "20250331",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20250430",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20250530",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20250630",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.9681496496435652,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 32.27165498811884
      },
      {
        "code": "516100.SH",
        "fund": "华夏中证金融科技主题ETF",
        "group": "金融",
        "target_pct": 32.27165498811884
      },
      {
        "code": "516310.SH",
        "fund": "易方达中证银行ETF",
        "group": "金融",
        "target_pct": 32.27165498811884
      }
    ]
  },
  {
    "signal_date": "20250731",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "159713.SZ",
        "fund": "富国中证稀土产业ETF",
        "group": "材料",
        "target_pct": 33.33333333333333
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 66.66666666666666
      }
    ]
  },
  {
    "signal_date": "20250829",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7224311852928832,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 48.16207901952554
      },
      {
        "code": "515980.SH",
        "fund": "华富中证人工智能产业ETF",
        "group": "软件AI",
        "target_pct": 24.08103950976277
      }
    ]
  },
  {
    "signal_date": "20250930",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.7513723378006149,
    "holdings": [
      {
        "code": "159582.SZ",
        "fund": "博时中证半导体产业ETF",
        "group": "半导体",
        "target_pct": 25.045744593353824
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 25.045744593353824
      },
      {
        "code": "561910.SH",
        "fund": "招商中证电池主题ETF",
        "group": "新能源",
        "target_pct": 25.045744593353824
      }
    ]
  },
  {
    "signal_date": "20251031",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.8019559035937084,
    "holdings": [
      {
        "code": "159558.SZ",
        "fund": "易方达中证半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 26.731863453123612
      },
      {
        "code": "515220.SH",
        "fund": "国泰中证煤炭ETF",
        "group": "能源",
        "target_pct": 26.731863453123612
      },
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 26.731863453123612
      }
    ]
  },
  {
    "signal_date": "20251128",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 1.0,
    "holdings": [
      {
        "code": "515020.SH",
        "fund": "华夏中证银行ETF",
        "group": "金融",
        "target_pct": 33.33333333333333
      },
      {
        "code": "561160.SH",
        "fund": "富国中证电池主题ETF",
        "group": "新能源",
        "target_pct": 33.33333333333333
      },
      {
        "code": "562510.SH",
        "fund": "华夏中证旅游主题ETF",
        "group": "消费",
        "target_pct": 33.33333333333333
      }
    ]
  },
  {
    "signal_date": "20251231",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.9163534169199046,
    "holdings": [
      {
        "code": "159583.SZ",
        "fund": "富国中证通信设备主题ETF",
        "group": "通信",
        "target_pct": 30.54511389733015
      },
      {
        "code": "159638.SZ",
        "fund": "嘉实中证高端装备细分50ETF",
        "group": "高端制造",
        "target_pct": 30.54511389733015
      },
      {
        "code": "561330.SH",
        "fund": "国泰中证有色金属矿业主题ETF",
        "group": "材料",
        "target_pct": 30.54511389733015
      }
    ]
  },
  {
    "signal_date": "20260130",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6450182183306259,
    "holdings": [
      {
        "code": "159206.SZ",
        "fund": "永赢国证商用卫星通信产业ETF",
        "group": "通信",
        "target_pct": 43.00121455537506
      },
      {
        "code": "561330.SH",
        "fund": "国泰中证有色金属矿业主题ETF",
        "group": "材料",
        "target_pct": 21.50060727768753
      }
    ]
  },
  {
    "signal_date": "20260227",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.984031451875452,
    "holdings": [
      {
        "code": "159206.SZ",
        "fund": "永赢国证商用卫星通信产业ETF",
        "group": "通信",
        "target_pct": 32.8010483958484
      },
      {
        "code": "159697.SZ",
        "fund": "鹏华国证石油天然气ETF",
        "group": "能源",
        "target_pct": 32.8010483958484
      },
      {
        "code": "560280.SH",
        "fund": "广发中证工程机械主题ETF",
        "group": "高端制造",
        "target_pct": 32.8010483958484
      }
    ]
  },
  {
    "signal_date": "20260331",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  },
  {
    "signal_date": "20260430",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.6631899428035617,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 44.21266285357078
      },
      {
        "code": "562950.SH",
        "fund": "易方达中证消费电子主题ETF",
        "group": "电子",
        "target_pct": 22.10633142678539
      }
    ]
  },
  {
    "signal_date": "20260529",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.5885162389872435,
    "holdings": [
      {
        "code": "515880.SH",
        "fund": "国泰中证全指通信设备ETF",
        "group": "通信",
        "target_pct": 19.61720796624145
      },
      {
        "code": "588170.SH",
        "fund": "华夏上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 19.61720796624145
      },
      {
        "code": "588710.SH",
        "fund": "华泰柏瑞上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 19.61720796624145
      }
    ]
  },
  {
    "signal_date": "20260630",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 100.0,
    "risk_factor": 0.4433973871134706,
    "holdings": [
      {
        "code": "588170.SH",
        "fund": "华夏上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 29.559825807564703
      },
      {
        "code": "588710.SH",
        "fund": "华泰柏瑞上证科创板半导体材料设备主题ETF",
        "group": "半导体",
        "target_pct": 14.779912903782352
      }
    ]
  },
  {
    "signal_date": "20260731",
    "reason": [
      "calendar_update"
    ],
    "slots_updated": [
      0,
      1,
      2
    ],
    "raw_budget_pct": 0.0,
    "risk_factor": 1.0,
    "holdings": []
  }
]