LogViewer
See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:28 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:29 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:29 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:30 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:30 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:30 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:31 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:31 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:31 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:32 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:32 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:32 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:36 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:37 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:37 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:38 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:38 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:40 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:40 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:41 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:41 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:42 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:42 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:42 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:43 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:43 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:43 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:44 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:44 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:44 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:45 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:45 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:46 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:46 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:46 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:47 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:47 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:47 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:48 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:48 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:49 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:49 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:51 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:51 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:52 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:52 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:53 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:03:57 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:379 - daily_pnl_v5 开始优化成 daily_opt_v5
{'obj': 'Sharpe', 'rm': 'MDD', 'model': 'Classic', 'method_mu': 'hist', 'method_cov': 'hist', 'linkage': 'single', 'leaf_order': True, 'codependence': 'pearson', 'lookback_period': 15, 'every': 10, 'nea': 5, 'split_every': False, 'normalize_every': False}

  4%|▍         | 5/128 [00:02<01:07,  1.82it/s, 2020-03-21 → 2020-04-11]
  6%|▋         | 8/128 [00:02<00:38,  3.16it/s, 2020-05-08 → 2020-05-28]
  9%|▊         | 11/128 [00:03<00:24,  4.80it/s, 2020-06-19 → 2020-07-11]
 11%|█         | 14/128 [00:03<00:16,  6.71it/s, 2020-08-04 → 2020-08-22]
 13%|█▎        | 17/128 [00:04<00:23,  4.71it/s, 2020-09-15 → 2020-10-13]
 15%|█▍        | 19/128 [00:04<00:18,  5.78it/s, 2020-10-21 → 2020-11-10]
 17%|█▋        | 22/128 [00:04<00:13,  7.66it/s, 2020-12-02 → 2020-12-22]
 20%|█▉        | 25/128 [00:04<00:10,  9.71it/s, 2021-01-14 → 2021-02-03]
 22%|██▏       | 28/128 [00:05<00:17,  5.61it/s, 2021-03-04 → 2021-03-24]
 23%|██▎       | 30/128 [00:06<00:24,  3.93it/s, 2021-04-01 → 2021-04-22]
 26%|██▌       | 33/128 [00:07<00:27,  3.45it/s, 2021-05-19 → 2021-06-08]
 27%|██▋       | 34/128 [00:08<00:36,  2.61it/s, 2021-06-02 → 2021-06-23]
 27%|██▋       | 35/128 [00:09<00:41,  2.24it/s, 2021-06-17 → 2021-07-07]
 28%|██▊       | 36/128 [00:10<00:50,  1.81it/s, 2021-07-01 → 2021-07-21]
 30%|██▉       | 38/128 [00:11<00:48,  1.86it/s, 2021-07-29 → 2021-08-18]
 30%|███       | 39/128 [00:12<00:55,  1.61it/s, 2021-08-12 → 2021-09-01]
 31%|███▏      | 40/128 [00:13<01:01,  1.43it/s, 2021-08-26 → 2021-09-15]
 34%|███▎      | 43/128 [00:13<00:32,  2.62it/s, 2021-10-16 → 2021-11-05]
 36%|███▌      | 46/128 [00:14<00:30,  2.70it/s, 2021-11-27 → 2021-12-17]
 37%|███▋      | 47/128 [00:15<00:38,  2.13it/s, 2021-12-11 → 2021-12-31]
 39%|███▉      | 50/128 [00:16<00:32,  2.37it/s, 2022-01-25 → 2022-02-19]
 40%|███▉      | 51/128 [00:17<00:40,  1.92it/s, 2022-02-15 → 2022-03-05]
 42%|████▏     | 54/128 [00:17<00:23,  3.08it/s, 2022-03-29 → 2022-04-20]
 43%|████▎     | 55/128 [00:18<00:31,  2.32it/s, 2022-04-14 → 2022-05-07]
 45%|████▌     | 58/128 [00:18<00:18,  3.69it/s, 2022-05-31 → 2022-06-21]
 47%|████▋     | 60/128 [00:19<00:23,  2.93it/s, 2022-06-29 → 2022-07-19]
 48%|████▊     | 61/128 [00:20<00:30,  2.19it/s, 2022-07-13 → 2022-08-02]
 48%|████▊     | 62/128 [00:21<00:37,  1.78it/s, 2022-07-27 → 2022-08-16]
 51%|█████     | 65/128 [00:22<00:20,  3.05it/s, 2022-09-07 → 2022-09-28]
 53%|█████▎    | 68/128 [00:23<00:20,  2.96it/s, 2022-10-27 → 2022-11-16]
 54%|█████▍    | 69/128 [00:24<00:26,  2.26it/s, 2022-11-10 → 2022-11-30]
 55%|█████▍    | 70/128 [00:25<00:31,  1.85it/s, 2022-11-24 → 2022-12-14]
 55%|█████▌    | 71/128 [00:25<00:32,  1.73it/s, 2022-12-08 → 2022-12-28]
 56%|█████▋    | 72/128 [00:26<00:37,  1.50it/s, 2022-12-22 → 2023-01-12]
 57%|█████▋    | 73/128 [00:27<00:40,  1.34it/s, 2023-01-06 → 2023-02-02]
 59%|█████▊    | 75/128 [00:28<00:34,  1.53it/s, 2023-02-10 → 2023-03-02]
 61%|██████    | 78/128 [00:28<00:18,  2.72it/s, 2023-03-24 → 2023-04-14]
 63%|██████▎   | 81/128 [00:30<00:17,  2.74it/s, 2023-05-11 → 2023-05-31]
 64%|██████▍   | 82/128 [00:30<00:18,  2.55it/s, 2023-05-25 → 2023-06-14]
 66%|██████▋   | 85/128 [00:30<00:10,  3.96it/s, 2023-07-08 → 2023-07-28]
 67%|██████▋   | 86/128 [00:31<00:15,  2.68it/s, 2023-07-22 → 2023-08-11]
 70%|██████▉   | 89/128 [00:32<00:14,  2.72it/s, 2023-09-02 → 2023-09-22]
 71%|███████   | 91/128 [00:33<00:15,  2.44it/s, 2023-10-10 → 2023-10-28]
 72%|███████▏  | 92/128 [00:34<00:18,  1.97it/s, 2023-10-24 → 2023-11-11]
 73%|███████▎  | 94/128 [00:34<00:12,  2.70it/s, 2023-11-21 → 2023-12-09]
 75%|███████▌  | 96/128 [00:35<00:10,  3.00it/s, 2023-12-19 → 2024-01-09]
 76%|███████▌  | 97/128 [00:36<00:13,  2.22it/s, 2024-01-03 → 2024-01-23]
 77%|███████▋  | 99/128 [00:37<00:13,  2.10it/s, 2024-01-31 → 2024-02-28]
 78%|███████▊  | 100/128 [00:38<00:16,  1.73it/s, 2024-02-22 → 2024-03-13]
 79%|███████▉  | 101/128 [00:39<00:18,  1.48it/s, 2024-03-07 → 2024-03-27]
 81%|████████▏ | 104/128 [00:39<00:08,  2.70it/s, 2024-04-20 → 2024-05-15]
 84%|████████▎ | 107/128 [00:39<00:04,  4.20it/s, 2024-06-06 → 2024-06-27]
 85%|████████▌ | 109/128 [00:40<00:04,  4.65it/s, 2024-07-05 → 2024-07-25]
 87%|████████▋ | 111/128 [00:42<00:07,  2.26it/s, 2024-08-02 → 2024-08-22]
 88%|████████▊ | 113/128 [00:43<00:07,  2.11it/s, 2024-08-30 → 2024-09-21]
 89%|████████▉ | 114/128 [00:44<00:07,  1.79it/s, 2024-09-13 → 2024-10-12]
 91%|█████████ | 116/128 [00:44<00:04,  2.49it/s, 2024-10-22 → 2024-11-09]
 92%|█████████▏| 118/128 [00:45<00:04,  2.29it/s, 2024-11-19 → 2024-12-07]
 94%|█████████▍| 120/128 [00:46<00:03,  2.15it/s, 2024-12-17 → 2025-01-07]
 95%|█████████▍| 121/128 [00:47<00:03,  1.76it/s, 2024-12-31 → 2025-01-21]
 96%|█████████▌| 123/128 [00:47<00:02,  2.50it/s, 2025-02-06 → 2025-02-26]
 98%|█████████▊| 125/128 [00:47<00:00,  3.38it/s, 2025-03-06 → 2025-03-26]
 99%|█████████▉| 127/128 [00:47<00:00,  4.39it/s, 2025-04-03 → 2025-04-25]
