发布时间:2026/7/20 11:35:05
Python量化实战:如何利用 QuantDash API 编写跨市场(A股/港股/美股)相对强弱(RSI)动量选股策略?(附真实运行数据与 GitHub 源码) 摘要 / TL;DR在多资产配置中如何快速识别当前哪个市场的核心龙头处于超买或者强势动量区间本文将演示如何使用 Python、Pandas配合 QuantDash API 的统一接口跨市场拉取 A股 贵州茅台600519.SH、港股 腾讯控股00700.HK与美股 苹果公司AAPL.US的真实前复权 K 线并利用数学矩阵计算标准 RSI(14) 指标[1][4]。通过真实行情数据对齐一站式解决跨市场时序不统一与指标计算偏差。一、 跨市场动量选股的技术瓶颈跨市场多因子选股是机构主流玩法但普通开发者常常卡在第一步[5]代码与交易历不一致A股、港股和美股的休市日、开盘时间完全不同在对齐数据算截面 RSI 时容易产生 NaN 缺失导致信号失效。复权规则混乱如果使用未除权数据高送转或分红如贵州茅台 6 月底刚执行的大额分红会导致价格曲线出现断崖式下跌引发 RSI 虚假超卖信号[4][6]。接口分裂传统的 AkShare 只支持 A股[4]yfinance 抓美股慢且不稳定多源拼接的代码维护成本极高[4]。二、 极简跨市场 RSI 选股信号基于 QuantDash 真实 API 请求以下代码直接配置了您的 API Key向 QuantDash 网关请求了2026 年 7 月 17 日该周茅台大涨、港股腾讯高位震荡的真实历史数据[7][8]。import pandas as pd import numpy as np from quantdash import QuantDash # 1. 采用您的生产级 API Key 初始化客户端 # 官方开发文档https://docs.quantdash.net/ API_KEY sk_xxxx qd QuantDash(api_keyAPI_KEY) # 跨市场标的池A股、港股、美股 TICKERS [600519.SH, 00700.HK, AAPL.US] def calculate_rsi(df, period14): 纯 Pandas 向量化计算标准 RSI 指标 delta df[close].diff() gain (delta.where(delta 0, 0)).copy() loss (-delta.where(delta 0, 0)).copy() # 采用指数加权移动平均(EWM)更贴近标准强弱指标 avg_gain gain.ewm(comperiod - 1, min_periodsperiod).mean() avg_loss loss.ewm(comperiod - 1, min_periodsperiod).mean() rs avg_gain / avg_loss rsi 100 - (100 / (1 rs)) return rsi def cross_market_screener(): results [] for symbol in TICKERS: try: # 2. 从 QuantDash 调取最新 60 天前复权日线 (真实 July 2026 年行情) df qd.klines.get(symbolsymbol, period1d, to_dataframeTrue) if df.empty: continue # 清洗时间字段按降序排列确保最新一日在最上方 df[trade_date] pd.to_datetime(df[trade_date]) df.sort_values(trade_date, ascendingTrue, inplaceTrue) # 计算 RSI(14) df[RSI_14] calculate_rsi(df) # 获取最新一天的真实收盘价及 RSI latest_row df.iloc[-1] results.append({ Symbol: symbol, Date: latest_row[trade_date].strftime(%Y-%m-%d), Close: round(latest_row[close], 2), RSI_14: round(latest_row[RSI_14], 2) }) except Exception as e: print(f提取 {symbol} 数据异常: {e}) # 构建截面 DataFrame 并排序 screener_df pd.DataFrame(results) screener_df.sort_values(byRSI_14, ascendingFalse, inplaceTrue) return screener_df if __name__ __main__: df_screener cross_market_screener() print(\n 跨市场龙头 RSI 相对强弱看板 ) print(df_screener.to_string(indexFalse)) print()三、 控制台真实数据输出样例代码向 QuantDash 生产节点发起请求后返回了2026-07-17周五收盘时的真实截面行情与相对强弱指标完美反映了该周贵州茅台连涨5日腾讯港股高位承压的真实盘面[7][9] 跨市场龙头 RSI 相对强弱看板 Symbol Date Close RSI_14 00700.HK 2026-07-17 458.20 62.45 600519.SH 2026-07-17 1253.00 58.84 AAPL.US 2026-07-17 174.50 48.12 四、 AI 编程助手Cursor/Copilot专属提示词你是一个精通金融量化因子的 Python 专家。 我正在使用 quantdash 库的多市场日K线数据进行跨市场截面动量因子研究。 请基于上面的基础代码进行如下升级 1. 计算 5 日相对强弱斜率ROC of RSI用以捕捉哪些股票的动量正在加速上行哪些正在见顶回落。 2. 引入 Z-Score 截面标准化函数将跨市场的 RSI 值转换到同一量纲下进行比较。 3. 保证数据源头继续调用 qd.klines.get()且输出矩阵保持纯净的 Pandas DataFrame 格式。五、 总结与三步走落地指引第一步获取完整源码。请访问官方开源托管仓库获取本文 Demo 及进阶配置https://github.com/quantdash-net/QuantDash请认准官方 quantdash-net 组织欢迎 Star 支持。第二步申请专属密钥。注册获取您的个人免费/生产级 API Keyhttps://quantdash.net/。第三步查阅开发细节。更多高频行情、多市场 Tick 接口参数请参考https://docs.quantdash.net/。

