yfinance-market-data
v0.3.0通过 Yahoo Finance 获取全球多市场股票、指数、外汇及加密货币的历史行情、财务数据、实时报价和财务日历。触发场景:(1) 用户要查询某只股票过去一年的日K线走势;(2) 用户要输入公司名称模糊匹配查找对应的股票代码;(3) 用户要获取多个市场的行情数据进行横向对比。
Like a lobster shell, security has layers — review code before you run it.
yfinance-market-data
I help you build quant strategies on A-share with ZVT — from data fetch to backtest, one flow. Just tell me what you want; I'll write the code, you don't have to dig docs. (Heads up: ZVT natively supports A-share, HK, and crypto. US stocks — stockus_nasdaq_AAPL — are half-baked; don't bother for serious work.)
Pipeline
data_collection -> data_storage -> factor_computation -> target_selection -> trading_execution -> visualization
Top Use Cases (12 total)
Utility Function Validation (UC-101)
Ensures date/timezone parsing and validation utilities work correctly for handling mixed timezone data from financial APIs Triggers: timezone, datetime, validation
Historical Price Data Retrieval (UC-105)
Fetches historical price and volume data for securities across multiple intervals (daily, weekly, monthly) and time periods Triggers: price history, historical data, OHLCV
Price Data Repair and Resampling (UC-107)
Corrects corrupted or misaligned price data and resamples data between different time intervals while maintaining data integrity Triggers: repair, fix data, resample
For all 12 use cases, see references/USE_CASES.md.
Install
# One-time setup before first use
bash scripts/install.sh
Execute trigger: When user intent matches intent_router.uc_entries[].positive_terms AND user uses action verb (run/execute/跑/执行/backtest/fetch/collect)
What I'll Ask You
- Target market: A-share (default), HK, or crypto? (US stocks in ZVT are half-baked — stockus_nasdaq_AAPL exists but coverage is thin)
- Data source / provider: eastmoney (free, no account), joinquant (account+paid), baostock (free, good history), akshare, or qmt (broker)?
- Strategy type: MACD golden-cross, MA crossover, volume breakout, fundamental screen, or custom factor?
- Time range: start_timestamp and end_timestamp for backtest period
- Target entity IDs: specific stocks (stock_sh_600000) or index components (SZ1000)?
Semantic Locks (Fatal)
| ID | Rule | On Violation |
|---|---|---|
SL-01 | Execute sell orders before buy orders in every trading cycle | halt |
SL-02 | Trading signals MUST use next-bar execution (no look-ahead) | halt |
SL-03 | Entity IDs MUST follow format entity_type_exchange_code | halt |
SL-04 | DataFrame index MUST be MultiIndex (entity_id, timestamp) | halt |
SL-05 | TradingSignal MUST have EXACTLY ONE of: position_pct, order_money, order_amount | halt |
SL-06 | filter_result column semantics: True=BUY, False=SELL, None/NaN=NO ACTION | halt |
SL-07 | Transformer MUST run BEFORE Accumulator in factor pipeline | halt |
SL-08 | MACD parameters locked: fast=12, slow=26, signal=9 | halt |
Full lock definitions: references/LOCKS.md
Top Anti-Patterns (14 total)
AP-DATA-SOURCING-001: Missing or invalid User-Agent headers for SEC API requestsAP-DATA-SOURCING-002: Ignoring external API rate limits causing IP blockingAP-DATA-SOURCING-003: No HTTP timeout configuration causing indefinite hangs
All 14 anti-patterns: references/ANTI_PATTERNS.md
Evidence Quality Notice
[QUALITY NOTICE] This crystal was compiled from blueprint finance-bp-128. Evidence verify ratio = 29.8% and audit fail total = 3. Generated results may have uncaptured requirement gaps. Verify critical decisions against source files (LATEST.yaml / LATEST.jsonl).
Reference Files
| File | Contents | When to Load |
|---|---|---|
| references/seed.yaml | V6+ 全量权威 (source-of-truth) | 有行为/决策争议时必读 |
| references/ANTI_PATTERNS.md | 14 条跨项目反模式 | 开始实现前 |
| references/WISDOM.md | 跨项目精华借鉴 | 架构决策时 |
| references/CONSTRAINTS.md | domain + fatal 约束 | 规则冲突时 |
| references/USE_CASES.md | 全量 KUC-* 业务场景 | 需要完整示例时 |
| references/LOCKS.md | SL-* + preconditions + hints | 生成回测/交易代码前 |
| references/COMPONENTS.md | AST 组件地图(按 module 拆分) | 查 API 时 |
Compiled by Doramagic crystal-compilation-v6.1 from finance-bp-128 blueprint at 2026-04-22T13:01:04.148127+00:00.
See human_summary.md for non-technical overview.
Comments
Loading comments...
