From 56f0cd60e7aab54280f42d7e02cac55bc90b78eb Mon Sep 17 00:00:00 2001 From: aszerW Date: Sat, 23 May 2026 18:41:20 +0800 Subject: [PATCH] =?UTF-8?q?fix(flask=5Fapi):=20=E4=BF=9D=E7=95=99code?= =?UTF-8?q?=E5=88=97=E7=A1=AE=E4=BF=9D=E6=9C=AC=E5=9C=B0=E4=B8=8E=E7=BA=BF?= =?UTF-8?q?=E4=B8=8A=E6=95=B0=E6=8D=AE=E7=BB=93=E6=9E=84=E4=B8=80=E8=87=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit FlaskAPIDataSource.fetch() 原硬编码只选择 OHLCV 列,丢失 code 列 修改为动态判断:若 API 返回包含 code 列则保留 确保本地 UniversalDataFetcher 与线上 FlaskAPIDataSource 返回数据结构一致 --- datasource/flask_api_source.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/datasource/flask_api_source.py b/datasource/flask_api_source.py index 87eb40c..a2368b2 100644 --- a/datasource/flask_api_source.py +++ b/datasource/flask_api_source.py @@ -146,8 +146,11 @@ class FlaskAPIDataSource: df['date'] = pd.to_datetime(df['date']) df = df.set_index('date') - # 确保列名标准化 - df = df[['open', 'high', 'low', 'close', 'volume']] + # 确保列名标准化(保留 code 列如果存在) + standard_cols = ['open', 'high', 'low', 'close', 'volume'] + if 'code' in df.columns: + standard_cols = ['code'] + standard_cols + df = df[standard_cols] # 使用 API 返回的实际数据范围(而非请求参数) actual_start = data.get('date_range', {}).get('start', start_date)