v0.2.0
What's New in v0.2.0
Added
- Seasonals view — TradingView-style seasonals chart showing cumulative year-over-year returns with year range selection and average line toggle. Supports high-resolution matplotlib rendering (via optional
[charts]dependency) with automatic fallback to plotext ASCII charts. - Period returns table — Standard return periods (1W, 1M, 3M, 6M, YTD, 1Y, 3Y, 5Y, Max) displayed alongside the seasonals chart.
- Watchlist dashboard — Track ETFs with at-a-glance metrics including holdings count, top holding, top-10 weight, effective N, concentration verdict, top sectors, overlap vs portfolio, and data freshness. Supports search, filter by issuer, add/remove with undo (Ctrl+Z), double-click to open, and CSV export.
- Fund metadata via Yahoo Finance — Overview now shows category, inception date, expense ratio, dividend yield, beta (3Y), YTD/3Y/5Y returns, exchange, average volume, NAV, and fund description sourced from yfinance.
- Price history service — Yahoo Finance OHLCV data with local SQLite caching (24-hour TTL) and automatic retry logic.
wkeybinding — Presswfrom any ETF view to add the current ETF to the watchlist.[charts]optional dependency —pip install etfray[charts]installs matplotlib and textual-image for high-resolution seasonals charts.
Changed
- Overview view — Now combines SEC N-PORT filing data with Yahoo Finance fund profile for a richer summary.
- Architecture — Added market_data_service, price_history_service, seasonals_analytics, seasonals_plot, and watchlist_view modules.
- Data sources — Yahoo Finance added as a third data source alongside EDGAR and web scraper.
Install / Upgrade
pip install --upgrade etfray
# Optional: for high-res seasonals charts
pip install --upgrade etfray[charts]Full changelog: https://github.com/alwank/etfray/blob/main/CHANGELOG.md
Documentation: https://etfray.readthedocs.io