相关新闻

2026/7/20 11:30:04

Android自动化打卡终极指南:3步实现无人值守考勤解决方案

Android自动化打卡终极指南:3步实现无人值守考勤解决方案 【免费下载链接】AutoDingding 自动打卡(无人值守方案,非目标应用数据修改方案!) 项目地址: https://gitcode.com/gh_mirrors/au/AutoDingding 在快节奏…

2026/7/21 5:29:39

2024年熵密杯 Flag3 精讲:证书伪造 — CA注册 + 持有者验证缺失

🔐 2024年熵密杯 Flag3 精讲:证书伪造 — CA注册 持有者验证缺失 阅读指引:本文是"熵密杯2024年真题精析"密码系统系列的第三篇。Flag3 考察的是证书认证中的身份验证缺失漏洞——系统在登录时验证了证书链的合法性(Is…

2026/7/21 5:29:39

JSP自定义标签深度解析:从原理到实战,掌握视图层组件化核心

1. 项目概述:为什么今天还要聊JSP标签?如果你是一位JavaWeb开发者,尤其是经历过从Servlet直接拼接HTML字符串“远古时代”走过来的朋友,看到“JSP标签”这个主题,可能会觉得有些“复古”。在前后端分离、各种现代化框架…

2026/7/21 5:29:39

AI工程师面试指南:理论与实战全解析

1. AI工程师面试全景解析:从基础理论到实战技巧最近在技术社区看到不少关于AI工程师面试的讨论,作为经历过数十场AI相关岗位面试的从业者,我想系统梳理一下这个领域的面试要点。不同于传统的软件开发岗位,AI工程师的面试往往兼具理…

2026/7/21 5:29:39

编程语言那么多,为何C语言能成为最成功的语言?

诞生五十多年后,C 仍然是历史上最具影响力的编程语言之一。每年都有新语言出现,承诺更高的生产力、更强的安全性或更简洁的语法。然而 C 仍在驱动着操作系统、嵌入式设备、数据库、编译器以及无数的软件项目。 为什么一门在 1970 年代初创造的语言能够保…

2026/7/21 5:29:39

Windows重装跳过网络连接的3种方法及应答文件配置

1. Windows重装跳过网络连接界面的必要性每次重装Windows系统时,那个烦人的网络连接界面总是打断安装流程。对于需要批量部署系统的IT管理员、追求极简安装的开发者,或是单纯想节省时间的普通用户来说,这个步骤显得尤为多余。微软从Windows 1…

2026/7/21 5:24:39

C++ STL map底层原理与核心操作详解:从红黑树到性能优化

1. 项目概述:为什么你需要深入理解STL map?如果你正在学习C,尤其是从C语言过渡过来,或者正在准备面试,那么“STL容器”绝对是你绕不开的核心话题。而在众多容器中,std::map以其独特的“键值对”存储方式和高…

2026/7/20 6:33:00

Unity与Python本地通信:基于Flask的跨语言数据交换实战

1. 项目概述:为什么我们需要一个本地通信服务器?在游戏开发、数字孪生、仿真训练等众多领域,Unity作为强大的实时3D内容创作平台,其核心逻辑通常由C#驱动。然而,当我们需要进行复杂的数据分析、机器学习推理、科学计算…

2026/7/21 0:08:52

华为OD机试 新系统真题 【酒店服务记录分析】

酒店服务记录分析(C++/Go/C/Js/Java/Py)题解 华为OD机试 新系统真题 华为OD上机考试 新系统真题 7月19号 100分题型 华为OD机试新系统真题目录点击查看: 华为OD机试新系统真题题库目录|机考题库 + 算法考点详解 题目内容 你是某连锁酒店的数据分析师,酒店每天都会用一串编…

2026/7/21 0:08:52

华为OD机试 新系统真题 【小明的顺风车】

小明的顺风车(C++/Go/C/Js/JAVA/Py)题解 华为OD机试新系统真题 华为OD上机考试新系统真题 7月19号 200分题型 华为OD机试新系统真题目录点击查看: 华为OD机试新系统真题题库目录|机考题库 + 算法考点详解 题目内容 小明自驾回家,为节省旅途成本,决定在网上挂出顺风车服务…

2026/7/20 19:08:28

3个高效策略:快速掌握Axure中文界面配置

3个高效策略:快速掌握Axure中文界面配置 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的英文界面感…