100%|██████████| 128/128 [00:48<00:00,  2.70it/s, 2025-04-03 → 2025-04-25]
100%|██████████| 128/128 [00:48<00:00,  2.61it/s, 2025-04-03 → 2025-04-25]
2025-05-07 21:04:46 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:432 - [v5] 优化前的夏普率: 0.98446
2025-05-07 21:04:46 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:433 - [v5] 优化后的夏普率: 0.24496
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:47 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:47 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:48 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:49 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:51 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:51 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:51 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:53 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:54 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:54 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:55 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:56 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:57 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:57 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:58 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:58 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:04:59 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:00 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:00 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:01 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:01 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:02 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:02 | WARNING | func_backtester_hf:run_sig2pos:898 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:899: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:03 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:379 - daily_pnl_v6 开始优化成 daily_opt_v6
{'obj': 'Sharpe', 'rm': 'MDD', 'model': 'Classic', 'method_mu': 'hist', 'method_cov': 'hist', 'linkage': 'single', 'leaf_order': True, 'codependence': 'pearson', 'lookback_period': 15, 'every': 10, 'nea': 5, 'split_every': False, 'normalize_every': False}

  3%|▎         | 4/128 [00:02<01:02,  1.98it/s, 2020-03-07 → 2020-03-27]
  4%|▍         | 5/128 [00:02<01:16,  1.60it/s, 2020-03-21 → 2020-04-11]
  5%|▌         | 7/128 [00:03<00:47,  2.56it/s, 2020-04-21 → 2020-05-14]
  7%|▋         | 9/128 [00:03<00:32,  3.66it/s, 2020-05-22 → 2020-06-11]
  9%|▊         | 11/128 [00:03<00:24,  4.86it/s, 2020-06-19 → 2020-07-11]
 10%|█         | 13/128 [00:03<00:19,  6.05it/s, 2020-07-21 → 2020-08-08]
 12%|█▏        | 15/128 [00:03<00:15,  7.21it/s, 2020-08-18 → 2020-09-05]
 13%|█▎        | 17/128 [00:03<00:13,  8.04it/s, 2020-09-15 → 2020-10-13]
 15%|█▍        | 19/128 [00:04<00:12,  8.93it/s, 2020-10-21 → 2020-11-10]
 16%|█▋        | 21/128 [00:04<00:11,  9.69it/s, 2020-11-18 → 2020-12-08]
 18%|█▊        | 23/128 [00:04<00:10, 10.26it/s, 2020-12-16 → 2021-01-06]
 20%|█▉        | 25/128 [00:04<00:09, 10.65it/s, 2021-01-14 → 2021-02-03]
 21%|██        | 27/128 [00:04<00:09, 11.00it/s, 2021-02-11 → 2021-03-10]
 23%|██▎       | 29/128 [00:05<00:22,  4.43it/s, 2021-03-18 → 2021-04-08]
 24%|██▍       | 31/128 [00:06<00:17,  5.46it/s, 2021-04-16 → 2021-05-11]
 26%|██▌       | 33/128 [00:07<00:28,  3.35it/s, 2021-05-19 → 2021-06-08]
 27%|██▋       | 34/128 [00:08<00:40,  2.33it/s, 2021-06-02 → 2021-06-23]
 28%|██▊       | 36/128 [00:08<00:28,  3.20it/s, 2021-07-01 → 2021-07-21]
 30%|██▉       | 38/128 [00:08<00:21,  4.19it/s, 2021-07-29 → 2021-08-18]
 30%|███       | 39/128 [00:09<00:34,  2.57it/s, 2021-08-12 → 2021-09-01]
 31%|███▏      | 40/128 [00:10<00:46,  1.90it/s, 2021-08-26 → 2021-09-15]
 33%|███▎      | 42/128 [00:10<00:30,  2.79it/s, 2021-09-25 → 2021-10-22]
 34%|███▍      | 44/128 [00:10<00:22,  3.80it/s, 2021-10-30 → 2021-11-19]
 36%|███▌      | 46/128 [00:12<00:29,  2.75it/s, 2021-11-27 → 2021-12-17]
 37%|███▋      | 47/128 [00:13<00:40,  2.02it/s, 2021-12-11 → 2021-12-31]
 39%|███▉      | 50/128 [00:13<00:22,  3.42it/s, 2022-01-25 → 2022-02-19]
 40%|███▉      | 51/128 [00:13<00:19,  3.86it/s, 2022-02-15 → 2022-03-05]
 42%|████▏     | 54/128 [00:13<00:12,  5.97it/s, 2022-03-29 → 2022-04-20]
 44%|████▍     | 56/128 [00:14<00:19,  3.68it/s, 2022-04-28 → 2022-05-21]
 46%|████▌     | 59/128 [00:14<00:12,  5.38it/s, 2022-06-15 → 2022-07-05]
 48%|████▊     | 61/128 [00:16<00:27,  2.47it/s, 2022-07-13 → 2022-08-02]
 50%|█████     | 64/128 [00:16<00:17,  3.65it/s, 2022-08-24 → 2022-09-14]
 52%|█████▏    | 66/128 [00:17<00:20,  2.96it/s, 2022-09-22 → 2022-10-19]
 53%|█████▎    | 68/128 [00:18<00:15,  3.76it/s, 2022-10-27 → 2022-11-16]
 55%|█████▍    | 70/128 [00:19<00:19,  2.96it/s, 2022-11-24 → 2022-12-14]
 57%|█████▋    | 73/128 [00:20<00:19,  2.86it/s, 2023-01-06 → 2023-02-02]
 59%|█████▊    | 75/128 [00:21<00:20,  2.53it/s, 2023-02-10 → 2023-03-02]
 61%|██████    | 78/128 [00:21<00:13,  3.69it/s, 2023-03-24 → 2023-04-14]
 63%|██████▎   | 81/128 [00:21<00:09,  5.09it/s, 2023-05-11 → 2023-05-31]
 65%|██████▍   | 83/128 [00:21<00:07,  6.09it/s, 2023-06-08 → 2023-06-30]
 66%|██████▋   | 85/128 [00:21<00:05,  7.40it/s, 2023-07-08 → 2023-07-28]
 68%|██████▊   | 87/128 [00:21<00:04,  8.83it/s, 2023-08-05 → 2023-08-25]
 70%|██████▉   | 89/128 [00:22<00:08,  4.34it/s, 2023-09-02 → 2023-09-22]
 71%|███████   | 91/128 [00:24<00:11,  3.09it/s, 2023-10-10 → 2023-10-28]
 73%|███████▎  | 93/128 [00:25<00:13,  2.53it/s, 2023-11-07 → 2023-11-25]
 73%|███████▎  | 94/128 [00:26<00:17,  1.95it/s, 2023-11-21 → 2023-12-09]
 75%|███████▌  | 96/128 [00:26<00:11,  2.75it/s, 2023-12-19 → 2024-01-09]
 76%|███████▌  | 97/128 [00:27<00:15,  2.01it/s, 2024-01-03 → 2024-01-23]
 78%|███████▊  | 100/128 [00:28<00:12,  2.28it/s, 2024-02-22 → 2024-03-13]
 79%|███████▉  | 101/128 [00:29<00:14,  1.84it/s, 2024-03-07 → 2024-03-27]
 80%|███████▉  | 102/128 [00:30<00:16,  1.56it/s, 2024-03-21 → 2024-04-12]
 81%|████████▏ | 104/128 [00:30<00:10,  2.31it/s, 2024-04-20 → 2024-05-15]
 83%|████████▎ | 106/128 [00:30<00:06,  3.24it/s, 2024-05-23 → 2024-06-13]
 84%|████████▍ | 108/128 [00:31<00:04,  4.34it/s, 2024-06-21 → 2024-07-11]
 86%|████████▌ | 110/128 [00:33<00:08,  2.02it/s, 2024-07-19 → 2024-08-08]
 87%|████████▋ | 111/128 [00:34<00:10,  1.69it/s, 2024-08-02 → 2024-08-22]
 88%|████████▊ | 112/128 [00:35<00:10,  1.47it/s, 2024-08-16 → 2024-09-05]
 88%|████████▊ | 113/128 [00:36<00:11,  1.32it/s, 2024-08-30 → 2024-09-21]
 89%|████████▉ | 114/128 [00:37<00:11,  1.21it/s, 2024-09-13 → 2024-10-12]
 91%|█████████ | 116/128 [00:37<00:06,  1.97it/s, 2024-10-22 → 2024-11-09]
 92%|█████████▏| 118/128 [00:38<00:05,  1.93it/s, 2024-11-19 → 2024-12-07]
 94%|█████████▍| 120/128 [00:39<00:04,  1.86it/s, 2024-12-17 → 2025-01-07]
 95%|█████████▍| 121/128 [00:40<00:04,  1.57it/s, 2024-12-31 → 2025-01-21]
 96%|█████████▌| 123/128 [00:40<00:02,  2.29it/s, 2025-02-06 → 2025-02-26]
 98%|█████████▊| 125/128 [00:40<00:00,  3.24it/s, 2025-03-06 → 2025-03-26]
 99%|█████████▉| 127/128 [00:41<00:00,  4.42it/s, 2025-04-03 → 2025-04-25]
