生成的参数组合数量:18
2025-07-25 19:07:56 | INFO | metric_online:run_with_hydra:842 - {'envs': {'env': {'mode': 'prod', 'enable_monitor': False, 'n_jobs': 1}, 'incremental': {'enabled': True, 'lookback_days': 20, 'start_date': None, 'end_date': 'today'}, 'run': {'n_jobs': 1, 'retry_times': 3, 'retry_delay': 2}, 'shard': {'num_shards': 1, 'shard_id': 0}}}
2025-07-25 19:07:56 | INFO | metric_online:run_with_hydra:889 - Total tasks generated: 1
2025-07-25 19:07:56 | INFO | metric_online:run_with_hydra:902 - Starting parallel execution with n_jobs=1...
2025-07-25 19:08:03 | INFO | metric_online:main2:781 - save train test done /root/data/Research1//feature/finalcomd//B8Wstats250412/B8Wstats250412_0--combo52
2025-07-25 19:10:16 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:16 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:17 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:17 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:21 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:21 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:22 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:22 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:23 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:23 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:23 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:24 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:25 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:25 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:25 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:26 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:26 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:26 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:27 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:27 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:28 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:28 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:29 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:30 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:30 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:30 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:31 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:31 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:31 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:31 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:32 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:32 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:32 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:33 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:34 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:35 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:35 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:35 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:36 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:36 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:36 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:37 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:37 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:37 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:38 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:38 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:39 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:39 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:40 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:40 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:41 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:41 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:42 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:43 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:43 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:43 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:44 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:10:44 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
Warning: Data for epoch 2025-07-14__2025-07-20.parquet from files ['/root/data/Research1//feature/combo//B8Wstats250412_0--combo52/ALL/2025-07-14__2025-07-20.parquet'] is empty after loading.
{'obj': 'Sharpe', 'rm': 'MDD', 'model': 'Classic', 'method_mu': 'hist', 'method_cov': 'hist', 'linkage': 'single', 'leaf_order': True, 'codependence': 'pearson', 'lookback_period': 256, 'every': 10, 'nea': 5, 'split_every': False, 'normalize_every': False}
1%| | 1/107 [00:08<14:48, 8.38s/it, 2020-01-17 → 2021-02-04]
2%|▏ | 2/107 [00:14<12:20, 7.05s/it, 2020-02-08 → 2021-02-25]
3%|▎ | 3/107 [00:20<11:36, 6.69s/it, 2020-02-22 → 2021-03-11]
4%|▎ | 4/107 [00:26<11:01, 6.42s/it, 2020-03-07 → 2021-03-25]
5%|▍ | 5/107 [00:32<10:36, 6.24s/it, 2020-03-21 → 2021-04-09]
6%|▌ | 6/107 [00:38<10:20, 6.15s/it, 2020-04-04 → 2021-04-23]
7%|▋ | 7/107 [00:44<10:10, 6.10s/it, 2020-04-21 → 2021-05-12]
7%|▋ | 8/107 [00:50<10:04, 6.10s/it, 2020-05-08 → 2021-05-26]
8%|▊ | 9/107 [00:56<09:58, 6.11s/it, 2020-05-22 → 2021-06-09]
9%|▉ | 10/107 [01:03<09:53, 6.12s/it, 2020-06-05 → 2021-06-24]
10%|█ | 11/107 [01:09<09:47, 6.12s/it, 2020-06-19 → 2021-07-08]
11%|█ | 12/107 [01:15<09:40, 6.11s/it, 2020-07-07 → 2021-07-22]
12%|█▏ | 13/107 [01:21<09:35, 6.12s/it, 2020-07-21 → 2021-08-05]
13%|█▎ | 14/107 [01:27<09:28, 6.12s/it, 2020-08-04 → 2021-08-19]
14%|█▍ | 15/107 [01:33<09:23, 6.13s/it, 2020-08-18 → 2021-09-02]
15%|█▍ | 16/107 [01:39<09:17, 6.13s/it, 2020-09-01 → 2021-09-16]
16%|█▌ | 17/107 [01:45<09:08, 6.10s/it, 2020-09-15 → 2021-10-09]
17%|█▋ | 18/107 [01:51<09:01, 6.08s/it, 2020-09-29 → 2021-10-23]
18%|█▊ | 19/107 [01:57<08:53, 6.07s/it, 2020-10-21 → 2021-11-06]
19%|█▊ | 20/107 [02:04<08:48, 6.08s/it, 2020-11-04 → 2021-11-20]
20%|█▉ | 21/107 [02:10<08:42, 6.08s/it, 2020-11-18 → 2021-12-04]
21%|██ | 22/107 [02:16<08:36, 6.08s/it, 2020-12-02 → 2021-12-18]
21%|██▏ | 23/107 [02:22<08:33, 6.11s/it, 2020-12-16 → 2022-01-01]
22%|██▏ | 24/107 [02:28<08:29, 6.14s/it, 2020-12-30 → 2022-01-18]
23%|██▎ | 25/107 [02:34<08:21, 6.12s/it, 2021-01-14 → 2022-02-08]
24%|██▍ | 26/107 [02:40<08:21, 6.19s/it, 2021-01-28 → 2022-02-22]
25%|██▌ | 27/107 [02:47<08:14, 6.18s/it, 2021-02-11 → 2022-03-08]
26%|██▌ | 28/107 [02:53<08:06, 6.16s/it, 2021-03-04 → 2022-03-22]
27%|██▋ | 29/107 [02:59<08:02, 6.19s/it, 2021-03-18 → 2022-04-07]
28%|██▊ | 30/107 [03:05<07:55, 6.17s/it, 2021-04-01 → 2022-04-21]
29%|██▉ | 31/107 [03:11<07:49, 6.18s/it, 2021-04-16 → 2022-05-10]
30%|██▉ | 32/107 [03:17<07:43, 6.17s/it, 2021-04-30 → 2022-05-24]
31%|███ | 33/107 [03:24<07:33, 6.12s/it, 2021-05-19 → 2022-06-08]
32%|███▏ | 34/107 [03:30<07:24, 6.09s/it, 2021-06-02 → 2022-06-22]
33%|███▎ | 35/107 [03:36<07:19, 6.11s/it, 2021-06-17 → 2022-07-06]
34%|███▎ | 36/107 [03:42<07:15, 6.13s/it, 2021-07-01 → 2022-07-20]
35%|███▍ | 37/107 [03:48<07:09, 6.13s/it, 2021-07-15 → 2022-08-03]
36%|███▌ | 38/107 [03:54<07:05, 6.17s/it, 2021-07-29 → 2022-08-17]
36%|███▋ | 39/107 [04:00<06:59, 6.17s/it, 2021-08-12 → 2022-08-31]
37%|███▋ | 40/107 [04:07<06:52, 6.15s/it, 2021-08-26 → 2022-09-15]
38%|███▊ | 41/107 [04:13<06:46, 6.16s/it, 2021-09-09 → 2022-09-29]
39%|███▉ | 42/107 [04:19<06:40, 6.16s/it, 2021-09-25 → 2022-10-20]
40%|████ | 43/107 [04:25<06:32, 6.13s/it, 2021-10-16 → 2022-11-03]
41%|████ | 44/107 [04:31<06:23, 6.09s/it, 2021-10-30 → 2022-11-17]
42%|████▏ | 45/107 [04:37<06:16, 6.07s/it, 2021-11-13 → 2022-12-01]
43%|████▎ | 46/107 [04:43<06:14, 6.13s/it, 2021-11-27 → 2022-12-15]
44%|████▍ | 47/107 [04:49<06:05, 6.10s/it, 2021-12-11 → 2022-12-29]
45%|████▍ | 48/107 [04:55<05:58, 6.07s/it, 2021-12-25 → 2023-01-13]
46%|████▌ | 49/107 [05:01<05:47, 6.00s/it, 2022-01-11 → 2023-02-03]
47%|████▋ | 50/107 [05:07<05:39, 5.95s/it, 2022-01-25 → 2023-02-17]
48%|████▊ | 51/107 [05:13<05:32, 5.94s/it, 2022-02-15 → 2023-03-03]
49%|████▊ | 52/107 [05:19<05:30, 6.00s/it, 2022-03-01 → 2023-03-17]
50%|████▉ | 53/107 [05:25<05:27, 6.06s/it, 2022-03-15 → 2023-03-31]
50%|█████ | 54/107 [05:31<05:22, 6.09s/it, 2022-03-29 → 2023-04-15]
51%|█████▏ | 55/107 [05:38<05:20, 6.16s/it, 2022-04-14 → 2023-04-29]
52%|█████▏ | 56/107 [05:44<05:13, 6.16s/it, 2022-04-28 → 2023-05-18]
53%|█████▎ | 57/107 [05:50<05:08, 6.17s/it, 2022-05-17 → 2023-06-01]
54%|█████▍ | 58/107 [05:56<05:01, 6.15s/it, 2022-05-31 → 2023-06-15]
55%|█████▌ | 59/107 [06:02<04:55, 6.16s/it, 2022-06-15 → 2023-07-01]
56%|█████▌ | 60/107 [06:09<04:51, 6.19s/it, 2022-06-29 → 2023-07-15]
57%|█████▋ | 61/107 [06:15<04:44, 6.19s/it, 2022-07-13 → 2023-07-29]
58%|█████▊ | 62/107 [06:21<04:37, 6.16s/it, 2022-07-27 → 2023-08-12]
59%|█████▉ | 63/107 [06:27<04:31, 6.16s/it, 2022-08-10 → 2023-08-26]
60%|█████▉ | 64/107 [06:33<04:24, 6.16s/it, 2022-08-24 → 2023-09-09]
61%|██████ | 65/107 [06:39<04:18, 6.16s/it, 2022-09-07 → 2023-09-23]
62%|██████▏ | 66/107 [06:45<04:11, 6.13s/it, 2022-09-22 → 2023-10-17]
63%|██████▎ | 67/107 [06:51<04:04, 6.12s/it, 2022-10-13 → 2023-10-31]
64%|██████▎ | 68/107 [06:58<03:59, 6.15s/it, 2022-10-27 → 2023-11-14]
64%|██████▍ | 69/107 [07:04<03:55, 6.19s/it, 2022-11-10 → 2023-11-28]
65%|██████▌ | 70/107 [07:10<03:49, 6.22s/it, 2022-11-24 → 2023-12-12]
66%|██████▋ | 71/107 [07:17<03:45, 6.26s/it, 2022-12-08 → 2023-12-26]
67%|██████▋ | 72/107 [07:23<03:39, 6.26s/it, 2022-12-22 → 2024-01-10]
68%|██████▊ | 73/107 [07:29<03:32, 6.25s/it, 2023-01-06 → 2024-01-24]
69%|██████▉ | 74/107 [07:35<03:26, 6.24s/it, 2023-01-20 → 2024-02-07]
70%|███████ | 75/107 [07:41<03:19, 6.22s/it, 2023-02-10 → 2024-02-29]
71%|███████ | 76/107 [07:48<03:13, 6.24s/it, 2023-02-24 → 2024-03-14]
72%|███████▏ | 77/107 [07:54<03:07, 6.25s/it, 2023-03-10 → 2024-03-28]
73%|███████▎ | 78/107 [08:00<03:02, 6.28s/it, 2023-03-24 → 2024-04-13]
74%|███████▍ | 79/107 [08:07<02:56, 6.29s/it, 2023-04-08 → 2024-04-27]
75%|███████▍ | 80/107 [08:13<02:49, 6.28s/it, 2023-04-22 → 2024-05-16]
76%|███████▌ | 81/107 [08:19<02:42, 6.26s/it, 2023-05-11 → 2024-05-30]
77%|███████▋ | 82/107 [08:25<02:36, 6.25s/it, 2023-05-25 → 2024-06-14]
78%|███████▊ | 83/107 [08:32<02:30, 6.26s/it, 2023-06-08 → 2024-06-28]
79%|███████▊ | 84/107 [08:38<02:24, 6.29s/it, 2023-06-22 → 2024-07-12]
79%|███████▉ | 85/107 [08:44<02:18, 6.29s/it, 2023-07-08 → 2024-07-26]
80%|████████ | 86/107 [08:51<02:11, 6.28s/it, 2023-07-22 → 2024-08-09]
81%|████████▏ | 87/107 [08:57<02:06, 6.31s/it, 2023-08-05 → 2024-08-23]
82%|████████▏ | 88/107 [09:03<02:00, 6.32s/it, 2023-08-19 → 2024-09-06]
83%|████████▎ | 89/107 [09:10<01:53, 6.32s/it, 2023-09-02 → 2024-09-24]
84%|████████▍ | 90/107 [09:16<01:47, 6.32s/it, 2023-09-16 → 2024-10-15]
85%|████████▌ | 91/107 [09:22<01:41, 6.33s/it, 2023-10-10 → 2024-10-29]
86%|████████▌ | 92/107 [09:29<01:35, 6.34s/it, 2023-10-24 → 2024-11-12]
87%|████████▋ | 93/107 [09:35<01:28, 6.34s/it, 2023-11-07 → 2024-11-26]
88%|████████▊ | 94/107 [09:41<01:22, 6.36s/it, 2023-11-21 → 2024-12-10]
89%|████████▉ | 95/107 [09:48<01:16, 6.35s/it, 2023-12-05 → 2024-12-24]
90%|████████▉ | 96/107 [09:54<01:09, 6.35s/it, 2023-12-19 → 2025-01-08]
91%|█████████ | 97/107 [10:00<01:03, 6.36s/it, 2024-01-03 → 2025-01-22]
92%|█████████▏| 98/107 [10:07<00:57, 6.34s/it, 2024-01-17 → 2025-02-13]
93%|█████████▎| 99/107 [10:13<00:50, 6.34s/it, 2024-01-31 → 2025-02-27]
93%|█████████▎| 100/107 [10:20<00:44, 6.37s/it, 2024-02-22 → 2025-03-13]
94%|█████████▍| 101/107 [10:26<00:38, 6.34s/it, 2024-03-07 → 2025-03-27]
95%|█████████▌| 102/107 [10:32<00:31, 6.31s/it, 2024-03-21 → 2025-04-11]
96%|█████████▋| 103/107 [10:38<00:25, 6.33s/it, 2024-04-04 → 2025-04-26]
97%|█████████▋| 104/107 [10:45<00:19, 6.34s/it, 2024-04-20 → 2025-05-15]
98%|█████████▊| 105/107 [10:51<00:12, 6.33s/it, 2024-05-09 → 2025-06-18]
99%|█████████▉| 106/107 [10:57<00:06, 6.34s/it, 2024-05-23 → 2025-07-02]
100%|██████████| 107/107 [11:04<00:00, 6.33s/it, 2024-05-23 → 2025-07-02]
100%|██████████| 107/107 [11:04<00:00, 6.21s/it, 2024-05-23 → 2025-07-02]
2025-07-25 19:21:51 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:463 - [v7] 优化前的夏普率: 1.31069
2025-07-25 19:21:51 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:464 - [v7] 优化后的夏普率: 1.03297
2025-07-25 19:21:51 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:21:52 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:21:54 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:21:55 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:21:55 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:21:56 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:21:56 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:21:57 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:21:57 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:21:57 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:21:58 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:21:59 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:21:59 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:00 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:00 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:00 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:01 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:02 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:02 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:03 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:03 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:03 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:04 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:05 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:05 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:06 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:06 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:07 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:22:07 | WARNING | func_backtester_hf:run_sig2pos:979 - The given signal has NaN. Will use 0 to fill
{'obj': 'Sharpe', 'rm': 'MDD', 'model': 'Classic', 'method_mu': 'hist', 'method_cov': 'hist', 'linkage': 'single', 'leaf_order': True, 'codependence': 'pearson', 'lookback_period': 256, 'every': 10, 'nea': 5, 'split_every': False, 'normalize_every': False}
1%| | 1/107 [00:05<10:31, 5.96s/it, 2020-01-18 → 2021-02-05]
2%|▏ | 2/107 [00:11<10:27, 5.97s/it, 2020-02-11 → 2021-02-26]
3%|▎ | 3/107 [00:17<10:25, 6.01s/it, 2020-02-25 → 2021-03-12]
4%|▎ | 4/107 [00:23<10:14, 5.96s/it, 2020-03-10 → 2021-03-26]
5%|▍ | 5/107 [00:29<10:05, 5.94s/it, 2020-03-24 → 2021-04-10]
6%|▌ | 6/107 [00:35<10:03, 5.97s/it, 2020-04-08 → 2021-04-24]
7%|▋ | 7/107 [00:41<09:58, 5.98s/it, 2020-04-22 → 2021-05-13]
7%|▋ | 8/107 [00:47<09:51, 5.98s/it, 2020-05-09 → 2021-05-27]
8%|▊ | 9/107 [00:53<09:47, 6.00s/it, 2020-05-23 → 2021-06-10]
9%|▉ | 10/107 [00:59<09:42, 6.01s/it, 2020-06-06 → 2021-06-25]
10%|█ | 11/107 [01:05<09:37, 6.01s/it, 2020-06-20 → 2021-07-09]
11%|█ | 12/107 [01:11<09:31, 6.02s/it, 2020-07-08 → 2021-07-23]
12%|█▏ | 13/107 [01:17<09:25, 6.02s/it, 2020-07-22 → 2021-08-06]
13%|█▎ | 14/107 [01:23<09:19, 6.01s/it, 2020-08-05 → 2021-08-20]
14%|█▍ | 15/107 [01:29<09:13, 6.02s/it, 2020-08-19 → 2021-09-03]
15%|█▍ | 16/107 [01:35<09:08, 6.02s/it, 2020-09-02 → 2021-09-17]
16%|█▌ | 17/107 [01:42<09:02, 6.03s/it, 2020-09-16 → 2021-10-12]
17%|█▋ | 18/107 [01:48<08:57, 6.04s/it, 2020-09-30 → 2021-10-26]
18%|█▊ | 19/107 [01:54<08:55, 6.09s/it, 2020-10-22 → 2021-11-09]
19%|█▊ | 20/107 [02:00<08:53, 6.13s/it, 2020-11-05 → 2021-11-23]
20%|█▉ | 21/107 [02:06<08:48, 6.14s/it, 2020-11-19 → 2021-12-07]
21%|██ | 22/107 [02:12<08:42, 6.14s/it, 2020-12-03 → 2021-12-21]
21%|██▏ | 23/107 [02:19<08:37, 6.16s/it, 2020-12-17 → 2022-01-05]
22%|██▏ | 24/107 [02:25<08:30, 6.16s/it, 2020-12-31 → 2022-01-19]
23%|██▎ | 25/107 [02:31<08:24, 6.16s/it, 2021-01-15 → 2022-02-09]
24%|██▍ | 26/107 [02:37<08:15, 6.12s/it, 2021-01-29 → 2022-02-23]
25%|██▌ | 27/107 [02:43<08:09, 6.12s/it, 2021-02-19 → 2022-03-09]
26%|██▌ | 28/107 [02:49<08:03, 6.11s/it, 2021-03-05 → 2022-03-23]
27%|██▋ | 29/107 [02:55<07:55, 6.09s/it, 2021-03-19 → 2022-04-08]
28%|██▊ | 30/107 [03:01<07:48, 6.08s/it, 2021-04-02 → 2022-04-22]
29%|██▉ | 31/107 [03:07<07:40, 6.06s/it, 2021-04-17 → 2022-05-11]
30%|██▉ | 32/107 [03:13<07:34, 6.06s/it, 2021-05-01 → 2022-05-25]
31%|███ | 33/107 [03:19<07:31, 6.11s/it, 2021-05-20 → 2022-06-09]
32%|███▏ | 34/107 [03:26<07:26, 6.11s/it, 2021-06-03 → 2022-06-23]
33%|███▎ | 35/107 [03:32<07:19, 6.11s/it, 2021-06-18 → 2022-07-07]
34%|███▎ | 36/107 [03:38<07:15, 6.13s/it, 2021-07-02 → 2022-07-21]
35%|███▍ | 37/107 [03:44<07:08, 6.13s/it, 2021-07-16 → 2022-08-04]
36%|███▌ | 38/107 [03:50<07:03, 6.13s/it, 2021-07-30 → 2022-08-18]
36%|███▋ | 39/107 [03:56<06:55, 6.12s/it, 2021-08-13 → 2022-09-01]
37%|███▋ | 40/107 [04:02<06:48, 6.09s/it, 2021-08-27 → 2022-09-16]
38%|███▊ | 41/107 [04:08<06:43, 6.11s/it, 2021-09-10 → 2022-09-30]
39%|███▉ | 42/107 [04:15<06:37, 6.12s/it, 2021-09-28 → 2022-10-21]
40%|████ | 43/107 [04:21<06:32, 6.13s/it, 2021-10-19 → 2022-11-04]
41%|████ | 44/107 [04:27<06:27, 6.15s/it, 2021-11-02 → 2022-11-18]
42%|████▏ | 45/107 [04:33<06:22, 6.16s/it, 2021-11-16 → 2022-12-02]
43%|████▎ | 46/107 [04:39<06:19, 6.23s/it, 2021-11-30 → 2022-12-16]
44%|████▍ | 47/107 [04:46<06:11, 6.20s/it, 2021-12-14 → 2022-12-30]
45%|████▍ | 48/107 [04:52<06:04, 6.18s/it, 2021-12-28 → 2023-01-14]
46%|████▌ | 49/107 [04:58<05:54, 6.12s/it, 2022-01-12 → 2023-02-04]
47%|████▋ | 50/107 [05:04<05:45, 6.06s/it, 2022-01-26 → 2023-02-18]
48%|████▊ | 51/107 [05:10<05:38, 6.04s/it, 2022-02-16 → 2023-03-04]
49%|████▊ | 52/107 [05:16<05:34, 6.07s/it, 2022-03-02 → 2023-03-18]
50%|████▉ | 53/107 [05:22<05:29, 6.10s/it, 2022-03-16 → 2023-04-01]
50%|█████ | 54/107 [05:28<05:25, 6.15s/it, 2022-03-30 → 2023-04-18]
51%|█████▏ | 55/107 [05:34<05:20, 6.17s/it, 2022-04-15 → 2023-05-05]
52%|█████▏ | 56/107 [05:41<05:13, 6.15s/it, 2022-04-29 → 2023-05-19]
53%|█████▎ | 57/107 [05:47<05:07, 6.15s/it, 2022-05-18 → 2023-06-02]
54%|█████▍ | 58/107 [05:53<05:02, 6.17s/it, 2022-06-01 → 2023-06-16]
55%|█████▌ | 59/107 [05:59<04:57, 6.20s/it, 2022-06-16 → 2023-07-04]
56%|█████▌ | 60/107 [06:05<04:51, 6.20s/it, 2022-06-30 → 2023-07-18]
57%|█████▋ | 61/107 [06:12<04:44, 6.20s/it, 2022-07-14 → 2023-08-01]
58%|█████▊ | 62/107 [06:18<04:39, 6.21s/it, 2022-07-28 → 2023-08-15]
59%|█████▉ | 63/107 [06:24<04:33, 6.21s/it, 2022-08-11 → 2023-08-29]
60%|█████▉ | 64/107 [06:30<04:26, 6.20s/it, 2022-08-25 → 2023-09-12]
61%|██████ | 65/107 [06:36<04:18, 6.16s/it, 2022-09-08 → 2023-09-26]
62%|██████▏ | 66/107 [06:42<04:10, 6.12s/it, 2022-09-23 → 2023-10-18]
63%|██████▎ | 67/107 [06:48<04:03, 6.10s/it, 2022-10-14 → 2023-11-01]
64%|██████▎ | 68/107 [06:55<03:59, 6.13s/it, 2022-10-28 → 2023-11-15]
64%|██████▍ | 69/107 [07:01<03:54, 6.18s/it, 2022-11-11 → 2023-11-29]
65%|██████▌ | 70/107 [07:07<03:50, 6.22s/it, 2022-11-25 → 2023-12-13]
66%|██████▋ | 71/107 [07:13<03:44, 6.25s/it, 2022-12-09 → 2023-12-27]
67%|██████▋ | 72/107 [07:20<03:39, 6.26s/it, 2022-12-23 → 2024-01-11]
68%|██████▊ | 73/107 [07:26<03:33, 6.29s/it, 2023-01-07 → 2024-01-25]
69%|██████▉ | 74/107 [07:32<03:27, 6.29s/it, 2023-01-21 → 2024-02-08]
70%|███████ | 75/107 [07:39<03:22, 6.34s/it, 2023-02-11 → 2024-03-01]
71%|███████ | 76/107 [07:45<03:15, 6.32s/it, 2023-02-25 → 2024-03-15]
72%|███████▏ | 77/107 [07:51<03:08, 6.28s/it, 2023-03-11 → 2024-03-29]
73%|███████▎ | 78/107 [07:58<03:01, 6.25s/it, 2023-03-25 → 2024-04-16]
74%|███████▍ | 79/107 [08:04<02:55, 6.28s/it, 2023-04-11 → 2024-04-30]
75%|███████▍ | 80/107 [08:10<02:49, 6.29s/it, 2023-04-25 → 2024-05-17]
76%|███████▌ | 81/107 [08:17<02:44, 6.32s/it, 2023-05-12 → 2024-05-31]
77%|███████▋ | 82/107 [08:23<02:37, 6.31s/it, 2023-05-26 → 2024-06-15]
78%|███████▊ | 83/107 [08:29<02:32, 6.34s/it, 2023-06-09 → 2024-06-29]
79%|███████▊ | 84/107 [08:36<02:26, 6.36s/it, 2023-06-27 → 2024-07-13]
79%|███████▉ | 85/107 [08:42<02:19, 6.33s/it, 2023-07-11 → 2024-07-27]
80%|████████ | 86/107 [08:48<02:12, 6.31s/it, 2023-07-25 → 2024-08-10]
81%|████████▏ | 87/107 [08:54<02:05, 6.29s/it, 2023-08-08 → 2024-08-24]
82%|████████▏ | 88/107 [09:01<01:59, 6.26s/it, 2023-08-22 → 2024-09-07]
83%|████████▎ | 89/107 [09:07<01:53, 6.28s/it, 2023-09-05 → 2024-09-25]
84%|████████▍ | 90/107 [09:13<01:47, 6.30s/it, 2023-09-19 → 2024-10-16]
85%|████████▌ | 91/107 [09:20<01:41, 6.34s/it, 2023-10-11 → 2024-10-30]
86%|████████▌ | 92/107 [09:26<01:35, 6.34s/it, 2023-10-25 → 2024-11-13]
87%|████████▋ | 93/107 [09:32<01:28, 6.34s/it, 2023-11-08 → 2024-11-27]
88%|████████▊ | 94/107 [09:39<01:22, 6.36s/it, 2023-11-22 → 2024-12-11]
89%|████████▉ | 95/107 [09:45<01:16, 6.36s/it, 2023-12-06 → 2024-12-25]
90%|████████▉ | 96/107 [09:51<01:09, 6.31s/it, 2023-12-20 → 2025-01-09]
91%|█████████ | 97/107 [09:58<01:02, 6.29s/it, 2024-01-04 → 2025-01-23]
92%|█████████▏| 98/107 [10:04<00:56, 6.27s/it, 2024-01-18 → 2025-02-14]
93%|█████████▎| 99/107 [10:10<00:50, 6.25s/it, 2024-02-01 → 2025-02-28]
93%|█████████▎| 100/107 [10:16<00:43, 6.25s/it, 2024-02-23 → 2025-03-14]
94%|█████████▍| 101/107 [10:23<00:37, 6.26s/it, 2024-03-08 → 2025-03-28]
95%|█████████▌| 102/107 [10:29<00:31, 6.25s/it, 2024-03-22 → 2025-04-15]
96%|█████████▋| 103/107 [10:35<00:25, 6.25s/it, 2024-04-09 → 2025-04-29]
97%|█████████▋| 104/107 [10:41<00:18, 6.28s/it, 2024-04-23 → 2025-05-16]
98%|█████████▊| 105/107 [10:48<00:12, 6.30s/it, 2024-05-10 → 2025-06-19]
99%|█████████▉| 106/107 [10:54<00:06, 6.32s/it, 2024-05-24 → 2025-07-03]
100%|██████████| 107/107 [11:00<00:00, 6.33s/it, 2024-05-24 → 2025-07-03]
100%|██████████| 107/107 [11:00<00:00, 6.18s/it, 2024-05-24 → 2025-07-03]
2025-07-25 19:33:09 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:463 - [v8] 优化前的夏普率: 1.08998
2025-07-25 19:33:09 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:464 - [v8] 优化后的夏普率: 0.9816
2025-07-25 19:33:09 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:10 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:12 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:13 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:14 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:14 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:15 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:15 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:15 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:16 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:17 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:17 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:18 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:18 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:18 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:19 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:19 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:20 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:21 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:21 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:21 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:22 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:22 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:23 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:23 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:24 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:25 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:25 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
2025-07-25 19:33:26 | WARNING | func_backtester_hf:run_sig2pos:1020 - The given signal has NaN. Will use 0 to fill
[2025-07-25 19:33:27,485][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:27,487][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:27,494][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:27,495][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:27,502][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:27,503][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:29,466][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:29,467][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:29,474][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:29,475][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:29,482][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:29,483][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:31,275][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:31,276][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:31,283][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:31,284][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:31,291][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
[2025-07-25 19:33:31,292][matplotlib.category][INFO] - Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.
2025-07-25 19:33:34 | INFO | metric_online:run_with_hydra:919 - {'action': 'parallel_done', 'success_count': 1, 'fail_count': 0}
2025-07-25 19:33:34 | INFO | metric_online:run_with_hydra:924 - {'action': 'success', 'description': 'metric_online 完成'}