etf-premium
Calculate ETF premium/discount vs NAV via Yahoo Finance, and decompose single-day surges into NAV-driven vs structural components (gamma squeeze, dealer hedging, blocked AP arbitrage). Use whenever the user asks about an ETF's premium or discount, NAV comparison, why an ETF diverged from its holdings, or how much of a move is dealer-hedging-driven. Triggers: "ETF premium", "ETF discount", "NAV premium", "is SPY at a premium", "BITO premium", "IBIT premium", "bond ETF discount", "trading above/below NAV", "ETF premium screener", "biggest discount", "compare ETF NAV", "ETF arbitrage", "ETF gamma squeeze", "ETF premium surge", "decompose ETF move", "dealer gamma exposure", "GEX for ETF", "why did this ETF jump", "premium convergence", "AP arbitrage blocked", or any request about the gap between an ETF's price and underlying value. Especially relevant for leveraged, inverse, international, bond, commodity, and crypto ETFs.
etf-premium — ETF Premium/Discount and Gamma Squeeze Analysis Skill
Skill Overview
etf-premium is an ETF premium/discount analysis skill based on Yahoo Finance data. By calculating the degree to which an ETF’s market price deviates from its net asset value (NAV), it helps you determine whether the current purchase cost is materially different from the true value of the holdings. It can also decompose an ETF’s one-day surge into NAV-driven and excess-premium components, identify structural factors such as gamma squeezes and dealer hedging, and cover bond, international, leveraged/inverse, commodity, and cryptocurrency ETFs.
Use Cases
- Checking the real-time premium/discount status of a single ETF: When you want to know “Is SPY currently trading at a premium or discount?”, “How large is IBIT’s premium?”, or “How far is AGG deviating from NAV?”, the skill generates the market price, NAV, premium rate, bid-ask spread, and other context in one step. It also automatically compares the ETF with peers to determine whether the deviation is widespread or an isolated case.
- Comparing multiple ETFs and screening for discounts: When you want to compare a basket of ETFs to see which has the deepest discount or highest premium, the skill calculates and ranks premium rates for a standardized list. This is useful for quickly identifying patterns and screening for extreme values when bond ETFs are collectively trading at discounts or cryptocurrency ETFs are collectively trading at premiums.
- Attributing an ETF’s one-day surge and identifying gamma squeezes: When an ETF rises more than 5% in a single day and significantly outperforms its holdings—such as “MSTR rises 13% while BTC rises only 3%”—the skill decomposes the gain into the holdings-weighted NAV-driven component and the residual excess-premium component. It then combines options-chain GEX, the Call/Put open-interest ratio, and ATM implied volatility to assess whether a dealer gamma squeeze is occurring and estimate how long it may take for the premium to converge.
Core Functions
- Single-ETF Premium Snapshot: Calculates the premium rate using
Premium/Discount = (Market Price - NAV) / NAV × 100, along with context such as the bid-ask spread, fund size, expense ratio, and average trading volume. It includes peer comparisons by asset class—for example, whether similar cryptocurrency ETFs are all trading at a 1.5% premium—and provides tiered interpretation standards. For large, liquid U.S. equity ETFs, a deviation beyond ±0.10% is considered unusual, while a 0.3–1.5% deviation is normal for leveraged ETFs. - Multi-ETF Comparison and Premium Screener: Calculates premium rates for multiple ETFs or an entire ETF universe, ranking them from the deepest discount to the highest premium while retaining category labels for grouped analysis. It automatically highlights the five ETFs with the deepest discounts and the five with the highest premiums. Entries with missing or failed NAV data are explicitly counted rather than silently skipped.
- Surge Decomposition and Gamma Squeeze Analysis (Surge Decomposition + GEX): Estimates the NAV proxy return using holding weights × daily price changes, with the residual representing the excess premium. Based on the options chain, it calculates dealer gamma exposure (GEX)—the amount of hedging buying or selling triggered by a 1% move in the underlying price—the Call/Put OI ratio, and near-term ATM implied volatility. It estimates the upper bound of dealer hedging capital as a share of daily trading volume and provides a premium-convergence roadmap across three time horizons: hours (AP arbitrage), days (options expiration and gamma decay), and weeks (normalization of fund flows).
Frequently Asked Questions
How much deviation from NAV is considered normal for an ETF?
It depends on the ETF category. Large, highly liquid U.S. ETFs such as SPY, QQQ, and IVV typically trade within ±0.05%; a deviation exceeding 0.10% is unusual. Bond ETFs such as AGG, HYG, and TLT can commonly trade at discounts of 0.5–2% during periods of market volatility. Due to differences in trading hours, international and emerging-market ETFs normally exhibit deviations of 0.3–1%. Because of their daily reset mechanisms, leveraged and inverse ETFs typically have normal deviations of 0.3–1.5%. Cryptocurrency ETFs commonly trade at premiums of 1–3%, especially newly launched funds. In addition, if the deviation is smaller than the ETF’s bid-ask spread, it is more likely to reflect microstructure noise than a genuine mispricing.
Can it explain why an ETF suddenly surges?
Yes. The skill decomposes the ETF’s one-day gain into two components: the NAV-driven return weighted by the holdings (the fundamental component) and the residual excess premium (the structural component). It then reads the options chain to calculate GEX. A significantly negative net GEX indicates that dealers are in a short-gamma position, meaning that a rise will be amplified by their hedging purchases—classic fuel for a gamma squeeze. If open interest is concentrated in a single near-term out-of-the-money call option, the squeeze is fragile and will decay rapidly as expiration approaches. ATM implied volatility significantly above its historical average also indicates that the market is pricing in substantial subsequent volatility. Finally, the skill evaluates how the premium may converge over hourly, daily, and weekly time horizons.
What is the data source, and what are its limitations?
The data comes from Yahoo Finance via the yfinance library. Note that NAV is the official NAV after the previous trading day’s close, not a real-time value, and market data may be delayed by 15 minutes. Therefore, the results are snapshots rather than real-time quotes. GEX calculations are based on publicly available options open interest and assume that dealers have a uniform position direction, making them upper-bound heuristic estimates. For international ETFs whose underlying markets have already closed during U.S. trading hours, the NAV proxy may lag; the skill will clearly indicate this condition. This skill is for research purposes only, does not constitute investment advice, and does not issue buy or sell instructions based solely on premiums or discounts.