100%|██████████| 128/128 [00:42<00:00,  3.04it/s, 2025-04-03 → 2025-04-25]
2025-05-07 21:05:46 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:432 - [v6] 优化前的夏普率: 0.98852
2025-05-07 21:05:46 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:433 - [v6] 优化后的夏普率: 0.80014
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:46 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:47 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:47 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:48 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:50 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:50 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:51 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:53 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:53 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:53 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:55 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:55 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:56 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:57 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:57 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:57 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:58 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:05:59 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:00 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:00 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:00 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:01 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:01 | WARNING | func_backtester_hf:run_sig2pos:939 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:940: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:02 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:379 - daily_pnl_v7 开始优化成 daily_opt_v7
{'obj': 'Sharpe', 'rm': 'MDD', 'model': 'Classic', 'method_mu': 'hist', 'method_cov': 'hist', 'linkage': 'single', 'leaf_order': True, 'codependence': 'pearson', 'lookback_period': 15, 'every': 10, 'nea': 5, 'split_every': False, 'normalize_every': False}

  4%|▍         | 5/128 [00:02<01:10,  1.75it/s, 2020-03-21 → 2020-04-11]
  6%|▋         | 8/128 [00:03<00:39,  3.03it/s, 2020-05-08 → 2020-05-28]
  9%|▊         | 11/128 [00:03<00:25,  4.60it/s, 2020-06-19 → 2020-07-11]
 11%|█         | 14/128 [00:03<00:17,  6.43it/s, 2020-08-04 → 2020-08-22]
 13%|█▎        | 17/128 [00:04<00:24,  4.50it/s, 2020-09-15 → 2020-10-13]
 15%|█▍        | 19/128 [00:04<00:19,  5.52it/s, 2020-10-21 → 2020-11-10]
 17%|█▋        | 22/128 [00:04<00:14,  7.43it/s, 2020-12-02 → 2020-12-22]
 20%|█▉        | 25/128 [00:04<00:10,  9.42it/s, 2021-01-14 → 2021-02-03]
 22%|██▏       | 28/128 [00:05<00:18,  5.34it/s, 2021-03-04 → 2021-03-24]
 23%|██▎       | 30/128 [00:05<00:15,  6.43it/s, 2021-04-01 → 2021-04-22]
 25%|██▌       | 32/128 [00:06<00:12,  7.74it/s, 2021-04-30 → 2021-05-25]
 27%|██▋       | 34/128 [00:07<00:22,  4.26it/s, 2021-06-02 → 2021-06-23]
 29%|██▉       | 37/128 [00:07<00:15,  5.98it/s, 2021-07-15 → 2021-08-04]
 30%|███       | 39/128 [00:08<00:22,  3.88it/s, 2021-08-12 → 2021-09-01]
 32%|███▏      | 41/128 [00:09<00:28,  3.03it/s, 2021-09-09 → 2021-10-01]
 34%|███▎      | 43/128 [00:09<00:21,  3.96it/s, 2021-10-16 → 2021-11-05]
 35%|███▌      | 45/128 [00:09<00:16,  5.12it/s, 2021-11-13 → 2021-12-03]
 37%|███▋      | 47/128 [00:11<00:34,  2.36it/s, 2021-12-11 → 2021-12-31]
 39%|███▉      | 50/128 [00:11<00:21,  3.58it/s, 2022-01-25 → 2022-02-19]
 41%|████      | 52/128 [00:12<00:25,  2.93it/s, 2022-03-01 → 2022-03-19]
 43%|████▎     | 55/128 [00:13<00:25,  2.86it/s, 2022-04-14 → 2022-05-07]
 45%|████▌     | 58/128 [00:13<00:17,  4.06it/s, 2022-05-31 → 2022-06-21]
 47%|████▋     | 60/128 [00:14<00:21,  3.20it/s, 2022-06-29 → 2022-07-19]
 48%|████▊     | 61/128 [00:15<00:27,  2.42it/s, 2022-07-13 → 2022-08-02]
 50%|█████     | 64/128 [00:16<00:17,  3.71it/s, 2022-08-24 → 2022-09-14]
 52%|█████▏    | 66/128 [00:17<00:20,  2.98it/s, 2022-09-22 → 2022-10-19]
 53%|█████▎    | 68/128 [00:18<00:23,  2.59it/s, 2022-10-27 → 2022-11-16]
 54%|█████▍    | 69/128 [00:19<00:28,  2.06it/s, 2022-11-10 → 2022-11-30]
 56%|█████▋    | 72/128 [00:19<00:16,  3.30it/s, 2022-12-22 → 2023-01-12]
 57%|█████▋    | 73/128 [00:20<00:23,  2.38it/s, 2023-01-06 → 2023-02-02]
 59%|█████▊    | 75/128 [00:21<00:24,  2.21it/s, 2023-02-10 → 2023-03-02]
 61%|██████    | 78/128 [00:21<00:14,  3.48it/s, 2023-03-24 → 2023-04-14]
 63%|██████▎   | 81/128 [00:21<00:09,  5.04it/s, 2023-05-11 → 2023-05-31]
 65%|██████▍   | 83/128 [00:21<00:07,  6.16it/s, 2023-06-08 → 2023-06-30]
 67%|██████▋   | 86/128 [00:22<00:09,  4.27it/s, 2023-07-22 → 2023-08-11]
 70%|██████▉   | 89/128 [00:23<00:10,  3.59it/s, 2023-09-02 → 2023-09-22]
 71%|███████   | 91/128 [00:24<00:12,  2.95it/s, 2023-10-10 → 2023-10-28]
 73%|███████▎  | 93/128 [00:25<00:13,  2.57it/s, 2023-11-07 → 2023-11-25]
 73%|███████▎  | 94/128 [00:26<00:16,  2.06it/s, 2023-11-21 → 2023-12-09]
 76%|███████▌  | 97/128 [00:28<00:13,  2.29it/s, 2024-01-03 → 2024-01-23]
 78%|███████▊  | 100/128 [00:29<00:11,  2.44it/s, 2024-02-22 → 2024-03-13]
 79%|███████▉  | 101/128 [00:30<00:13,  2.00it/s, 2024-03-07 → 2024-03-27]
 80%|███████▉  | 102/128 [00:31<00:15,  1.70it/s, 2024-03-21 → 2024-04-12]
 82%|████████▏ | 105/128 [00:31<00:08,  2.80it/s, 2024-05-09 → 2024-05-29]
 84%|████████▍ | 108/128 [00:31<00:04,  4.20it/s, 2024-06-21 → 2024-07-11]
 86%|████████▌ | 110/128 [00:33<00:07,  2.28it/s, 2024-07-19 → 2024-08-08]
 87%|████████▋ | 111/128 [00:34<00:08,  1.89it/s, 2024-08-02 → 2024-08-22]
 88%|████████▊ | 112/128 [00:35<00:09,  1.63it/s, 2024-08-16 → 2024-09-05]
 88%|████████▊ | 113/128 [00:36<00:10,  1.44it/s, 2024-08-30 → 2024-09-21]
 89%|████████▉ | 114/128 [00:37<00:10,  1.31it/s, 2024-09-13 → 2024-10-12]
 91%|█████████ | 116/128 [00:37<00:05,  2.03it/s, 2024-10-22 → 2024-11-09]
 92%|█████████▏| 118/128 [00:38<00:05,  1.99it/s, 2024-11-19 → 2024-12-07]
 94%|█████████▍| 120/128 [00:39<00:04,  1.96it/s, 2024-12-17 → 2025-01-07]
 95%|█████████▍| 121/128 [00:40<00:04,  1.61it/s, 2024-12-31 → 2025-01-21]
 96%|█████████▌| 123/128 [00:40<00:02,  2.35it/s, 2025-02-06 → 2025-02-26]
 98%|█████████▊| 125/128 [00:41<00:00,  3.23it/s, 2025-03-06 → 2025-03-26]
 99%|█████████▉| 127/128 [00:41<00:00,  4.21it/s, 2025-04-03 → 2025-04-25]
