2026-01-11 11:45:47,403 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 11:45:48,617 - app.services.data_fetcher_service - INFO - 📝 [数据获取] 股票代码格式化: 300750 -> 300750.SZ 2026-01-11 11:45:48,755 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=数据源连接成功, Progress=5% 2026-01-11 11:45:51,074 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=正在获取利润表数据..., Progress=10% 2026-01-11 11:45:52,716 - app.clients.tushare_cn_client - INFO - 🐛 [DEBUG] get_income_statement called with symbol: '300750.SZ' 2026-01-11 11:45:52,716 - app.clients.tushare_cn_client - INFO - 🔍 [Tushare API] 调用 income() 获取利润表, symbol=300750.SZ 2026-01-11 11:45:52,920 - app.clients.tushare_cn_client - INFO - ✅ [Tushare API] income() 完成, 返回 52 行, 耗时: 0.20秒 2026-01-11 11:45:53,990 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_income_statement: 跳过 52 条已存在的数据, 准备插入 0 条 2026-01-11 11:45:53,991 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_income_statement: 所有数据已存在,无需更新。 2026-01-11 11:45:53,997 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=利润表获取完成 (40行), Progress=25% 2026-01-11 11:45:54,832 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=正在获取资产负债表数据..., Progress=30% 2026-01-11 11:45:57,983 - app.clients.tushare_cn_client - INFO - 🔍 [Tushare API] 调用 balancesheet() 获取资产负债表, symbol=300750.SZ 2026-01-11 11:45:58,134 - app.clients.tushare_cn_client - INFO - ✅ [Tushare API] balancesheet() 完成, 返回 60 行, 耗时: 0.15秒 2026-01-11 11:45:59,867 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_balance_sheet: 跳过 60 条已存在的数据, 准备插入 0 条 2026-01-11 11:45:59,868 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_balance_sheet: 所有数据已存在,无需更新。 2026-01-11 11:45:59,870 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=资产负债表获取完成 (38行), Progress=50% 2026-01-11 11:46:00,962 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=正在获取现金流量表数据..., Progress=55% 2026-01-11 11:46:02,228 - app.clients.tushare_cn_client - INFO - 🔍 [Tushare API] 调用 cashflow() 获取现金流量表, symbol=300750.SZ 2026-01-11 11:46:02,372 - app.clients.tushare_cn_client - INFO - ✅ [Tushare API] cashflow() 完成, 返回 51 行, 耗时: 0.14秒 2026-01-11 11:46:02,731 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_cash_flow: 跳过 51 条已存在的数据, 准备插入 0 条 2026-01-11 11:46:02,731 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_cash_flow: 所有数据已存在,无需更新。 2026-01-11 11:46:02,733 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=现金流量表获取完成 (38行), Progress=75% 2026-01-11 11:46:03,939 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=正在获取市场指标..., Progress=78% 2026-01-11 11:46:07,160 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_daily_basic: 跳过 1 条已存在的数据, 准备插入 0 条 2026-01-11 11:46:07,160 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_daily_basic: 所有数据已存在,无需更新。 2026-01-11 11:46:09,420 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_stock_basic: 跳过 1 条已存在的数据, 准备插入 0 条 2026-01-11 11:46:09,420 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_stock_basic: 所有数据已存在,无需更新。 2026-01-11 11:46:12,553 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_stk_holdernumber: 跳过 1 条已存在的数据, 准备插入 0 条 2026-01-11 11:46:12,554 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_stk_holdernumber: 所有数据已存在,无需更新。 2026-01-11 11:46:12,554 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=市场指标获取完成, Progress=85% 2026-01-11 11:46:14,701 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=正在获取分红数据..., Progress=87% 2026-01-11 11:46:17,140 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=正在获取回购数据..., Progress=90% 2026-01-11 11:46:20,568 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=正在获取员工数据..., Progress=93% 2026-01-11 11:46:23,586 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=正在处理统计信息..., Progress=96% 2026-01-11 11:46:25,289 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=23, Msg=数据获取完成, Progress=100% 2026-01-11 11:49:55,669 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 11:49:58,132 - app.services.data_fetcher_service - INFO - 📝 [数据获取] 股票代码格式化: 300750 -> 300750.SZ 2026-01-11 11:49:58,212 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=数据源连接成功, Progress=5% 2026-01-11 11:49:59,473 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=正在获取利润表数据..., Progress=10% 2026-01-11 11:50:02,031 - app.clients.tushare_cn_client - INFO - 🐛 [DEBUG] get_income_statement called with symbol: '300750.SZ' 2026-01-11 11:50:02,032 - app.clients.tushare_cn_client - INFO - 🔍 [Tushare API] 调用 income() 获取利润表, symbol=300750.SZ 2026-01-11 11:50:02,221 - app.clients.tushare_cn_client - INFO - ✅ [Tushare API] income() 完成, 返回 52 行, 耗时: 0.19秒 2026-01-11 11:50:03,736 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_income_statement: 跳过 52 条已存在的数据, 准备插入 0 条 2026-01-11 11:50:03,736 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_income_statement: 所有数据已存在,无需更新。 2026-01-11 11:50:03,742 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=利润表获取完成 (40行), Progress=25% 2026-01-11 11:50:06,644 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=正在获取资产负债表数据..., Progress=30% 2026-01-11 11:50:08,617 - app.clients.tushare_cn_client - INFO - 🔍 [Tushare API] 调用 balancesheet() 获取资产负债表, symbol=300750.SZ 2026-01-11 11:50:08,765 - app.clients.tushare_cn_client - INFO - ✅ [Tushare API] balancesheet() 完成, 返回 60 行, 耗时: 0.15秒 2026-01-11 11:50:33,205 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_balance_sheet: 跳过 60 条已存在的数据, 准备插入 0 条 2026-01-11 11:50:33,205 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_balance_sheet: 所有数据已存在,无需更新。 2026-01-11 11:50:33,215 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=资产负债表获取完成 (38行), Progress=50% 2026-01-11 11:50:35,816 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=正在获取现金流量表数据..., Progress=55% 2026-01-11 11:50:37,038 - app.clients.tushare_cn_client - INFO - 🔍 [Tushare API] 调用 cashflow() 获取现金流量表, symbol=300750.SZ 2026-01-11 11:50:37,181 - app.clients.tushare_cn_client - INFO - ✅ [Tushare API] cashflow() 完成, 返回 51 行, 耗时: 0.14秒 2026-01-11 11:50:38,707 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_cash_flow: 跳过 51 条已存在的数据, 准备插入 0 条 2026-01-11 11:50:38,707 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_cash_flow: 所有数据已存在,无需更新。 2026-01-11 11:50:38,710 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=现金流量表获取完成 (38行), Progress=75% 2026-01-11 11:50:40,082 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=正在获取市场指标..., Progress=78% 2026-01-11 11:50:43,032 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_daily_basic: 跳过 1 条已存在的数据, 准备插入 0 条 2026-01-11 11:50:43,033 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_daily_basic: 所有数据已存在,无需更新。 2026-01-11 11:50:45,200 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_stock_basic: 跳过 1 条已存在的数据, 准备插入 0 条 2026-01-11 11:50:45,200 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_stock_basic: 所有数据已存在,无需更新。 2026-01-11 11:50:46,206 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_stk_holdernumber: 跳过 1 条已存在的数据, 准备插入 0 条 2026-01-11 11:50:46,206 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_stk_holdernumber: 所有数据已存在,无需更新。 2026-01-11 11:50:46,207 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=市场指标获取完成, Progress=85% 2026-01-11 11:50:48,598 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=正在获取分红数据..., Progress=87% 2026-01-11 11:50:49,811 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=正在获取回购数据..., Progress=90% 2026-01-11 11:50:51,191 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=正在获取员工数据..., Progress=93% 2026-01-11 11:50:56,398 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=正在处理统计信息..., Progress=96% 2026-01-11 11:50:57,709 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=24, Msg=数据获取完成, Progress=100% 2026-01-11 11:51:33,622 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 宁德时代 2026-01-11 11:51:33,804 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-3-flash-preview 进行股票搜索 2026-01-11 11:51:33,810 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 11:51:44,168 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-3-flash-preview:generateContent "HTTP/1.1 200 OK" 2026-01-11 11:51:44,204 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 10.40秒, Tokens: prompt=250, completion=60, total=310 2026-01-11 11:51:44,204 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 2 个结果, 总耗时: 10.58秒 2026-01-11 11:59:04,507 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 宁德时代 2026-01-11 11:59:04,521 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.0-flash 进行股票搜索 2026-01-11 11:59:04,532 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 11:59:08,512 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 11:59:08,534 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 4.01秒, Tokens: prompt=165, completion=85, total=250 2026-01-11 11:59:08,534 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 2 个结果, 总耗时: 4.02秒 2026-01-11 12:00:05,581 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 宁德时代 2026-01-11 12:00:05,589 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.0-flash 进行股票搜索 2026-01-11 12:00:05,594 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 12:00:08,993 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 12:00:09,063 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 3.47秒, Tokens: prompt=165, completion=85, total=250 2026-01-11 12:00:09,063 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 2 个结果, 总耗时: 3.48秒 2026-01-11 12:00:20,238 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 宁德时代 2026-01-11 12:00:20,239 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.0-flash 进行股票搜索 2026-01-11 12:00:20,240 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 12:00:23,618 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 12:00:23,645 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 3.41秒, Tokens: prompt=165, completion=85, total=250 2026-01-11 12:00:23,645 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 2 个结果, 总耗时: 3.41秒 2026-01-11 12:00:43,588 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 12:00:45,312 - app.services.data_fetcher_service - INFO - 📝 [数据获取] 股票代码格式化: 300750 -> 300750.SZ 2026-01-11 12:00:45,416 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=数据源连接成功, Progress=5% 2026-01-11 12:00:46,272 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=正在获取利润表数据..., Progress=10% 2026-01-11 12:00:46,759 - app.clients.tushare_cn_client - INFO - 🐛 [DEBUG] get_income_statement called with symbol: '300750.SZ' 2026-01-11 12:00:46,759 - app.clients.tushare_cn_client - INFO - 🔍 [Tushare API] 调用 income() 获取利润表, symbol=300750.SZ 2026-01-11 12:00:46,960 - app.clients.tushare_cn_client - INFO - ✅ [Tushare API] income() 完成, 返回 52 行, 耗时: 0.20秒 2026-01-11 12:00:47,759 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_income_statement: 跳过 52 条已存在的数据, 准备插入 0 条 2026-01-11 12:00:47,759 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_income_statement: 所有数据已存在,无需更新。 2026-01-11 12:00:47,765 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=利润表获取完成 (40行), Progress=25% 2026-01-11 12:00:48,173 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=正在获取资产负债表数据..., Progress=30% 2026-01-11 12:00:49,036 - app.clients.tushare_cn_client - INFO - 🔍 [Tushare API] 调用 balancesheet() 获取资产负债表, symbol=300750.SZ 2026-01-11 12:00:49,197 - app.clients.tushare_cn_client - INFO - ✅ [Tushare API] balancesheet() 完成, 返回 60 行, 耗时: 0.16秒 2026-01-11 12:00:49,900 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_balance_sheet: 跳过 60 条已存在的数据, 准备插入 0 条 2026-01-11 12:00:49,900 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_balance_sheet: 所有数据已存在,无需更新。 2026-01-11 12:00:49,902 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=资产负债表获取完成 (38行), Progress=50% 2026-01-11 12:00:50,620 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=正在获取现金流量表数据..., Progress=55% 2026-01-11 12:00:51,395 - app.clients.tushare_cn_client - INFO - 🔍 [Tushare API] 调用 cashflow() 获取现金流量表, symbol=300750.SZ 2026-01-11 12:00:51,535 - app.clients.tushare_cn_client - INFO - ✅ [Tushare API] cashflow() 完成, 返回 51 行, 耗时: 0.14秒 2026-01-11 12:00:52,356 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_cash_flow: 跳过 51 条已存在的数据, 准备插入 0 条 2026-01-11 12:00:52,357 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_cash_flow: 所有数据已存在,无需更新。 2026-01-11 12:00:52,359 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=现金流量表获取完成 (38行), Progress=75% 2026-01-11 12:00:52,655 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=正在获取市场指标..., Progress=78% 2026-01-11 12:00:54,258 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_daily_basic: 跳过 1 条已存在的数据, 准备插入 0 条 2026-01-11 12:00:54,259 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_daily_basic: 所有数据已存在,无需更新。 2026-01-11 12:00:55,302 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_stock_basic: 跳过 1 条已存在的数据, 准备插入 0 条 2026-01-11 12:00:55,302 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_stock_basic: 所有数据已存在,无需更新。 2026-01-11 12:00:57,229 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_stk_holdernumber: 跳过 1 条已存在的数据, 准备插入 0 条 2026-01-11 12:00:57,230 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_stk_holdernumber: 所有数据已存在,无需更新。 2026-01-11 12:00:57,230 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=市场指标获取完成, Progress=85% 2026-01-11 12:01:04,175 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=正在获取分红数据..., Progress=87% 2026-01-11 12:01:07,425 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=正在获取回购数据..., Progress=90% 2026-01-11 12:01:09,285 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=正在获取员工数据..., Progress=93% 2026-01-11 12:01:11,661 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=正在处理统计信息..., Progress=96% 2026-01-11 12:01:12,931 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=25, Msg=数据获取完成, Progress=100% 2026-01-11 12:03:25,453 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 宁德时代 2026-01-11 12:03:25,463 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.0-flash 进行股票搜索 2026-01-11 12:03:25,469 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 12:03:28,867 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 12:03:28,937 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 3.47秒, Tokens: prompt=165, completion=85, total=250 2026-01-11 12:03:28,938 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 2 个结果, 总耗时: 3.48秒 2026-01-11 12:03:36,309 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 12:03:37,044 - app.services.data_fetcher_service - INFO - 📝 [数据获取] 股票代码格式化: 300750 -> 300750.SZ 2026-01-11 12:03:37,099 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=数据源连接成功, Progress=5% 2026-01-11 12:03:38,169 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=正在获取利润表数据..., Progress=10% 2026-01-11 12:03:39,085 - app.clients.tushare_cn_client - INFO - 🐛 [DEBUG] get_income_statement called with symbol: '300750.SZ' 2026-01-11 12:03:39,085 - app.clients.tushare_cn_client - INFO - 🔍 [Tushare API] 调用 income() 获取利润表, symbol=300750.SZ 2026-01-11 12:03:39,345 - app.clients.tushare_cn_client - INFO - ✅ [Tushare API] income() 完成, 返回 52 行, 耗时: 0.26秒 2026-01-11 12:03:39,864 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_income_statement: 跳过 52 条已存在的数据, 准备插入 0 条 2026-01-11 12:03:39,864 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_income_statement: 所有数据已存在,无需更新。 2026-01-11 12:03:39,874 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=利润表获取完成 (40行), Progress=25% 2026-01-11 12:03:40,581 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=正在获取资产负债表数据..., Progress=30% 2026-01-11 12:03:42,076 - app.clients.tushare_cn_client - INFO - 🔍 [Tushare API] 调用 balancesheet() 获取资产负债表, symbol=300750.SZ 2026-01-11 12:03:42,245 - app.clients.tushare_cn_client - INFO - ✅ [Tushare API] balancesheet() 完成, 返回 60 行, 耗时: 0.16秒 2026-01-11 12:03:43,042 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_balance_sheet: 跳过 60 条已存在的数据, 准备插入 0 条 2026-01-11 12:03:43,043 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_balance_sheet: 所有数据已存在,无需更新。 2026-01-11 12:03:43,046 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=资产负债表获取完成 (38行), Progress=50% 2026-01-11 12:03:44,648 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=正在获取现金流量表数据..., Progress=55% 2026-01-11 12:03:45,386 - app.clients.tushare_cn_client - INFO - 🔍 [Tushare API] 调用 cashflow() 获取现金流量表, symbol=300750.SZ 2026-01-11 12:03:45,535 - app.clients.tushare_cn_client - INFO - ✅ [Tushare API] cashflow() 完成, 返回 51 行, 耗时: 0.15秒 2026-01-11 12:03:46,986 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_cash_flow: 跳过 51 条已存在的数据, 准备插入 0 条 2026-01-11 12:03:46,986 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_cash_flow: 所有数据已存在,无需更新。 2026-01-11 12:03:46,988 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=现金流量表获取完成 (38行), Progress=75% 2026-01-11 12:03:47,888 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=正在获取市场指标..., Progress=78% 2026-01-11 12:03:51,744 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_daily_basic: 跳过 1 条已存在的数据, 准备插入 0 条 2026-01-11 12:03:51,745 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_daily_basic: 所有数据已存在,无需更新。 2026-01-11 12:03:52,685 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_stock_basic: 跳过 1 条已存在的数据, 准备插入 0 条 2026-01-11 12:03:52,688 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_stock_basic: 所有数据已存在,无需更新。 2026-01-11 12:03:53,710 - app.clients.tushare_cn_client - INFO - ⏭️ [数据库] 表 tushare_stk_holdernumber: 跳过 1 条已存在的数据, 准备插入 0 条 2026-01-11 12:03:53,711 - app.clients.tushare_cn_client - INFO - ✅ [数据库] 表 tushare_stk_holdernumber: 所有数据已存在,无需更新。 2026-01-11 12:03:53,711 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=市场指标获取完成, Progress=85% 2026-01-11 12:03:55,031 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=正在获取分红数据..., Progress=87% 2026-01-11 12:03:55,940 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=正在获取回购数据..., Progress=90% 2026-01-11 12:03:56,705 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=正在获取员工数据..., Progress=93% 2026-01-11 12:04:00,239 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=正在处理统计信息..., Progress=96% 2026-01-11 12:04:01,129 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=26, Msg=数据获取完成, Progress=100% 2026-01-11 12:57:47,122 - app.main - INFO - 🔍 [搜索] 开始搜索股票: AAPL 2026-01-11 12:57:47,263 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-11 12:57:47,264 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 12:57:51,593 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 12:57:51,620 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 4.36秒, Tokens: prompt=164, completion=62, total=226 2026-01-11 12:57:51,620 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 4.50秒 2026-01-11 12:58:04,131 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 12:58:05,427 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=数据源连接成功, Progress=5% 2026-01-11 12:58:06,418 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=正在获取利润表数据..., Progress=10% 2026-01-11 12:58:10,730 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_income_statement: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:10,783 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=利润表获取完成 (5行), Progress=25% 2026-01-11 12:58:11,387 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=正在获取资产负债表数据..., Progress=30% 2026-01-11 12:58:14,923 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_balance_sheet: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:14,958 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=资产负债表获取完成 (5行), Progress=50% 2026-01-11 12:58:15,598 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=正在获取现金流量表数据..., Progress=55% 2026-01-11 12:58:19,119 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_cash_flow: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:19,153 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=现金流量表获取完成 (5行), Progress=75% 2026-01-11 12:58:20,237 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=正在获取市场指标..., Progress=78% 2026-01-11 12:58:22,585 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=市场指标获取完成, Progress=85% 2026-01-11 12:58:23,290 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=正在获取分红数据..., Progress=87% 2026-01-11 12:58:24,959 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_dividend: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:25,912 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_dividend: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:26,840 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_dividend: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:27,590 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_dividend: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:29,663 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_dividend: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:29,696 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=正在获取回购数据..., Progress=90% 2026-01-11 12:58:33,767 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_repurchase: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:35,802 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_repurchase: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:36,947 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_repurchase: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:37,937 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_repurchase: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:38,590 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_repurchase: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:38,781 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=正在获取员工数据..., Progress=93% 2026-01-11 12:58:40,017 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_employee: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:41,200 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_employee: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:42,108 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_employee: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:43,013 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_employee: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:45,127 - app.clients.ifind_int_client - ERROR - Error saving to ifind_int_employee: value too long for type character varying(8) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/clients/ifind_int_client.py", line 156, in _save_df_to_wide_table cur.executemany(insert_sql, data_tuples) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ psycopg2.errors.StringDataRightTruncation: value too long for type character varying(8) 2026-01-11 12:58:45,164 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=正在处理统计信息..., Progress=96% 2026-01-11 12:58:45,774 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=27, Msg=数据获取完成, Progress=100% 2026-01-11 12:59:04,411 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 12:59:06,455 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 12:59:12,657 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 12:59:12,690 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 12:59:13,757 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 12:59:13,757 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=数据源连接成功, Progress=5% 2026-01-11 12:59:14,539 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=正在获取利润表数据..., Progress=10% 2026-01-11 12:59:15,392 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 12:59:15,430 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 12:59:17,871 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 12:59:17,871 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 12:59:45,670 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 12:59:46,262 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 12:59:51,668 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 12:59:51,669 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 12:59:52,369 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=利润表获取完成 (10行), Progress=25% 2026-01-11 12:59:54,510 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=正在获取资产负债表数据..., Progress=30% 2026-01-11 12:59:55,811 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 12:59:56,051 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 12:59:58,039 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 12:59:58,040 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:00:22,167 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:00:22,817 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:00:30,258 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:00:30,261 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:00:31,488 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=资产负债表获取完成 (10行), Progress=50% 2026-01-11 13:00:32,114 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=正在获取现金流量表数据..., Progress=55% 2026-01-11 13:00:32,800 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 13:00:32,834 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 13:00:35,564 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 13:00:35,564 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:00:57,471 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:00:59,099 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:01:03,826 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:01:03,827 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:01:04,098 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=现金流量表获取完成 (10行), Progress=75% 2026-01-11 13:01:06,609 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=正在获取市场指标..., Progress=78% 2026-01-11 13:01:07,384 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 13:01:07,420 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 13:01:11,057 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 13:01:11,058 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:01:39,585 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:01:40,508 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:01:45,091 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:01:45,091 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:01:45,573 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=市场指标获取完成, Progress=85% 2026-01-11 13:01:48,482 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=正在获取分红数据..., Progress=87% 2026-01-11 13:01:49,509 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 13:01:49,571 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 13:01:53,489 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 13:01:53,489 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:02:16,423 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:02:17,466 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:02:23,914 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:02:23,922 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:02:27,017 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 13:02:27,139 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 13:02:29,506 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 13:02:29,506 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:02:53,208 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:02:53,770 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:02:58,094 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:02:58,095 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:02:59,289 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=正在获取回购数据..., Progress=90% 2026-01-11 13:03:00,718 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 13:03:00,780 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 13:03:03,616 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 13:03:03,617 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:03:22,678 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:03:24,109 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:03:28,398 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:03:28,399 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:03:29,011 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=正在获取员工数据..., Progress=93% 2026-01-11 13:03:32,157 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 13:03:32,313 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 13:03:35,432 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 13:03:35,433 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:04:06,049 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:04:42,105 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:04:47,812 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:04:47,812 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:04:48,709 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=正在处理统计信息..., Progress=96% 2026-01-11 13:04:49,804 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=28, Msg=数据获取完成, Progress=100% 2026-01-11 13:10:32,945 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 苹果公司 2026-01-11 13:10:33,006 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.0-flash 进行股票搜索 2026-01-11 13:10:33,007 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 13:10:36,067 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 13:10:36,250 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 3.24秒, Tokens: prompt=164, completion=41, total=205 2026-01-11 13:10:36,250 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 3.30秒 2026-01-11 13:10:43,800 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 13:10:44,625 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=数据源连接成功, Progress=5% 2026-01-11 13:10:45,570 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=正在获取利润表数据..., Progress=10% 2026-01-11 13:10:48,599 - app.clients.ifind_int_client - INFO - 🆕 [Database] Creating table ifind_int_income_statement... 2026-01-11 13:10:49,088 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=利润表获取完成 (5行), Progress=25% 2026-01-11 13:10:49,377 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=正在获取资产负债表数据..., Progress=30% 2026-01-11 13:10:51,567 - app.clients.ifind_int_client - INFO - 🆕 [Database] Creating table ifind_int_balance_sheet... 2026-01-11 13:10:52,644 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=资产负债表获取完成 (5行), Progress=50% 2026-01-11 13:10:53,802 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=正在获取现金流量表数据..., Progress=55% 2026-01-11 13:10:56,542 - app.clients.ifind_int_client - INFO - 🆕 [Database] Creating table ifind_int_cash_flow... 2026-01-11 13:10:57,461 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=现金流量表获取完成 (5行), Progress=75% 2026-01-11 13:10:58,068 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=正在获取市场指标..., Progress=78% 2026-01-11 13:11:00,709 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=市场指标获取完成, Progress=85% 2026-01-11 13:11:01,969 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=正在获取分红数据..., Progress=87% 2026-01-11 13:11:04,053 - app.clients.ifind_int_client - INFO - 🆕 [Database] Creating table ifind_int_dividend... 2026-01-11 13:11:10,496 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=正在获取回购数据..., Progress=90% 2026-01-11 13:11:13,407 - app.clients.ifind_int_client - INFO - 🆕 [Database] Creating table ifind_int_repurchase... 2026-01-11 13:11:17,482 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=正在获取员工数据..., Progress=93% 2026-01-11 13:11:18,914 - app.clients.ifind_int_client - INFO - 🆕 [Database] Creating table ifind_int_employee... 2026-01-11 13:11:25,165 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=正在处理统计信息..., Progress=96% 2026-01-11 13:11:26,011 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=29, Msg=数据获取完成, Progress=100% 2026-01-11 13:12:03,786 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 苹果公司 2026-01-11 13:12:03,792 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-3-flash-preview 进行股票搜索 2026-01-11 13:12:03,794 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 13:12:08,779 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-3-flash-preview:generateContent "HTTP/1.1 200 OK" 2026-01-11 13:12:08,792 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 5.00秒, Tokens: prompt=297, completion=23, total=320 2026-01-11 13:12:08,792 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 5.00秒 2026-01-11 13:12:36,444 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 13:12:38,125 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 13:12:39,910 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 13:12:40,145 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 13:12:40,693 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 13:12:40,693 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=数据源连接成功, Progress=5% 2026-01-11 13:12:41,767 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=正在获取利润表数据..., Progress=10% 2026-01-11 13:12:43,203 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 13:12:43,382 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 13:12:44,634 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 13:12:46,618 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 13:12:46,622 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 13:12:46,622 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:12:47,254 - app.clients.bloomberg_client - INFO - ✅ Parsed 220 items from remote. 2026-01-11 13:13:05,304 - app.clients.bloomberg_client - INFO - ✅ Saved 220 records to database. 2026-01-11 13:13:05,307 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:13:05,878 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 13:13:05,878 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:13:07,612 - app.clients.bloomberg_client - INFO - ✅ Parsed 20 items from remote. 2026-01-11 13:13:11,123 - app.clients.bloomberg_client - INFO - ✅ Saved 20 records to database. 2026-01-11 13:13:12,009 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:13:12,010 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:13:12,566 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=利润表获取完成 (10行), Progress=25% 2026-01-11 13:13:14,432 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=正在获取资产负债表数据..., Progress=30% 2026-01-11 13:13:15,988 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 13:13:16,083 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 13:13:17,200 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 13:13:17,935 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 13:13:17,935 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 13:13:17,935 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:13:18,688 - app.clients.bloomberg_client - INFO - ✅ Parsed 220 items from remote. 2026-01-11 13:13:39,188 - app.clients.bloomberg_client - INFO - ✅ Saved 220 records to database. 2026-01-11 13:13:39,196 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:13:39,853 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 13:13:39,854 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:13:40,540 - app.clients.bloomberg_client - INFO - ✅ Parsed 20 items from remote. 2026-01-11 13:13:42,325 - app.clients.bloomberg_client - INFO - ✅ Saved 20 records to database. 2026-01-11 13:13:43,141 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:13:43,142 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:13:44,741 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=资产负债表获取完成 (10行), Progress=50% 2026-01-11 13:13:45,029 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=正在获取现金流量表数据..., Progress=55% 2026-01-11 13:13:45,758 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 13:13:45,845 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 13:13:47,459 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 13:13:48,233 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 13:13:48,234 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 13:13:48,234 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:13:49,024 - app.clients.bloomberg_client - INFO - ✅ Parsed 220 items from remote. 2026-01-11 13:14:07,425 - app.clients.bloomberg_client - INFO - ✅ Saved 220 records to database. 2026-01-11 13:14:07,433 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:14:07,995 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 13:14:07,995 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:14:08,474 - app.clients.bloomberg_client - INFO - ✅ Parsed 20 items from remote. 2026-01-11 13:14:10,763 - app.clients.bloomberg_client - INFO - ✅ Saved 20 records to database. 2026-01-11 13:14:13,387 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:14:13,388 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:14:14,707 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=现金流量表获取完成 (10行), Progress=75% 2026-01-11 13:14:16,639 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=正在获取市场指标..., Progress=78% 2026-01-11 13:14:17,086 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 13:14:17,329 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 13:14:18,303 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 13:14:19,911 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 13:14:19,912 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 13:14:19,912 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:14:21,551 - app.clients.bloomberg_client - INFO - ✅ Parsed 220 items from remote. 2026-01-11 13:14:44,941 - app.clients.bloomberg_client - INFO - ✅ Saved 220 records to database. 2026-01-11 13:14:44,945 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:14:45,513 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 13:14:45,514 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:14:45,990 - app.clients.bloomberg_client - INFO - ✅ Parsed 20 items from remote. 2026-01-11 13:14:48,901 - app.clients.bloomberg_client - INFO - ✅ Saved 20 records to database. 2026-01-11 13:14:49,421 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:14:49,422 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:14:50,089 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=市场指标获取完成, Progress=85% 2026-01-11 13:14:51,243 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=正在获取分红数据..., Progress=87% 2026-01-11 13:14:53,521 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 13:14:53,583 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 13:14:54,563 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 13:14:56,003 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 13:14:56,003 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 13:14:56,003 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:14:57,097 - app.clients.bloomberg_client - INFO - ✅ Parsed 220 items from remote. 2026-01-11 13:15:15,678 - app.clients.bloomberg_client - INFO - ✅ Saved 220 records to database. 2026-01-11 13:15:15,743 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:15:16,343 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 13:15:16,343 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:15:16,882 - app.clients.bloomberg_client - INFO - ✅ Parsed 20 items from remote. 2026-01-11 13:15:19,450 - app.clients.bloomberg_client - INFO - ✅ Saved 20 records to database. 2026-01-11 13:15:20,212 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:15:20,213 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:15:21,472 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 13:15:21,947 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 13:15:22,974 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 13:15:24,699 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 13:15:24,701 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 13:15:24,701 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:15:25,557 - app.clients.bloomberg_client - INFO - ✅ Parsed 220 items from remote. 2026-01-11 13:15:48,402 - app.clients.bloomberg_client - INFO - ✅ Saved 220 records to database. 2026-01-11 13:15:48,408 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:15:48,992 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 13:15:48,992 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:15:49,537 - app.clients.bloomberg_client - INFO - ✅ Parsed 20 items from remote. 2026-01-11 13:15:53,243 - app.clients.bloomberg_client - INFO - ✅ Saved 20 records to database. 2026-01-11 13:15:54,472 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:15:54,472 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:15:56,157 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=正在获取回购数据..., Progress=90% 2026-01-11 13:15:56,967 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 13:15:57,529 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 13:15:58,535 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 13:16:03,967 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 13:16:03,968 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 13:16:03,968 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:16:05,136 - app.clients.bloomberg_client - INFO - ✅ Parsed 220 items from remote. 2026-01-11 13:16:23,995 - app.clients.bloomberg_client - INFO - ✅ Saved 220 records to database. 2026-01-11 13:16:24,005 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:16:24,720 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 13:16:24,720 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:16:25,257 - app.clients.bloomberg_client - INFO - ✅ Parsed 20 items from remote. 2026-01-11 13:16:27,891 - app.clients.bloomberg_client - INFO - ✅ Saved 20 records to database. 2026-01-11 13:16:28,612 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:16:28,612 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:16:29,084 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=正在获取员工数据..., Progress=93% 2026-01-11 13:16:30,087 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 13:16:30,146 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 13:16:31,162 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 13:16:33,231 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 13:16:33,232 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 13:16:33,232 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 13:16:34,499 - app.clients.bloomberg_client - INFO - ✅ Parsed 220 items from remote. 2026-01-11 13:16:58,065 - app.clients.bloomberg_client - INFO - ✅ Saved 220 records to database. 2026-01-11 13:16:58,073 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 13:16:58,682 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 13:16:58,683 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 13:16:59,181 - app.clients.bloomberg_client - INFO - ✅ Parsed 20 items from remote. 2026-01-11 13:17:01,161 - app.clients.bloomberg_client - INFO - ✅ Saved 20 records to database. 2026-01-11 13:17:01,830 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 13:17:01,830 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 13:17:03,238 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=正在处理统计信息..., Progress=96% 2026-01-11 13:17:04,206 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=30, Msg=数据获取完成, Progress=100% 2026-01-11 13:17:40,291 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 苹果 2026-01-11 13:17:40,302 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.0-flash 进行股票搜索 2026-01-11 13:17:40,307 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 13:17:43,895 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 13:17:43,912 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 3.61秒, Tokens: prompt=163, completion=41, total=204 2026-01-11 13:17:43,912 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 3.62秒 2026-01-11 13:21:40,401 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 苹果 2026-01-11 13:21:40,607 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.0-flash 进行股票搜索 2026-01-11 13:21:40,609 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 13:21:43,517 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 13:21:43,533 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 2.93秒, Tokens: prompt=163, completion=67, total=230 2026-01-11 13:21:43,533 - app.main - ERROR - ❌ [搜索] 搜索失败: Expecting value: line 1 column 1 (char 0), 耗时: 3.13秒 2026-01-11 13:21:50,070 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 苹果公司 2026-01-11 13:21:50,071 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-11 13:21:50,071 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 13:21:54,239 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 13:21:54,256 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 4.18秒, Tokens: prompt=165, completion=70, total=235 2026-01-11 13:21:54,256 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 4.19秒 2026-01-11 13:22:31,039 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 苹果公司 2026-01-11 13:22:31,173 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.0-flash 进行股票搜索 2026-01-11 13:22:31,174 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 13:22:34,945 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 13:22:35,049 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 3.88秒, Tokens: prompt=164, completion=41, total=205 2026-01-11 13:22:35,050 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 4.01秒 2026-01-11 13:27:04,387 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 英伟达 2026-01-11 13:27:04,393 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.0-flash 进行股票搜索 2026-01-11 13:27:04,399 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 13:27:07,007 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 13:27:07,019 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 2.63秒, Tokens: prompt=165, completion=47, total=212 2026-01-11 13:27:07,019 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 2.63秒 2026-01-11 14:35:52,113 - app.main - INFO - 🔍 [搜索] 开始搜索股票: app 2026-01-11 14:35:52,139 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-11 14:35:52,153 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 14:35:56,588 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 14:35:56,611 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 4.47秒, Tokens: prompt=164, completion=68, total=232 2026-01-11 14:35:56,613 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 4.49秒 2026-01-11 14:36:08,928 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 14:36:12,521 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 14:36:16,223 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 14:36:16,253 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 14:36:16,743 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 14:36:16,745 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=数据源连接成功, Progress=5% 2026-01-11 14:36:20,091 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=正在连接 Bloomberg 终端并同步所有数据(Basic, Currency, Price)..., Progress=10% 2026-01-11 14:36:23,298 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: APP US Equity 2026-01-11 14:36:23,365 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 14:36:25,752 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 14:36:26,545 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 14:36:26,546 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 14:36:26,546 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 14:36:27,660 - app.clients.bloomberg_client - INFO - ✅ Parsed 156 items from remote. 2026-01-11 14:36:49,193 - app.clients.bloomberg_client - INFO - ✅ Saved 156 records to database. 2026-01-11 14:36:49,195 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 14:36:49,887 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 14:36:49,887 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 14:36:50,445 - app.clients.bloomberg_client - INFO - ✅ Parsed 10 items from remote. 2026-01-11 14:36:53,854 - app.clients.bloomberg_client - INFO - ✅ Saved 10 records to database. 2026-01-11 14:36:55,264 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 14:36:55,265 - app.clients.bloomberg_client - INFO - ✅ Completed processing for APP US Equity 2026-01-11 14:36:57,582 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=Bloomberg 数据同步完成,正在生成视图..., Progress=60% 2026-01-11 14:36:58,656 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=正在生成资产负债表..., Progress=65% 2026-01-11 14:37:00,022 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: APP US Equity 2026-01-11 14:37:00,222 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 14:37:01,201 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 14:37:02,336 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 14:37:02,336 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 14:37:02,337 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 14:37:03,150 - app.clients.bloomberg_client - INFO - ✅ Parsed 156 items from remote. 2026-01-11 14:37:22,024 - app.clients.bloomberg_client - INFO - ✅ Saved 156 records to database. 2026-01-11 14:37:22,035 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 14:37:22,566 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 14:37:22,566 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 14:37:23,111 - app.clients.bloomberg_client - INFO - ✅ Parsed 10 items from remote. 2026-01-11 14:37:24,952 - app.clients.bloomberg_client - INFO - ✅ Saved 10 records to database. 2026-01-11 14:37:27,495 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 14:37:27,497 - app.clients.bloomberg_client - INFO - ✅ Completed processing for APP US Equity 2026-01-11 14:37:28,899 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=资产负债表获取完成 (6行), Progress=70% 2026-01-11 14:37:30,140 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=正在生成现金流量表..., Progress=75% 2026-01-11 14:37:31,015 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: APP US Equity 2026-01-11 14:37:31,076 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 14:37:32,107 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 14:37:33,104 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 14:37:33,105 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 14:37:33,105 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 14:37:34,185 - app.clients.bloomberg_client - INFO - ✅ Parsed 156 items from remote. 2026-01-11 14:37:51,392 - app.clients.bloomberg_client - INFO - ✅ Saved 156 records to database. 2026-01-11 14:37:51,399 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 14:37:52,815 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 14:37:52,815 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 14:37:53,476 - app.clients.bloomberg_client - INFO - ✅ Parsed 10 items from remote. 2026-01-11 14:37:55,159 - app.clients.bloomberg_client - INFO - ✅ Saved 10 records to database. 2026-01-11 14:37:57,264 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 14:37:57,265 - app.clients.bloomberg_client - INFO - ✅ Completed processing for APP US Equity 2026-01-11 14:37:58,805 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=现金流量表获取完成 (6行), Progress=80% 2026-01-11 14:38:00,007 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=正在生成市场指标..., Progress=85% 2026-01-11 14:38:01,061 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: APP US Equity 2026-01-11 14:38:01,543 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 14:38:02,547 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 14:38:03,888 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 14:38:03,888 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 14:38:03,889 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 14:38:04,534 - app.clients.bloomberg_client - INFO - ✅ Parsed 156 items from remote. 2026-01-11 14:38:23,652 - app.clients.bloomberg_client - INFO - ✅ Saved 156 records to database. 2026-01-11 14:38:23,653 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 14:38:24,442 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 14:38:24,442 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 14:38:24,971 - app.clients.bloomberg_client - INFO - ✅ Parsed 10 items from remote. 2026-01-11 14:38:27,691 - app.clients.bloomberg_client - INFO - ✅ Saved 10 records to database. 2026-01-11 14:38:29,012 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 14:38:29,013 - app.clients.bloomberg_client - INFO - ✅ Completed processing for APP US Equity 2026-01-11 14:38:30,484 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=市场指标获取完成, Progress=90% 2026-01-11 14:38:31,595 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=正在获取分红数据..., Progress=87% 2026-01-11 14:38:32,315 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: APP US Equity 2026-01-11 14:38:32,603 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 14:38:33,597 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 14:38:34,575 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 14:38:34,575 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 14:38:34,576 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 14:38:35,248 - app.clients.bloomberg_client - INFO - ✅ Parsed 156 items from remote. 2026-01-11 14:38:54,723 - app.clients.bloomberg_client - INFO - ✅ Saved 156 records to database. 2026-01-11 14:38:54,724 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 14:38:55,410 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 14:38:55,410 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 14:38:56,350 - app.clients.bloomberg_client - INFO - ✅ Parsed 10 items from remote. 2026-01-11 14:39:01,031 - app.clients.bloomberg_client - INFO - ✅ Saved 10 records to database. 2026-01-11 14:39:05,447 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 14:39:05,448 - app.clients.bloomberg_client - INFO - ✅ Completed processing for APP US Equity 2026-01-11 14:39:07,601 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: APP US Equity 2026-01-11 14:39:07,661 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 14:39:08,705 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 14:39:10,856 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 14:39:10,856 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 14:39:10,856 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 14:39:11,769 - app.clients.bloomberg_client - INFO - ✅ Parsed 156 items from remote. 2026-01-11 14:39:33,605 - app.clients.bloomberg_client - INFO - ✅ Saved 156 records to database. 2026-01-11 14:39:33,607 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 14:39:34,183 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 14:39:34,183 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 14:39:35,123 - app.clients.bloomberg_client - INFO - ✅ Parsed 10 items from remote. 2026-01-11 14:39:36,722 - app.clients.bloomberg_client - INFO - ✅ Saved 10 records to database. 2026-01-11 14:39:37,396 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 14:39:37,396 - app.clients.bloomberg_client - INFO - ✅ Completed processing for APP US Equity 2026-01-11 14:39:38,584 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=正在获取回购数据..., Progress=90% 2026-01-11 14:39:44,103 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: APP US Equity 2026-01-11 14:39:44,166 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 14:39:45,279 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 14:39:47,917 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 14:39:47,923 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 14:39:47,923 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 14:39:48,876 - app.clients.bloomberg_client - INFO - ✅ Parsed 156 items from remote. 2026-01-11 14:40:09,105 - app.clients.bloomberg_client - INFO - ✅ Saved 156 records to database. 2026-01-11 14:40:09,108 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 14:40:10,071 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 14:40:10,071 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 14:40:10,705 - app.clients.bloomberg_client - INFO - ✅ Parsed 10 items from remote. 2026-01-11 14:40:12,293 - app.clients.bloomberg_client - INFO - ✅ Saved 10 records to database. 2026-01-11 14:40:13,368 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 14:40:13,368 - app.clients.bloomberg_client - INFO - ✅ Completed processing for APP US Equity 2026-01-11 14:40:14,361 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=正在获取员工数据..., Progress=93% 2026-01-11 14:40:14,916 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: APP US Equity 2026-01-11 14:40:14,977 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 14:40:16,037 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 14:40:17,021 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 14:40:17,021 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 14:40:17,021 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 14:40:18,635 - app.clients.bloomberg_client - INFO - ✅ Parsed 156 items from remote. 2026-01-11 14:40:42,412 - app.clients.bloomberg_client - INFO - ✅ Saved 156 records to database. 2026-01-11 14:40:42,413 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 14:40:43,424 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 14:40:43,424 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 14:40:44,012 - app.clients.bloomberg_client - INFO - ✅ Parsed 10 items from remote. 2026-01-11 14:40:47,867 - app.clients.bloomberg_client - INFO - ✅ Saved 10 records to database. 2026-01-11 14:40:48,962 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 14:40:48,963 - app.clients.bloomberg_client - INFO - ✅ Completed processing for APP US Equity 2026-01-11 14:40:49,624 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=正在处理统计信息..., Progress=96% 2026-01-11 14:40:50,686 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=31, Msg=数据获取完成, Progress=100% 2026-01-11 14:42:02,620 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 苹果公司 2026-01-11 14:42:02,688 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-11 14:42:02,688 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 14:42:06,767 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 14:42:06,779 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 4.09秒, Tokens: prompt=165, completion=65, total=230 2026-01-11 14:42:06,780 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 4.16秒 2026-01-11 14:42:17,711 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 14:42:18,627 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 14:42:19,175 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 14:42:19,210 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 14:42:19,438 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 14:42:19,438 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=数据源连接成功, Progress=5% 2026-01-11 14:42:20,963 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=正在连接 Bloomberg 终端并同步所有数据(Basic, Currency, Price)..., Progress=10% 2026-01-11 14:42:21,645 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 14:42:21,919 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 14:42:22,888 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 14:42:23,797 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 14:42:23,798 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 14:42:23,798 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 14:42:24,535 - app.clients.bloomberg_client - INFO - ✅ Parsed 220 items from remote. 2026-01-11 14:42:50,707 - app.clients.bloomberg_client - INFO - ✅ Saved 220 records to database. 2026-01-11 14:42:50,716 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 14:42:51,483 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 14:42:51,485 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 14:42:52,126 - app.clients.bloomberg_client - INFO - ✅ Parsed 20 items from remote. 2026-01-11 14:42:55,226 - app.clients.bloomberg_client - INFO - ✅ Saved 20 records to database. 2026-01-11 14:42:56,276 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 14:42:56,277 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 14:42:57,035 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=Bloomberg 数据同步完成,正在生成视图..., Progress=60% 2026-01-11 14:42:58,402 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=正在生成资产负债表..., Progress=65% 2026-01-11 14:43:00,102 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=资产负债表获取完成 (10行), Progress=70% 2026-01-11 14:43:00,715 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=正在生成现金流量表..., Progress=75% 2026-01-11 14:43:01,893 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=现金流量表获取完成 (10行), Progress=80% 2026-01-11 14:43:02,235 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=正在生成市场指标..., Progress=85% 2026-01-11 14:43:04,877 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=市场指标获取完成, Progress=90% 2026-01-11 14:43:06,121 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=正在获取分红数据..., Progress=87% 2026-01-11 14:43:09,231 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=正在获取回购数据..., Progress=90% 2026-01-11 14:43:10,715 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=正在获取员工数据..., Progress=93% 2026-01-11 14:43:12,311 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=正在处理统计信息..., Progress=96% 2026-01-11 14:43:12,927 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=32, Msg=数据获取完成, Progress=100% 2026-01-11 14:45:28,629 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 14:45:29,646 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 14:45:30,071 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 14:45:30,114 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 14:45:30,324 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 14:45:30,324 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=数据源连接成功, Progress=5% 2026-01-11 14:45:30,847 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=正在连接 Bloomberg 终端并同步所有数据(Basic, Currency, Price)..., Progress=10% 2026-01-11 14:45:31,359 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 14:45:31,396 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 14:45:32,470 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 14:45:35,982 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 14:45:35,983 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 14:45:35,983 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 14:45:37,591 - app.clients.bloomberg_client - INFO - ✅ Parsed 220 items from remote. 2026-01-11 14:46:06,627 - app.clients.bloomberg_client - INFO - ✅ Saved 220 records to database. 2026-01-11 14:46:06,628 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 14:46:07,149 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 14:46:07,150 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 14:46:07,667 - app.clients.bloomberg_client - INFO - ✅ Parsed 20 items from remote. 2026-01-11 14:46:14,403 - app.clients.bloomberg_client - INFO - ✅ Saved 20 records to database. 2026-01-11 14:46:15,266 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 14:46:15,267 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 14:46:16,077 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=Bloomberg 数据同步完成,正在生成视图..., Progress=60% 2026-01-11 14:46:17,627 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=正在生成资产负债表..., Progress=65% 2026-01-11 14:46:18,348 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=资产负债表获取完成 (10行), Progress=70% 2026-01-11 14:46:19,802 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=正在生成现金流量表..., Progress=75% 2026-01-11 14:46:22,782 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=现金流量表获取完成 (10行), Progress=80% 2026-01-11 14:46:23,773 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=正在生成市场指标..., Progress=85% 2026-01-11 14:46:26,155 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=市场指标获取完成, Progress=90% 2026-01-11 14:46:27,039 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=正在获取分红数据..., Progress=87% 2026-01-11 14:46:30,344 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=正在获取回购数据..., Progress=90% 2026-01-11 14:46:32,322 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=正在获取员工数据..., Progress=93% 2026-01-11 14:46:34,459 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=正在处理统计信息..., Progress=96% 2026-01-11 14:46:35,283 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=33, Msg=数据获取完成, Progress=100% 2026-01-11 14:56:43,321 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 苹果 2026-01-11 14:56:43,603 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-11 14:56:43,609 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 14:56:48,167 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 14:56:48,193 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 4.59秒, Tokens: prompt=164, completion=70, total=234 2026-01-11 14:56:48,194 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 4.87秒 2026-01-11 15:00:40,407 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 苹果 2026-01-11 15:00:40,494 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-11 15:00:40,496 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 15:00:44,814 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 15:00:44,823 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 4.33秒, Tokens: prompt=164, completion=46, total=210 2026-01-11 15:00:44,823 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 4.42秒 2026-01-11 15:06:28,055 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 苹果 2026-01-11 15:06:28,067 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-11 15:06:28,078 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 15:06:33,911 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 15:06:33,931 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 5.86秒, Tokens: prompt=164, completion=62, total=226 2026-01-11 15:06:33,931 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 5.87秒 2026-01-11 15:15:58,065 - app.services.data_fetcher_service - ERROR - Error fetching Bloomberg data from stockcard: cannot access local variable 'text' where it is not associated with a value Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/services/data_fetcher_service.py", line 483, in get_financial_data_from_db check_sql = text("SELECT 1 FROM stockcard WHERE Company_code = :code LIMIT 1") ^^^^ UnboundLocalError: cannot access local variable 'text' where it is not associated with a value 2026-01-11 15:17:56,819 - app.services.data_fetcher_service - ERROR - Error fetching Bloomberg data from stockcard: (sqlalchemy.dialects.postgresql.asyncpg.ProgrammingError) : column "period_end_date" does not exist [SQL: SELECT indicator, value, period_end_date, value_date FROM stockcard WHERE Company_code = $1 ] [parameters: ('AAPL US Equity',)] (Background on this error at: https://sqlalche.me/e/20/f405) Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 526, in _prepare_and_execute prepared_stmt, attributes = await adapt_connection._prepare( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ operation, self._invalidate_schema_cache_asof ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 773, in _prepare prepared_stmt = await self._connection.prepare( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ operation, name=self._prepared_statement_name_func() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/asyncpg/connection.py", line 638, in prepare return await self._prepare( ^^^^^^^^^^^^^^^^^^^^ ...<4 lines>... ) ^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/asyncpg/connection.py", line 657, in _prepare stmt = await self._get_statement( ^^^^^^^^^^^^^^^^^^^^^^^^^^ ...<5 lines>... ) ^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/asyncpg/connection.py", line 443, in _get_statement statement = await self._protocol.prepare( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ...<5 lines>... ) ^ File "asyncpg/protocol/protocol.pyx", line 165, in prepare asyncpg.exceptions.UndefinedColumnError: column "period_end_date" does not exist The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context self.dialect.do_execute( ~~~~~~~~~~~~~~~~~~~~~~~^ cursor, str_statement, effective_parameters, context ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/engine/default.py", line 952, in do_execute cursor.execute(statement, parameters) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 585, in execute self._adapt_connection.await_( ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ self._prepare_and_execute(operation, parameters) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 132, in await_only return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 196, in greenlet_spawn value = await result ^^^^^^^^^^^^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 563, in _prepare_and_execute self._handle_exception(error) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 513, in _handle_exception self._adapt_connection._handle_exception(error) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 797, in _handle_exception raise translated_error from error sqlalchemy.dialects.postgresql.asyncpg.AsyncAdapt_asyncpg_dbapi.ProgrammingError: : column "period_end_date" does not exist The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/Users/xucheng/git.qubit.ltd/FA3/backend/app/services/data_fetcher_service.py", line 506, in get_financial_data_from_db result = await db.execute(query, {"code": target_code}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/ext/asyncio/session.py", line 449, in execute result = await greenlet_spawn( ^^^^^^^^^^^^^^^^^^^^^ ...<6 lines>... ) ^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 201, in greenlet_spawn result = context.throw(*sys.exc_info()) File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/orm/session.py", line 2351, in execute return self._execute_internal( ~~~~~~~~~~~~~~~~~~~~~~^ statement, ^^^^^^^^^^ ...<4 lines>... _add_event=_add_event, ^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/orm/session.py", line 2258, in _execute_internal result = conn.execute( statement, params or {}, execution_options=execution_options ) File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/engine/base.py", line 1419, in execute return meth( self, distilled_parameters, execution_options or NO_OPTIONS, ) File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/sql/elements.py", line 527, in _execute_on_connection return connection._execute_clauseelement( ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ self, distilled_params, execution_options ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/engine/base.py", line 1641, in _execute_clauseelement ret = self._execute_context( dialect, ...<8 lines>... cache_hit=cache_hit, ) File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/engine/base.py", line 1846, in _execute_context return self._exec_single_context( ~~~~~~~~~~~~~~~~~~~~~~~~~^ dialect, context, statement, parameters ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/engine/base.py", line 1986, in _exec_single_context self._handle_dbapi_exception( ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ e, str_statement, effective_parameters, cursor, context ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/engine/base.py", line 2363, in _handle_dbapi_exception raise sqlalchemy_exception.with_traceback(exc_info[2]) from e File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context self.dialect.do_execute( ~~~~~~~~~~~~~~~~~~~~~~~^ cursor, str_statement, effective_parameters, context ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/engine/default.py", line 952, in do_execute cursor.execute(statement, parameters) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 585, in execute self._adapt_connection.await_( ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ self._prepare_and_execute(operation, parameters) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 132, in await_only return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 196, in greenlet_spawn value = await result ^^^^^^^^^^^^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 563, in _prepare_and_execute self._handle_exception(error) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 513, in _handle_exception self._adapt_connection._handle_exception(error) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^ File "/Users/xucheng/git.qubit.ltd/FA3/.venv/lib/python3.13/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 797, in _handle_exception raise translated_error from error sqlalchemy.exc.ProgrammingError: (sqlalchemy.dialects.postgresql.asyncpg.ProgrammingError) : column "period_end_date" does not exist [SQL: SELECT indicator, value, period_end_date, value_date FROM stockcard WHERE Company_code = $1 ] [parameters: ('AAPL US Equity',)] (Background on this error at: https://sqlalche.me/e/20/f405) 2026-01-11 15:43:59,728 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=34, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 15:44:01,099 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=34, Msg=数据获取失败: expected an indented block after function definition on line 124 (bloomberg_fetcher.py, line 125), Progress=0% 2026-01-11 15:44:39,793 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 苹果 2026-01-11 15:44:39,874 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-11 15:44:39,875 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 15:44:44,181 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 15:44:44,189 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 4.32秒, Tokens: prompt=164, completion=63, total=227 2026-01-11 15:44:44,189 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 4.40秒 2026-01-11 15:59:11,029 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=35, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 15:59:12,862 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 15:59:13,130 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 15:59:13,159 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 15:59:13,404 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 15:59:13,404 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=35, Msg=数据源连接成功, Progress=10% 2026-01-11 15:59:16,017 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=35, Msg=正在连接 Bloomberg 终端并同步所有数据..., Progress=20% 2026-01-11 15:59:18,664 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 15:59:19,197 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 15:59:20,197 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 15:59:26,068 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 15:59:26,070 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 15:59:26,070 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 15:59:29,612 - app.clients.bloomberg_client - INFO - ✅ Parsed 220 items from remote. 2026-01-11 15:59:57,006 - app.clients.bloomberg_client - INFO - ✅ Saved 220 records to database. 2026-01-11 15:59:57,011 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 16:00:00,122 - app.clients.bloomberg_client - INFO - ✅ Parsed 378 items from remote. 2026-01-11 16:00:46,388 - app.clients.bloomberg_client - INFO - ✅ Saved 378 records to database. 2026-01-11 16:00:46,396 - app.clients.bloomberg_client - INFO - Fetching Price Data... 2026-01-11 16:00:47,361 - app.clients.bloomberg_client - INFO - ✅ Parsed 20 items from remote. 2026-01-11 16:00:49,667 - app.clients.bloomberg_client - INFO - ✅ Saved 20 records to database. 2026-01-11 16:00:52,371 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 16:00:52,372 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 16:00:52,374 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=35, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-11 17:49:08,337 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=36, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 17:49:11,579 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=36, Msg=数据获取失败: unexpected indent (bloomberg_client.py, line 742), Progress=0% 2026-01-11 17:49:31,857 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=37, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 17:49:32,874 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=37, Msg=数据获取失败: unexpected indent (bloomberg_client.py, line 742), Progress=0% 2026-01-11 17:52:55,229 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=38, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 17:52:57,114 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 17:52:57,377 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 17:52:57,567 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 17:52:57,627 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 17:52:57,627 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=38, Msg=数据源连接成功, Progress=10% 2026-01-11 17:52:58,668 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=38, Msg=正在连接 Bloomberg 终端并同步所有数据..., Progress=20% 2026-01-11 17:53:00,274 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 17:53:00,324 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 17:53:01,594 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 17:53:06,441 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 17:53:06,442 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 17:53:06,442 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 17:53:06,442 - app.clients.bloomberg_client - ERROR - Fetch failed for AAPL US Equity: Invalid format specifier ' company, "update_date": "2026-01-11", "currency": curr, "indicator": indicator_name, "value": val_str, "value_date": date_str ' for object of type 'str' 2026-01-11 17:53:06,443 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=38, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-11 17:56:04,443 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=39, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 17:56:06,275 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 17:56:06,974 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 17:56:07,498 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 17:56:09,407 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 17:56:09,407 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=39, Msg=数据源连接成功, Progress=10% 2026-01-11 17:56:11,858 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=39, Msg=正在连接 Bloomberg 终端并同步所有数据..., Progress=20% 2026-01-11 17:56:14,721 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 17:56:14,760 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 17:56:15,781 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 17:56:17,373 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 17:56:17,373 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 17:56:17,373 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 17:56:17,937 - app.clients.bloomberg_client - ERROR - ❌ Remote Execution Error: invalid syntax (2838341427.py, line 62) 2026-01-11 17:56:17,938 - app.clients.bloomberg_client - ERROR - Cell In[192], line 62  except Exception as e: ^ SyntaxError: invalid syntax 2026-01-11 17:56:17,954 - app.clients.bloomberg_client - ERROR - Fetch failed for AAPL US Equity: Remote Code Execution Failed: invalid syntax (2838341427.py, line 62) 2026-01-11 17:56:17,954 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=39, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-11 17:57:37,972 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=40, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 17:57:40,026 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 17:57:42,370 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 17:57:42,573 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 17:57:43,092 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 17:57:43,096 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=40, Msg=数据源连接成功, Progress=10% 2026-01-11 17:57:44,874 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=40, Msg=正在连接 Bloomberg 终端并同步所有数据..., Progress=20% 2026-01-11 17:57:46,326 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: AAPL US Equity 2026-01-11 17:57:46,397 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 17:57:47,318 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 17:57:49,396 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 17:57:49,397 - app.clients.bloomberg_client - INFO - Using currency: USD 2026-01-11 17:57:49,397 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 17:57:51,826 - app.clients.bloomberg_client - INFO - ✅ Parsed 220 items from remote. 2026-01-11 17:58:34,861 - app.clients.bloomberg_client - INFO - ✅ Saved 220 records to database. 2026-01-11 17:58:34,872 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 17:58:36,038 - app.clients.bloomberg_client - INFO - ✅ Parsed 378 items from remote. 2026-01-11 17:59:35,616 - app.clients.bloomberg_client - INFO - ✅ Saved 378 records to database. 2026-01-11 17:59:35,701 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-11 17:59:35,712 - app.clients.bloomberg_client - INFO - Found 10 revenue reporting dates. Fetching aligned price data... 2026-01-11 17:59:40,696 - app.clients.bloomberg_client - INFO - ✅ Parsed 20 items from remote. 2026-01-11 17:59:44,609 - app.clients.bloomberg_client - INFO - ✅ Saved 20 records to database. 2026-01-11 17:59:46,043 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 17:59:46,044 - app.clients.bloomberg_client - INFO - ✅ Completed processing for AAPL US Equity 2026-01-11 17:59:46,047 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=40, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-11 18:22:06,142 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 麒麟 2026-01-11 18:22:06,565 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-11 18:22:06,574 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 18:22:15,068 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 18:22:15,229 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 8.66秒, Tokens: prompt=165, completion=162, total=327 2026-01-11 18:22:15,231 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 3 个结果, 总耗时: 9.08秒 2026-01-11 18:22:23,454 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=41, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 18:22:25,534 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 18:22:27,266 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 18:22:27,310 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 18:22:27,375 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 18:22:27,376 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=41, Msg=数据源连接成功, Progress=10% 2026-01-11 18:22:29,955 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=41, Msg=正在连接 Bloomberg 终端并同步所有数据..., Progress=20% 2026-01-11 18:22:32,699 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-11 18:22:32,737 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 18:22:34,134 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 18:22:37,169 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 18:22:37,170 - app.clients.bloomberg_client - INFO - Using currency: JPY 2026-01-11 18:22:37,170 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 18:22:37,862 - app.clients.bloomberg_client - INFO - ✅ Parsed 215 items from remote. 2026-01-11 18:23:15,063 - app.clients.bloomberg_client - INFO - ✅ Saved 215 records to database. 2026-01-11 18:23:15,113 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 18:23:27,993 - app.clients.bloomberg_client - INFO - ✅ Parsed 260 items from remote. 2026-01-11 18:24:16,287 - app.clients.bloomberg_client - INFO - ✅ Saved 260 records to database. 2026-01-11 18:24:16,318 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-11 18:24:16,320 - app.clients.bloomberg_client - INFO - Found 9 revenue reporting dates. Fetching aligned price data... 2026-01-11 18:24:20,471 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-11 18:24:28,529 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-11 18:24:34,022 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 18:24:34,037 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-11 18:24:34,045 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=41, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-11 19:12:33,462 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 西贡啤酒 2026-01-11 19:12:33,722 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-11 19:12:33,737 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 19:12:40,170 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 19:12:40,201 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 6.48秒, Tokens: prompt=166, completion=77, total=243 2026-01-11 19:12:40,202 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 6.74秒 2026-01-11 19:12:48,354 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=42, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 19:12:50,232 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 19:12:50,649 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 19:12:50,679 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 19:12:50,740 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 19:12:50,740 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=42, Msg=数据源连接成功, Progress=10% 2026-01-11 19:12:51,527 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=42, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-11 19:12:52,476 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: SAB VN Equity 2026-01-11 19:12:52,478 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=42, Msg=Starting Bloomberg session..., Progress=20% 2026-01-11 19:12:53,429 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 19:12:53,430 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=42, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-11 19:12:55,239 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 19:12:57,415 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 19:12:57,416 - app.clients.bloomberg_client - INFO - Using currency: VND 2026-01-11 19:12:57,416 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 19:12:57,416 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=42, Msg=正在获取货币指标 (VND)..., Progress=41% 2026-01-11 19:12:59,610 - app.clients.bloomberg_client - INFO - ✅ Parsed 225 items from remote. 2026-01-11 19:13:24,646 - app.clients.bloomberg_client - INFO - ✅ Saved 225 records to database. 2026-01-11 19:13:24,653 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 19:13:24,653 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=42, Msg=正在获取非货币指标..., Progress=55% 2026-01-11 19:13:25,924 - app.clients.bloomberg_client - INFO - ✅ Parsed 249 items from remote. 2026-01-11 19:13:57,203 - app.clients.bloomberg_client - INFO - ✅ Saved 249 records to database. 2026-01-11 19:13:57,213 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-11 19:13:57,214 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=42, Msg=正在获取价格指标..., Progress=69% 2026-01-11 19:13:58,125 - app.clients.bloomberg_client - INFO - Found 9 revenue reporting dates. Fetching aligned price data... 2026-01-11 19:14:02,007 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-11 19:14:05,956 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-11 19:14:05,962 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=42, Msg=Finalizing data..., Progress=82% 2026-01-11 19:14:09,370 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 19:14:09,372 - app.clients.bloomberg_client - INFO - ✅ Completed processing for SAB VN Equity 2026-01-11 19:14:09,372 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=42, Msg=Bloomberg data sync complete, Progress=90% 2026-01-11 19:14:10,483 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=42, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-11 19:21:37,522 - app.main - INFO - 🔍 [搜索] 开始搜索股票: SAB 2026-01-11 19:21:37,544 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-11 19:21:37,561 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 19:21:47,453 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 19:21:47,481 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 9.94秒, Tokens: prompt=165, completion=243, total=408 2026-01-11 19:21:47,481 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 5 个结果, 总耗时: 9.95秒 2026-01-11 19:22:04,930 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 西贡啤酒 2026-01-11 19:22:04,931 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-11 19:22:04,931 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 19:22:08,982 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 19:22:08,987 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 4.06秒, Tokens: prompt=166, completion=83, total=249 2026-01-11 19:22:08,988 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 4.06秒 2026-01-11 19:53:39,156 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=43, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 19:53:42,089 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 19:53:43,025 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 19:53:43,284 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 19:53:43,706 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 19:53:43,707 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=43, Msg=数据源连接成功, Progress=10% 2026-01-11 19:53:44,492 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=43, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-11 19:53:45,349 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: SAB VN Equity 2026-01-11 19:53:45,349 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=43, Msg=Starting Bloomberg session..., Progress=20% 2026-01-11 19:53:47,085 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 19:53:47,085 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=43, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-11 19:53:49,516 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 19:53:50,682 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 19:53:50,683 - app.clients.bloomberg_client - INFO - Using currency: VND 2026-01-11 19:53:50,683 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 19:53:50,683 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=43, Msg=正在获取货币指标 (VND)..., Progress=41% 2026-01-11 19:53:52,442 - app.clients.bloomberg_client - INFO - ✅ Parsed 275 items from remote. 2026-01-11 19:54:24,667 - app.clients.bloomberg_client - INFO - ✅ Saved 275 records to database. 2026-01-11 19:54:24,669 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 19:54:24,669 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=43, Msg=正在获取非货币指标..., Progress=55% 2026-01-11 19:54:28,450 - app.clients.bloomberg_client - INFO - ✅ Parsed 290 items from remote. 2026-01-11 19:55:01,793 - app.clients.bloomberg_client - INFO - ✅ Saved 290 records to database. 2026-01-11 19:55:01,796 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-11 19:55:01,796 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=43, Msg=正在获取价格指标..., Progress=69% 2026-01-11 19:55:02,515 - app.clients.bloomberg_client - INFO - Found 11 revenue reporting dates. Fetching aligned price data... 2026-01-11 19:55:07,831 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-11 19:55:10,705 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-11 19:55:10,706 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=43, Msg=Finalizing data..., Progress=82% 2026-01-11 19:55:13,396 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 19:55:13,397 - app.clients.bloomberg_client - INFO - ✅ Completed processing for SAB VN Equity 2026-01-11 19:55:13,397 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=43, Msg=Bloomberg data sync complete, Progress=90% 2026-01-11 19:55:13,724 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=43, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-11 20:06:54,509 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 马山 2026-01-11 20:06:54,803 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.0-flash-exp 进行股票搜索 2026-01-11 20:06:54,810 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 20:07:00,658 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash-exp:generateContent "HTTP/1.1 200 OK" 2026-01-11 20:07:00,686 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 5.88秒, Tokens: prompt=164, completion=454, total=618 2026-01-11 20:07:00,686 - app.main - ERROR - ❌ [搜索] 搜索失败: Expecting value: line 1 column 1 (char 0), 耗时: 6.17秒 2026-01-11 20:07:12,799 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 迈瑞 2026-01-11 20:07:12,802 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.0-flash-exp 进行股票搜索 2026-01-11 20:07:12,803 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 20:07:16,206 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash-exp:generateContent "HTTP/1.1 200 OK" 2026-01-11 20:07:16,273 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 3.47秒, Tokens: prompt=164, completion=51, total=215 2026-01-11 20:07:16,273 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 3.47秒 2026-01-11 20:07:23,937 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=44, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 20:07:25,199 - app.services.data_fetcher_service - INFO - 📝 [数据获取] 股票代码格式化: 300760 -> 300760.SZ 2026-01-11 20:07:25,202 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=44, Msg=数据获取失败: Data source 'Tushare' not supported in backend., Progress=0% 2026-01-11 20:08:05,704 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 南微医学 2026-01-11 20:08:05,709 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.0-flash-exp 进行股票搜索 2026-01-11 20:08:05,714 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 20:08:08,410 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash-exp:generateContent "HTTP/1.1 200 OK" 2026-01-11 20:08:08,416 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 2.71秒, Tokens: prompt=165, completion=47, total=212 2026-01-11 20:08:08,417 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 2.71秒 2026-01-11 20:12:35,247 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 京东方 2026-01-11 20:12:35,259 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-11 20:12:35,263 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-11 20:12:41,922 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-11 20:12:41,940 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 6.68秒, Tokens: prompt=165, completion=118, total=283 2026-01-11 20:12:41,940 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 2 个结果, 总耗时: 6.69秒 2026-01-11 20:12:46,388 - app.services.bloomberg_service - WARNING - No Bloomberg data found for symbol: 688029 2026-01-11 20:12:46,999 - app.services.bloomberg_service - WARNING - No Bloomberg data found for symbol: 688029 2026-01-11 20:12:49,015 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=45, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 20:12:49,938 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 20:12:50,218 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 20:12:50,255 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 20:12:50,478 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 20:12:50,478 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=45, Msg=数据源连接成功, Progress=10% 2026-01-11 20:12:51,598 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=45, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-11 20:12:53,887 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 000725 CN Equity 2026-01-11 20:12:53,888 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=45, Msg=Starting Bloomberg session..., Progress=20% 2026-01-11 20:12:54,806 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 20:12:54,824 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=45, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-11 20:12:57,924 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 20:12:59,486 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 20:12:59,487 - app.clients.bloomberg_client - INFO - Using currency: CNY 2026-01-11 20:12:59,487 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 20:12:59,487 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=45, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-11 20:13:00,726 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 20:13:00,726 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 20:13:00,726 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=45, Msg=正在获取非货币指标..., Progress=55% 2026-01-11 20:13:02,593 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 20:13:02,593 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-11 20:13:02,593 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=45, Msg=正在获取价格指标..., Progress=69% 2026-01-11 20:13:05,307 - app.clients.bloomberg_client - WARNING - No revenue dates found. Falling back to yearly price fetch. 2026-01-11 20:13:06,625 - app.clients.bloomberg_client - INFO - ✅ Parsed 1 items from remote. 2026-01-11 20:13:07,542 - app.clients.bloomberg_client - INFO - ✅ Saved 1 records to database. 2026-01-11 20:13:07,543 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=45, Msg=Finalizing data..., Progress=82% 2026-01-11 20:13:09,190 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 20:13:09,190 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 000725 CN Equity 2026-01-11 20:13:09,190 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=45, Msg=Bloomberg data sync complete, Progress=90% 2026-01-11 20:13:09,845 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=45, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-11 20:16:53,460 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=46, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 20:16:54,913 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 20:16:55,824 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 20:16:56,029 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 20:16:56,093 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 20:16:56,093 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=46, Msg=数据源连接成功, Progress=10% 2026-01-11 20:16:57,845 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=46, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-11 20:16:59,259 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 000725 CN Equity 2026-01-11 20:16:59,259 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=46, Msg=Starting Bloomberg session..., Progress=20% 2026-01-11 20:17:04,282 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 20:17:04,283 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=46, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-11 20:17:07,199 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 20:17:10,359 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 20:17:10,360 - app.clients.bloomberg_client - INFO - Using currency: CNY 2026-01-11 20:17:10,360 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 20:17:10,360 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=46, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-11 20:17:12,977 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 20:17:12,978 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 20:17:12,978 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=46, Msg=正在获取非货币指标..., Progress=55% 2026-01-11 20:17:14,860 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-11 20:17:14,860 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-11 20:17:14,860 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=46, Msg=正在获取价格指标..., Progress=69% 2026-01-11 20:17:15,741 - app.clients.bloomberg_client - WARNING - No revenue dates found. Falling back to yearly price fetch. 2026-01-11 20:17:16,420 - app.clients.bloomberg_client - INFO - ✅ Parsed 1 items from remote. 2026-01-11 20:17:18,827 - app.clients.bloomberg_client - INFO - ✅ Saved 1 records to database. 2026-01-11 20:17:18,828 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=46, Msg=Finalizing data..., Progress=82% 2026-01-11 20:17:20,848 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 20:17:20,849 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 000725 CN Equity 2026-01-11 20:17:20,849 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=46, Msg=Bloomberg data sync complete, Progress=90% 2026-01-11 20:17:21,552 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=46, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-11 20:28:14,645 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=47, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 20:28:15,567 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 20:28:16,647 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 20:28:16,682 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 20:28:16,751 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 20:28:16,751 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=47, Msg=数据源连接成功, Progress=10% 2026-01-11 20:28:17,601 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=47, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-11 20:28:18,043 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 000725 CH Equity 2026-01-11 20:28:18,044 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=47, Msg=Starting Bloomberg session..., Progress=20% 2026-01-11 20:28:20,154 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 20:28:20,155 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=47, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-11 20:28:22,319 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 20:28:24,083 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 20:28:24,083 - app.clients.bloomberg_client - INFO - Using currency: CNY 2026-01-11 20:28:24,083 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 20:28:24,083 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=47, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-11 20:28:26,200 - app.clients.bloomberg_client - INFO - ✅ Parsed 350 items from remote. 2026-01-11 20:29:11,923 - app.clients.bloomberg_client - INFO - ✅ Saved 350 records to database. 2026-01-11 20:29:11,931 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 20:29:11,931 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=47, Msg=正在获取非货币指标..., Progress=55% 2026-01-11 20:30:20,069 - app.clients.bloomberg_client - ERROR - Error receiving WS message: Connection timed out 2026-01-11 20:30:20,070 - app.clients.bloomberg_client - WARNING - ⚠️ No JSON output found in remote response. 2026-01-11 20:30:20,070 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-11 20:30:20,070 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=47, Msg=正在获取价格指标..., Progress=69% 2026-01-11 20:30:21,168 - app.clients.bloomberg_client - INFO - Found 14 revenue reporting dates. Fetching aligned price data... 2026-01-11 20:30:31,156 - app.clients.bloomberg_client - INFO - ✅ Parsed 381 items from remote. 2026-01-11 20:31:23,214 - app.clients.bloomberg_client - INFO - ✅ Saved 381 records to database. 2026-01-11 20:31:23,222 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=47, Msg=Finalizing data..., Progress=82% 2026-01-11 20:31:27,141 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 20:31:27,143 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 000725 CH Equity 2026-01-11 20:31:27,143 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=47, Msg=Bloomberg data sync complete, Progress=90% 2026-01-11 20:31:28,046 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=47, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-11 21:26:47,212 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=48, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 21:26:48,858 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=48, Msg=数据获取失败: invalid syntax (bloomberg_client.py, line 456), Progress=0% 2026-01-11 21:29:14,203 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=49, Msg=正在初始化数据获取..., Progress=0% 2026-01-11 21:29:15,499 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-11 21:29:17,316 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-11 21:29:17,347 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-11 21:29:17,849 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-11 21:29:17,849 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=49, Msg=数据源连接成功, Progress=10% 2026-01-11 21:29:18,166 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=49, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-11 21:29:19,192 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-11 21:29:19,192 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=49, Msg=Starting Bloomberg session..., Progress=20% 2026-01-11 21:29:19,532 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-11 21:29:19,532 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=49, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-11 21:29:23,309 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-11 21:29:24,098 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-11 21:29:24,098 - app.clients.bloomberg_client - INFO - Using currency: JPY 2026-01-11 21:29:24,098 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-11 21:29:24,099 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=49, Msg=正在获取货币指标 (JPY)..., Progress=41% 2026-01-11 21:29:29,127 - app.clients.bloomberg_client - INFO - ✅ Parsed 331 items from remote. 2026-01-11 21:30:02,714 - app.clients.bloomberg_client - INFO - ✅ Saved 331 records to database. 2026-01-11 21:30:02,723 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-11 21:30:02,723 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=49, Msg=正在获取非货币指标..., Progress=55% 2026-01-11 21:30:03,912 - app.clients.bloomberg_client - INFO - ✅ Parsed 382 items from remote. 2026-01-11 21:30:40,420 - app.clients.bloomberg_client - INFO - ✅ Saved 382 records to database. 2026-01-11 21:30:40,427 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-11 21:30:40,427 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=49, Msg=正在获取价格指标..., Progress=69% 2026-01-11 21:30:42,051 - app.clients.bloomberg_client - INFO - Found 14 revenue reporting dates. Fetching aligned price data... 2026-01-11 21:30:48,054 - app.clients.bloomberg_client - INFO - ✅ Parsed 42 items from remote. 2026-01-11 21:30:57,003 - app.clients.bloomberg_client - INFO - ✅ Saved 42 records to database. 2026-01-11 21:30:57,006 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=49, Msg=Finalizing data..., Progress=82% 2026-01-11 21:30:59,001 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-11 21:30:59,004 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-11 21:30:59,004 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=49, Msg=Bloomberg data sync complete, Progress=90% 2026-01-11 21:30:59,770 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=49, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 08:38:48,085 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=50, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 08:38:48,574 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 08:38:48,811 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 08:38:48,841 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 08:38:48,892 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 08:38:48,892 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=50, Msg=数据源连接成功, Progress=10% 2026-01-12 08:38:49,179 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=50, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 08:38:49,424 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 08:38:49,424 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=50, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 08:38:49,723 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 08:38:49,723 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=50, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 08:38:51,005 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 08:38:51,593 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 08:38:51,594 - app.clients.bloomberg_client - INFO - Using auto-detected currency: JPY 2026-01-12 08:38:51,594 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 08:38:51,594 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=50, Msg=正在获取货币指标 (JPY)..., Progress=41% 2026-01-12 08:38:52,587 - app.clients.bloomberg_client - INFO - ✅ Parsed 331 items from remote. 2026-01-12 08:39:02,351 - app.clients.bloomberg_client - INFO - ✅ Saved 331 records to database. 2026-01-12 08:39:02,354 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 08:39:02,354 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=50, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 08:39:03,417 - app.clients.bloomberg_client - INFO - ✅ Parsed 382 items from remote. 2026-01-12 08:39:14,223 - app.clients.bloomberg_client - INFO - ✅ Saved 382 records to database. 2026-01-12 08:39:14,224 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 08:39:14,225 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=50, Msg=正在获取价格指标..., Progress=69% 2026-01-12 08:39:14,707 - app.clients.bloomberg_client - INFO - Found 14 revenue reporting dates. Fetching aligned price data... 2026-01-12 08:39:20,704 - app.clients.bloomberg_client - INFO - ✅ Parsed 42 items from remote. 2026-01-12 08:39:22,410 - app.clients.bloomberg_client - INFO - ✅ Saved 42 records to database. 2026-01-12 08:39:22,411 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=50, Msg=Finalizing data..., Progress=82% 2026-01-12 08:39:22,999 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 08:39:23,000 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-12 08:39:23,000 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=50, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 08:39:23,269 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=50, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 08:39:31,217 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=51, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 08:39:31,485 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 08:39:31,706 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 08:39:31,733 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 08:39:31,785 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 08:39:31,786 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=51, Msg=数据源连接成功, Progress=10% 2026-01-12 08:39:32,035 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=51, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 08:39:32,286 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 08:39:32,286 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=51, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 08:39:32,593 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 08:39:32,593 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=51, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 08:39:33,771 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 08:39:34,217 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 08:39:34,218 - app.clients.bloomberg_client - INFO - Using auto-detected currency: JPY 2026-01-12 08:39:34,218 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 08:39:34,218 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=51, Msg=正在获取货币指标 (JPY)..., Progress=41% 2026-01-12 08:39:35,121 - app.clients.bloomberg_client - INFO - ✅ Parsed 331 items from remote. 2026-01-12 08:39:44,689 - app.clients.bloomberg_client - INFO - ✅ Saved 331 records to database. 2026-01-12 08:39:44,690 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 08:39:44,691 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=51, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 08:39:45,574 - app.clients.bloomberg_client - INFO - ✅ Parsed 382 items from remote. 2026-01-12 08:39:55,843 - app.clients.bloomberg_client - INFO - ✅ Saved 382 records to database. 2026-01-12 08:39:55,845 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 08:39:55,845 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=51, Msg=正在获取价格指标..., Progress=69% 2026-01-12 08:39:56,105 - app.clients.bloomberg_client - INFO - Found 14 revenue reporting dates. Fetching aligned price data... 2026-01-12 08:40:02,124 - app.clients.bloomberg_client - INFO - ✅ Parsed 42 items from remote. 2026-01-12 08:40:03,440 - app.clients.bloomberg_client - INFO - ✅ Saved 42 records to database. 2026-01-12 08:40:03,441 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=51, Msg=Finalizing data..., Progress=82% 2026-01-12 08:40:04,197 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 08:40:04,197 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-12 08:40:04,197 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=51, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 08:40:04,447 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=51, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 08:40:18,684 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=52, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 08:40:18,940 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 08:40:19,174 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 08:40:19,206 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 08:40:19,405 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 08:40:19,406 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=52, Msg=数据源连接成功, Progress=10% 2026-01-12 08:40:19,653 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=52, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 08:40:19,900 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 08:40:19,901 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=52, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 08:40:20,212 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 08:40:20,212 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=52, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 08:40:21,392 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 08:40:21,956 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 08:40:21,956 - app.clients.bloomberg_client - INFO - Using auto-detected currency: JPY 2026-01-12 08:40:21,956 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 08:40:21,957 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=52, Msg=正在获取货币指标 (JPY)..., Progress=41% 2026-01-12 08:40:22,751 - app.clients.bloomberg_client - INFO - ✅ Parsed 331 items from remote. 2026-01-12 08:40:33,054 - app.clients.bloomberg_client - INFO - ✅ Saved 331 records to database. 2026-01-12 08:40:33,056 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 08:40:33,057 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=52, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 08:40:34,013 - app.clients.bloomberg_client - INFO - ✅ Parsed 382 items from remote. 2026-01-12 08:40:45,644 - app.clients.bloomberg_client - INFO - ✅ Saved 382 records to database. 2026-01-12 08:40:45,647 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 08:40:45,647 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=52, Msg=正在获取价格指标..., Progress=69% 2026-01-12 08:40:45,903 - app.clients.bloomberg_client - INFO - Found 14 revenue reporting dates. Fetching aligned price data... 2026-01-12 08:40:51,580 - app.clients.bloomberg_client - INFO - ✅ Parsed 42 items from remote. 2026-01-12 08:40:53,077 - app.clients.bloomberg_client - INFO - ✅ Saved 42 records to database. 2026-01-12 08:40:53,092 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=52, Msg=Finalizing data..., Progress=82% 2026-01-12 08:40:53,882 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 08:40:53,883 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-12 08:40:53,883 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=52, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 08:40:54,126 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=52, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 08:43:24,711 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=53, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 08:43:25,139 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 08:43:25,365 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 08:43:25,393 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 08:43:25,442 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 08:43:25,442 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=53, Msg=数据源连接成功, Progress=10% 2026-01-12 08:43:25,702 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=53, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 08:43:25,971 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 08:43:25,971 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=53, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 08:43:26,469 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 08:43:26,469 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=53, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 08:43:27,652 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 08:43:28,341 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 08:43:28,342 - app.clients.bloomberg_client - INFO - Using forced currency: USD 2026-01-12 08:43:28,342 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 08:43:28,342 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=53, Msg=正在获取货币指标 (USD)..., Progress=41% 2026-01-12 08:43:29,720 - app.clients.bloomberg_client - INFO - ✅ Parsed 331 items from remote. 2026-01-12 08:43:39,230 - app.clients.bloomberg_client - INFO - ✅ Saved 331 records to database. 2026-01-12 08:43:39,232 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 08:43:39,232 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=53, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 08:43:40,229 - app.clients.bloomberg_client - INFO - ✅ Parsed 382 items from remote. 2026-01-12 08:43:50,591 - app.clients.bloomberg_client - INFO - ✅ Saved 382 records to database. 2026-01-12 08:43:50,593 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 08:43:50,593 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=53, Msg=正在获取价格指标..., Progress=69% 2026-01-12 08:43:50,851 - app.clients.bloomberg_client - INFO - Found 14 revenue reporting dates. Fetching aligned price data... 2026-01-12 08:43:56,659 - app.clients.bloomberg_client - INFO - ✅ Parsed 42 items from remote. 2026-01-12 08:43:58,108 - app.clients.bloomberg_client - INFO - ✅ Saved 42 records to database. 2026-01-12 08:43:58,109 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=53, Msg=Finalizing data..., Progress=82% 2026-01-12 08:43:58,702 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 08:43:58,703 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-12 08:43:58,703 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=53, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 08:43:58,998 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=53, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 09:30:47,629 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=54, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 09:30:48,117 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 09:30:48,341 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 09:30:48,532 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 09:30:48,587 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 09:30:48,588 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=54, Msg=数据源连接成功, Progress=10% 2026-01-12 09:30:48,836 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=54, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 09:30:49,112 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 09:30:49,112 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=54, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 09:30:49,445 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 09:30:49,445 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=54, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 09:30:50,731 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 09:30:51,108 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 09:30:51,109 - app.clients.bloomberg_client - INFO - Using forced currency: CNY 2026-01-12 09:30:51,109 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 09:30:51,109 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=54, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 09:30:52,131 - app.clients.bloomberg_client - INFO - ✅ Parsed 331 items from remote. 2026-01-12 09:31:03,562 - app.clients.bloomberg_client - INFO - ✅ Saved 331 records to database. 2026-01-12 09:31:03,563 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 09:31:03,564 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=54, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 09:31:04,637 - app.clients.bloomberg_client - INFO - ✅ Parsed 382 items from remote. 2026-01-12 09:31:16,853 - app.clients.bloomberg_client - INFO - ✅ Saved 382 records to database. 2026-01-12 09:31:16,854 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 09:31:16,855 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=54, Msg=正在获取价格指标..., Progress=69% 2026-01-12 09:31:17,130 - app.clients.bloomberg_client - INFO - Found 14 revenue reporting dates. Fetching aligned price data... 2026-01-12 09:31:23,659 - app.clients.bloomberg_client - INFO - ✅ Parsed 42 items from remote. 2026-01-12 09:31:25,896 - app.clients.bloomberg_client - INFO - ✅ Saved 42 records to database. 2026-01-12 09:31:25,896 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=54, Msg=Finalizing data..., Progress=82% 2026-01-12 09:31:26,487 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 09:31:26,489 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-12 09:31:26,490 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=54, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 09:31:26,791 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=54, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 10:15:52,800 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 三一国际 2026-01-12 10:15:53,105 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-12 10:15:53,112 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-12 10:15:57,833 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-12 10:15:57,856 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 4.75秒, Tokens: prompt=166, completion=78, total=244 2026-01-12 10:15:57,857 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 5.05秒 2026-01-12 10:16:22,607 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 三一国际 2026-01-12 10:16:22,609 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-12 10:16:22,611 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-12 10:16:26,693 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-12 10:16:26,716 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 4.11秒, Tokens: prompt=166, completion=78, total=244 2026-01-12 10:16:26,717 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 4.11秒 2026-01-12 10:39:45,586 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=55, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 10:39:46,580 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 10:39:47,135 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 10:39:47,166 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 10:39:47,228 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 10:39:47,228 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=55, Msg=数据源连接成功, Progress=10% 2026-01-12 10:39:47,502 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=55, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 10:39:47,936 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: SAB VN Equity 2026-01-12 10:39:47,937 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=55, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 10:39:48,418 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 10:39:48,418 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=55, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 10:39:50,974 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 10:39:51,644 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 10:39:51,645 - app.clients.bloomberg_client - INFO - Using forced currency: CNY 2026-01-12 10:39:51,645 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 10:39:51,646 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=55, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 10:39:53,556 - app.clients.bloomberg_client - INFO - ✅ Parsed 275 items from remote. 2026-01-12 10:40:05,191 - app.clients.bloomberg_client - INFO - ✅ Saved 275 records to database. 2026-01-12 10:40:05,201 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 10:40:05,201 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=55, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 10:40:06,376 - app.clients.bloomberg_client - INFO - ✅ Parsed 290 items from remote. 2026-01-12 10:40:18,886 - app.clients.bloomberg_client - INFO - ✅ Saved 290 records to database. 2026-01-12 10:40:18,888 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 10:40:18,888 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=55, Msg=正在获取价格指标..., Progress=69% 2026-01-12 10:40:19,463 - app.clients.bloomberg_client - INFO - Found 11 revenue reporting dates. Fetching aligned price data... 2026-01-12 10:40:24,699 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-12 10:40:26,363 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-12 10:40:26,366 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=55, Msg=Finalizing data..., Progress=82% 2026-01-12 10:40:27,693 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 10:40:27,694 - app.clients.bloomberg_client - INFO - ✅ Completed processing for SAB VN Equity 2026-01-12 10:40:27,694 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=55, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 10:40:28,421 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=55, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 10:42:39,579 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=56, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 10:42:39,887 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 10:42:40,132 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 10:42:40,160 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 10:42:41,230 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 10:42:41,231 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=56, Msg=数据源连接成功, Progress=10% 2026-01-12 10:42:42,048 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=56, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 10:42:42,308 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: SAB VN Equity 2026-01-12 10:42:42,309 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=56, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 10:42:42,624 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 10:42:42,625 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=56, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 10:42:43,914 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 10:42:44,298 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 10:42:44,299 - app.clients.bloomberg_client - INFO - Using forced currency: USD 2026-01-12 10:42:44,299 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 10:42:44,299 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=56, Msg=正在获取货币指标 (USD)..., Progress=41% 2026-01-12 10:42:45,638 - app.clients.bloomberg_client - INFO - ✅ Parsed 275 items from remote. 2026-01-12 10:42:59,116 - app.clients.bloomberg_client - INFO - ✅ Saved 275 records to database. 2026-01-12 10:42:59,117 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 10:42:59,118 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=56, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 10:43:00,410 - app.clients.bloomberg_client - INFO - ✅ Parsed 290 items from remote. 2026-01-12 10:43:13,907 - app.clients.bloomberg_client - INFO - ✅ Saved 290 records to database. 2026-01-12 10:43:13,908 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 10:43:13,909 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=56, Msg=正在获取价格指标..., Progress=69% 2026-01-12 10:43:14,174 - app.clients.bloomberg_client - INFO - Found 11 revenue reporting dates. Fetching aligned price data... 2026-01-12 10:43:19,382 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-12 10:43:20,821 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-12 10:43:20,821 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=56, Msg=Finalizing data..., Progress=82% 2026-01-12 10:43:21,609 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 10:43:21,609 - app.clients.bloomberg_client - INFO - ✅ Completed processing for SAB VN Equity 2026-01-12 10:43:21,609 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=56, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 10:43:21,873 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=56, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 10:58:49,794 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=57, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 10:58:50,395 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 10:58:50,649 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 10:58:50,676 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 10:58:50,734 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 10:58:50,734 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=57, Msg=数据源连接成功, Progress=10% 2026-01-12 10:58:50,996 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=57, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 10:58:51,414 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 10:58:51,414 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=57, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 10:58:51,864 - app.clients.bloomberg_client - INFO - Using forced currency: CNY 2026-01-12 10:58:51,864 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 10:58:51,864 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=57, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 10:58:53,027 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 10:58:53,435 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 10:58:53,435 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 10:58:53,436 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=57, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 10:58:54,938 - app.clients.bloomberg_client - INFO - ✅ Parsed 215 items from remote. 2026-01-12 10:59:04,571 - app.clients.bloomberg_client - INFO - ✅ Saved 215 records to database. 2026-01-12 10:59:04,583 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 10:59:04,584 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=57, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 10:59:05,645 - app.clients.bloomberg_client - INFO - ✅ Parsed 260 items from remote. 2026-01-12 10:59:16,477 - app.clients.bloomberg_client - INFO - ✅ Saved 260 records to database. 2026-01-12 10:59:16,477 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 10:59:16,478 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=57, Msg=正在获取价格指标..., Progress=69% 2026-01-12 10:59:17,032 - app.clients.bloomberg_client - INFO - Found 9 revenue reporting dates. Fetching aligned price data... 2026-01-12 10:59:20,896 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-12 10:59:22,712 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-12 10:59:22,713 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=57, Msg=Finalizing data..., Progress=82% 2026-01-12 10:59:23,316 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 10:59:23,317 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-12 10:59:23,317 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=57, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 10:59:23,593 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=57, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 11:00:00,129 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=58, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 11:00:00,711 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 11:00:01,085 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 11:00:01,113 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 11:00:01,164 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 11:00:01,165 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=58, Msg=数据源连接成功, Progress=10% 2026-01-12 11:00:01,426 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=58, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 11:00:01,773 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 11:00:01,773 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=58, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 11:00:02,544 - app.clients.bloomberg_client - INFO - Using forced currency: USD 2026-01-12 11:00:02,545 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 11:00:02,545 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=58, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 11:00:03,720 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 11:00:04,112 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 11:00:04,113 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 11:00:04,113 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=58, Msg=正在获取货币指标 (USD)..., Progress=41% 2026-01-12 11:00:05,964 - app.clients.bloomberg_client - INFO - ✅ Parsed 215 items from remote. 2026-01-12 11:00:16,994 - app.clients.bloomberg_client - INFO - ✅ Saved 215 records to database. 2026-01-12 11:00:16,996 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 11:00:16,996 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=58, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 11:00:18,214 - app.clients.bloomberg_client - INFO - ✅ Parsed 260 items from remote. 2026-01-12 11:00:31,167 - app.clients.bloomberg_client - INFO - ✅ Saved 260 records to database. 2026-01-12 11:00:31,169 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 11:00:31,170 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=58, Msg=正在获取价格指标..., Progress=69% 2026-01-12 11:00:32,027 - app.clients.bloomberg_client - INFO - Found 9 revenue reporting dates. Fetching aligned price data... 2026-01-12 11:00:36,241 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-12 11:00:38,065 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-12 11:00:38,066 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=58, Msg=Finalizing data..., Progress=82% 2026-01-12 11:00:39,407 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 11:00:39,407 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-12 11:00:39,408 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=58, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 11:00:39,748 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=58, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 11:44:44,232 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=59, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 11:44:44,905 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 11:44:46,453 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 11:44:46,649 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 11:44:47,699 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 11:44:47,700 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=59, Msg=数据源连接成功, Progress=10% 2026-01-12 11:44:49,420 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=59, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 11:44:49,979 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 11:44:49,979 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=59, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 11:44:50,331 - app.clients.bloomberg_client - INFO - Using forced currency: CNY 2026-01-12 11:44:50,331 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 11:44:50,331 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=59, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 11:44:52,345 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 11:44:53,037 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 11:44:53,038 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 11:44:53,038 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=59, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 11:44:54,522 - app.clients.bloomberg_client - INFO - ✅ Parsed 215 items from remote. 2026-01-12 11:45:08,541 - app.clients.bloomberg_client - INFO - ✅ Saved 215 records to database. 2026-01-12 11:45:08,543 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 11:45:08,543 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=59, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 11:45:09,996 - app.clients.bloomberg_client - INFO - ✅ Parsed 260 items from remote. 2026-01-12 11:45:25,647 - app.clients.bloomberg_client - INFO - ✅ Saved 260 records to database. 2026-01-12 11:45:25,649 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 11:45:25,649 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=59, Msg=正在获取价格指标..., Progress=69% 2026-01-12 11:45:26,793 - app.clients.bloomberg_client - INFO - Found 9 revenue reporting dates. Fetching aligned price data... 2026-01-12 11:45:38,250 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-12 11:45:40,155 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-12 11:45:40,156 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=59, Msg=Finalizing data..., Progress=82% 2026-01-12 11:45:40,960 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 11:45:40,960 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-12 11:45:40,961 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=59, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 11:45:41,250 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=59, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 11:46:08,013 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=60, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 11:46:09,230 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 11:46:09,490 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 11:46:09,518 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 11:46:10,578 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 11:46:10,579 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=60, Msg=数据源连接成功, Progress=10% 2026-01-12 11:46:10,856 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=60, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 11:46:11,445 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 11:46:11,446 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=60, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 11:46:12,525 - app.clients.bloomberg_client - INFO - Using forced currency: USD 2026-01-12 11:46:12,525 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 11:46:12,525 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=60, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 11:46:14,513 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 11:46:15,921 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 11:46:15,922 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 11:46:15,922 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=60, Msg=正在获取货币指标 (USD)..., Progress=41% 2026-01-12 11:46:17,800 - app.clients.bloomberg_client - INFO - ✅ Parsed 215 items from remote. 2026-01-12 11:46:35,038 - app.clients.bloomberg_client - INFO - ✅ Saved 215 records to database. 2026-01-12 11:46:35,039 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 11:46:35,039 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=60, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 11:46:35,982 - app.clients.bloomberg_client - INFO - ✅ Parsed 260 items from remote. 2026-01-12 11:46:52,433 - app.clients.bloomberg_client - INFO - ✅ Saved 260 records to database. 2026-01-12 11:46:52,440 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 11:46:52,440 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=60, Msg=正在获取价格指标..., Progress=69% 2026-01-12 11:46:53,034 - app.clients.bloomberg_client - INFO - Found 9 revenue reporting dates. Fetching aligned price data... 2026-01-12 11:47:04,398 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-12 11:47:07,274 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-12 11:47:07,275 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=60, Msg=Finalizing data..., Progress=82% 2026-01-12 11:47:08,374 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 11:47:08,375 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-12 11:47:08,375 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=60, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 11:47:09,101 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=60, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 11:51:11,068 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=61, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 11:51:11,648 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 11:51:14,081 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 11:51:14,108 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 11:51:14,173 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 11:51:14,173 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=61, Msg=数据源连接成功, Progress=10% 2026-01-12 11:51:15,149 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=61, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 11:51:16,055 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 11:51:16,056 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=61, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 11:51:16,516 - app.clients.bloomberg_client - INFO - Using forced currency: CNY 2026-01-12 11:51:16,516 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 11:51:16,516 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=61, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 11:51:18,000 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 11:51:20,192 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 11:51:20,193 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 11:51:20,193 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=61, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 11:51:21,634 - app.clients.bloomberg_client - INFO - ✅ Parsed 215 items from remote. 2026-01-12 11:51:38,825 - app.clients.bloomberg_client - INFO - ✅ Saved 215 records to database. 2026-01-12 11:51:38,827 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 11:51:38,827 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=61, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 11:51:39,821 - app.clients.bloomberg_client - INFO - ✅ Parsed 260 items from remote. 2026-01-12 11:51:58,838 - app.clients.bloomberg_client - INFO - ✅ Saved 260 records to database. 2026-01-12 11:51:58,839 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 11:51:58,839 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=61, Msg=正在获取价格指标..., Progress=69% 2026-01-12 11:51:59,168 - app.clients.bloomberg_client - INFO - Fetching aligned price data for 11 dates (Revenue + Calendar Years)... 2026-01-12 11:52:13,001 - app.clients.bloomberg_client - INFO - ✅ Parsed 31 items from remote. 2026-01-12 11:52:15,056 - app.clients.bloomberg_client - INFO - ✅ Saved 31 records to database. 2026-01-12 11:52:15,057 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=61, Msg=Finalizing data..., Progress=82% 2026-01-12 11:52:17,040 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 11:52:17,040 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-12 11:52:17,041 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=61, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 11:52:17,481 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=61, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 12:00:46,984 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=62, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 12:00:47,396 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 12:00:47,788 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 12:00:47,817 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 12:00:48,022 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 12:00:48,022 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=62, Msg=数据源连接成功, Progress=10% 2026-01-12 12:00:48,956 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=62, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 12:00:50,482 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 12:00:50,483 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=62, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 12:00:50,789 - app.clients.bloomberg_client - INFO - Using forced currency: CNY 2026-01-12 12:00:50,789 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 12:00:50,789 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=62, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 12:00:52,248 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 12:00:53,025 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 12:00:53,025 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 12:00:53,025 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=62, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 12:00:53,859 - app.clients.bloomberg_client - INFO - ✅ Parsed 215 items from remote. 2026-01-12 12:01:11,603 - app.clients.bloomberg_client - INFO - ✅ Saved 215 records to database. 2026-01-12 12:01:11,605 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 12:01:11,605 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=62, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 12:01:13,691 - app.clients.bloomberg_client - INFO - ✅ Parsed 260 items from remote. 2026-01-12 12:01:33,012 - app.clients.bloomberg_client - INFO - ✅ Saved 260 records to database. 2026-01-12 12:01:33,012 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 12:01:33,012 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=62, Msg=正在获取价格指标..., Progress=69% 2026-01-12 12:01:33,424 - app.clients.bloomberg_client - INFO - Found 9 revenue reporting dates. Fetching aligned price data... 2026-01-12 12:01:44,341 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-12 12:01:46,319 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-12 12:01:46,320 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=62, Msg=Finalizing data..., Progress=82% 2026-01-12 12:01:47,279 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 12:01:47,280 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-12 12:01:47,280 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=62, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 12:01:48,004 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=62, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 12:03:53,293 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=63, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 12:03:54,343 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 12:03:54,619 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 12:03:54,647 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 12:03:54,699 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 12:03:54,699 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=63, Msg=数据源连接成功, Progress=10% 2026-01-12 12:03:55,171 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=63, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 12:03:55,838 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 12:03:55,839 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=63, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 12:03:56,708 - app.clients.bloomberg_client - INFO - Using forced currency: CNY 2026-01-12 12:03:56,709 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 12:03:56,709 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=63, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 12:03:58,922 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 12:04:01,068 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 12:04:01,069 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 12:04:01,069 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=63, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 12:04:02,937 - app.clients.bloomberg_client - INFO - ✅ Parsed 215 items from remote. 2026-01-12 12:04:16,817 - app.clients.bloomberg_client - INFO - ✅ Saved 215 records to database. 2026-01-12 12:04:16,818 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 12:04:16,819 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=63, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 12:04:19,637 - app.clients.bloomberg_client - INFO - ✅ Parsed 260 items from remote. 2026-01-12 12:04:40,482 - app.clients.bloomberg_client - INFO - ✅ Saved 260 records to database. 2026-01-12 12:04:40,482 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 12:04:40,482 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=63, Msg=正在获取价格指标..., Progress=69% 2026-01-12 12:04:41,016 - app.clients.bloomberg_client - INFO - Found 9 revenue reporting dates. Fetching aligned price data... 2026-01-12 12:04:53,208 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-12 12:04:53,210 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2024-12-31, Value=86988.3177, Currency=CNY 2026-01-12 12:04:53,210 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2023-12-31, Value=95209.9289, Currency=CNY 2026-01-12 12:04:53,211 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2022-12-31, Value=96786.4997, Currency=CNY 2026-01-12 12:04:53,211 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2021-12-31, Value=93410.0414, Currency=CNY 2026-01-12 12:04:53,211 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2020-12-31, Value=140556.4302, Currency=CNY 2026-01-12 12:04:53,211 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2019-12-31, Value=140163.3311, Currency=CNY 2026-01-12 12:04:53,211 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2018-12-31, Value=130875.1203, Currency=CNY 2026-01-12 12:04:53,211 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2017-12-31, Value=150051.5647, Currency=CNY 2026-01-12 12:04:53,211 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2016-12-31, Value=103403.6124, Currency=CNY 2026-01-12 12:04:58,064 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-12 12:04:58,064 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=63, Msg=Finalizing data..., Progress=82% 2026-01-12 12:05:01,647 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 12:05:01,647 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-12 12:05:01,648 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=63, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 12:05:01,910 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=63, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 12:09:12,429 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=64, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 12:09:12,942 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 12:09:14,418 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 12:09:14,447 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 12:09:14,497 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 12:09:14,498 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=64, Msg=数据源连接成功, Progress=10% 2026-01-12 12:09:15,071 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=64, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 12:09:15,661 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 12:09:15,661 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=64, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 12:09:16,492 - app.clients.bloomberg_client - INFO - Using forced currency: CNY 2026-01-12 12:09:16,495 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 12:09:16,495 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=64, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 12:09:18,548 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 12:09:20,215 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 12:09:20,215 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 12:09:20,215 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=64, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 12:09:21,781 - app.clients.bloomberg_client - INFO - ✅ Parsed 215 items from remote. 2026-01-12 12:09:40,266 - app.clients.bloomberg_client - INFO - ✅ Saved 215 records to database. 2026-01-12 12:09:40,268 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 12:09:40,269 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=64, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 12:09:41,884 - app.clients.bloomberg_client - INFO - ✅ Parsed 260 items from remote. 2026-01-12 12:10:05,761 - app.clients.bloomberg_client - INFO - ✅ Saved 260 records to database. 2026-01-12 12:10:05,766 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 12:10:05,766 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=64, Msg=正在获取价格指标..., Progress=69% 2026-01-12 12:10:07,309 - app.clients.bloomberg_client - INFO - Found 9 revenue reporting dates. Fetching aligned price data... 2026-01-12 12:10:17,887 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-12 12:10:17,887 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2024-12-31, Value=86988.3177, Currency=CNY 2026-01-12 12:10:17,887 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2023-12-31, Value=95209.9289, Currency=CNY 2026-01-12 12:10:17,887 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2022-12-31, Value=96786.4997, Currency=CNY 2026-01-12 12:10:17,887 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2021-12-31, Value=93410.0414, Currency=CNY 2026-01-12 12:10:17,887 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2020-12-31, Value=140556.4302, Currency=CNY 2026-01-12 12:10:17,887 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2019-12-31, Value=140163.3311, Currency=CNY 2026-01-12 12:10:17,887 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2018-12-31, Value=130875.1203, Currency=CNY 2026-01-12 12:10:17,887 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2017-12-31, Value=150051.5647, Currency=CNY 2026-01-12 12:10:17,887 - app.clients.bloomberg_client - INFO - 💾 [DEBUG] Saving Market_Cap: Date=2016-12-31, Value=103403.6124, Currency=CNY 2026-01-12 12:10:21,706 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-12 12:10:21,708 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=64, Msg=Finalizing data..., Progress=82% 2026-01-12 12:10:25,944 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 12:10:25,945 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-12 12:10:25,945 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=64, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 12:10:26,424 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=64, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 12:17:20,087 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=65, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 12:17:21,105 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 12:17:22,164 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 12:17:22,194 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 12:17:22,251 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 12:17:22,251 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=65, Msg=数据源连接成功, Progress=10% 2026-01-12 12:17:23,267 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=65, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 12:17:23,545 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 12:17:23,545 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=65, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 12:17:25,394 - app.clients.bloomberg_client - INFO - Using forced currency: CNY 2026-01-12 12:17:25,395 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 12:17:25,395 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=65, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 12:17:27,481 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 12:17:27,481 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '2503 JP Equity', 'update_date': '2026-01-12', 'currency': 'CNY', 'indicator': 'dividend_yield', 'value': '3.1230217345431526', 'value_date': '2026-01-12'}, {'Company_code': '2503 JP Equity', 'update_date': '2026-01-12', 'currency': 'CNY', 'indicator': 'IPO_date', 'value': 'None', 'value_date': '2026-01-12'}] 2026-01-12 12:17:29,452 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 12:17:29,452 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 12:17:29,452 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=65, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 12:17:31,460 - app.clients.bloomberg_client - INFO - ✅ Parsed 215 items from remote. 2026-01-12 12:17:52,620 - app.clients.bloomberg_client - INFO - ✅ Saved 215 records to database. 2026-01-12 12:17:52,623 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 12:17:52,623 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=65, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 12:17:54,783 - app.clients.bloomberg_client - INFO - ✅ Parsed 260 items from remote. 2026-01-12 12:18:31,861 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=66, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 12:18:33,349 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 12:18:34,339 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 12:18:34,372 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 12:18:34,432 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 12:18:34,432 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=66, Msg=数据源连接成功, Progress=10% 2026-01-12 12:18:35,690 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=66, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 12:18:36,255 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 2503 JP Equity 2026-01-12 12:18:36,256 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=66, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 12:18:38,442 - app.clients.bloomberg_client - INFO - Using forced currency: CNY 2026-01-12 12:18:38,443 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 12:18:38,443 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=66, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 12:18:40,961 - app.clients.bloomberg_client - INFO - ✅ Parsed 2 items from remote. 2026-01-12 12:18:40,961 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '2503 JP Equity', 'update_date': '2026-01-12 12:18:41', 'currency': 'CNY', 'indicator': 'dividend_yield', 'value': '3.1230217345431526', 'value_date': '2026-01-12 12:18:41'}, {'Company_code': '2503 JP Equity', 'update_date': '2026-01-12 12:18:41', 'currency': 'CNY', 'indicator': 'IPO_date', 'value': 'None', 'value_date': '2026-01-12 12:18:41'}] 2026-01-12 12:18:42,433 - app.clients.bloomberg_client - INFO - ✅ Saved 2 records to database. 2026-01-12 12:18:42,434 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 12:18:42,434 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=66, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 12:18:44,354 - app.clients.bloomberg_client - INFO - ✅ Parsed 215 items from remote. 2026-01-12 12:19:05,814 - app.clients.bloomberg_client - INFO - ✅ Saved 215 records to database. 2026-01-12 12:19:05,819 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 12:19:05,820 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=66, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 12:19:07,418 - app.clients.bloomberg_client - INFO - ✅ Parsed 260 items from remote. 2026-01-12 12:19:27,370 - app.clients.bloomberg_client - INFO - ✅ Saved 260 records to database. 2026-01-12 12:19:27,371 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 12:19:27,371 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=66, Msg=正在获取价格指标..., Progress=69% 2026-01-12 12:19:28,080 - app.clients.bloomberg_client - INFO - Found 9 revenue reporting dates. Fetching aligned price data... 2026-01-12 12:19:39,293 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-12 12:19:43,961 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-12 12:19:43,962 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=66, Msg=Finalizing data..., Progress=82% 2026-01-12 12:19:45,511 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 12:19:45,512 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 2503 JP Equity 2026-01-12 12:19:45,512 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=66, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 12:19:47,693 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=66, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 13:39:22,650 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 三一国际 2026-01-12 13:39:22,724 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-12 13:39:22,724 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-12 13:39:27,383 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-12 13:39:27,390 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 4.67秒, Tokens: prompt=166, completion=78, total=244 2026-01-12 13:39:27,391 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 1 个结果, 总耗时: 4.74秒 2026-01-12 13:39:35,605 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=67, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 13:39:36,193 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=67, Msg=数据获取失败: invalid syntax. Perhaps you forgot a comma? (bloomberg_client.py, line 587), Progress=0% 2026-01-12 13:54:13,489 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=68, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 13:54:13,853 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 13:54:14,191 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 13:54:14,229 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 13:54:14,427 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 13:54:14,428 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=68, Msg=数据源连接成功, Progress=10% 2026-01-12 13:54:14,824 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=68, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 13:54:15,384 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 00631 HK Equity 2026-01-12 13:54:15,385 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=68, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 13:54:15,833 - app.clients.bloomberg_client - INFO - Using auto-detected currency: HKD 2026-01-12 13:54:15,834 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 13:54:15,834 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=68, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 13:54:16,597 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-12 13:54:16,597 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [] 2026-01-12 13:54:16,597 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 13:54:16,597 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=68, Msg=正在获取货币指标 (HKD)..., Progress=41% 2026-01-12 13:54:17,282 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-12 13:54:17,283 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 13:54:17,284 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=68, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 13:54:18,408 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-12 13:54:18,408 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 13:54:18,408 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=68, Msg=正在获取价格指标..., Progress=69% 2026-01-12 13:54:18,668 - app.clients.bloomberg_client - WARNING - No revenue dates found. Falling back to yearly price fetch. 2026-01-12 13:54:18,986 - app.clients.bloomberg_client - INFO - ✅ Parsed 0 items from remote. 2026-01-12 13:54:18,986 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=68, Msg=Finalizing data..., Progress=82% 2026-01-12 13:54:20,042 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 13:54:20,042 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 00631 HK Equity 2026-01-12 13:54:20,043 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=68, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 13:54:20,603 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=68, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 13:54:24,013 - app.services.bloomberg_service - WARNING - No Bloomberg data found for symbol: 00631 2026-01-12 13:54:24,293 - app.services.bloomberg_service - WARNING - No Bloomberg data found for symbol: 00631 2026-01-12 14:10:53,933 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=69, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 14:10:54,645 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 14:10:55,044 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 14:10:55,071 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 14:10:55,123 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 14:10:55,124 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=69, Msg=数据源连接成功, Progress=10% 2026-01-12 14:10:55,677 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=69, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 14:10:55,939 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 631 HK Equity 2026-01-12 14:10:55,939 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=69, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 14:10:56,480 - app.clients.bloomberg_client - INFO - Using auto-detected currency: HKD 2026-01-12 14:10:56,481 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 14:10:56,481 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=69, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 14:10:57,704 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:10:58", "currency": "HKD", "indicator": "company_name", "value": "SANY HEAVY EQUIPMENT INTL", "value_date": "2026-01-12 14:10:58"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:10:58", "currency": "HKD", "indicator": "pe_ratio", "value": "19.98882739476631", "value_date": "2026-01-12 14:10:58"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:10:58", "currency": "HKD", "indicator": "pb_ratio", "value": "2.116312093386662", "value_date": "2026-01-12 14:10:58"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:10:58", "currency": "HKD", "indicator": "market_cap", "value": "29705920767.51", "value_date": "2026-01-12 14:10:58"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:10:58", "currency": "HKD", "indicator": "Rev_Abroad", "value": "37.287945521334656", "value_date": "2026-01-12 14:10:58"}, {"Company_code": "631 HK Equity", "update_date": "2026 2026-01-12 14:10:57,705 - app.clients.bloomberg_client - INFO - ✅ Parsed 7 items from remote. 2026-01-12 14:10:57,705 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '631 HK Equity', 'update_date': '2026-01-12 14:10:58', 'currency': 'HKD', 'indicator': 'company_name', 'value': 'SANY HEAVY EQUIPMENT INTL', 'value_date': '2026-01-12 14:10:58'}, {'Company_code': '631 HK Equity', 'update_date': '2026-01-12 14:10:58', 'currency': 'HKD', 'indicator': 'pe_ratio', 'value': '19.98882739476631', 'value_date': '2026-01-12 14:10:58'}, {'Company_code': '631 HK Equity', 'update_date': '2026-01-12 14:10:58', 'currency': 'HKD', 'indicator': 'pb_ratio', 'value': '2.116312093386662', 'value_date': '2026-01-12 14:10:58'}, {'Company_code': '631 HK Equity', 'update_date': '2026-01-12 14:10:58', 'currency': 'HKD', 'indicator': 'market_cap', 'value': '29705920767.51', 'value_date': '2026-01-12 14:10:58'}, {'Company_code': '631 HK Equity', 'update_date': '2026-01-12 14:10:58', 'currency': 'HKD', 'indicator': 'Rev_Abroad', 'value': '37.287945521334656', 'value_date': '2026-01-12 14:10:58'}, {'Company_code': '631 HK Equity', 'update_date': '2026-01-12 14:10:58', 'currency': 'HKD', 'indicator': 'dividend_yield', 'value': '3.1556038264999975', 'value_date': '2026-01-12 14:10:58'}, {'Company_code': '631 HK Equity', 'update_date': '2026-01-12 14:10:58', 'currency': 'HKD', 'indicator': 'IPO_date', 'value': '2009-11-25', 'value_date': '2026-01-12 14:10:58'}] 2026-01-12 14:10:58,534 - app.clients.bloomberg_client - INFO - ✅ Saved 7 records to database. 2026-01-12 14:10:58,534 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 14:10:58,534 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=69, Msg=正在获取货币指标 (HKD)..., Progress=41% 2026-01-12 14:10:59,715 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:10:58", "currency": "HKD", "indicator": "Revenue", "value": "2152.9812", "value_date": "2016-12-31"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:10:58", "currency": "HKD", "indicator": "Net_Income", "value": "-753.2314", "value_date": "2016-12-31"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:10:58", "currency": "HKD", "indicator": "Cash_From_Operating", "value": "1557.419", "value_date": "2016-12-31"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:10:58", "currency": "HKD", "indicator": "Capital_Expenditure", "value": "-179.3705", "value_date": "2016-12-31"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:10:58", "currency": "HKD", "indicator": "Free_Cash_Flow", "value": "1378.0485", "value_date": "2016-12-31"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:10:58", "currency": "HKD", "indicator": "Dividends_Paid", "va 2026-01-12 14:10:59,715 - app.clients.bloomberg_client - INFO - ✅ Parsed 216 items from remote. 2026-01-12 14:11:12,684 - app.clients.bloomberg_client - INFO - ✅ Saved 216 records to database. 2026-01-12 14:11:12,686 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 14:11:12,686 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=69, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 14:11:13,789 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:11:12", "currency": "HKD", "indicator": "PE", "value": "111.1384", "value_date": "2016-12-30"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:11:12", "currency": "HKD", "indicator": "PB", "value": "0.5588", "value_date": "2016-12-30"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:11:12", "currency": "HKD", "indicator": "ROE", "value": "-10.132", "value_date": "2016-12-31"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:11:12", "currency": "HKD", "indicator": "ROA", "value": "-6.0025", "value_date": "2016-12-31"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:11:12", "currency": "HKD", "indicator": "Gross_Margin", "value": "14.994", "value_date": "2016-12-31"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:11:12", "currency": "HKD", "indicator": "EBITDA_margin", "value": "-28.2708", "value_date": "2016-12-31"}, {"Company_c 2026-01-12 14:11:13,790 - app.clients.bloomberg_client - INFO - ✅ Parsed 219 items from remote. 2026-01-12 14:11:26,690 - app.clients.bloomberg_client - INFO - ✅ Saved 219 records to database. 2026-01-12 14:11:26,692 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 14:11:26,692 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=69, Msg=正在获取价格指标..., Progress=69% 2026-01-12 14:11:26,975 - app.clients.bloomberg_client - INFO - Found 9 revenue reporting dates. Fetching aligned price data... 2026-01-12 14:11:37,480 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:11:26", "currency": "HKD", "indicator": "Last_Price", "value": "4.51", "value_date": "2024-12-31"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:11:26", "currency": "HKD", "indicator": "Market_Cap", "value": "14494.6462", "value_date": "2024-12-31"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:11:26", "currency": "HKD", "indicator": "Dividend_Yield", "value": "4.2129", "value_date": "2024-12-31"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:11:26", "currency": "HKD", "indicator": "Last_Price", "value": "7.55", "value_date": "2023-12-31"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:11:26", "currency": "HKD", "indicator": "Market_Cap", "value": "24081.9354", "value_date": "2023-12-31"}, {"Company_code": "631 HK Equity", "update_date": "2026-01-12 14:11:26", "currency": "HKD", "indicator": "Dividend_Yield", "value": "2.5166", "value_da 2026-01-12 14:11:37,481 - app.clients.bloomberg_client - INFO - ✅ Parsed 25 items from remote. 2026-01-12 14:11:39,102 - app.clients.bloomberg_client - INFO - ✅ Saved 25 records to database. 2026-01-12 14:11:39,103 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=69, Msg=Finalizing data..., Progress=82% 2026-01-12 14:11:40,554 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 14:11:40,555 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 631 HK Equity 2026-01-12 14:11:40,555 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=69, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 14:11:40,933 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=69, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 14:11:46,320 - app.services.bloomberg_service - WARNING - No Bloomberg data found for symbol: 00631 2026-01-12 14:12:08,829 - app.services.bloomberg_service - WARNING - No Bloomberg data found for symbol: 00631 2026-01-12 14:15:51,872 - app.services.bloomberg_service - WARNING - No Bloomberg data found for symbol: 00631 2026-01-12 14:22:58,914 - app.services.bloomberg_service - WARNING - No Bloomberg data found for symbol: 00631 2026-01-12 14:23:02,681 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=70, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 14:23:03,405 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 14:23:03,673 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 14:23:03,717 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 14:23:03,914 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 14:23:03,914 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=70, Msg=数据源连接成功, Progress=10% 2026-01-12 14:23:04,185 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=70, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 14:23:04,628 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 00631 HK Equity 2026-01-12 14:23:04,628 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=70, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 14:23:05,408 - app.clients.bloomberg_client - INFO - Using auto-detected currency: HKD 2026-01-12 14:23:05,408 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 14:23:05,408 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=70, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 14:23:06,372 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:23:06", "currency": "HKD", "indicator": "company_name", "value": "SANY HEAVY EQUIPMENT INTL", "value_date": "2026-01-12 14:23:06"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:23:06", "currency": "HKD", "indicator": "pe_ratio", "value": "20.052832333683007", "value_date": "2026-01-12 14:23:06"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:23:06", "currency": "HKD", "indicator": "pb_ratio", "value": "2.1230886002617653", "value_date": "2026-01-12 14:23:06"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:23:06", "currency": "HKD", "indicator": "market_cap", "value": "29802893305.38", "value_date": "2026-01-12 14:23:06"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:23:06", "currency": "HKD", "indicator": "Rev_Abroad", "value": "37.287945521334656", "value_date": "2026-01-12 14:23:06"}, {"Company_code": "00631 HK Equity", "updat 2026-01-12 14:23:06,373 - app.clients.bloomberg_client - INFO - ✅ Parsed 7 items from remote. 2026-01-12 14:23:06,373 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:23:06', 'currency': 'HKD', 'indicator': 'company_name', 'value': 'SANY HEAVY EQUIPMENT INTL', 'value_date': '2026-01-12 14:23:06'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:23:06', 'currency': 'HKD', 'indicator': 'pe_ratio', 'value': '20.052832333683007', 'value_date': '2026-01-12 14:23:06'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:23:06', 'currency': 'HKD', 'indicator': 'pb_ratio', 'value': '2.1230886002617653', 'value_date': '2026-01-12 14:23:06'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:23:06', 'currency': 'HKD', 'indicator': 'market_cap', 'value': '29802893305.38', 'value_date': '2026-01-12 14:23:06'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:23:06', 'currency': 'HKD', 'indicator': 'Rev_Abroad', 'value': '37.287945521334656', 'value_date': '2026-01-12 14:23:06'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:23:06', 'currency': 'HKD', 'indicator': 'dividend_yield', 'value': '3.145336135090561', 'value_date': '2026-01-12 14:23:06'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:23:06', 'currency': 'HKD', 'indicator': 'IPO_date', 'value': '2009-11-25', 'value_date': '2026-01-12 14:23:06'}] 2026-01-12 14:23:07,870 - app.clients.bloomberg_client - INFO - ✅ Saved 7 records to database. 2026-01-12 14:23:07,871 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 14:23:07,871 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=70, Msg=正在获取货币指标 (HKD)..., Progress=41% 2026-01-12 14:23:08,272 - app.clients.bloomberg_client - ERROR - Error fetching currency series: name 'timedelta' is not defined 2026-01-12 14:23:08,273 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 14:23:08,273 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=70, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 14:23:09,053 - app.clients.bloomberg_client - ERROR - Error fetching non-currency series: name 'timedelta' is not defined 2026-01-12 14:23:09,053 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 14:23:09,053 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=70, Msg=正在获取价格指标..., Progress=69% 2026-01-12 14:23:09,347 - app.clients.bloomberg_client - WARNING - No revenue dates found. Falling back to yearly price fetch. 2026-01-12 14:23:09,347 - app.clients.bloomberg_client - ERROR - Error fetching fallback price data: name 'timedelta' is not defined 2026-01-12 14:23:09,348 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=70, Msg=Finalizing data..., Progress=82% 2026-01-12 14:23:10,275 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 14:23:10,275 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 00631 HK Equity 2026-01-12 14:23:10,275 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=70, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 14:23:10,741 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=70, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 14:36:45,408 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=71, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 14:36:45,934 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 14:36:46,331 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 14:36:46,363 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 14:36:46,418 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 14:36:46,418 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=71, Msg=数据源连接成功, Progress=10% 2026-01-12 14:36:47,610 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=71, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 14:36:48,331 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 00631 HK Equity 2026-01-12 14:36:48,332 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=71, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 14:36:49,795 - app.clients.bloomberg_client - INFO - Using auto-detected currency: HKD 2026-01-12 14:36:49,795 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 14:36:49,795 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=71, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 14:36:50,804 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:36:51", "currency": "HKD", "indicator": "company_name", "value": "SANY HEAVY EQUIPMENT INTL", "value_date": "2026-01-12 14:36:51"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:36:51", "currency": "HKD", "indicator": "pe_ratio", "value": "20.029351716875", "value_date": "2026-01-12 14:36:51"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:36:51", "currency": "HKD", "indicator": "pb_ratio", "value": "2.120602595838916", "value_date": "2026-01-12 14:36:51"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:36:51", "currency": "HKD", "indicator": "market_cap", "value": "29770569126.09", "value_date": "2026-01-12 14:36:51"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:36:51", "currency": "HKD", "indicator": "Rev_Abroad", "value": "37.287945521334656", "value_date": "2026-01-12 14:36:51"}, {"Company_code": "00631 HK Equity", "update_da 2026-01-12 14:36:50,805 - app.clients.bloomberg_client - INFO - ✅ Parsed 7 items from remote. 2026-01-12 14:36:50,805 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:36:51', 'currency': 'HKD', 'indicator': 'company_name', 'value': 'SANY HEAVY EQUIPMENT INTL', 'value_date': '2026-01-12 14:36:51'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:36:51', 'currency': 'HKD', 'indicator': 'pe_ratio', 'value': '20.029351716875', 'value_date': '2026-01-12 14:36:51'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:36:51', 'currency': 'HKD', 'indicator': 'pb_ratio', 'value': '2.120602595838916', 'value_date': '2026-01-12 14:36:51'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:36:51', 'currency': 'HKD', 'indicator': 'market_cap', 'value': '29770569126.09', 'value_date': '2026-01-12 14:36:51'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:36:51', 'currency': 'HKD', 'indicator': 'Rev_Abroad', 'value': '37.287945521334656', 'value_date': '2026-01-12 14:36:51'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:36:51', 'currency': 'HKD', 'indicator': 'dividend_yield', 'value': '3.1487512666161748', 'value_date': '2026-01-12 14:36:51'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:36:51', 'currency': 'HKD', 'indicator': 'IPO_date', 'value': '2009-11-25', 'value_date': '2026-01-12 14:36:51'}] 2026-01-12 14:36:51,907 - app.clients.bloomberg_client - INFO - ✅ Saved 7 records to database. 2026-01-12 14:36:51,908 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 14:36:51,908 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=71, Msg=正在获取货币指标 (HKD)..., Progress=41% 2026-01-12 14:36:53,347 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:36:52", "currency": "HKD", "indicator": "Revenue", "value": "2152.9812", "value_date": "2017-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:36:52", "currency": "HKD", "indicator": "Net_Income", "value": "-753.2314", "value_date": "2017-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:36:52", "currency": "HKD", "indicator": "Cash_From_Operating", "value": "1557.419", "value_date": "2017-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:36:52", "currency": "HKD", "indicator": "Capital_Expenditure", "value": "-179.3705", "value_date": "2017-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:36:52", "currency": "HKD", "indicator": "Free_Cash_Flow", "value": "1378.0485", "value_date": "2017-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:36:52", "currency": "HKD", "indicator": "Dividend 2026-01-12 14:36:53,348 - app.clients.bloomberg_client - INFO - ✅ Parsed 240 items from remote. 2026-01-12 14:37:07,885 - app.clients.bloomberg_client - INFO - ✅ Saved 240 records to database. 2026-01-12 14:37:07,887 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 14:37:07,888 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=71, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 14:37:10,019 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:37:09", "currency": "HKD", "indicator": "ROE", "value": "-10.132", "value_date": "2017-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:37:09", "currency": "HKD", "indicator": "ROA", "value": "-6.0025", "value_date": "2017-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:37:09", "currency": "HKD", "indicator": "ROCE", "value": "0.3622", "value_date": "2017-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:37:09", "currency": "HKD", "indicator": "Gross_Margin", "value": "14.994", "value_date": "2017-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:37:09", "currency": "HKD", "indicator": "EBITDA_margin", "value": "-28.2708", "value_date": "2017-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:37:09", "currency": "HKD", "indicator": "Net_Profit_Margin", "value": "-34.9855", "value_date 2026-01-12 14:37:10,019 - app.clients.bloomberg_client - INFO - ✅ Parsed 173 items from remote. 2026-01-12 14:37:20,899 - app.clients.bloomberg_client - INFO - ✅ Saved 173 records to database. 2026-01-12 14:37:20,900 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 14:37:20,900 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=71, Msg=正在获取价格指标..., Progress=69% 2026-01-12 14:37:21,161 - app.clients.bloomberg_client - WARNING - No revenue dates found. Falling back to yearly price fetch. 2026-01-12 14:37:21,790 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:37:21", "currency": "HKD", "indicator": "Last_Price", "value": "1.33", "value_date": "2017-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:37:21", "currency": "HKD", "indicator": "Market_Cap", "value": "4044.5631", "value_date": "2017-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:37:21", "currency": "HKD", "indicator": "Last_Price", "value": "2.28", "value_date": "2018-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:37:21", "currency": "HKD", "indicator": "Market_Cap", "value": "6933.537", "value_date": "2018-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:37:21", "currency": "HKD", "indicator": "Last_Price", "value": "2.45", "value_date": "2019-01-12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:37:21", "currency": "HKD", "indicator": "Market_Cap", "value": "7450.5113", "value_ 2026-01-12 14:37:21,790 - app.clients.bloomberg_client - INFO - ✅ Parsed 28 items from remote. 2026-01-12 14:37:23,680 - app.clients.bloomberg_client - INFO - ✅ Saved 28 records to database. 2026-01-12 14:37:23,681 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=71, Msg=Finalizing data..., Progress=82% 2026-01-12 14:37:24,983 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 14:37:24,984 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 00631 HK Equity 2026-01-12 14:37:24,984 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=71, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 14:37:25,270 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=71, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 14:43:07,865 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=72, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 14:43:08,610 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 14:43:08,830 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 14:43:09,009 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 14:43:09,066 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 14:43:09,066 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=72, Msg=数据源连接成功, Progress=10% 2026-01-12 14:43:09,497 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=72, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 14:43:09,942 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 00631 HK Equity 2026-01-12 14:43:09,943 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=72, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 14:43:10,951 - app.clients.bloomberg_client - INFO - Using auto-detected currency: HKD 2026-01-12 14:43:10,951 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 14:43:10,952 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=72, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 14:43:11,735 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:12", "currency": "HKD", "indicator": "company_name", "value": "SANY HEAVY EQUIPMENT INTL", "value_date": "2026-01-12 14:43:12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:12", "currency": "HKD", "indicator": "pe_ratio", "value": "20.116743525594977", "value_date": "2026-01-12 14:43:12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:12", "currency": "HKD", "indicator": "pb_ratio", "value": "2.1298551816962252", "value_date": "2026-01-12 14:43:12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:12", "currency": "HKD", "indicator": "market_cap", "value": "29899865843.249996", "value_date": "2026-01-12 14:43:12"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:12", "currency": "HKD", "indicator": "Rev_Abroad", "value": "37.287945521334656", "value_date": "2026-01-12 14:43:12"}, {"Company_code": "00631 HK Equity", "u 2026-01-12 14:43:11,735 - app.clients.bloomberg_client - INFO - ✅ Parsed 7 items from remote. 2026-01-12 14:43:11,735 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:43:12', 'currency': 'HKD', 'indicator': 'company_name', 'value': 'SANY HEAVY EQUIPMENT INTL', 'value_date': '2026-01-12 14:43:12'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:43:12', 'currency': 'HKD', 'indicator': 'pe_ratio', 'value': '20.116743525594977', 'value_date': '2026-01-12 14:43:12'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:43:12', 'currency': 'HKD', 'indicator': 'pb_ratio', 'value': '2.1298551816962252', 'value_date': '2026-01-12 14:43:12'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:43:12', 'currency': 'HKD', 'indicator': 'market_cap', 'value': '29899865843.249996', 'value_date': '2026-01-12 14:43:12'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:43:12', 'currency': 'HKD', 'indicator': 'Rev_Abroad', 'value': '37.287945521334656', 'value_date': '2026-01-12 14:43:12'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:43:12', 'currency': 'HKD', 'indicator': 'dividend_yield', 'value': '3.1351350449227', 'value_date': '2026-01-12 14:43:12'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:43:12', 'currency': 'HKD', 'indicator': 'IPO_date', 'value': '2009-11-25', 'value_date': '2026-01-12 14:43:12'}] 2026-01-12 14:43:13,034 - app.clients.bloomberg_client - INFO - ✅ Saved 7 records to database. 2026-01-12 14:43:13,035 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 14:43:13,035 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=72, Msg=正在获取货币指标 (HKD)..., Progress=41% 2026-01-12 14:43:13,894 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:13", "currency": "HKD", "indicator": "Revenue", "value": "2152.9812", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:13", "currency": "HKD", "indicator": "Net_Income", "value": "-753.2314", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:13", "currency": "HKD", "indicator": "Cash_From_Operating", "value": "1557.419", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:13", "currency": "HKD", "indicator": "Capital_Expenditure", "value": "-179.3705", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:13", "currency": "HKD", "indicator": "Free_Cash_Flow", "value": "1378.0485", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:13", "currency": "HKD", "indicator": "Dividend 2026-01-12 14:43:13,894 - app.clients.bloomberg_client - INFO - ✅ Parsed 213 items from remote. 2026-01-12 14:43:25,211 - app.clients.bloomberg_client - INFO - ✅ Saved 213 records to database. 2026-01-12 14:43:25,212 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 14:43:25,212 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=72, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 14:43:26,114 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:25", "currency": "HKD", "indicator": "ROE", "value": "-10.132", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:25", "currency": "HKD", "indicator": "ROA", "value": "-6.0025", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:25", "currency": "HKD", "indicator": "Gross_Margin", "value": "14.994", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:25", "currency": "HKD", "indicator": "EBITDA_margin", "value": "-28.2708", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:25", "currency": "HKD", "indicator": "Net_Profit_Margin", "value": "-34.9855", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:25", "currency": "HKD", "indicator": "Tax_Rate", "value": "0.25", "value_da 2026-01-12 14:43:26,115 - app.clients.bloomberg_client - INFO - ✅ Parsed 150 items from remote. 2026-01-12 14:43:34,767 - app.clients.bloomberg_client - INFO - ✅ Saved 150 records to database. 2026-01-12 14:43:34,768 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 14:43:34,769 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=72, Msg=正在获取价格指标..., Progress=69% 2026-01-12 14:43:35,176 - app.clients.bloomberg_client - WARNING - No revenue dates found. Falling back to yearly price fetch. 2026-01-12 14:43:35,719 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:35", "currency": "HKD", "indicator": "Last_Price", "value": "1.24", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:35", "currency": "HKD", "indicator": "Market_Cap", "value": "3770.8709", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:35", "currency": "HKD", "indicator": "Last_Price", "value": "1.71", "value_date": "2017-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:35", "currency": "HKD", "indicator": "Market_Cap", "value": "5200.1528", "value_date": "2017-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:35", "currency": "HKD", "indicator": "Last_Price", "value": "2.67", "value_date": "2018-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:43:35", "currency": "HKD", "indicator": "Market_Cap", "value": "8119.5368", "value 2026-01-12 14:43:35,719 - app.clients.bloomberg_client - INFO - ✅ Parsed 25 items from remote. 2026-01-12 14:43:37,996 - app.clients.bloomberg_client - INFO - ✅ Saved 25 records to database. 2026-01-12 14:43:37,996 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=72, Msg=Finalizing data..., Progress=82% 2026-01-12 14:43:38,939 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 14:43:38,939 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 00631 HK Equity 2026-01-12 14:43:38,939 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=72, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 14:43:40,030 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=72, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 14:45:40,102 - app.services.bloomberg_service - WARNING - No Bloomberg data found for symbol: 00631 2026-01-12 14:45:42,034 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=73, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 14:45:42,964 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 14:45:43,352 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 14:45:43,383 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 14:45:43,448 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 14:45:43,449 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=73, Msg=数据源连接成功, Progress=10% 2026-01-12 14:45:43,881 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=73, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 14:45:44,623 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 00631 HK Equity 2026-01-12 14:45:44,623 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=73, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 14:45:45,178 - app.clients.bloomberg_client - INFO - Using auto-detected currency: HKD 2026-01-12 14:45:45,179 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 14:45:45,180 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=73, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 14:45:46,576 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:45:47", "currency": "HKD", "indicator": "company_name", "value": "SANY HEAVY EQUIPMENT INTL", "value_date": "2026-01-12 14:45:47"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:45:47", "currency": "HKD", "indicator": "pe_ratio", "value": "20.138605869994777", "value_date": "2026-01-12 14:45:47"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:45:47", "currency": "HKD", "indicator": "pb_ratio", "value": "2.1321698519332197", "value_date": "2026-01-12 14:45:47"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:45:47", "currency": "HKD", "indicator": "market_cap", "value": "29932190022.539997", "value_date": "2026-01-12 14:45:47"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:45:47", "currency": "HKD", "indicator": "Rev_Abroad", "value": "37.287945521334656", "value_date": "2026-01-12 14:45:47"}, {"Company_code": "00631 HK Equity", "u 2026-01-12 14:45:46,576 - app.clients.bloomberg_client - INFO - ✅ Parsed 7 items from remote. 2026-01-12 14:45:46,576 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:45:47', 'currency': 'HKD', 'indicator': 'company_name', 'value': 'SANY HEAVY EQUIPMENT INTL', 'value_date': '2026-01-12 14:45:47'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:45:47', 'currency': 'HKD', 'indicator': 'pe_ratio', 'value': '20.138605869994777', 'value_date': '2026-01-12 14:45:47'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:45:47', 'currency': 'HKD', 'indicator': 'pb_ratio', 'value': '2.1321698519332197', 'value_date': '2026-01-12 14:45:47'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:45:47', 'currency': 'HKD', 'indicator': 'market_cap', 'value': '29932190022.539997', 'value_date': '2026-01-12 14:45:47'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:45:47', 'currency': 'HKD', 'indicator': 'Rev_Abroad', 'value': '37.287945521334656', 'value_date': '2026-01-12 14:45:47'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:45:47', 'currency': 'HKD', 'indicator': 'dividend_yield', 'value': '3.131749369928183', 'value_date': '2026-01-12 14:45:47'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:45:47', 'currency': 'HKD', 'indicator': 'IPO_date', 'value': '2009-11-25', 'value_date': '2026-01-12 14:45:47'}] 2026-01-12 14:45:48,142 - app.clients.bloomberg_client - INFO - ✅ Saved 7 records to database. 2026-01-12 14:45:48,142 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 14:45:48,142 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=73, Msg=正在获取货币指标 (HKD)..., Progress=41% 2026-01-12 14:45:50,239 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:45:49", "currency": "HKD", "indicator": "Revenue", "value": "2152.9812", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:45:49", "currency": "HKD", "indicator": "Net_Income", "value": "-753.2314", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:45:49", "currency": "HKD", "indicator": "Cash_From_Operating", "value": "1557.419", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:45:49", "currency": "HKD", "indicator": "Capital_Expenditure", "value": "-179.3705", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:45:49", "currency": "HKD", "indicator": "Free_Cash_Flow", "value": "1378.0485", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:45:49", "currency": "HKD", "indicator": "Dividend 2026-01-12 14:45:50,239 - app.clients.bloomberg_client - INFO - ✅ Parsed 213 items from remote. 2026-01-12 14:46:03,568 - app.clients.bloomberg_client - INFO - ✅ Saved 213 records to database. 2026-01-12 14:46:03,570 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 14:46:03,570 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=73, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 14:46:04,576 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:46:04", "currency": "HKD", "indicator": "ROE", "value": "-10.132", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:46:04", "currency": "HKD", "indicator": "ROA", "value": "-6.0025", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:46:04", "currency": "HKD", "indicator": "Gross_Margin", "value": "14.994", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:46:04", "currency": "HKD", "indicator": "EBITDA_margin", "value": "-28.2708", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:46:04", "currency": "HKD", "indicator": "Net_Profit_Margin", "value": "-34.9855", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:46:04", "currency": "HKD", "indicator": "Tax_Rate", "value": "0.25", "value_da 2026-01-12 14:46:04,576 - app.clients.bloomberg_client - INFO - ✅ Parsed 150 items from remote. 2026-01-12 14:46:16,087 - app.clients.bloomberg_client - INFO - ✅ Saved 150 records to database. 2026-01-12 14:46:16,090 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 14:46:16,090 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=73, Msg=正在获取价格指标..., Progress=69% 2026-01-12 14:46:16,680 - app.clients.bloomberg_client - WARNING - No revenue dates found. Falling back to yearly price fetch. 2026-01-12 14:46:17,220 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:46:16", "currency": "HKD", "indicator": "Last_Price", "value": "1.24", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:46:16", "currency": "HKD", "indicator": "Market_Cap", "value": "3770.8709", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:46:16", "currency": "HKD", "indicator": "Last_Price", "value": "1.71", "value_date": "2017-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:46:16", "currency": "HKD", "indicator": "Market_Cap", "value": "5200.1528", "value_date": "2017-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:46:16", "currency": "HKD", "indicator": "Last_Price", "value": "2.67", "value_date": "2018-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:46:16", "currency": "HKD", "indicator": "Market_Cap", "value": "8119.5368", "value 2026-01-12 14:46:17,220 - app.clients.bloomberg_client - INFO - ✅ Parsed 25 items from remote. 2026-01-12 14:46:19,283 - app.clients.bloomberg_client - INFO - ✅ Saved 25 records to database. 2026-01-12 14:46:19,284 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=73, Msg=Finalizing data..., Progress=82% 2026-01-12 14:46:20,269 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 14:46:20,269 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 00631 HK Equity 2026-01-12 14:46:20,269 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=73, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 14:46:20,840 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=73, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 14:47:40,832 - app.main - INFO - 🔍 [搜索] 开始搜索股票: 小松 2026-01-12 14:47:40,891 - app.main - INFO - 🤖 [搜索-LLM] 调用 gemini-2.5-flash 进行股票搜索 2026-01-12 14:47:40,892 - google_genai.models - INFO - AFC is enabled with max remote calls: 10. 2026-01-12 14:47:46,554 - httpx - INFO - HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" 2026-01-12 14:47:46,561 - app.main - INFO - ✅ [搜索-LLM] 模型响应完成, 耗时: 5.67秒, Tokens: prompt=165, completion=116, total=281 2026-01-12 14:47:46,561 - app.main - INFO - ✅ [搜索] 搜索完成, 找到 2 个结果, 总耗时: 5.73秒 2026-01-12 14:47:55,573 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=74, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 14:47:56,059 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 14:47:56,715 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 14:47:56,744 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 14:47:56,806 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 14:47:56,807 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=74, Msg=数据源连接成功, Progress=10% 2026-01-12 14:47:57,821 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=74, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 14:47:58,674 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 6301 JP Equity 2026-01-12 14:47:58,675 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=74, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 14:47:59,347 - app.clients.bloomberg_client - INFO - Using forced currency: CNY 2026-01-12 14:47:59,348 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 14:47:59,348 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=74, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 14:48:01,112 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:01", "currency": "CNY", "indicator": "company_name", "value": "KOMATSU LTD", "value_date": "2026-01-12 14:48:01"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:01", "currency": "CNY", "indicator": "pe_ratio", "value": "11.538204871538206", "value_date": "2026-01-12 14:48:01"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:01", "currency": "CNY", "indicator": "pb_ratio", "value": "1.4637777168999744", "value_date": "2026-01-12 14:48:01"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:01", "currency": "CNY", "indicator": "market_cap", "value": "4825676795940.001", "value_date": "2026-01-12 14:48:01"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:01", "currency": "CNY", "indicator": "Rev_Abroad", "value": "86.05716369679564", "value_date": "2026-01-12 14:48:01"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01- 2026-01-12 14:48:01,113 - app.clients.bloomberg_client - INFO - ✅ Parsed 6 items from remote. 2026-01-12 14:48:01,114 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 14:48:01', 'currency': 'CNY', 'indicator': 'company_name', 'value': 'KOMATSU LTD', 'value_date': '2026-01-12 14:48:01'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 14:48:01', 'currency': 'CNY', 'indicator': 'pe_ratio', 'value': '11.538204871538206', 'value_date': '2026-01-12 14:48:01'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 14:48:01', 'currency': 'CNY', 'indicator': 'pb_ratio', 'value': '1.4637777168999744', 'value_date': '2026-01-12 14:48:01'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 14:48:01', 'currency': 'CNY', 'indicator': 'market_cap', 'value': '4825676795940.001', 'value_date': '2026-01-12 14:48:01'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 14:48:01', 'currency': 'CNY', 'indicator': 'Rev_Abroad', 'value': '86.05716369679564', 'value_date': '2026-01-12 14:48:01'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 14:48:01', 'currency': 'CNY', 'indicator': 'dividend_yield', 'value': '3.894351262772315', 'value_date': '2026-01-12 14:48:01'}] 2026-01-12 14:48:02,208 - app.clients.bloomberg_client - INFO - ✅ Saved 6 records to database. 2026-01-12 14:48:02,208 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 14:48:02,209 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=74, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 14:48:03,577 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:02", "currency": "CNY", "indicator": "Revenue", "value": "98388.5158", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:02", "currency": "CNY", "indicator": "Net_Income", "value": "7289.1658", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:02", "currency": "CNY", "indicator": "Cash_From_Operating", "value": "16953.5985", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:02", "currency": "CNY", "indicator": "Capital_Expenditure", "value": "-8830.1561", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:02", "currency": "CNY", "indicator": "Free_Cash_Flow", "value": "8123.4424", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:02", "currency": "CNY", "indicator": "Dividends_ 2026-01-12 14:48:03,578 - app.clients.bloomberg_client - INFO - ✅ Parsed 248 items from remote. 2026-01-12 14:48:18,179 - app.clients.bloomberg_client - INFO - ✅ Saved 248 records to database. 2026-01-12 14:48:18,181 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 14:48:18,181 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=74, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 14:48:19,384 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:18", "currency": "CNY", "indicator": "ROE", "value": "9.0222", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:18", "currency": "CNY", "indicator": "ROA", "value": "5.0776", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:18", "currency": "CNY", "indicator": "ROCE", "value": "10.4918", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:18", "currency": "CNY", "indicator": "Gross_Margin", "value": "29.0675", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:18", "currency": "CNY", "indicator": "EBITDA_margin", "value": "17.3073", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:18", "currency": "CNY", "indicator": "Net_Profit_Margin", "value": "7.4086", "value_date": "2016- 2026-01-12 14:48:19,384 - app.clients.bloomberg_client - INFO - ✅ Parsed 200 items from remote. 2026-01-12 14:48:30,521 - app.clients.bloomberg_client - INFO - ✅ Saved 200 records to database. 2026-01-12 14:48:30,522 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 14:48:30,523 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=74, Msg=正在获取价格指标..., Progress=69% 2026-01-12 14:48:31,242 - app.clients.bloomberg_client - WARNING - No revenue dates found. Falling back to yearly price fetch. 2026-01-12 14:48:31,965 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:31", "currency": "CNY", "indicator": "Last_Price", "value": "109.89665", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:31", "currency": "CNY", "indicator": "Market_Cap", "value": "6126.6803", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:31", "currency": "CNY", "indicator": "Last_Price", "value": "179.2773", "value_date": "2017-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:31", "currency": "CNY", "indicator": "Market_Cap", "value": "10766.6315", "value_date": "2017-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:31", "currency": "CNY", "indicator": "Last_Price", "value": "209.97492", "value_date": "2018-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:48:31", "currency": "CNY", "indicator": "Market_Cap", "value": "12081.628 2026-01-12 14:48:31,966 - app.clients.bloomberg_client - INFO - ✅ Parsed 20 items from remote. 2026-01-12 14:48:34,609 - app.clients.bloomberg_client - INFO - ✅ Saved 20 records to database. 2026-01-12 14:48:34,610 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=74, Msg=Finalizing data..., Progress=82% 2026-01-12 14:48:35,541 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 14:48:35,542 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 6301 JP Equity 2026-01-12 14:48:35,542 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=74, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 14:48:36,209 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=74, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 14:49:44,963 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=75, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 14:49:45,392 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 14:49:45,772 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 14:49:45,800 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 14:49:46,296 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 14:49:46,297 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=75, Msg=数据源连接成功, Progress=10% 2026-01-12 14:49:46,646 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=75, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 14:49:47,067 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 6301 JP Equity 2026-01-12 14:49:47,067 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=75, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 14:49:47,538 - app.clients.bloomberg_client - INFO - Using auto-detected currency: JPY 2026-01-12 14:49:47,538 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 14:49:47,539 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=75, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 14:49:48,960 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:49:49", "currency": "JPY", "indicator": "company_name", "value": "KOMATSU LTD", "value_date": "2026-01-12 14:49:49"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:49:49", "currency": "JPY", "indicator": "pe_ratio", "value": "11.538204871538206", "value_date": "2026-01-12 14:49:49"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:49:49", "currency": "JPY", "indicator": "pb_ratio", "value": "1.4637777168999744", "value_date": "2026-01-12 14:49:49"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:49:49", "currency": "JPY", "indicator": "market_cap", "value": "4825676795940.001", "value_date": "2026-01-12 14:49:49"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:49:49", "currency": "JPY", "indicator": "Rev_Abroad", "value": "86.05716369679564", "value_date": "2026-01-12 14:49:49"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01- 2026-01-12 14:49:48,961 - app.clients.bloomberg_client - INFO - ✅ Parsed 6 items from remote. 2026-01-12 14:49:48,961 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 14:49:49', 'currency': 'JPY', 'indicator': 'company_name', 'value': 'KOMATSU LTD', 'value_date': '2026-01-12 14:49:49'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 14:49:49', 'currency': 'JPY', 'indicator': 'pe_ratio', 'value': '11.538204871538206', 'value_date': '2026-01-12 14:49:49'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 14:49:49', 'currency': 'JPY', 'indicator': 'pb_ratio', 'value': '1.4637777168999744', 'value_date': '2026-01-12 14:49:49'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 14:49:49', 'currency': 'JPY', 'indicator': 'market_cap', 'value': '4825676795940.001', 'value_date': '2026-01-12 14:49:49'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 14:49:49', 'currency': 'JPY', 'indicator': 'Rev_Abroad', 'value': '86.05716369679564', 'value_date': '2026-01-12 14:49:49'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 14:49:49', 'currency': 'JPY', 'indicator': 'dividend_yield', 'value': '3.894351262772315', 'value_date': '2026-01-12 14:49:49'}] 2026-01-12 14:49:49,780 - app.clients.bloomberg_client - INFO - ✅ Saved 6 records to database. 2026-01-12 14:49:49,781 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 14:49:49,781 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=75, Msg=正在获取货币指标 (JPY)..., Progress=41% 2026-01-12 14:49:50,861 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:49:50", "currency": "JPY", "indicator": "Revenue", "value": "1854964.0", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:49:50", "currency": "JPY", "indicator": "Net_Income", "value": "137426.0", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:49:50", "currency": "JPY", "indicator": "Cash_From_Operating", "value": "319634.0", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:49:50", "currency": "JPY", "indicator": "Capital_Expenditure", "value": "-166479.0", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:49:50", "currency": "JPY", "indicator": "Free_Cash_Flow", "value": "153155.0", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:49:50", "currency": "JPY", "indicator": "Dividends_Paid", 2026-01-12 14:49:50,862 - app.clients.bloomberg_client - INFO - ✅ Parsed 248 items from remote. 2026-01-12 14:50:05,970 - app.clients.bloomberg_client - INFO - ✅ Saved 248 records to database. 2026-01-12 14:50:05,972 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 14:50:05,973 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=75, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 14:50:08,245 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:50:07", "currency": "JPY", "indicator": "ROE", "value": "9.0222", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:50:07", "currency": "JPY", "indicator": "ROA", "value": "5.0776", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:50:07", "currency": "JPY", "indicator": "ROCE", "value": "10.4918", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:50:07", "currency": "JPY", "indicator": "Gross_Margin", "value": "29.0675", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:50:07", "currency": "JPY", "indicator": "EBITDA_margin", "value": "17.3073", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:50:07", "currency": "JPY", "indicator": "Net_Profit_Margin", "value": "7.4086", "value_date": "2016- 2026-01-12 14:50:08,245 - app.clients.bloomberg_client - INFO - ✅ Parsed 200 items from remote. 2026-01-12 14:50:21,679 - app.clients.bloomberg_client - INFO - ✅ Saved 200 records to database. 2026-01-12 14:50:21,680 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 14:50:21,680 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=75, Msg=正在获取价格指标..., Progress=69% 2026-01-12 14:50:22,256 - app.clients.bloomberg_client - WARNING - No revenue dates found. Falling back to yearly price fetch. 2026-01-12 14:50:23,865 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:50:22", "currency": "JPY", "indicator": "Last_Price", "value": "1916.0", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:50:22", "currency": "JPY", "indicator": "Market_Cap", "value": "1862290.02", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:50:22", "currency": "JPY", "indicator": "Dividend_Yield", "value": "3.0271", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:50:22", "currency": "JPY", "indicator": "Last_Price", "value": "2901.5", "value_date": "2017-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:50:22", "currency": "JPY", "indicator": "Market_Cap", "value": "2820164.1404", "value_date": "2017-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 14:50:22", "currency": "JPY", "indicator": "Dividend_Yield", "value": "1.999" 2026-01-12 14:50:23,866 - app.clients.bloomberg_client - INFO - ✅ Parsed 30 items from remote. 2026-01-12 14:50:26,009 - app.clients.bloomberg_client - INFO - ✅ Saved 30 records to database. 2026-01-12 14:50:26,009 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=75, Msg=Finalizing data..., Progress=82% 2026-01-12 14:50:27,009 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 14:50:27,009 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 6301 JP Equity 2026-01-12 14:50:27,009 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=75, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 14:50:27,898 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=75, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 14:51:20,076 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=76, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 14:51:20,584 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 14:51:21,537 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 14:51:21,567 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 14:51:21,624 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 14:51:21,628 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=76, Msg=数据源连接成功, Progress=10% 2026-01-12 14:51:22,917 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=76, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 14:51:23,220 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 00631 HK Equity 2026-01-12 14:51:23,220 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=76, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 14:51:24,335 - app.clients.bloomberg_client - INFO - Using auto-detected currency: HKD 2026-01-12 14:51:24,335 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 14:51:24,335 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=76, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 14:51:25,182 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:25", "currency": "HKD", "indicator": "company_name", "value": "SANY HEAVY EQUIPMENT INTL", "value_date": "2026-01-12 14:51:25"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:25", "currency": "HKD", "indicator": "pe_ratio", "value": "20.029578510589843", "value_date": "2026-01-12 14:51:25"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:25", "currency": "HKD", "indicator": "pb_ratio", "value": "2.120626607566665", "value_date": "2026-01-12 14:51:25"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:25", "currency": "HKD", "indicator": "market_cap", "value": "29770569126.09", "value_date": "2026-01-12 14:51:25"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:25", "currency": "HKD", "indicator": "Rev_Abroad", "value": "37.287945521334656", "value_date": "2026-01-12 14:51:25"}, {"Company_code": "00631 HK Equity", "update 2026-01-12 14:51:25,183 - app.clients.bloomberg_client - INFO - ✅ Parsed 7 items from remote. 2026-01-12 14:51:25,183 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:51:25', 'currency': 'HKD', 'indicator': 'company_name', 'value': 'SANY HEAVY EQUIPMENT INTL', 'value_date': '2026-01-12 14:51:25'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:51:25', 'currency': 'HKD', 'indicator': 'pe_ratio', 'value': '20.029578510589843', 'value_date': '2026-01-12 14:51:25'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:51:25', 'currency': 'HKD', 'indicator': 'pb_ratio', 'value': '2.120626607566665', 'value_date': '2026-01-12 14:51:25'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:51:25', 'currency': 'HKD', 'indicator': 'market_cap', 'value': '29770569126.09', 'value_date': '2026-01-12 14:51:25'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:51:25', 'currency': 'HKD', 'indicator': 'Rev_Abroad', 'value': '37.287945521334656', 'value_date': '2026-01-12 14:51:25'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:51:25', 'currency': 'HKD', 'indicator': 'dividend_yield', 'value': '3.1487512666161748', 'value_date': '2026-01-12 14:51:25'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 14:51:25', 'currency': 'HKD', 'indicator': 'IPO_date', 'value': '2009-11-25', 'value_date': '2026-01-12 14:51:25'}] 2026-01-12 14:51:26,622 - app.clients.bloomberg_client - INFO - ✅ Saved 7 records to database. 2026-01-12 14:51:26,624 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 14:51:26,624 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=76, Msg=正在获取货币指标 (HKD)..., Progress=41% 2026-01-12 14:51:27,834 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:27", "currency": "HKD", "indicator": "Revenue", "value": "2152.9812", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:27", "currency": "HKD", "indicator": "Net_Income", "value": "-753.2314", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:27", "currency": "HKD", "indicator": "Cash_From_Operating", "value": "1557.419", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:27", "currency": "HKD", "indicator": "Capital_Expenditure", "value": "-179.3705", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:27", "currency": "HKD", "indicator": "Free_Cash_Flow", "value": "1378.0485", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:27", "currency": "HKD", "indicator": "Dividend 2026-01-12 14:51:27,835 - app.clients.bloomberg_client - INFO - ✅ Parsed 213 items from remote. 2026-01-12 14:51:37,677 - app.clients.bloomberg_client - INFO - ✅ Saved 213 records to database. 2026-01-12 14:51:37,679 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 14:51:37,679 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=76, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 14:51:39,919 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:39", "currency": "HKD", "indicator": "ROE", "value": "-10.132", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:39", "currency": "HKD", "indicator": "ROA", "value": "-6.0025", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:39", "currency": "HKD", "indicator": "Gross_Margin", "value": "14.994", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:39", "currency": "HKD", "indicator": "EBITDA_margin", "value": "-28.2708", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:39", "currency": "HKD", "indicator": "Net_Profit_Margin", "value": "-34.9855", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:39", "currency": "HKD", "indicator": "Tax_Rate", "value": "0.25", "value_da 2026-01-12 14:51:39,919 - app.clients.bloomberg_client - INFO - ✅ Parsed 150 items from remote. 2026-01-12 14:51:50,298 - app.clients.bloomberg_client - INFO - ✅ Saved 150 records to database. 2026-01-12 14:51:50,300 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 14:51:50,300 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=76, Msg=正在获取价格指标..., Progress=69% 2026-01-12 14:51:50,718 - app.clients.bloomberg_client - WARNING - No revenue dates found. Falling back to yearly price fetch. 2026-01-12 14:51:51,380 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:50", "currency": "HKD", "indicator": "Last_Price", "value": "1.24", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:50", "currency": "HKD", "indicator": "Market_Cap", "value": "3770.8709", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:50", "currency": "HKD", "indicator": "Last_Price", "value": "1.71", "value_date": "2017-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:50", "currency": "HKD", "indicator": "Market_Cap", "value": "5200.1528", "value_date": "2017-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:50", "currency": "HKD", "indicator": "Last_Price", "value": "2.67", "value_date": "2018-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 14:51:50", "currency": "HKD", "indicator": "Market_Cap", "value": "8119.5368", "value 2026-01-12 14:51:51,380 - app.clients.bloomberg_client - INFO - ✅ Parsed 25 items from remote. 2026-01-12 14:51:53,217 - app.clients.bloomberg_client - INFO - ✅ Saved 25 records to database. 2026-01-12 14:51:53,218 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=76, Msg=Finalizing data..., Progress=82% 2026-01-12 14:51:54,383 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 14:51:54,384 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 00631 HK Equity 2026-01-12 14:51:54,384 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=76, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 14:51:54,664 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=76, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 15:00:38,249 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=77, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 15:00:39,187 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 15:00:39,747 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 15:00:39,779 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 15:00:39,850 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 15:00:39,850 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=77, Msg=数据源连接成功, Progress=10% 2026-01-12 15:00:40,301 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=77, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 15:00:40,995 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 6301 JP Equity 2026-01-12 15:00:40,995 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=77, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 15:00:41,901 - app.clients.bloomberg_client - INFO - Using forced currency: CNY 2026-01-12 15:00:41,901 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 15:00:41,901 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=77, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 15:00:43,438 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:00:43", "currency": "CNY", "indicator": "company_name", "value": "KOMATSU LTD", "value_date": "2026-01-12 15:00:43"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:00:43", "currency": "CNY", "indicator": "pe_ratio", "value": "11.538204871538206", "value_date": "2026-01-12 15:00:43"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:00:43", "currency": "CNY", "indicator": "pb_ratio", "value": "1.4637777168999744", "value_date": "2026-01-12 15:00:43"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:00:43", "currency": "CNY", "indicator": "market_cap", "value": "4825676795940.001", "value_date": "2026-01-12 15:00:43"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:00:43", "currency": "CNY", "indicator": "Rev_Abroad", "value": "86.05716369679564", "value_date": "2026-01-12 15:00:43"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01- 2026-01-12 15:00:43,438 - app.clients.bloomberg_client - INFO - ✅ Parsed 6 items from remote. 2026-01-12 15:00:43,439 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 15:00:43', 'currency': 'CNY', 'indicator': 'company_name', 'value': 'KOMATSU LTD', 'value_date': '2026-01-12 15:00:43'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 15:00:43', 'currency': 'CNY', 'indicator': 'pe_ratio', 'value': '11.538204871538206', 'value_date': '2026-01-12 15:00:43'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 15:00:43', 'currency': 'CNY', 'indicator': 'pb_ratio', 'value': '1.4637777168999744', 'value_date': '2026-01-12 15:00:43'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 15:00:43', 'currency': 'CNY', 'indicator': 'market_cap', 'value': '4825676795940.001', 'value_date': '2026-01-12 15:00:43'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 15:00:43', 'currency': 'CNY', 'indicator': 'Rev_Abroad', 'value': '86.05716369679564', 'value_date': '2026-01-12 15:00:43'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 15:00:43', 'currency': 'CNY', 'indicator': 'dividend_yield', 'value': '3.894351262772315', 'value_date': '2026-01-12 15:00:43'}] 2026-01-12 15:00:45,449 - app.clients.bloomberg_client - INFO - ✅ Saved 6 records to database. 2026-01-12 15:00:45,450 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 15:00:45,450 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=77, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 15:00:46,868 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:00:46", "currency": "CNY", "indicator": "Revenue", "value": "98388.5158", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:00:46", "currency": "CNY", "indicator": "Net_Income", "value": "7289.1658", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:00:46", "currency": "CNY", "indicator": "Cash_From_Operating", "value": "16953.5985", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:00:46", "currency": "CNY", "indicator": "Capital_Expenditure", "value": "-8830.1561", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:00:46", "currency": "CNY", "indicator": "Free_Cash_Flow", "value": "8123.4424", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:00:46", "currency": "CNY", "indicator": "Dividends_ 2026-01-12 15:00:46,869 - app.clients.bloomberg_client - INFO - ✅ Parsed 248 items from remote. 2026-01-12 15:01:02,833 - app.clients.bloomberg_client - INFO - ✅ Saved 248 records to database. 2026-01-12 15:01:02,835 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 15:01:02,835 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=77, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 15:01:03,945 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:01:03", "currency": "CNY", "indicator": "ROE", "value": "9.0222", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:01:03", "currency": "CNY", "indicator": "ROA", "value": "5.0776", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:01:03", "currency": "CNY", "indicator": "ROCE", "value": "10.4918", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:01:03", "currency": "CNY", "indicator": "Gross_Margin", "value": "29.0675", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:01:03", "currency": "CNY", "indicator": "EBITDA_margin", "value": "17.3073", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:01:03", "currency": "CNY", "indicator": "Net_Profit_Margin", "value": "7.4086", "value_date": "2016- 2026-01-12 15:01:03,946 - app.clients.bloomberg_client - INFO - ✅ Parsed 200 items from remote. 2026-01-12 15:01:16,421 - app.clients.bloomberg_client - INFO - ✅ Saved 200 records to database. 2026-01-12 15:01:16,422 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 15:01:16,422 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=77, Msg=正在获取价格指标..., Progress=69% 2026-01-12 15:01:17,447 - app.clients.bloomberg_client - WARNING - No revenue dates found. Falling back to yearly price fetch (Dec 31). 2026-01-12 15:01:30,781 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:01:17", "currency": "CNY", "indicator": "Last_Price", "value": "223.73673", "value_date": "2025-12-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:01:17", "currency": "CNY", "indicator": "Market_Cap", "value": "208151.3659", "value_date": "2025-12-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:01:17", "currency": "CNY", "indicator": "Dividend_Yield", "value": "4.04", "value_date": "2025-12-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:01:17", "currency": "CNY", "indicator": "Last_Price", "value": "202.05148", "value_date": "2024-12-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:01:17", "currency": "CNY", "indicator": "Market_Cap", "value": "192141.4848", "value_date": "2024-12-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:01:17", "currency": "CNY", "indicator": "Dividend_Yield", "value": "4. 2026-01-12 15:01:30,783 - app.clients.bloomberg_client - INFO - ✅ Parsed 30 items from remote. 2026-01-12 15:01:33,358 - app.clients.bloomberg_client - INFO - ✅ Saved 30 records to database. 2026-01-12 15:01:33,358 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=77, Msg=Finalizing data..., Progress=82% 2026-01-12 15:01:34,774 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 15:01:34,774 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 6301 JP Equity 2026-01-12 15:01:34,775 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=77, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 15:01:35,316 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=77, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 15:03:03,280 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=78, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 15:03:04,370 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 15:03:04,916 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 15:03:04,945 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 15:03:05,071 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 15:03:05,196 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=78, Msg=数据源连接成功, Progress=10% 2026-01-12 15:03:06,469 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=78, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 15:03:06,746 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 6301 JP Equity 2026-01-12 15:03:06,746 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=78, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 15:03:07,404 - app.clients.bloomberg_client - INFO - Using forced currency: CNY 2026-01-12 15:03:07,405 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 15:03:07,406 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=78, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 15:03:08,864 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:09", "currency": "CNY", "indicator": "company_name", "value": "KOMATSU LTD", "value_date": "2026-01-12 15:03:09"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:09", "currency": "CNY", "indicator": "pe_ratio", "value": "11.538204871538206", "value_date": "2026-01-12 15:03:09"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:09", "currency": "CNY", "indicator": "pb_ratio", "value": "1.4637777168999744", "value_date": "2026-01-12 15:03:09"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:09", "currency": "CNY", "indicator": "market_cap", "value": "4825676795940.001", "value_date": "2026-01-12 15:03:09"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:09", "currency": "CNY", "indicator": "Rev_Abroad", "value": "86.05716369679564", "value_date": "2026-01-12 15:03:09"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01- 2026-01-12 15:03:08,865 - app.clients.bloomberg_client - INFO - ✅ Parsed 6 items from remote. 2026-01-12 15:03:08,865 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 15:03:09', 'currency': 'CNY', 'indicator': 'company_name', 'value': 'KOMATSU LTD', 'value_date': '2026-01-12 15:03:09'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 15:03:09', 'currency': 'CNY', 'indicator': 'pe_ratio', 'value': '11.538204871538206', 'value_date': '2026-01-12 15:03:09'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 15:03:09', 'currency': 'CNY', 'indicator': 'pb_ratio', 'value': '1.4637777168999744', 'value_date': '2026-01-12 15:03:09'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 15:03:09', 'currency': 'CNY', 'indicator': 'market_cap', 'value': '4825676795940.001', 'value_date': '2026-01-12 15:03:09'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 15:03:09', 'currency': 'CNY', 'indicator': 'Rev_Abroad', 'value': '86.05716369679564', 'value_date': '2026-01-12 15:03:09'}, {'Company_code': '6301 JP Equity', 'update_date': '2026-01-12 15:03:09', 'currency': 'CNY', 'indicator': 'dividend_yield', 'value': '3.894351262772315', 'value_date': '2026-01-12 15:03:09'}] 2026-01-12 15:03:10,135 - app.clients.bloomberg_client - INFO - ✅ Saved 6 records to database. 2026-01-12 15:03:10,135 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 15:03:10,136 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=78, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 15:03:11,570 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:10", "currency": "CNY", "indicator": "Revenue", "value": "98388.5158", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:10", "currency": "CNY", "indicator": "Net_Income", "value": "7289.1658", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:10", "currency": "CNY", "indicator": "Cash_From_Operating", "value": "16953.5985", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:10", "currency": "CNY", "indicator": "Capital_Expenditure", "value": "-8830.1561", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:10", "currency": "CNY", "indicator": "Free_Cash_Flow", "value": "8123.4424", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:10", "currency": "CNY", "indicator": "Dividends_ 2026-01-12 15:03:11,570 - app.clients.bloomberg_client - INFO - ✅ Parsed 248 items from remote. 2026-01-12 15:03:29,582 - app.clients.bloomberg_client - INFO - ✅ Saved 248 records to database. 2026-01-12 15:03:29,585 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 15:03:29,585 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=78, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 15:03:30,903 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:30", "currency": "CNY", "indicator": "ROE", "value": "9.0222", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:30", "currency": "CNY", "indicator": "ROA", "value": "5.0776", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:30", "currency": "CNY", "indicator": "ROCE", "value": "10.4918", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:30", "currency": "CNY", "indicator": "Gross_Margin", "value": "29.0675", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:30", "currency": "CNY", "indicator": "EBITDA_margin", "value": "17.3073", "value_date": "2016-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:30", "currency": "CNY", "indicator": "Net_Profit_Margin", "value": "7.4086", "value_date": "2016- 2026-01-12 15:03:30,904 - app.clients.bloomberg_client - INFO - ✅ Parsed 200 items from remote. 2026-01-12 15:03:42,872 - app.clients.bloomberg_client - INFO - ✅ Saved 200 records to database. 2026-01-12 15:03:42,874 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 15:03:42,874 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=78, Msg=正在获取价格指标..., Progress=69% 2026-01-12 15:03:44,697 - app.clients.bloomberg_client - INFO - Found 10 revenue reporting dates. Fetching aligned price data... 2026-01-12 15:03:57,466 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:44", "currency": "CNY", "indicator": "Last_Price", "value": "208.47187", "value_date": "2025-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:44", "currency": "CNY", "indicator": "Market_Cap", "value": "198246.9783", "value_date": "2025-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:44", "currency": "CNY", "indicator": "Dividend_Yield", "value": "4.4124", "value_date": "2025-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:44", "currency": "CNY", "indicator": "Last_Price", "value": "211.10676", "value_date": "2024-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:44", "currency": "CNY", "indicator": "Market_Cap", "value": "205578.0066", "value_date": "2024-03-31"}, {"Company_code": "6301 JP Equity", "update_date": "2026-01-12 15:03:44", "currency": "CNY", "indicator": "Dividend_Yield", "value": " 2026-01-12 15:03:57,467 - app.clients.bloomberg_client - INFO - ✅ Parsed 30 items from remote. 2026-01-12 15:04:01,642 - app.clients.bloomberg_client - INFO - ✅ Saved 30 records to database. 2026-01-12 15:04:01,642 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=78, Msg=Finalizing data..., Progress=82% 2026-01-12 15:04:03,197 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 15:04:03,198 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 6301 JP Equity 2026-01-12 15:04:03,199 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=78, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 15:04:03,616 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=78, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 18:12:48,235 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=79, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 18:12:49,501 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 18:12:49,900 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 18:12:50,098 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 18:12:50,156 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 18:12:50,156 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=79, Msg=数据源连接成功, Progress=10% 2026-01-12 18:12:51,415 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=79, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 18:12:53,347 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 000725 CH Equity 2026-01-12 18:12:53,347 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=79, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 18:12:54,548 - app.clients.bloomberg_client - INFO - Using auto-detected currency: CNY 2026-01-12 18:12:54,548 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 18:12:54,548 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=79, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 18:12:55,901 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:12:56", "currency": "CNY", "indicator": "company_name", "value": "BOE TECHNOLOGY GROUP CO LT-A", "value_date": "2026-01-12 18:12:56"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:12:56", "currency": "CNY", "indicator": "pe_ratio", "value": "25.959361598462067", "value_date": "2026-01-12 18:12:56"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:12:56", "currency": "CNY", "indicator": "pb_ratio", "value": "1.2417412746613823", "value_date": "2026-01-12 18:12:56"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:12:56", "currency": "CNY", "indicator": "market_cap", "value": "164036307936.54987", "value_date": "2026-01-12 18:12:56"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:12:56", "currency": "CNY", "indicator": "Rev_Abroad", "value": "49.83268989557015", "value_date": "2026-01-12 18:12:56"}, {"Company_code": "000725 CH Equ 2026-01-12 18:12:55,905 - app.clients.bloomberg_client - INFO - ✅ Parsed 7 items from remote. 2026-01-12 18:12:55,906 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '000725 CH Equity', 'update_date': '2026-01-12 18:12:56', 'currency': 'CNY', 'indicator': 'company_name', 'value': 'BOE TECHNOLOGY GROUP CO LT-A', 'value_date': '2026-01-12 18:12:56'}, {'Company_code': '000725 CH Equity', 'update_date': '2026-01-12 18:12:56', 'currency': 'CNY', 'indicator': 'pe_ratio', 'value': '25.959361598462067', 'value_date': '2026-01-12 18:12:56'}, {'Company_code': '000725 CH Equity', 'update_date': '2026-01-12 18:12:56', 'currency': 'CNY', 'indicator': 'pb_ratio', 'value': '1.2417412746613823', 'value_date': '2026-01-12 18:12:56'}, {'Company_code': '000725 CH Equity', 'update_date': '2026-01-12 18:12:56', 'currency': 'CNY', 'indicator': 'market_cap', 'value': '164036307936.54987', 'value_date': '2026-01-12 18:12:56'}, {'Company_code': '000725 CH Equity', 'update_date': '2026-01-12 18:12:56', 'currency': 'CNY', 'indicator': 'Rev_Abroad', 'value': '49.83268989557015', 'value_date': '2026-01-12 18:12:56'}, {'Company_code': '000725 CH Equity', 'update_date': '2026-01-12 18:12:56', 'currency': 'CNY', 'indicator': 'dividend_yield', 'value': '1.1210762498891942', 'value_date': '2026-01-12 18:12:56'}, {'Company_code': '000725 CH Equity', 'update_date': '2026-01-12 18:12:56', 'currency': 'CNY', 'indicator': 'IPO_date', 'value': '2001-01-12', 'value_date': '2026-01-12 18:12:56'}] 2026-01-12 18:12:56,950 - app.clients.bloomberg_client - INFO - ✅ Saved 7 records to database. 2026-01-12 18:12:56,951 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 18:12:56,951 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=79, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 18:13:00,033 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:12:59", "currency": "CNY", "indicator": "Revenue", "value": "68895.659", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:12:59", "currency": "CNY", "indicator": "Net_Income", "value": "1882.5717", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:12:59", "currency": "CNY", "indicator": "Cash_From_Operating", "value": "8308.9467", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:12:59", "currency": "CNY", "indicator": "Capital_Expenditure", "value": "-30702.6147", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:12:59", "currency": "CNY", "indicator": "Free_Cash_Flow", "value": "-22393.668", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:12:59", "currency": "CNY", "indicator": 2026-01-12 18:13:00,034 - app.clients.bloomberg_client - INFO - ✅ Parsed 225 items from remote. 2026-01-12 18:13:21,758 - app.clients.bloomberg_client - INFO - ✅ Saved 225 records to database. 2026-01-12 18:13:21,759 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 18:13:21,760 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=79, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 18:13:22,781 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:13:22", "currency": "CNY", "indicator": "ROE", "value": "2.4107", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:13:22", "currency": "CNY", "indicator": "ROA", "value": "1.0525", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:13:22", "currency": "CNY", "indicator": "ROCE", "value": "2.905", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:13:22", "currency": "CNY", "indicator": "Gross_Margin", "value": "17.8675", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:13:22", "currency": "CNY", "indicator": "EBITDA_margin", "value": "18.8079", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:13:22", "currency": "CNY", "indicator": "Net_Profit_Margin", "value": "2.7325", "value_dat 2026-01-12 18:13:22,781 - app.clients.bloomberg_client - INFO - ✅ Parsed 175 items from remote. 2026-01-12 18:13:42,509 - app.clients.bloomberg_client - INFO - ✅ Saved 175 records to database. 2026-01-12 18:13:42,510 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 18:13:42,510 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=79, Msg=正在获取价格指标..., Progress=69% 2026-01-12 18:13:43,034 - app.clients.bloomberg_client - INFO - Found 9 revenue reporting dates. Fetching aligned price data... 2026-01-12 18:13:53,991 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:13:43", "currency": "CNY", "indicator": "Last_Price", "value": "4.39", "value_date": "2024-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:13:43", "currency": "CNY", "indicator": "Market_Cap", "value": "163990.883", "value_date": "2024-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:13:43", "currency": "CNY", "indicator": "Dividend_Yield", "value": "0.6834", "value_date": "2024-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:13:43", "currency": "CNY", "indicator": "Last_Price", "value": "3.9", "value_date": "2023-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:13:43", "currency": "CNY", "indicator": "Market_Cap", "value": "145742.6957", "value_date": "2023-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:13:43", "currency": "CNY", "indicator": "Dividend_Yield", "value": " 2026-01-12 18:13:53,992 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-12 18:13:56,649 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-12 18:13:56,649 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=79, Msg=Finalizing data..., Progress=82% 2026-01-12 18:13:59,126 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 18:13:59,127 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 000725 CH Equity 2026-01-12 18:13:59,127 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=79, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 18:13:59,568 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=79, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 18:50:10,831 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=80, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 18:50:11,898 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 18:50:12,774 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 18:50:12,816 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 18:50:12,900 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 18:50:12,900 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=80, Msg=数据源连接成功, Progress=10% 2026-01-12 18:50:13,188 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=80, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 18:50:13,808 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 000725 CH Equity 2026-01-12 18:50:13,808 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=80, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 18:50:14,304 - app.clients.bloomberg_client - INFO - Using auto-detected currency: CNY 2026-01-12 18:50:14,305 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 18:50:14,305 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=80, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 18:50:16,663 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:17", "currency": "CNY", "indicator": "company_name", "value": "BOE TECHNOLOGY GROUP CO LT-A", "value_date": "2026-01-12 18:50:17"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:17", "currency": "CNY", "indicator": "pe_ratio", "value": "25.959361598462067", "value_date": "2026-01-12 18:50:17"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:17", "currency": "CNY", "indicator": "pb_ratio", "value": "1.2417412746613823", "value_date": "2026-01-12 18:50:17"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:17", "currency": "CNY", "indicator": "Rev_Abroad", "value": "49.83268989557015", "value_date": "2026-01-12 18:50:17"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:17", "currency": "CNY", "indicator": "dividend_yield", "value": "1.1210762498891942", "value_date": "2026-01-12 18:50:17"}, {"Company_code": "000725 CH 2026-01-12 18:50:16,664 - app.clients.bloomberg_client - INFO - ✅ Parsed 7 items from remote. 2026-01-12 18:50:16,664 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '000725 CH Equity', 'update_date': '2026-01-12 18:50:17', 'currency': 'CNY', 'indicator': 'company_name', 'value': 'BOE TECHNOLOGY GROUP CO LT-A', 'value_date': '2026-01-12 18:50:17'}, {'Company_code': '000725 CH Equity', 'update_date': '2026-01-12 18:50:17', 'currency': 'CNY', 'indicator': 'pe_ratio', 'value': '25.959361598462067', 'value_date': '2026-01-12 18:50:17'}, {'Company_code': '000725 CH Equity', 'update_date': '2026-01-12 18:50:17', 'currency': 'CNY', 'indicator': 'pb_ratio', 'value': '1.2417412746613823', 'value_date': '2026-01-12 18:50:17'}, {'Company_code': '000725 CH Equity', 'update_date': '2026-01-12 18:50:17', 'currency': 'CNY', 'indicator': 'Rev_Abroad', 'value': '49.83268989557015', 'value_date': '2026-01-12 18:50:17'}, {'Company_code': '000725 CH Equity', 'update_date': '2026-01-12 18:50:17', 'currency': 'CNY', 'indicator': 'dividend_yield', 'value': '1.1210762498891942', 'value_date': '2026-01-12 18:50:17'}, {'Company_code': '000725 CH Equity', 'update_date': '2026-01-12 18:50:17', 'currency': 'CNY', 'indicator': 'IPO_date', 'value': '2001-01-12', 'value_date': '2026-01-12 18:50:17'}, {'Company_code': '000725 CH Equity', 'update_date': '2026-01-12 18:50:17', 'currency': 'CNY', 'indicator': 'market_cap', 'value': '164036.2257', 'value_date': '2026-01-12 18:50:17'}] 2026-01-12 18:50:17,449 - app.clients.bloomberg_client - INFO - ✅ Saved 7 records to database. 2026-01-12 18:50:17,449 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 18:50:17,450 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=80, Msg=正在获取货币指标 (CNY)..., Progress=41% 2026-01-12 18:50:18,858 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:18", "currency": "CNY", "indicator": "Revenue", "value": "68895.659", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:18", "currency": "CNY", "indicator": "Net_Income", "value": "1882.5717", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:18", "currency": "CNY", "indicator": "Cash_From_Operating", "value": "8308.9467", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:18", "currency": "CNY", "indicator": "Capital_Expenditure", "value": "-30702.6147", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:18", "currency": "CNY", "indicator": "Free_Cash_Flow", "value": "-22393.668", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:18", "currency": "CNY", "indicator": 2026-01-12 18:50:18,864 - app.clients.bloomberg_client - INFO - ✅ Parsed 225 items from remote. 2026-01-12 18:50:41,919 - app.clients.bloomberg_client - INFO - ✅ Saved 225 records to database. 2026-01-12 18:50:41,920 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 18:50:41,920 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=80, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 18:50:43,550 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:43", "currency": "CNY", "indicator": "ROE", "value": "2.4107", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:43", "currency": "CNY", "indicator": "ROA", "value": "1.0525", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:43", "currency": "CNY", "indicator": "ROCE", "value": "2.905", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:43", "currency": "CNY", "indicator": "Gross_Margin", "value": "17.8675", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:43", "currency": "CNY", "indicator": "EBITDA_margin", "value": "18.8079", "value_date": "2016-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:50:43", "currency": "CNY", "indicator": "Net_Profit_Margin", "value": "2.7325", "value_dat 2026-01-12 18:50:43,551 - app.clients.bloomberg_client - INFO - ✅ Parsed 175 items from remote. 2026-01-12 18:51:00,614 - app.clients.bloomberg_client - INFO - ✅ Saved 175 records to database. 2026-01-12 18:51:00,616 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 18:51:00,616 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=80, Msg=正在获取价格指标..., Progress=69% 2026-01-12 18:51:01,579 - app.clients.bloomberg_client - INFO - Found 9 revenue reporting dates. Fetching aligned price data... 2026-01-12 18:51:12,149 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:51:01", "currency": "CNY", "indicator": "Last_Price", "value": "4.39", "value_date": "2024-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:51:01", "currency": "CNY", "indicator": "Market_Cap", "value": "163990.883", "value_date": "2024-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:51:01", "currency": "CNY", "indicator": "Dividend_Yield", "value": "0.6834", "value_date": "2024-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:51:01", "currency": "CNY", "indicator": "Last_Price", "value": "3.9", "value_date": "2023-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:51:01", "currency": "CNY", "indicator": "Market_Cap", "value": "145742.6957", "value_date": "2023-12-31"}, {"Company_code": "000725 CH Equity", "update_date": "2026-01-12 18:51:01", "currency": "CNY", "indicator": "Dividend_Yield", "value": " 2026-01-12 18:51:12,150 - app.clients.bloomberg_client - INFO - ✅ Parsed 27 items from remote. 2026-01-12 18:51:20,135 - app.clients.bloomberg_client - INFO - ✅ Saved 27 records to database. 2026-01-12 18:51:20,137 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=80, Msg=Finalizing data..., Progress=82% 2026-01-12 18:51:21,801 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 18:51:21,802 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 000725 CH Equity 2026-01-12 18:51:21,803 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=80, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 18:51:24,153 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=80, Msg=Bloomberg 数据同步完成, Progress=100% 2026-01-12 19:07:13,245 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=81, Msg=正在初始化数据获取..., Progress=0% 2026-01-12 19:07:15,033 - app.clients.bloomberg_client - INFO - Connecting to Jupyter at http://192.168.3.161:8888... 2026-01-12 19:07:16,023 - app.clients.bloomberg_client - INFO - ✅ Authentication successful. 2026-01-12 19:07:16,065 - app.clients.bloomberg_client - INFO - ✅ Found existing kernel: bc27f3b1-b028-434a-99fa-c1cad4495a87 (remote_env) 2026-01-12 19:07:16,139 - app.clients.bloomberg_client - INFO - ✅ WebSocket connected. 2026-01-12 19:07:16,140 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=81, Msg=数据源连接成功, Progress=10% 2026-01-12 19:07:17,324 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=81, Msg=正在连接 Bloomberg 终端..., Progress=20% 2026-01-12 19:07:18,445 - app.clients.bloomberg_client - INFO - 🚀 Starting fetch for: 00631 HK Equity 2026-01-12 19:07:18,447 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=81, Msg=Starting Bloomberg session..., Progress=20% 2026-01-12 19:07:19,414 - app.clients.bloomberg_client - INFO - Using auto-detected currency: HKD 2026-01-12 19:07:19,414 - app.clients.bloomberg_client - INFO - Fetching Basic Data... 2026-01-12 19:07:19,415 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=81, Msg=Fetching Company Basic Info..., Progress=27% 2026-01-12 19:07:22,487 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:23", "currency": "HKD", "indicator": "company_name", "value": "SANY HEAVY EQUIPMENT INTL", "value_date": "2026-01-12 19:07:23"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:23", "currency": "HKD", "indicator": "pe_ratio", "value": "19.933741441016245", "value_date": "2026-01-12 19:07:23"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:23", "currency": "HKD", "indicator": "pb_ratio", "value": "2.110479881831945", "value_date": "2026-01-12 19:07:23"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:23", "currency": "HKD", "indicator": "Rev_Abroad", "value": "37.287945521334656", "value_date": "2026-01-12 19:07:23"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:23", "currency": "HKD", "indicator": "dividend_yield", "value": "3.162486277593781", "value_date": "2026-01-12 19:07:23"}, {"Company_code": "00631 HK Equity", 2026-01-12 19:07:22,488 - app.clients.bloomberg_client - INFO - ✅ Parsed 7 items from remote. 2026-01-12 19:07:22,488 - app.clients.bloomberg_client - INFO - DEBUG: basic_data before save: [{'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 19:07:23', 'currency': 'HKD', 'indicator': 'company_name', 'value': 'SANY HEAVY EQUIPMENT INTL', 'value_date': '2026-01-12 19:07:23'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 19:07:23', 'currency': 'HKD', 'indicator': 'pe_ratio', 'value': '19.933741441016245', 'value_date': '2026-01-12 19:07:23'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 19:07:23', 'currency': 'HKD', 'indicator': 'pb_ratio', 'value': '2.110479881831945', 'value_date': '2026-01-12 19:07:23'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 19:07:23', 'currency': 'HKD', 'indicator': 'Rev_Abroad', 'value': '37.287945521334656', 'value_date': '2026-01-12 19:07:23'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 19:07:23', 'currency': 'HKD', 'indicator': 'dividend_yield', 'value': '3.162486277593781', 'value_date': '2026-01-12 19:07:23'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 19:07:23', 'currency': 'HKD', 'indicator': 'IPO_date', 'value': '2009-11-25', 'value_date': '2026-01-12 19:07:23'}, {'Company_code': '00631 HK Equity', 'update_date': '2026-01-12 19:07:23', 'currency': 'HKD', 'indicator': 'market_cap', 'value': '29641.2727', 'value_date': '2026-01-12 19:07:23'}] 2026-01-12 19:07:23,816 - app.clients.bloomberg_client - INFO - ✅ Saved 7 records to database. 2026-01-12 19:07:23,818 - app.clients.bloomberg_client - INFO - Fetching Currency Data... 2026-01-12 19:07:23,818 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=81, Msg=正在获取货币指标 (HKD)..., Progress=41% 2026-01-12 19:07:26,292 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:24", "currency": "HKD", "indicator": "Revenue", "value": "2152.9812", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:24", "currency": "HKD", "indicator": "Net_Income", "value": "-753.2314", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:24", "currency": "HKD", "indicator": "Cash_From_Operating", "value": "1557.419", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:24", "currency": "HKD", "indicator": "Capital_Expenditure", "value": "-179.3705", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:24", "currency": "HKD", "indicator": "Free_Cash_Flow", "value": "1378.0485", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:24", "currency": "HKD", "indicator": "Dividend 2026-01-12 19:07:26,293 - app.clients.bloomberg_client - INFO - ✅ Parsed 213 items from remote. 2026-01-12 19:07:47,000 - app.clients.bloomberg_client - INFO - ✅ Saved 213 records to database. 2026-01-12 19:07:47,006 - app.clients.bloomberg_client - INFO - Fetching Non-Currency Data... 2026-01-12 19:07:47,006 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=81, Msg=正在获取非货币指标..., Progress=55% 2026-01-12 19:07:48,166 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:47", "currency": "HKD", "indicator": "ROE", "value": "-10.132", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:47", "currency": "HKD", "indicator": "ROA", "value": "-6.0025", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:47", "currency": "HKD", "indicator": "Gross_Margin", "value": "14.994", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:47", "currency": "HKD", "indicator": "EBITDA_margin", "value": "-28.2708", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:47", "currency": "HKD", "indicator": "Net_Profit_Margin", "value": "-34.9855", "value_date": "2016-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:07:47", "currency": "HKD", "indicator": "Tax_Rate", "value": "0.25", "value_da 2026-01-12 19:07:48,168 - app.clients.bloomberg_client - INFO - ✅ Parsed 150 items from remote. 2026-01-12 19:08:07,614 - app.clients.bloomberg_client - INFO - ✅ Saved 150 records to database. 2026-01-12 19:08:07,618 - app.clients.bloomberg_client - INFO - Fetching Price Data (Aligned)... 2026-01-12 19:08:07,619 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=81, Msg=正在获取价格指标..., Progress=69% 2026-01-12 19:08:08,123 - app.clients.bloomberg_client - INFO - Found 9 revenue reporting dates. Fetching aligned price data... 2026-01-12 19:08:18,378 - app.clients.bloomberg_client - INFO - REMOTE RAW OUTPUT: JSON_START [{"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:08:08", "currency": "HKD", "indicator": "Last_Price", "value": "4.51", "value_date": "2024-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:08:08", "currency": "HKD", "indicator": "Market_Cap", "value": "14494.6462", "value_date": "2024-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:08:08", "currency": "HKD", "indicator": "Dividend_Yield", "value": "4.2129", "value_date": "2024-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:08:08", "currency": "HKD", "indicator": "Last_Price", "value": "7.55", "value_date": "2023-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:08:08", "currency": "HKD", "indicator": "Market_Cap", "value": "24081.9354", "value_date": "2023-12-31"}, {"Company_code": "00631 HK Equity", "update_date": "2026-01-12 19:08:08", "currency": "HKD", "indicator": "Dividend_Yield", "value": "2.5166 2026-01-12 19:08:18,379 - app.clients.bloomberg_client - INFO - ✅ Parsed 25 items from remote. 2026-01-12 19:08:23,531 - app.clients.bloomberg_client - INFO - ✅ Saved 25 records to database. 2026-01-12 19:08:23,532 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=81, Msg=Finalizing data..., Progress=82% 2026-01-12 19:08:25,393 - app.clients.bloomberg_client - INFO - ✅ Cleanup and View Refresh completed. 2026-01-12 19:08:25,394 - app.clients.bloomberg_client - INFO - ✅ Completed processing for 00631 HK Equity 2026-01-12 19:08:25,394 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=81, Msg=Bloomberg data sync complete, Progress=90% 2026-01-12 19:08:26,834 - app.services.data_fetcher_service - INFO - 🔄 [进度更新] ID=81, Msg=Bloomberg 数据同步完成, Progress=100%