在股票交易中,你一定听过“均线(Moving Average)”和“黄金交叉(Golden Cross)”这两个词。
以前我们看盘,得用眼睛在 K 线图上一个一个去瞅。今天,我们教大家如何用几行 Python 代码,让计算机自动帮我们算出均线,并找出所有发生“黄金交叉”的历史日期。
我们用 QuantDash 获取最纯净的股票日 K 线数据,然后用 Pandas 提供的 rolling 函数来计算均线。
import pandas as pd
from quantdash import QuantDash
# 初始化数据通道
qd = QuantDash(api_key="your_api_key")
# 获取腾讯控股 (0700.HK) 历史数据
df = qd.klines.get(symbol="0700.HK", period="1d", start_time="2025-01-01", to_dataframe=True)
# 计算 5 日均线 (MA5) 和 20 日均线 (MA20)
df['MA5'] = df['close'].rolling(window=5).mean()
df['MA20'] = df['close'].rolling(window=20).mean()
# 找出黄金交叉的位置
# 逻辑:今天 MA5 > MA20,而昨天 MA5 <= MA20
df['prev_MA5'] = df['MA5'].shift(1)
df['prev_MA20'] = df['MA20'].shift(1)
# 筛选满足黄金交叉条件的行
golden_cross_days = df[(df['MA5'] > df['MA20']) & (df['prev_MA5'] <= df['prev_MA20'])]
print("=== 腾讯控股 (0700.HK) 黄金交叉日期列表 ===")
for index, row in golden_cross_days.iterrows():
print(f"日期: {row['timestamp']} | 收盘价: {row['close']} 元")通过上面这段短小的代码,你其实已经完成了一个量化策略里最核心的“信号生成(Signal Generation)”。
在传统的看盘软件里,你只能被动地看当前图表;而在 Python 里,你可以把这个逻辑推广到成百上千只股票上,在一秒钟内筛选出今天全市场有哪些股票刚刚走出了“黄金交叉”。这就是量化交易的魅力——用计算机的计算力,代替人肉眼盯盘的精力。
参考文档:
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。