用途:扫描一组股票代码的看涨趋势,并按综合评分从高到低排序,用于筛选看涨股票、寻找趋势股票或对股票排名。
主要能力:基于多项技术指标打分,满分约 9.5 分。SMA20 与 SMA50 判断价格是否位于均线上方;RSI 按 50-70、30-50、<30 分档给分;MACD 依据 MACD 与信号线关系及柱状图是否上升给分;EMA9/21 判断金叉、死叉及交叉方向与天数;ADX 在 >25 且 +DI > -DI 时给较高分;动量按区间收益除以 20 计算,范围 -1 到 +2。输出 JSON 包含扫描时间、扫描数量、按分数排序的结果,以及价格、财报日期与时段、区间收益、距均线百分比、各指标值、EMA 与 MACD 交叉方向及距今天数、触发信号列表。
使用方式:命令为 uv run python scripts/scan.py SYMBOLS [--top N] [--period PERIOD]。SYMBOLS 为逗号分隔的股票代码;--top 指定返回数量,默认 30;--period 可选 1mo、3mo、6mo,默认 3mo。若未安装 uv 或找不到 pyproject.toml,将命令中的 uv run python 替换为 python。示例:uv run python scripts/scan.py AAPL,MSFT,GOOGL,NVDA,TSLA;uv run python scripts/scan.py AAPL,MSFT,GOOGL --period 6mo。
评分解读:>6 为强看涨趋势,4-6 为中等看涨,2-4 为中性或偏弱,<2 为看跌或无趋势。EMA 交叉中,EMA9 高于 EMA21 且 days_ago 较小表示新金叉;MACD 交叉方向为 up 且 days_ago 较小表示新看涨交叉。
依赖与限制:依赖 pandas、pandas-ta、yfinance。所有时间戳与基于时间的计算须使用 America/New_York 时区,JSON 输出须包含 generated_at(纽约时间字符串)与 data_delay 字段。资料未提供其他平台、收费或效果信息。