Commit a9e2038

benny-dou <60535774+benny-dou@users.noreply.github.com>
2025-07-15 04:34:09
fix(price): fix TradingView interval handling
1 parent 2ff236b
Changed files (2)
src/price/entrypoint.py
@@ -187,7 +187,7 @@ async def match_symbol_category(symbol: str = "", *, crypto_only: bool = False,
         msg += f"股票: **{category['tradingview']}**\n"
         msg += f"加密货币: **{category['crypto']}**\n"
         msg += f"默认查询股票: **{tv_symbols[0]}**\n"
-        msg += f"查询其他`{PREFIX.CRYPTO}` 或 `{PREFIX.STOCK}`限定市场"
+        msg += f"使用 `{PREFIX.CRYPTO}` 或 `{PREFIX.STOCK}` 限定市场"
         category["warnings"] = msg
 
     return category
src/price/tradingview.py
@@ -58,13 +58,13 @@ async def get_tradingview_price(symbol: str, interval: str | None = None, **kwar
     """
     if interval is None:
         interval = "5m"
-    # TradingView interval unit: m, h, D, W, M, Y
-    if interval.endswith("h"):
-        interval = interval.upper()
-    elif interval.endswith(("D", "W", "M", "Y")):
-        interval = interval.lower()
     if interval not in ["1m", "3m", "5m", "15m", "30m", "45m", "1h", "2h", "3h", "4h", "1D", "1W", "1M", "3M", "6M", "1Y"]:
         interval = "5m"
+    # TradingView interval unit: m, h, D, W, M, Y
+    if interval.endswith("H"):
+        interval = interval.lower()
+    if interval.endswith(("d", "w", "y")):
+        interval = interval.upper()
 
     symbols = await tradingview_supported(symbol)  # list of supported full symbols
     if not symbols: