2026-06-12 09:57:35,944 - bond_project.task.w - INFO - [进度更新] 失败:未能加载债券列表
2026-06-12 09:57:35,943 - bond_project.task.w - ERROR - 未能加载债券列表,周度任务终止。
2026-06-12 09:57:35,942 - bond_project.task.w - ERROR - 找不到债券列表文件,请先运行日度任务(d.py)。
2026-06-12 09:57:35,942 - bond_project.task.w - INFO - 目录 /www/wwwroot/bond/data/workspace/volatility 已清空。
2026-06-12 09:57:35,941 - bond_project.task.w - INFO - 开始清空目录: /www/wwwroot/bond/data/workspace/volatility
2026-06-12 09:57:35,941 - bond_project.task.w - INFO - [进度更新] 步骤1/3: 清理旧工作区...
2026-06-12 09:57:35,940 - bond_project.task.w - INFO - [进度更新] 任务开始,正在初始化...
2026-06-12 09:57:35,939 - bond_project.task.w - INFO - ===== [w.py] 周度任务开始 =====
2026-06-12 08:31:55,271 - bond_project.task.w - INFO - [进度更新] 失败:未能加载债券列表
2026-06-12 08:31:55,270 - bond_project.task.w - ERROR - 未能加载债券列表,周度任务终止。
2026-06-12 08:31:55,269 - bond_project.task.w - ERROR - 找不到债券列表文件,请先运行日度任务(d.py)。
2026-06-12 08:31:55,268 - bond_project.task.w - INFO - 目录 /www/wwwroot/bond/data/workspace/volatility 已清空。
2026-06-12 08:31:55,268 - bond_project.task.w - INFO - 开始清空目录: /www/wwwroot/bond/data/workspace/volatility
2026-06-12 08:31:55,268 - bond_project.task.w - INFO - [进度更新] 步骤1/3: 清理旧工作区...
2026-06-12 08:31:55,266 - bond_project.task.w - INFO - [进度更新] 任务开始,正在初始化...
2026-06-12 08:31:55,263 - bond_project.task.w - INFO - ===== [w.py] 周度任务开始 =====
2026-06-12 05:22:14,289 - bond_project.task.w - INFO - [进度更新] 失败:未能加载债券列表
2026-06-12 05:22:14,288 - bond_project.task.w - ERROR - 未能加载债券列表,周度任务终止。
2026-06-12 05:22:14,287 - bond_project.task.w - ERROR - 找不到债券列表文件,请先运行日度任务(d.py)。
2026-06-12 05:22:14,287 - bond_project.task.w - INFO - 目录 /www/wwwroot/bond/data/workspace/volatility 已清空。
2026-06-12 05:22:14,287 - bond_project.task.w - INFO - 开始清空目录: /www/wwwroot/bond/data/workspace/volatility
2026-06-12 05:22:14,287 - bond_project.task.w - INFO - [进度更新] 步骤1/3: 清理旧工作区...
2026-06-12 05:22:14,285 - bond_project.task.w - INFO - [进度更新] 任务开始,正在初始化...
2026-06-12 05:22:14,285 - bond_project.task.w - INFO - ===== [w.py] 周度任务开始 =====
2026-06-12 04:57:07,524 - bond_project.task.w - INFO - [进度更新] 失败:未能加载债券列表
2026-06-12 04:57:07,522 - bond_project.task.w - ERROR - 未能加载债券列表,周度任务终止。
2026-06-12 04:57:07,519 - bond_project.task.w - ERROR - 找不到债券列表文件,请先运行日度任务(d.py)。
2026-06-12 04:57:07,519 - bond_project.task.w - INFO - 目录 /www/wwwroot/bond/data/workspace/volatility 已清空。
2026-06-12 04:57:07,519 - bond_project.task.w - INFO - 开始清空目录: /www/wwwroot/bond/data/workspace/volatility
2026-06-12 04:57:07,518 - bond_project.task.w - INFO - [进度更新] 步骤1/3: 清理旧工作区...
2026-06-12 04:57:07,516 - bond_project.task.w - INFO - [进度更新] 任务开始,正在初始化...
2026-06-12 04:57:07,512 - bond_project.task.w - INFO - ===== [w.py] 周度任务开始 =====
2026-06-08 14:19:15,790 - bond_project.task.w - INFO - [进度更新] 失败:未能加载债券列表
2026-06-08 14:19:15,789 - bond_project.task.w - ERROR - 未能加载债券列表,周度任务终止。
2026-06-08 14:19:15,787 - bond_project.task.w - ERROR - 找不到债券列表文件,请先运行日度任务(d.py)。
2026-06-08 14:19:15,787 - bond_project.task.w - INFO - 目录 /www/wwwroot/bond/data/workspace/volatility 已清空。
2026-06-08 14:19:15,786 - bond_project.task.w - INFO - 开始清空目录: /www/wwwroot/bond/data/workspace/volatility
2026-06-08 14:19:15,786 - bond_project.task.w - INFO - [进度更新] 步骤1/3: 清理旧工作区...
2026-06-08 14:19:15,784 - bond_project.task.w - INFO - [进度更新] 任务开始,正在初始化...
2026-06-08 14:19:15,783 - bond_project.task.w - INFO - ===== [w.py] 周度任务开始 =====
2026-06-07 12:05:03,216 - bond_project.task.w - INFO - [进度更新] 失败:未能加载债券列表
2026-06-07 12:05:03,214 - bond_project.task.w - ERROR - 未能加载债券列表,周度任务终止。
2026-06-07 12:05:03,211 - bond_project.task.w - ERROR - 找不到债券列表文件,请先运行日度任务(d.py)。
2026-06-07 12:05:03,208 - bond_project.task.w - INFO - 目录 /www/wwwroot/bond/data/workspace/volatility 已清空。
2026-06-07 12:05:03,179 - bond_project.task.w - INFO - 开始清空目录: /www/wwwroot/bond/data/workspace/volatility
2026-06-07 12:05:03,179 - bond_project.task.w - INFO - [进度更新] 步骤1/3: 清理旧工作区...
2026-06-07 12:05:03,179 - bond_project.task.w - INFO - [进度更新] 任务开始,正在初始化...
2026-06-07 12:05:03,175 - bond_project.task.w - INFO - ===== [w.py] 周度任务开始 =====
2026-06-05 22:19:35,903 - bond_project.task.w - INFO - [进度更新] 任务完成
2026-06-05 22:19:35,902 - bond_project.task.w - INFO - ===== [w.py] 周度任务执行完毕 =====
2026-06-05 22:19:35,902 - bond_project.task.w - INFO - 步骤3/3: 周度汇总文件已生成: /www/wwwroot/bond/data/archive/weekly_summary.pkl
2026-06-05 22:19:35,887 - bond_project.task.w - INFO - [进度更新] 步骤3/3: 数据整合中...
2026-06-05 22:19:35,886 - bond_project.task.w - INFO - 步骤2/3: 波动率数据采集完成。
2026-06-05 22:19:32,689 - bond_project.task.w - INFO -  -> 正在计算 127033 (bond) 的历史波动率...
2026-06-05 22:19:32,689 - bond_project.task.w - INFO - [进度更新] 步骤2/3: 采集中...(648/645) - 转债 127033
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
    raise ConnectionError(err, request=request)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/requests/adapters.py", line 682, in send
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    r = adapter.send(request, **kwargs)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/requests/sessions.py", line 703, in send
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    resp = self.send(prep, **send_kwargs)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/requests/sessions.py", line 589, in request
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    return session.request(method=method, url=url, **kwargs)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/requests/api.py", line 59, in request
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    return request("get", url, params=params, **kwargs)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/requests/api.py", line 73, in get
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    r = requests.get(url, params=params, timeout=timeout)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/akshare/stock_feature/stock_hist_em.py", line 990, in stock_zh_a_hist
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    hist_df = ak.stock_zh_a_hist(symbol=code, period="daily", adjust="qfq")
  File "/www/wwwroot/bond/tasks/w.py", line 19, in get_volatility
