price_monitor港股币种修复+calc_total_mv汇兑处理
问题链: price_monitor 从东方财富/腾讯拿HK股价(HKD) → x0.87转CNY写portfolio → DB存CNY→下游混读→建滔显示-24%浮亏(实为-0.6%) 修复: price_monitor不转CNY,港股存HKD原值 calc_total_mv()增加币种判断:HK股用get_hk_rate()转CNY再汇总 portfolio.json/watchlist的HK股价全部HKD原值 DB同步修正所有HK股价格为HKD price_monitor DB写入加3次重试+database locked timeout 验证: 建滔 87.7 HKD 浮亏-0.6%(不是-24%) 现金 132,121.93 总资产 956,714.68
This commit is contained in:
+2
-6
@@ -251,13 +251,12 @@ def refresh_data_prices():
|
||||
if s['code'] in prices:
|
||||
price, _, change_pct = prices[s['code']]
|
||||
if price > 0:
|
||||
# 港股:API返回HKD,需转RMB
|
||||
if is_hk_stock(s['code']):
|
||||
price = round(price * HK_RATE, 2)
|
||||
# 港股API返回HKD,直接存HKD原值。calc_total_mv统一做CNY折算
|
||||
old = s.get('price', 0)
|
||||
if abs(old - price) > 0.001:
|
||||
s['price'] = round(price, 2)
|
||||
s['change_pct'] = float(change_pct) if change_pct else 0
|
||||
s['currency'] = 'HKD' if is_hk_stock(s['code']) else 'CNY'
|
||||
updated += 1
|
||||
changed = True
|
||||
if changed:
|
||||
@@ -298,9 +297,6 @@ def refresh_data_prices():
|
||||
if s['code'] in prices:
|
||||
price, _, change_pct = prices[s['code']]
|
||||
if price > 0:
|
||||
# 港股:API返回HKD,需转RMB
|
||||
if is_hk_stock(s['code']):
|
||||
price = round(price * HK_RATE, 2)
|
||||
old = s.get('price', 0)
|
||||
if abs(old - price) > 0.001:
|
||||
s['price'] = round(price, 2)
|
||||
|
||||
Reference in New Issue
Block a user