100%|██████████| 128/128 [00:42<00:00,  2.53it/s, 2025-04-03 → 2025-04-25]
100%|██████████| 128/128 [00:42<00:00,  3.02it/s, 2025-04-03 → 2025-04-25]
2025-05-07 21:06:45 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:432 - [v7] 优化前的夏普率: 1.03437
2025-05-07 21:06:45 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:433 - [v7] 优化后的夏普率: 0.55749
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:46 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:46 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:47 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:48 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:49 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:50 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:50 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:52 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:52 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:53 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:54 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:55 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:55 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:56 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:56 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:57 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:58 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:59 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:59 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:06:59 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:00 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:00 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:01 | WARNING | func_backtester_hf:run_sig2pos:978 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:979: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:02 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:379 - daily_pnl_v8 开始优化成 daily_opt_v8
{'obj': 'Sharpe', 'rm': 'MDD', 'model': 'Classic', 'method_mu': 'hist', 'method_cov': 'hist', 'linkage': 'single', 'leaf_order': True, 'codependence': 'pearson', 'lookback_period': 15, 'every': 10, 'nea': 5, 'split_every': False, 'normalize_every': False}

  4%|▍         | 5/128 [00:02<01:09,  1.76it/s, 2020-03-24 → 2020-04-14]
  5%|▌         | 7/128 [00:02<00:45,  2.63it/s, 2020-04-22 → 2020-05-15]
  7%|▋         | 9/128 [00:03<00:32,  3.72it/s, 2020-05-23 → 2020-06-12]
  9%|▉         | 12/128 [00:03<00:20,  5.68it/s, 2020-07-08 → 2020-07-28]
 11%|█         | 14/128 [00:03<00:15,  7.15it/s, 2020-08-05 → 2020-08-25]
 12%|█▎        | 16/128 [00:03<00:12,  8.66it/s, 2020-09-02 → 2020-09-22]
 14%|█▍        | 18/128 [00:04<00:26,  4.19it/s, 2020-09-30 → 2020-10-28]
 16%|█▌        | 20/128 [00:04<00:21,  5.13it/s, 2020-11-05 → 2020-11-25]
 17%|█▋        | 22/128 [00:04<00:17,  6.12it/s, 2020-12-03 → 2020-12-23]
 19%|█▉        | 24/128 [00:05<00:14,  7.09it/s, 2020-12-31 → 2021-01-21]
 20%|██        | 26/128 [00:05<00:12,  8.00it/s, 2021-01-29 → 2021-02-25]
 22%|██▏       | 28/128 [00:06<00:24,  4.01it/s, 2021-03-05 → 2021-03-25]
 23%|██▎       | 30/128 [00:06<00:19,  4.98it/s, 2021-04-02 → 2021-04-23]
 25%|██▌       | 32/128 [00:06<00:17,  5.46it/s, 2021-05-01 → 2021-05-26]
 26%|██▌       | 33/128 [00:07<00:31,  3.01it/s, 2021-05-20 → 2021-06-09]
 27%|██▋       | 34/128 [00:08<00:44,  2.11it/s, 2021-06-03 → 2021-06-24]
 28%|██▊       | 36/128 [00:08<00:29,  3.10it/s, 2021-07-02 → 2021-07-22]
 30%|██▉       | 38/128 [00:09<00:20,  4.30it/s, 2021-07-30 → 2021-08-19]
 31%|███▏      | 40/128 [00:11<00:43,  2.03it/s, 2021-08-27 → 2021-09-16]
 33%|███▎      | 42/128 [00:11<00:31,  2.76it/s, 2021-09-28 → 2021-10-23]
 34%|███▍      | 44/128 [00:11<00:23,  3.57it/s, 2021-11-02 → 2021-11-20]
 36%|███▌      | 46/128 [00:12<00:30,  2.72it/s, 2021-11-30 → 2021-12-18]
 38%|███▊      | 48/128 [00:12<00:22,  3.56it/s, 2021-12-28 → 2022-01-18]
 39%|███▉      | 50/128 [00:12<00:17,  4.50it/s, 2022-01-26 → 2022-02-22]
 40%|███▉      | 51/128 [00:13<00:15,  4.93it/s, 2022-02-16 → 2022-03-08]
 41%|████▏     | 53/128 [00:13<00:12,  6.14it/s, 2022-03-16 → 2022-04-07]
 43%|████▎     | 55/128 [00:14<00:21,  3.40it/s, 2022-04-15 → 2022-05-10]
 45%|████▍     | 57/128 [00:14<00:16,  4.35it/s, 2022-05-18 → 2022-06-08]
 46%|████▌     | 59/128 [00:14<00:12,  5.32it/s, 2022-06-16 → 2022-07-06]
 47%|████▋     | 60/128 [00:15<00:23,  2.88it/s, 2022-06-30 → 2022-07-20]
 48%|████▊     | 61/128 [00:16<00:32,  2.03it/s, 2022-07-14 → 2022-08-03]
 49%|████▉     | 63/128 [00:16<00:22,  2.93it/s, 2022-08-11 → 2022-08-31]
 51%|█████     | 65/128 [00:17<00:16,  3.91it/s, 2022-09-08 → 2022-09-29]
 52%|█████▏    | 66/128 [00:17<00:14,  4.40it/s, 2022-09-23 → 2022-10-20]
 52%|█████▏    | 67/128 [00:18<00:24,  2.45it/s, 2022-10-14 → 2022-11-03]
 53%|█████▎    | 68/128 [00:19<00:33,  1.79it/s, 2022-10-28 → 2022-11-17]
 54%|█████▍    | 69/128 [00:20<00:40,  1.47it/s, 2022-11-11 → 2022-12-01]
 55%|█████▍    | 70/128 [00:20<00:30,  1.90it/s, 2022-11-25 → 2022-12-15]
 56%|█████▋    | 72/128 [00:21<00:30,  1.85it/s, 2022-12-23 → 2023-01-13]
 57%|█████▋    | 73/128 [00:22<00:30,  1.81it/s, 2023-01-07 → 2023-02-03]
 59%|█████▊    | 75/128 [00:23<00:29,  1.79it/s, 2023-02-11 → 2023-03-03]
 60%|██████    | 77/128 [00:23<00:19,  2.58it/s, 2023-03-11 → 2023-03-31]
 62%|██████▏   | 79/128 [00:23<00:13,  3.54it/s, 2023-04-11 → 2023-04-29]
 64%|██████▍   | 82/128 [00:24<00:14,  3.12it/s, 2023-05-26 → 2023-06-15]
 66%|██████▌   | 84/128 [00:24<00:10,  4.10it/s, 2023-06-27 → 2023-07-15]
 67%|██████▋   | 86/128 [00:25<00:07,  5.26it/s, 2023-07-25 → 2023-08-12]
 69%|██████▉   | 88/128 [00:25<00:05,  6.69it/s, 2023-08-22 → 2023-09-09]
 70%|███████   | 90/128 [00:27<00:15,  2.44it/s, 2023-09-19 → 2023-10-17]
 72%|███████▏  | 92/128 [00:27<00:11,  3.17it/s, 2023-10-25 → 2023-11-14]
 73%|███████▎  | 94/128 [00:28<00:13,  2.56it/s, 2023-11-22 → 2023-12-12]
 74%|███████▍  | 95/128 [00:29<00:16,  1.97it/s, 2023-12-06 → 2023-12-26]
 76%|███████▌  | 97/128 [00:30<00:16,  1.90it/s, 2024-01-04 → 2024-01-24]
 77%|███████▋  | 99/128 [00:30<00:11,  2.61it/s, 2024-02-01 → 2024-02-29]
 79%|███████▉  | 101/128 [00:32<00:11,  2.25it/s, 2024-03-08 → 2024-03-28]
 80%|████████  | 103/128 [00:32<00:08,  2.95it/s, 2024-04-09 → 2024-04-27]
 82%|████████▏ | 105/128 [00:32<00:05,  3.85it/s, 2024-05-10 → 2024-05-30]
 84%|████████▎ | 107/128 [00:32<00:04,  4.87it/s, 2024-06-07 → 2024-06-28]
 85%|████████▌ | 109/128 [00:32<00:03,  5.72it/s, 2024-07-06 → 2024-07-26]
 86%|████████▌ | 110/128 [00:33<00:05,  3.02it/s, 2024-07-20 → 2024-08-09]
 87%|████████▋ | 111/128 [00:34<00:08,  2.09it/s, 2024-08-03 → 2024-08-23]
 88%|████████▊ | 112/128 [00:35<00:07,  2.26it/s, 2024-08-17 → 2024-09-06]
 88%|████████▊ | 113/128 [00:36<00:08,  1.70it/s, 2024-08-31 → 2024-09-24]
 90%|████████▉ | 115/128 [00:36<00:05,  2.60it/s, 2024-10-09 → 2024-10-29]
 91%|█████████▏| 117/128 [00:36<00:03,  3.61it/s, 2024-11-06 → 2024-11-26]
 92%|█████████▏| 118/128 [00:36<00:02,  4.00it/s, 2024-11-20 → 2024-12-10]
 94%|█████████▍| 120/128 [00:37<00:02,  2.70it/s, 2024-12-18 → 2025-01-08]
 95%|█████████▍| 121/128 [00:38<00:03,  1.95it/s, 2025-01-01 → 2025-01-22]
 96%|█████████▌| 123/128 [00:39<00:01,  2.82it/s, 2025-02-07 → 2025-02-27]
 98%|█████████▊| 125/128 [00:39<00:00,  3.80it/s, 2025-03-07 → 2025-03-27]
 99%|█████████▉| 127/128 [00:39<00:00,  4.65it/s, 2025-04-04 → 2025-04-26]
