[
  {
    "signal_date": "20230331",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20230330",
    "macro": {
      "rate": 2.454,
      "iv30": 17.8672,
      "iv90": 19.0583,
      "skew": -0.3437,
      "basis60": 2.0214,
      "rate_tight": true,
      "rate_change20": -0.004999999999999893,
      "iv_inverted": false,
      "skew_threshold": 2.3329400000000007,
      "basis_threshold": -0.61522,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [
      {
        "code": "159869.SZ",
        "score40": 0.8324452556395077,
        "own_ma120": true,
        "macro_benefit": -7.065867514693016e-05
      },
      {
        "code": "516010.SH",
        "score40": 0.8183915425047367,
        "own_ma120": true,
        "macro_benefit": -6.983867081958673e-05
      },
      {
        "code": "516770.SH",
        "score40": 0.8153488481685064,
        "own_ma120": true,
        "macro_benefit": -7.280532807109688e-05
      }
    ],
    "holdings": [
      {
        "code": "159869.SZ",
        "target_pct": 33.982082844555286
      }
    ]
  },
  {
    "signal_date": "20230428",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20230427",
    "macro": {
      "rate": 2.43,
      "iv30": 18.2999,
      "iv90": 19.1898,
      "skew": -0.146,
      "basis60": 3.5527,
      "rate_tight": false,
      "rate_change20": -0.0259999999999998,
      "iv_inverted": false,
      "skew_threshold": 2.12045,
      "basis_threshold": -0.48024999999999995,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [
      {
        "code": "159869.SZ",
        "score40": 3.168216620145196,
        "own_ma120": true,
        "macro_benefit": -0.00033538584022650594
      },
      {
        "code": "516010.SH",
        "score40": 3.1284112300713245,
        "own_ma120": true,
        "macro_benefit": -0.00032901469004125827
      },
      {
        "code": "516770.SH",
        "score40": 3.114601628005579,
        "own_ma120": true,
        "macro_benefit": -0.0003473458584991589
      }
    ],
    "holdings": [
      {
        "code": "159869.SZ",
        "target_pct": 44.63213029357516
      }
    ]
  },
  {
    "signal_date": "20230531",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20230530",
    "macro": {
      "rate": 2.223,
      "iv30": 17.8052,
      "iv90": 18.1842,
      "skew": -0.3882,
      "basis60": 3.8878,
      "rate_tight": false,
      "rate_change20": -0.2070000000000003,
      "iv_inverted": false,
      "skew_threshold": 1.93785,
      "basis_threshold": -0.30855,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20230630",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20230629",
    "macro": {
      "rate": 2.167,
      "iv30": 17.6282,
      "iv90": 17.8568,
      "skew": -0.0157,
      "basis60": 3.7775,
      "rate_tight": false,
      "rate_change20": -0.05600000000000005,
      "iv_inverted": false,
      "skew_threshold": 1.8316,
      "basis_threshold": -0.08965,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20230731",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20230728",
    "macro": {
      "rate": 2.098,
      "iv30": 17.294,
      "iv90": 18.0221,
      "skew": -0.9038,
      "basis60": 3.2191,
      "rate_tight": false,
      "rate_change20": -0.07000000000000028,
      "iv_inverted": false,
      "skew_threshold": 1.7232000000000005,
      "basis_threshold": 0.04464000000000001,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [
      {
        "code": "516110.SH",
        "score40": 0.6631123264910339,
        "own_ma120": true,
        "macro_benefit": 0.004753786213981319
      },
      {
        "code": "516810.SH",
        "score40": 0.4076616259652647,
        "own_ma120": false,
        "macro_benefit": 0.00021525026678944194
      },
      {
        "code": "159825.SZ",
        "score40": 0.4075916431486649,
        "own_ma120": false,
        "macro_benefit": 0.0005202712064335312
      }
    ],
    "holdings": [
      {
        "code": "516110.SH",
        "target_pct": 100.0
      }
    ]
  },
  {
    "signal_date": "20230831",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20230830",
    "macro": {
      "rate": 2.036,
      "iv30": 21.5684,
      "iv90": 20.2014,
      "skew": -1.0149,
      "basis60": 4.1318,
      "rate_tight": false,
      "rate_change20": -0.06199999999999983,
      "iv_inverted": true,
      "skew_threshold": 1.67882,
      "basis_threshold": 0.11542000000000013,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20230928",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20230927",
    "macro": {
      "rate": 2.303,
      "iv30": 19.5268,
      "iv90": 20.9709,
      "skew": -1.0929,
      "basis60": 4.1184,
      "rate_tight": true,
      "rate_change20": 0.2669999999999999,
      "iv_inverted": false,
      "skew_threshold": 1.6155499999999996,
      "basis_threshold": 0.13634000000000002,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20231031",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20231030",
    "macro": {
      "rate": 2.406,
      "iv30": 19.4535,
      "iv90": 19.859,
      "skew": -0.2816,
      "basis60": 1.2984,
      "rate_tight": true,
      "rate_change20": 0.133,
      "iv_inverted": false,
      "skew_threshold": 0.62507,
      "basis_threshold": 0.6222100000000002,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20231130",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20231129",
    "macro": {
      "rate": 2.481,
      "iv30": 18.3814,
      "iv90": 18.3765,
      "skew": -1.1267,
      "basis60": 4.1977,
      "rate_tight": true,
      "rate_change20": 0.06000000000000005,
      "iv_inverted": true,
      "skew_threshold": 0.5115700000000001,
      "basis_threshold": 1.31929,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20231229",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20231228",
    "macro": {
      "rate": 2.556,
      "iv30": 21.1158,
      "iv90": 21.1348,
      "skew": -2.1196,
      "basis60": 2.7874,
      "rate_tight": true,
      "rate_change20": 0.06300000000000017,
      "iv_inverted": false,
      "skew_threshold": 0.5082,
      "basis_threshold": 1.4711,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20240131",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20240130",
    "macro": {
      "rate": 2.398,
      "iv30": 29.223,
      "iv90": 27.1345,
      "skew": 0.6938,
      "basis60": 0.0844,
      "rate_tight": false,
      "rate_change20": -0.052000000000000046,
      "iv_inverted": true,
      "skew_threshold": 0.48092,
      "basis_threshold": 1.47594,
      "skew_risk": true,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20240229",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20240228",
    "macro": {
      "rate": 2.1989,
      "iv30": 29.2232,
      "iv90": 26.1116,
      "skew": -1.173,
      "basis60": -11.3216,
      "rate_tight": false,
      "rate_change20": -0.20109999999999983,
      "iv_inverted": true,
      "skew_threshold": 0.5435599999999999,
      "basis_threshold": 1.0995700000000002,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [
      {
        "code": "159887.SZ",
        "score40": 0.7997423626626173,
        "own_ma120": true,
        "macro_benefit": 0.005368790790338341
      },
      {
        "code": "515290.SH",
        "score40": 0.7887544558068452,
        "own_ma120": true,
        "macro_benefit": 0.0029511316567451384
      },
      {
        "code": "516310.SH",
        "score40": 0.7882848330128721,
        "own_ma120": true,
        "macro_benefit": 0.002335823487629587
      }
    ],
    "holdings": [
      {
        "code": "159887.SZ",
        "target_pct": 50.0
      }
    ]
  },
  {
    "signal_date": "20240329",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20240328",
    "macro": {
      "rate": 2.156,
      "iv30": 24.4937,
      "iv90": 24.5752,
      "skew": 0.2036,
      "basis60": -2.5232,
      "rate_tight": false,
      "rate_change20": -0.03699999999999992,
      "iv_inverted": false,
      "skew_threshold": 0.5752,
      "basis_threshold": -1.7791399999999997,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [
      {
        "code": "515880.SH",
        "score40": 1.585102841653173,
        "own_ma120": true,
        "macro_benefit": 0.004993903553226027
      },
      {
        "code": "515050.SH",
        "score40": 1.3947582693113618,
        "own_ma120": true,
        "macro_benefit": 0.0025829871321759366
      },
      {
        "code": "159994.SZ",
        "score40": 1.3786549932814738,
        "own_ma120": true,
        "macro_benefit": 0.002224073448189399
      }
    ],
    "holdings": [
      {
        "code": "515880.SH",
        "target_pct": 53.11340559636388
      }
    ]
  },
  {
    "signal_date": "20240430",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20240429",
    "macro": {
      "rate": 2.005,
      "iv30": 24.7473,
      "iv90": 23.9641,
      "skew": -1.4287,
      "basis60": 1.0261,
      "rate_tight": false,
      "rate_change20": -0.15100000000000025,
      "iv_inverted": true,
      "skew_threshold": 0.67721,
      "basis_threshold": -2.1949999999999994,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [
      {
        "code": "516650.SH",
        "score40": 0.6747850497767215,
        "own_ma120": true,
        "macro_benefit": 0.0019105423654772464
      },
      {
        "code": "159652.SZ",
        "score40": 0.6610902129808075,
        "own_ma120": true,
        "macro_benefit": 0.0009720080419831113
      },
      {
        "code": "159880.SZ",
        "score40": 0.6145762331608254,
        "own_ma120": true,
        "macro_benefit": 0.0028638243529113564
      }
    ],
    "holdings": [
      {
        "code": "516650.SH",
        "target_pct": 42.153676681718025
      }
    ]
  },
  {
    "signal_date": "20240531",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20240530",
    "macro": {
      "rate": 1.957,
      "iv30": 20.5679,
      "iv90": 20.878,
      "skew": 0.0207,
      "basis60": 1.5882,
      "rate_tight": false,
      "rate_change20": -0.04799999999999982,
      "iv_inverted": false,
      "skew_threshold": 0.65739,
      "basis_threshold": -2.1949999999999994,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [
      {
        "code": "516910.SH",
        "score40": 0.6293794820294275,
        "own_ma120": true,
        "macro_benefit": 0.0006175010169197899
      },
      {
        "code": "159707.SZ",
        "score40": 0.5868888580128293,
        "own_ma120": true,
        "macro_benefit": -0.004809126891756523
      },
      {
        "code": "159768.SZ",
        "score40": 0.5737678241226275,
        "own_ma120": true,
        "macro_benefit": -0.005106097661724911
      }
    ],
    "holdings": [
      {
        "code": "516910.SH",
        "target_pct": 100.0
      }
    ]
  },
  {
    "signal_date": "20240628",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20240627",
    "macro": {
      "rate": 1.918,
      "iv30": 21.5542,
      "iv90": 20.8885,
      "skew": 0.0949,
      "basis60": -0.5202,
      "rate_tight": false,
      "rate_change20": -0.039000000000000146,
      "iv_inverted": true,
      "skew_threshold": 0.67721,
      "basis_threshold": -2.1949999999999994,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20240731",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20240730",
    "macro": {
      "rate": 1.865,
      "iv30": 20.4218,
      "iv90": 20.6129,
      "skew": 0.3413,
      "basis60": -1.0815,
      "rate_tight": false,
      "rate_change20": -0.052000000000000046,
      "iv_inverted": false,
      "skew_threshold": 0.8049800000000004,
      "basis_threshold": -2.8207899999999997,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20240830",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20240829",
    "macro": {
      "rate": 1.85,
      "iv30": 19.3057,
      "iv90": 20.0362,
      "skew": 0.2785,
      "basis60": 0.1774,
      "rate_tight": false,
      "rate_change20": -0.006999999999999895,
      "iv_inverted": false,
      "skew_threshold": 0.8744800000000003,
      "basis_threshold": -2.8207899999999997,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20240930",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20240927",
    "macro": {
      "rate": 1.835,
      "iv30": 44.2777,
      "iv90": 37.1808,
      "skew": -5.6998,
      "basis60": 1.6167,
      "rate_tight": false,
      "rate_change20": -0.015000000000000124,
      "iv_inverted": true,
      "skew_threshold": 0.9055000000000002,
      "basis_threshold": -2.8207899999999997,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [
      {
        "code": "512070.SH",
        "score40": 0.392029589739432,
        "own_ma120": true,
        "macro_benefit": -0.0003388661388755171
      },
      {
        "code": "159851.SZ",
        "score40": 0.34341921658159286,
        "own_ma120": true,
        "macro_benefit": -0.0003033121619119102
      },
      {
        "code": "516860.SH",
        "score40": 0.33177469043025126,
        "own_ma120": true,
        "macro_benefit": -0.0002673344299271847
      }
    ],
    "holdings": [
      {
        "code": "512070.SH",
        "target_pct": 36.172891920149674
      }
    ]
  },
  {
    "signal_date": "20241031",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20241030",
    "macro": {
      "rate": 1.884,
      "iv30": 43.3664,
      "iv90": 40.6623,
      "skew": -12.4461,
      "basis60": 1.1923,
      "rate_tight": true,
      "rate_change20": 0.038999999999999924,
      "iv_inverted": true,
      "skew_threshold": 0.90818,
      "basis_threshold": -2.86256,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [
      {
        "code": "516860.SH",
        "score40": 4.971978852110362,
        "own_ma120": true,
        "macro_benefit": 0.003989705043955022
      },
      {
        "code": "159851.SZ",
        "score40": 4.884546689387761,
        "own_ma120": true,
        "macro_benefit": 0.0038539328843664455
      },
      {
        "code": "516100.SH",
        "score40": 4.856730738299433,
        "own_ma120": true,
        "macro_benefit": 0.0045256953853783114
      }
    ],
    "holdings": [
      {
        "code": "516860.SH",
        "target_pct": 21.924634498007286
      }
    ]
  },
  {
    "signal_date": "20241129",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20241128",
    "macro": {
      "rate": 1.858,
      "iv30": 33.389,
      "iv90": 32.736,
      "skew": -2.293,
      "basis60": -1.2426,
      "rate_tight": true,
      "rate_change20": -0.0259999999999998,
      "iv_inverted": true,
      "skew_threshold": 0.9051100000000002,
      "basis_threshold": -3.859199999999999,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [
      {
        "code": "159851.SZ",
        "score40": 0.9720381842341442,
        "own_ma120": true,
        "macro_benefit": -0.0028908161446247857
      },
      {
        "code": "516860.SH",
        "score40": 0.9676402565607766,
        "own_ma120": true,
        "macro_benefit": -0.0030880718338778903
      },
      {
        "code": "516100.SH",
        "score40": 0.8969016208280782,
        "own_ma120": true,
        "macro_benefit": -0.0033723720048796217
      }
    ],
    "holdings": [
      {
        "code": "516860.SH",
        "target_pct": 18.769977005529327
      }
    ]
  },
  {
    "signal_date": "20241231",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20241230",
    "macro": {
      "rate": 1.685,
      "iv30": 25.0712,
      "iv90": 27.0296,
      "skew": -3.8125,
      "basis60": -0.9275,
      "rate_tight": false,
      "rate_change20": -0.1399999999999999,
      "iv_inverted": false,
      "skew_threshold": 0.9051100000000002,
      "basis_threshold": -3.859199999999999,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [
      {
        "code": "516310.SH",
        "score40": 0.30611633145941397,
        "own_ma120": true,
        "macro_benefit": 0.012940653804140794
      },
      {
        "code": "515020.SH",
        "score40": 0.29141456362258944,
        "own_ma120": true,
        "macro_benefit": 0.01572945149551864
      },
      {
        "code": "515290.SH",
        "score40": 0.29128043902635753,
        "own_ma120": true,
        "macro_benefit": 0.015545009303513156
      }
    ],
    "holdings": [
      {
        "code": "516310.SH",
        "target_pct": 100.0
      }
    ]
  },
  {
    "signal_date": "20250127",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20250124",
    "macro": {
      "rate": 1.697,
      "iv30": 28.0339,
      "iv90": 30.4427,
      "skew": -3.1804,
      "basis60": -1.5659,
      "rate_tight": false,
      "rate_change20": 0.0048000000000001375,
      "iv_inverted": false,
      "skew_threshold": 0.9352000000000003,
      "basis_threshold": -3.859199999999999,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [
      {
        "code": "159887.SZ",
        "score40": 0.1862080797014247,
        "own_ma120": true,
        "macro_benefit": -0.0007735345281239842
      },
      {
        "code": "516310.SH",
        "score40": 0.17626008449048597,
        "own_ma120": true,
        "macro_benefit": -0.0006887006140928496
      },
      {
        "code": "515020.SH",
        "score40": 0.1714231019825452,
        "own_ma120": true,
        "macro_benefit": -0.0007269642993852068
      }
    ],
    "holdings": [
      {
        "code": "516310.SH",
        "target_pct": 100.0
      }
    ]
  },
  {
    "signal_date": "20250228",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20250227",
    "macro": {
      "rate": 1.89,
      "iv30": 27.4623,
      "iv90": 27.6504,
      "skew": -3.6115,
      "basis60": -2.1685,
      "rate_tight": true,
      "rate_change20": 0.19699999999999984,
      "iv_inverted": false,
      "skew_threshold": 0.8744800000000003,
      "basis_threshold": -4.4796700000000005,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [
      {
        "code": "562500.SH",
        "score40": 1.6031564414315136,
        "own_ma120": true,
        "macro_benefit": 0.02795672692399445
      },
      {
        "code": "159526.SZ",
        "score40": 1.5899037874008433,
        "own_ma120": true,
        "macro_benefit": 0.03929149559609002
      },
      {
        "code": "159770.SZ",
        "score40": 1.5880328302131992,
        "own_ma120": true,
        "macro_benefit": 0.02896629733553183
      }
    ],
    "holdings": [
      {
        "code": "562500.SH",
        "target_pct": 30.478318986461556
      }
    ]
  },
  {
    "signal_date": "20250331",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20250328",
    "macro": {
      "rate": 1.921,
      "iv30": 20.1216,
      "iv90": 21.2558,
      "skew": -1.5058,
      "basis60": -0.9268,
      "rate_tight": true,
      "rate_change20": -0.0009999999999998899,
      "iv_inverted": false,
      "skew_threshold": 0.8038100000000005,
      "basis_threshold": -3.1512700000000002,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20250430",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20250429",
    "macro": {
      "rate": 1.75,
      "iv30": 23.4973,
      "iv90": 25.0799,
      "skew": 1.5396,
      "basis60": -3.2133,
      "rate_tight": false,
      "rate_change20": -0.16199999999999992,
      "iv_inverted": false,
      "skew_threshold": 1.0837000000000003,
      "basis_threshold": -3.6814199999999997,
      "skew_risk": true,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20250530",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20250529",
    "macro": {
      "rate": 1.652,
      "iv30": 21.0499,
      "iv90": 22.5808,
      "skew": 0.5339,
      "basis60": -5.7159,
      "rate_tight": false,
      "rate_change20": -0.09800000000000009,
      "iv_inverted": false,
      "skew_threshold": 1.02665,
      "basis_threshold": -5.533309999999999,
      "skew_risk": false,
      "panic_repair": true
    },
    "multiplier": 1.0,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20250630",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20250627",
    "macro": {
      "rate": 1.63,
      "iv30": 20.9403,
      "iv90": 22.3643,
      "skew": -3.5652,
      "basis60": -5.5953,
      "rate_tight": false,
      "rate_change20": -0.02200000000000002,
      "iv_inverted": false,
      "skew_threshold": 1.0838900000000002,
      "basis_threshold": -9.041039999999999,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [
      {
        "code": "515880.SH",
        "score40": 0.7601363449660222,
        "own_ma120": true,
        "macro_benefit": -0.0032226073946066166
      },
      {
        "code": "159869.SZ",
        "score40": 0.676785383821042,
        "own_ma120": true,
        "macro_benefit": -0.007243974364920037
      },
      {
        "code": "516010.SH",
        "score40": 0.6657271683043123,
        "own_ma120": true,
        "macro_benefit": -0.007431053037123285
      }
    ],
    "holdings": [
      {
        "code": "515880.SH",
        "target_pct": 69.58835313047578
      }
    ]
  },
  {
    "signal_date": "20250731",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20250730",
    "macro": {
      "rate": 1.564,
      "iv30": 25.1705,
      "iv90": 26.6271,
      "skew": -1.9706,
      "basis60": -0.8194,
      "rate_tight": false,
      "rate_change20": -0.05549999999999988,
      "iv_inverted": false,
      "skew_threshold": 1.0838900000000002,
      "basis_threshold": -9.066130000000001,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [
      {
        "code": "515880.SH",
        "score40": 1.7233778117624658,
        "own_ma120": true,
        "macro_benefit": -0.00734418576817574
      },
      {
        "code": "515050.SH",
        "score40": 1.6761905055691133,
        "own_ma120": true,
        "macro_benefit": -0.00783961611186467
      },
      {
        "code": "159994.SZ",
        "score40": 1.6596815067639776,
        "own_ma120": true,
        "macro_benefit": -0.007993152222114391
      }
    ],
    "holdings": [
      {
        "code": "515880.SH",
        "target_pct": 88.9365216717216
      }
    ]
  },
  {
    "signal_date": "20250829",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20250828",
    "macro": {
      "rate": 1.55,
      "iv30": 38.7162,
      "iv90": 34.522,
      "skew": -5.7883,
      "basis60": -2.9629,
      "rate_tight": false,
      "rate_change20": -0.016000000000000014,
      "iv_inverted": true,
      "skew_threshold": 0.8229500000000001,
      "basis_threshold": -9.041039999999999,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [
      {
        "code": "515880.SH",
        "score40": 2.9012685549105353,
        "own_ma120": true,
        "macro_benefit": -0.002320775195873627
      },
      {
        "code": "159583.SZ",
        "score40": 2.534380855297231,
        "own_ma120": true,
        "macro_benefit": -0.0023693081465369853
      },
      {
        "code": "515980.SH",
        "score40": 2.4110242021450965,
        "own_ma120": true,
        "macro_benefit": -0.0046580550544967755
      }
    ],
    "holdings": [
      {
        "code": "515880.SH",
        "target_pct": 33.41082115203033
      }
    ]
  },
  {
    "signal_date": "20250930",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20250929",
    "macro": {
      "rate": 1.58,
      "iv30": 37.4158,
      "iv90": 38.9016,
      "skew": -0.2044,
      "basis60": -1.7684,
      "rate_tight": true,
      "rate_change20": 0.03100000000000014,
      "iv_inverted": false,
      "skew_threshold": 0.69211,
      "basis_threshold": -9.041039999999999,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [
      {
        "code": "561910.SH",
        "score40": 3.206723308591667,
        "own_ma120": true,
        "macro_benefit": 0.008914757142701192
      },
      {
        "code": "561160.SH",
        "score40": 3.205618792775464,
        "own_ma120": true,
        "macro_benefit": 0.008798543178572935
      },
      {
        "code": "562880.SH",
        "score40": 3.2006328093008243,
        "own_ma120": true,
        "macro_benefit": 0.008855585292059013
      }
    ],
    "holdings": [
      {
        "code": "561910.SH",
        "target_pct": 37.2344026341581
      }
    ]
  },
  {
    "signal_date": "20251031",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20251030",
    "macro": {
      "rate": 1.597,
      "iv30": 33.7221,
      "iv90": 33.6456,
      "skew": 2.1274,
      "basis60": -4.7719,
      "rate_tight": true,
      "rate_change20": 0.030999999999999917,
      "iv_inverted": true,
      "skew_threshold": 0.68505,
      "basis_threshold": -9.041039999999999,
      "skew_risk": true,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [
      {
        "code": "159558.SZ",
        "score40": 1.076116983200794,
        "own_ma120": true,
        "macro_benefit": 0.006626408870889196
      },
      {
        "code": "562590.SH",
        "score40": 1.065225987053678,
        "own_ma120": true,
        "macro_benefit": 0.006922097532345666
      },
      {
        "code": "159516.SZ",
        "score40": 1.064815483501376,
        "own_ma120": true,
        "macro_benefit": 0.005945055975930946
      }
    ],
    "holdings": [
      {
        "code": "159558.SZ",
        "target_pct": 27.40294412915209
      }
    ]
  },
  {
    "signal_date": "20251128",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20251127",
    "macro": {
      "rate": 1.58,
      "iv30": 26.9145,
      "iv90": 27.3085,
      "skew": 1.6521,
      "basis60": -9.2199,
      "rate_tight": true,
      "rate_change20": -0.016999999999999904,
      "iv_inverted": false,
      "skew_threshold": 0.8437,
      "basis_threshold": -9.041039999999999,
      "skew_risk": true,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [
      {
        "code": "562510.SH",
        "score40": 0.40739693141871103,
        "own_ma120": true,
        "macro_benefit": -0.00040856664245049224
      },
      {
        "code": "159697.SZ",
        "score40": 0.4004715444956106,
        "own_ma120": true,
        "macro_benefit": -0.0005006701411942574
      },
      {
        "code": "159766.SZ",
        "score40": 0.39204502624071896,
        "own_ma120": true,
        "macro_benefit": -0.0003884799841899214
      }
    ],
    "holdings": [
      {
        "code": "562510.SH",
        "target_pct": 50.0
      }
    ]
  },
  {
    "signal_date": "20251231",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20251230",
    "macro": {
      "rate": 1.6,
      "iv30": 26.0082,
      "iv90": 28.2326,
      "skew": -1.1367,
      "basis60": -6.8447,
      "rate_tight": true,
      "rate_change20": 0.020000000000000018,
      "iv_inverted": false,
      "skew_threshold": 1.2338500000000003,
      "basis_threshold": -9.37884,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [
      {
        "code": "159583.SZ",
        "score40": 1.416437905838393,
        "own_ma120": true,
        "macro_benefit": 0.002887252722797298
      },
      {
        "code": "159695.SZ",
        "score40": 1.0875535051257461,
        "own_ma120": true,
        "macro_benefit": 0.002753938899026778
      },
      {
        "code": "159507.SZ",
        "score40": 1.0531431486341394,
        "own_ma120": true,
        "macro_benefit": 0.002436930066739952
      }
    ],
    "holdings": [
      {
        "code": "159583.SZ",
        "target_pct": 29.521856183314142
      }
    ]
  },
  {
    "signal_date": "20260130",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20260129",
    "macro": {
      "rate": 1.591,
      "iv30": 25.2421,
      "iv90": 30.039,
      "skew": -4.4253,
      "basis60": 2.5167,
      "rate_tight": true,
      "rate_change20": -0.009000000000000119,
      "iv_inverted": false,
      "skew_threshold": 1.14145,
      "basis_threshold": -9.37884,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [
      {
        "code": "159206.SZ",
        "score40": 2.941380806468412,
        "own_ma120": true,
        "macro_benefit": -0.0026759574789212677
      },
      {
        "code": "561330.SH",
        "score40": 2.332461011144899,
        "own_ma120": true,
        "macro_benefit": -0.0014796495709759575
      },
      {
        "code": "159690.SZ",
        "score40": 2.3089806692702317,
        "own_ma120": true,
        "macro_benefit": -0.0014951694131835954
      }
    ],
    "holdings": [
      {
        "code": "159206.SZ",
        "target_pct": 23.79037294725927
      }
    ]
  },
  {
    "signal_date": "20260227",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20260226",
    "macro": {
      "rate": 1.5748,
      "iv30": 21.5412,
      "iv90": 24.9005,
      "skew": 0.0686,
      "basis60": -1.1248,
      "rate_tight": false,
      "rate_change20": -0.02520000000000011,
      "iv_inverted": false,
      "skew_threshold": 1.1805400000000004,
      "basis_threshold": -9.37884,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [
      {
        "code": "159697.SZ",
        "score40": 1.2512404495951244,
        "own_ma120": true,
        "macro_benefit": -0.0019559815311074044
      },
      {
        "code": "159588.SZ",
        "score40": 1.2288746469707519,
        "own_ma120": true,
        "macro_benefit": -0.0017142267633551422
      },
      {
        "code": "560280.SH",
        "score40": 0.969182423213978,
        "own_ma120": true,
        "macro_benefit": -0.007313819205815653
      }
    ],
    "holdings": [
      {
        "code": "159697.SZ",
        "target_pct": 94.2036730599804
      }
    ]
  },
  {
    "signal_date": "20260331",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20260330",
    "macro": {
      "rate": 1.509,
      "iv30": 27.2119,
      "iv90": 27.8583,
      "skew": 5.1617,
      "basis60": -5.1077,
      "rate_tight": false,
      "rate_change20": -0.058800000000000185,
      "iv_inverted": false,
      "skew_threshold": 1.66236,
      "basis_threshold": -9.37884,
      "skew_risk": true,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [],
    "holdings": []
  },
  {
    "signal_date": "20260430",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20260429",
    "macro": {
      "rate": 1.4195,
      "iv30": 26.0033,
      "iv90": 29.6787,
      "skew": 1.6075,
      "basis60": -3.0514,
      "rate_tight": false,
      "rate_change20": -0.08749999999999991,
      "iv_inverted": false,
      "skew_threshold": 2.87659,
      "basis_threshold": -9.37884,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [
      {
        "code": "515880.SH",
        "score40": 1.4147298186784774,
        "own_ma120": true,
        "macro_benefit": -0.021106186047876608
      },
      {
        "code": "515050.SH",
        "score40": 1.240332313754064,
        "own_ma120": true,
        "macro_benefit": -0.0225260888178451
      },
      {
        "code": "159994.SZ",
        "score40": 1.2243161437498495,
        "own_ma120": true,
        "macro_benefit": -0.022317264541379278
      }
    ],
    "holdings": [
      {
        "code": "515880.SH",
        "target_pct": 59.3941479485241
      }
    ]
  },
  {
    "signal_date": "20260529",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20260528",
    "macro": {
      "rate": 1.4055,
      "iv30": 34.4066,
      "iv90": 34.8728,
      "skew": 0.9581,
      "basis60": -3.482,
      "rate_tight": false,
      "rate_change20": -0.023500000000000076,
      "iv_inverted": false,
      "skew_threshold": 2.87659,
      "basis_threshold": -9.20861,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 1.0,
    "rankings": [
      {
        "code": "588710.SH",
        "score40": 3.4190461708887807,
        "own_ma120": true,
        "macro_benefit": -0.014710895971456917
      },
      {
        "code": "588170.SH",
        "score40": 3.4125704277363735,
        "own_ma120": true,
        "macro_benefit": -0.013829028651804279
      },
      {
        "code": "159325.SZ",
        "score40": 3.316501633284757,
        "own_ma120": true,
        "macro_benefit": -0.015357081206441983
      }
    ],
    "holdings": [
      {
        "code": "588710.SH",
        "target_pct": 52.62503304745512
      }
    ]
  },
  {
    "signal_date": "20260630",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": true,
    "external_observation_date": "20260629",
    "macro": {
      "rate": 1.437,
      "iv30": 43.8196,
      "iv90": 42.1539,
      "skew": -0.4903,
      "basis60": -8.5702,
      "rate_tight": false,
      "rate_change20": 0.02950000000000008,
      "iv_inverted": true,
      "skew_threshold": 2.95423,
      "basis_threshold": -8.37201,
      "skew_risk": false,
      "panic_repair": true
    },
    "multiplier": 0.5,
    "rankings": [
      {
        "code": "588170.SH",
        "score40": 2.5128177751109795,
        "own_ma120": true,
        "macro_benefit": 0.02126440588856149
      },
      {
        "code": "588710.SH",
        "score40": 2.457701265065312,
        "own_ma120": true,
        "macro_benefit": 0.022011514421312727
      },
      {
        "code": "562590.SH",
        "score40": 2.282126710658778,
        "own_ma120": true,
        "macro_benefit": 0.0242812281749154
      }
    ],
    "holdings": [
      {
        "code": "588710.SH",
        "target_pct": 22.291223962456886
      }
    ]
  },
  {
    "signal_date": "20260731",
    "reason": [
      "calendar_update"
    ],
    "extra_signal": false,
    "market_up": false,
    "external_observation_date": "20260730",
    "macro": {
      "rate": 1.43,
      "iv30": 52.8785,
      "iv90": 44.6303,
      "skew": 2.6643,
      "basis60": -2.1922,
      "rate_tight": true,
      "rate_change20": -0.007000000000000117,
      "iv_inverted": true,
      "skew_threshold": 2.959760000000001,
      "basis_threshold": -7.89058,
      "skew_risk": false,
      "panic_repair": false
    },
    "multiplier": 0.5,
    "rankings": [],
    "holdings": []
  }
]