Traceback (most recent call last):

During handling of the above exception, another exception occurred:

urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
    raise RemoteDisconnected("Remote end closed connection without"
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/http/client.py", line 294, in _read_status
                              ^^^^^^^^^^^^^^^^^^^
    version, status, reason = self._read_status()
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/http/client.py", line 325, in begin
    response.begin()
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/http/client.py", line 1390, in getresponse
                       ^^^^^^^^^^^^^^^^^^^^^
    httplib_response = super().getresponse()
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/connection.py", line 565, in getresponse
               ^^^^^^^^^^^^^^^^^^
    response = conn.getresponse()
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/connectionpool.py", line 534, in _make_request
               ^^^^^^^^^^^^^^^^^^^
    response = self._make_request(
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/connectionpool.py", line 787, in urlopen
    raise value.with_traceback(tb)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/util/util.py", line 38, in reraise
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    raise reraise(type(error), error, _stacktrace)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/util/retry.py", line 474, in increment
              ^^^^^^^^^^^^^^^^^^
    retries = retries.increment(
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/connectionpool.py", line 841, in urlopen
           ^^^^^^^^^^^^^
    resp = conn.urlopen(
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/requests/adapters.py", line 667, in send
Traceback (most recent call last):

During handling of the above exception, another exception occurred:

http.client.RemoteDisconnected: Remote end closed connection without response
    raise RemoteDisconnected("Remote end closed connection without"
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/http/client.py", line 294, in _read_status
                              ^^^^^^^^^^^^^^^^^^^
    version, status, reason = self._read_status()
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/http/client.py", line 325, in begin
    response.begin()
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/http/client.py", line 1390, in getresponse
                       ^^^^^^^^^^^^^^^^^^^^^
    httplib_response = super().getresponse()
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/connection.py", line 565, in getresponse
               ^^^^^^^^^^^^^^^^^^
    response = conn.getresponse()
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/connectionpool.py", line 534, in _make_request
               ^^^^^^^^^^^^^^^^^^^
    response = self._make_request(
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/connectionpool.py", line 787, in urlopen
Traceback (most recent call last):
2026-06-05 22:19:29,685 - bond_project.task.w - ERROR -  -> 计算 002822 (stock) 波动率失败: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
2026-06-05 22:19:29,482 - bond_project.task.w - INFO -  -> 正在计算 002822 (stock) 的历史波动率...
2026-06-05 22:19:29,482 - bond_project.task.w - INFO - [进度更新] 步骤2/3: 采集中...(647/645) - 正股 002822
2026-06-05 22:19:26,199 - bond_project.task.w - INFO -  -> 正在计算 118033 (bond) 的历史波动率...
2026-06-05 22:19:26,198 - bond_project.task.w - INFO - [进度更新] 步骤2/3: 采集中...(646/645) - 转债 118033
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
    raise ConnectionError(err, request=request)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/requests/adapters.py", line 682, in send
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    r = adapter.send(request, **kwargs)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/requests/sessions.py", line 703, in send
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    resp = self.send(prep, **send_kwargs)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/requests/sessions.py", line 589, in request
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    return session.request(method=method, url=url, **kwargs)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/requests/api.py", line 59, in request
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    return request("get", url, params=params, **kwargs)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/requests/api.py", line 73, in get
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    r = requests.get(url, params=params, timeout=timeout)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/akshare/stock_feature/stock_hist_em.py", line 990, in stock_zh_a_hist
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    hist_df = ak.stock_zh_a_hist(symbol=code, period="daily", adjust="qfq")
  File "/www/wwwroot/bond/tasks/w.py", line 19, in get_volatility
Traceback (most recent call last):

During handling of the above exception, another exception occurred:

urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
    raise RemoteDisconnected("Remote end closed connection without"
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/http/client.py", line 294, in _read_status
                              ^^^^^^^^^^^^^^^^^^^
    version, status, reason = self._read_status()
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/http/client.py", line 325, in begin
    response.begin()
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/http/client.py", line 1390, in getresponse
                       ^^^^^^^^^^^^^^^^^^^^^
    httplib_response = super().getresponse()
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/connection.py", line 565, in getresponse
               ^^^^^^^^^^^^^^^^^^
    response = conn.getresponse()
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/connectionpool.py", line 534, in _make_request
               ^^^^^^^^^^^^^^^^^^^
    response = self._make_request(
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/connectionpool.py", line 787, in urlopen
    raise value.with_traceback(tb)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/util/util.py", line 38, in reraise
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    raise reraise(type(error), error, _stacktrace)
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/util/retry.py", line 474, in increment
              ^^^^^^^^^^^^^^^^^^
    retries = retries.increment(
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/urllib3/connectionpool.py", line 841, in urlopen
           ^^^^^^^^^^^^^
    resp = conn.urlopen(
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/site-packages/requests/adapters.py", line 667, in send
Traceback (most recent call last):

During handling of the above exception, another exception occurred:

http.client.RemoteDisconnected: Remote end closed connection without response
    raise RemoteDisconnected("Remote end closed connection without"
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/http/client.py", line 294, in _read_status
                              ^^^^^^^^^^^^^^^^^^^
    version, status, reason = self._read_status()
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/http/client.py", line 325, in begin
    response.begin()
  File "/www/server/pyporject_evn/versions/3.11.8/lib/python3.11/http/client.py", line 1390, in getresponse