100%|██████████| 128/128 [00:40<00:00,  2.51it/s, 2025-04-04 → 2025-04-26]
100%|██████████| 128/128 [00:40<00:00,  3.14it/s, 2025-04-04 → 2025-04-26]
2025-05-07 21:07:43 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:432 - [v8] 优化前的夏普率: 0.74471
2025-05-07 21:07:43 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:433 - [v8] 优化后的夏普率: 0.41005
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:43 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:44 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:45 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:46 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:47 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:48 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:48 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:50 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:50 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:51 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:52 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:53 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:53 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:54 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:55 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:55 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:56 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:57 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:57 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:58 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:58 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:59 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:07:59 | WARNING | func_backtester_hf:run_sig2pos:1019 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1020: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:00 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:379 - daily_pnl_v9 开始优化成 daily_opt_v9
{'obj': 'Sharpe', 'rm': 'MDD', 'model': 'Classic', 'method_mu': 'hist', 'method_cov': 'hist', 'linkage': 'single', 'leaf_order': True, 'codependence': 'pearson', 'lookback_period': 15, 'every': 10, 'nea': 5, 'split_every': False, 'normalize_every': False}

  3%|▎         | 4/128 [00:02<01:04,  1.92it/s, 2020-03-07 → 2020-03-27]
  4%|▍         | 5/128 [00:03<01:18,  1.56it/s, 2020-03-21 → 2020-04-11]
  5%|▌         | 7/128 [00:03<00:48,  2.50it/s, 2020-04-21 → 2020-05-14]
  7%|▋         | 9/128 [00:03<00:33,  3.52it/s, 2020-05-22 → 2020-06-11]
  9%|▊         | 11/128 [00:03<00:24,  4.70it/s, 2020-06-19 → 2020-07-11]
 10%|█         | 13/128 [00:03<00:19,  5.80it/s, 2020-07-21 → 2020-08-08]
 12%|█▏        | 15/128 [00:03<00:16,  6.90it/s, 2020-08-18 → 2020-09-05]
 13%|█▎        | 17/128 [00:05<00:30,  3.64it/s, 2020-09-15 → 2020-10-13]
 15%|█▍        | 19/128 [00:05<00:23,  4.60it/s, 2020-10-21 → 2020-11-10]
 16%|█▋        | 21/128 [00:05<00:18,  5.65it/s, 2020-11-18 → 2020-12-08]
 18%|█▊        | 23/128 [00:05<00:15,  6.67it/s, 2020-12-16 → 2021-01-06]
 20%|█▉        | 25/128 [00:05<00:13,  7.60it/s, 2021-01-14 → 2021-02-03]
 21%|██        | 27/128 [00:05<00:12,  8.40it/s, 2021-02-11 → 2021-03-10]
 23%|██▎       | 29/128 [00:07<00:24,  4.05it/s, 2021-03-18 → 2021-04-08]
 24%|██▍       | 31/128 [00:07<00:19,  4.99it/s, 2021-04-16 → 2021-05-11]
 26%|██▌       | 33/128 [00:08<00:29,  3.21it/s, 2021-05-19 → 2021-06-08]
 27%|██▋       | 34/128 [00:09<00:41,  2.29it/s, 2021-06-02 → 2021-06-23]
 28%|██▊       | 36/128 [00:09<00:29,  3.14it/s, 2021-07-01 → 2021-07-21]
 30%|██▉       | 38/128 [00:09<00:22,  4.07it/s, 2021-07-29 → 2021-08-18]
 30%|███       | 39/128 [00:10<00:35,  2.54it/s, 2021-08-12 → 2021-09-01]
 31%|███▏      | 40/128 [00:11<00:46,  1.89it/s, 2021-08-26 → 2021-09-15]
 33%|███▎      | 42/128 [00:11<00:30,  2.78it/s, 2021-09-25 → 2021-10-22]
 34%|███▍      | 44/128 [00:12<00:22,  3.76it/s, 2021-10-30 → 2021-11-19]
 36%|███▌      | 46/128 [00:13<00:29,  2.74it/s, 2021-11-27 → 2021-12-17]
 37%|███▋      | 47/128 [00:14<00:39,  2.03it/s, 2021-12-11 → 2021-12-31]
 38%|███▊      | 49/128 [00:14<00:27,  2.88it/s, 2022-01-11 → 2022-01-29]
 40%|███▉      | 51/128 [00:15<00:32,  2.39it/s, 2022-02-15 → 2022-03-05]
 41%|████▏     | 53/128 [00:15<00:23,  3.23it/s, 2022-03-15 → 2022-04-02]
 43%|████▎     | 55/128 [00:15<00:17,  4.07it/s, 2022-04-14 → 2022-05-07]
 45%|████▍     | 57/128 [00:16<00:13,  5.13it/s, 2022-05-17 → 2022-06-07]
 46%|████▌     | 59/128 [00:16<00:11,  6.05it/s, 2022-06-15 → 2022-07-05]
 47%|████▋     | 60/128 [00:17<00:21,  3.10it/s, 2022-06-29 → 2022-07-19]
 48%|████▊     | 61/128 [00:18<00:31,  2.14it/s, 2022-07-13 → 2022-08-02]
 49%|████▉     | 63/128 [00:18<00:21,  3.06it/s, 2022-08-10 → 2022-08-30]
 51%|█████     | 65/128 [00:18<00:15,  4.09it/s, 2022-09-07 → 2022-09-28]
 52%|█████▏    | 66/128 [00:19<00:24,  2.49it/s, 2022-09-22 → 2022-10-19]
 52%|█████▏    | 67/128 [00:19<00:20,  2.94it/s, 2022-10-13 → 2022-11-02]
 53%|█████▎    | 68/128 [00:20<00:30,  1.98it/s, 2022-10-27 → 2022-11-16]
 54%|█████▍    | 69/128 [00:21<00:37,  1.56it/s, 2022-11-10 → 2022-11-30]
 55%|█████▌    | 71/128 [00:22<00:23,  2.46it/s, 2022-12-08 → 2022-12-28]
 57%|█████▋    | 73/128 [00:23<00:25,  2.13it/s, 2023-01-06 → 2023-02-02]
 59%|█████▊    | 75/128 [00:24<00:26,  1.98it/s, 2023-02-10 → 2023-03-02]
 60%|██████    | 77/128 [00:24<00:18,  2.75it/s, 2023-03-10 → 2023-03-30]
 62%|██████▏   | 79/128 [00:24<00:13,  3.66it/s, 2023-04-08 → 2023-04-28]
 63%|██████▎   | 81/128 [00:24<00:10,  4.68it/s, 2023-05-11 → 2023-05-31]
 65%|██████▍   | 83/128 [00:25<00:07,  5.73it/s, 2023-06-08 → 2023-06-30]
 66%|██████▋   | 85/128 [00:25<00:06,  6.77it/s, 2023-07-08 → 2023-07-28]
 68%|██████▊   | 87/128 [00:25<00:05,  7.41it/s, 2023-08-05 → 2023-08-25]
 70%|██████▉   | 89/128 [00:26<00:10,  3.74it/s, 2023-09-02 → 2023-09-22]
 71%|███████   | 91/128 [00:27<00:13,  2.76it/s, 2023-10-10 → 2023-10-28]
 73%|███████▎  | 93/128 [00:28<00:15,  2.33it/s, 2023-11-07 → 2023-11-25]
 73%|███████▎  | 94/128 [00:29<00:12,  2.63it/s, 2023-11-21 → 2023-12-09]
 75%|███████▌  | 96/128 [00:29<00:08,  3.58it/s, 2023-12-19 → 2024-01-09]
 76%|███████▌  | 97/128 [00:30<00:13,  2.32it/s, 2024-01-03 → 2024-01-23]
 78%|███████▊  | 100/128 [00:31<00:11,  2.48it/s, 2024-02-22 → 2024-03-13]
 79%|███████▉  | 101/128 [00:32<00:14,  1.92it/s, 2024-03-07 → 2024-03-27]
 80%|███████▉  | 102/128 [00:33<00:16,  1.59it/s, 2024-03-21 → 2024-04-12]
 81%|████████▏ | 104/128 [00:33<00:10,  2.34it/s, 2024-04-20 → 2024-05-15]
 83%|████████▎ | 106/128 [00:33<00:06,  3.23it/s, 2024-05-23 → 2024-06-13]
 84%|████████▍ | 108/128 [00:34<00:04,  4.25it/s, 2024-06-21 → 2024-07-11]
 85%|████████▌ | 109/128 [00:35<00:07,  2.53it/s, 2024-07-05 → 2024-07-25]
 86%|████████▌ | 110/128 [00:36<00:09,  1.89it/s, 2024-07-19 → 2024-08-08]
 87%|████████▋ | 111/128 [00:37<00:10,  1.55it/s, 2024-08-02 → 2024-08-22]
 88%|████████▊ | 112/128 [00:38<00:11,  1.34it/s, 2024-08-16 → 2024-09-05]
 88%|████████▊ | 113/128 [00:39<00:12,  1.22it/s, 2024-08-30 → 2024-09-21]
 89%|████████▉ | 114/128 [00:40<00:12,  1.14it/s, 2024-09-13 → 2024-10-12]
 91%|█████████ | 116/128 [00:40<00:06,  1.93it/s, 2024-10-22 → 2024-11-09]
 92%|█████████▏| 118/128 [00:41<00:05,  1.90it/s, 2024-11-19 → 2024-12-07]
 94%|█████████▍| 120/128 [00:42<00:04,  1.87it/s, 2024-12-17 → 2025-01-07]
 95%|█████████▍| 121/128 [00:43<00:04,  1.56it/s, 2024-12-31 → 2025-01-21]
 96%|█████████▌| 123/128 [00:43<00:02,  2.28it/s, 2025-02-06 → 2025-02-26]
 98%|█████████▊| 125/128 [00:43<00:00,  3.14it/s, 2025-03-06 → 2025-03-26]
 99%|█████████▉| 127/128 [00:44<00:00,  4.06it/s, 2025-04-03 → 2025-04-25]
