stock-quote
GitHub获取股票实时报价、成交量及52周范围等基础信息。支持盘前/盘后数据展示,需根据纽约时间判断交易状态并准确标注价格变动所属时段,确保数据呈现符合市场逻辑。
Trigger Scenarios
Install
npx skills add staskh/trading_skills --skill stock-quote -g -y
SKILL.md
Frontmatter
{
"name": "stock-quote",
"description": "Get real-time stock quote with price, volume, change, market cap, and 52-week range for any ticker symbol. Use when user asks about current stock price, quote, or basic stock info.",
"dependencies": [
"trading-skills"
]
}
Stock Quote
Fetch current stock data from Yahoo Finance.
Instructions
Note: If
uvis not installed orpyproject.tomlis not found, replaceuv run pythonwithpythonin all commands below.
Run the quote script with the ticker symbol:
uv run python scripts/quote.py SYMBOL
Replace SYMBOL with the requested ticker (e.g., AAPL, MSFT, TSLA, SPY).
Output
The script outputs JSON with:
- symbol, name, price, change, change_percent
- as_of_session - the trading date
price/changebelong to (YYYY-MM-DD, from Yahoo's regular-session timestamp; null if Yahoo omits it) - market_open_now - whether the NYSE regular session is open right now
- market_state - Yahoo's session state:
PRE,REGULAR,POST,CLOSED(alsoPREPRE/POSTPOST) - pre_market, post_market -
{price, change, change_percent, time}for extended-hours trading, or null.changeis measured from the last regular close;timeis the ET timestamp of that print - volume, avg_volume, market_cap
- high_52w, low_52w, pe_ratio, forward_pe, dividend_yield, beta
Present the data in a readable format. Highlight significant moves (>2% change).
Before presenting change/change_percent as "today's move", check as_of_session against today's NY calendar date. Before the regular session opens (market_open_now: false and as_of_session is a prior date), Yahoo's change fields still describe the last completed session (yesterday's close vs. the day before) — not intraday movement in the still-unopened current session. In that case, label it as "as of <as_of_session> close", not "today". Once as_of_session equals today's date, change/change_percent are genuinely intraday.
Report the extended-hours move when there is one. Pre-market (market_state: PRE), lead with pre_market as the current move, then give the regular change as the prior session's close. After the close (POST), show post_market alongside the day's regular move. Check each block's time: a post_market print from the previous evening seen during pre-market is last night's move, not this morning's.
Dependencies
yfinance
Timezone
All timestamps and time-based calculations must use the America/New_York timezone. All JSON output must include generated_at (NY time string) and data_delay fields.
Version History
-
3a3bc45
Current 2026-11-02 13:28
新增交易所交易时段状态(market_state)、盘前盘后价格数据(pre/post_market)及as_of_session字段;优化了基于纽约时间的数据延迟与变动归属说明逻辑。
- cc30858 2026-07-05 11:05
Dependencies
-
required
trading-skills


