"""通达信连接测试 — 验证能否连上招商证券服务器 用法: python tests/test_tdx_connect.py """ import sys import os sys.path.insert(0, os.path.join(os.path.dirname(__file__), "..", "src")) try: import opentdx print(f"✅ opentdx {opentdx.__version__}") except ImportError: print("❌ 请先 pip install opentdx") sys.exit(1) def test_server(ip, port, name="未知"): print(f"\n🔄 {name}: {ip}:{port}") try: from opentdx.tdxClient import TdxClient from opentdx.const import EX_MARKET with TdxClient() as client: # A股 aq = client.stock_quotes([(0, '000001')]) if aq: print(f" ✅ A股 平安银行: {aq[0].get('price', '?')}") # 港股 hk = client.goods_quotes([(EX_MARKET.HK_MAIN_BOARD, '00700')]) if hk: q = hk[0] print(f" ✅ 港股 腾讯: {q.get('price', '?')} ({q.get('change_pct', '?')}%)") else: print(" ❌ 港股无数据") except Exception as e: print(f" ❌ {e}") if __name__ == "__main__": from relay.config import MARKET_SERVERS if MARKET_SERVERS: for name, ip, port in MARKET_SERVERS: test_server(ip, port, name) else: print("⚠️ config.py 中 MARKET_SERVERS 为空") print("请在招商证券客户端 → 通信设置 查看IP后填入")