100%|██████████| 128/128 [00:45<00:00,  2.49it/s, 2025-04-03 → 2025-04-25]
100%|██████████| 128/128 [00:45<00:00,  2.83it/s, 2025-04-03 → 2025-04-25]
2025-05-07 21:08:46 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:432 - [v9] 优化前的夏普率: 1.01065
2025-05-07 21:08:46 | INFO | metric_online:run_optimize_portfolio_new_with_sector_constraints:433 - [v9] 优化后的夏普率: 0.6945
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:46 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:47 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:47 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:49 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:50 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:51 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:51 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:53 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:53 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:54 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:55 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:56 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:56 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:57 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:57 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:58 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:08:59 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:09:00 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:09:00 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:09:01 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:09:01 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:09:01 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
2025-05-07 21:09:02 | WARNING | func_backtester_hf:run_sig2pos:1060 - The given signal has NaN. Will use 0 to fill
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
/root/project/auto/auto/functions/func_backtester_hf.py:1061: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  signal.fillna(0, inplace=True)
[2025-05-07 21:09:05,379][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-05-07 21:09:05,380][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-05-07 21:09:05,387][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-05-07 21:09:05,388][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-05-07 21:09:05,395][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-05-07 21:09:05,396][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-05-07 21:09:09,129][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-05-07 21:09:09,130][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-05-07 21:09:09,137][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-05-07 21:09:09,138][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-05-07 21:09:09,145][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-05-07 21:09:09,146][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-05-07 21:09:17 | INFO | metric_online:run_with_hydra:1008 - {'action': 'parallel_done', 'success_count': 1, 'fail_count': 0}