Unusual Whales
Market data insights
- Category
- Finance
- Primary Subcategory
- Stock & Investment Analysis Tools
Integration details
Description
Unusual Whales helps users research markets through ChatGPT with options flow, option chains, equity fundamentals, insider and congressional trading, macro rates, charts, and related market data.
- Integration type
- Plugin
- Verification status
- Not applicable
- Platform
- ChatGPT
- Primary Subcategory
- Stock & Investment Analysis Tools
- Secondary Subcategories
- None listed
- Brand
- Unusual Whales
- Access
- Account required
- First tracked
- 2026-07-21
- Tool count
- 96
- Geography
- US
The Primary Subcategory used for this profile’s headline score.
Other Subcategories where the Integration is listed.
Get alerts for Unusual Whales
Get updates when Unusual Whales’s Discoverability Score or category rank changes.
ChatGPT Plugin Discovery Score
ChatGPT Plugin discovery is coming soon
ChatGPT can surface a Plugin when it matches a user's request.Your Plugin Discovery Score measures how often yours appears.
No spam. Unsubscribe any time.
What discovery looks like

Competing in ChatGPT Stock & Investment Analysis Tools
View Category96 tools agents can invoke
Renders an interactive Market Map bubble chart: one bubble per optionable ticker, coloured by sector, positioned by any two metrics and sized by a third. Use this whenever the user wants to see or visualize the market map, a heat map of the market, or how a whole universe of tickers compares on two metrics at once (for example implied volatility vs realized volatility, 1-month vs 1-year change, or percent change vs option volume). Only tickers with meaningful call and put volume are included.
get_market_map_chart
Renders an interactive Market Tide chart showing market-wide net call premium, net put premium and net volume over time, overlaid with the SPY price. Use this whenever the user wants to see or visualize market tide, net premium flow, or overall market options flow. Timeframes are intraday lookbacks (10min, 30min, 1h) or market days (1, 2, 3, 7, 14, 30).
get_market_tide_chart
Displays a stock price chart with historical prices and options-implied price moves. Supports comparing two tickers.
get_stock_chart
Get the latest analyst ratings with price targets. Use this to filter analyst activity by ticker, rating action, recommendation, published time, or minimum upside to price target. Returns the same analyst rating data including ticker, analyst, firm, recommendation, action, target, timestamp, and sector.
Lists and fetches scripts from github.com/unusual-whales/api-examples. Use this when the user wants to build, clone, or adapt a dashboard, alert worker, trading bot, websocket stream, or notebook. Omit arguments to list examples. Pass query to search. Pass example to get one example's files. Set include_files true only when you need file bodies under the size cap. Results include resource_link URIs (uw://example/{slug}/{path}) so clients can attach files instead of inlining them.
Get the at-the-money call and put option contracts nearest the underlying price for each requested expiration. Use this for concise ATM comparisons across one or more specific expirations. Do not use this when the user needs a broad strike range or the full chain for an expiration. Open-interest interpretation: - Open Interest Changes need confirmation from the next morning's updated open-interest data. - Do not assume option volume equals open interest or new positioning. Volume can suggest possible activity, but it can include opening, closing, spread, roll, hedge, or same-day trades that do not become new OI. - When OI confirmation is unavailable, describe volume-over-OI or high-volume activity as unconfirmed until the next OI update.
Get a ticker's historical seasonality statistics for each calendar month. Use this to compare average, median, minimum, and maximum returns and positive-month frequency across all months for one ticker. Do not use this to rank multiple stocks for one month; use get_month_performers instead.
enables precise screening and sorting of balance sheet data, covering critical indicators of liquidity, solvency, and capital structure. It provides deep visibility into asset composition—from cash and inventory to goodwill and PPE—alongside a detailed breakdown of current and long-term liabilities. By organizing these core accounting fields, the tool allows for the rapid assessment of shareholder equity, debt obligations, and overall financial stability across specific fiscal periods Supports filtering by `min_<field>` / `max_<field>` on any numeric or date field and by `tickers` for a specific symbol list. Combine multiple criteria in a single call instead of issuing repeated ranked calls.
Get detailed balance sheet data for a ticker, including total assets/liabilities, current/non-current breakdowns, cash & equivalents, inventory, receivables, PP&E, intangibles, goodwill, debt structure (short-term, long-term, lease obligations), shareholder equity, retained earnings, treasury stock, and shares outstanding. Use this for balance sheet analysis, debt structure review, and asset composition.
Returns a playbook for building with the Unusual Whales API or MCP tools. Use this whenever the user wants to build, scaffold, automate, or monitor a dashboard, custom alert feed, trading bot, websocket stream, or backtest. Call this before writing project files. Then call get_api_examples and get_public_api_docs. Never invent REST paths.
screening and sorting of cash flow data by categorizing activities into operating, investing, and financing streams. It provides visibility into critical capital movements, including capital expenditures, dividend payouts, debt issuances, and stock-based compensation, to track how a company generates and spends its cash. By organizing these detailed line items across fiscal periods, the tool facilitates a clear assessment of a firm's liquidity, reinvestment strategies, and overall cash position Supports filtering by `min_<field>` / `max_<field>` on any numeric or date field and by `tickers` for a specific symbol list. Combine multiple criteria in a single call instead of issuing repeated ranked calls.
Get detailed cash flow statement data for a ticker, including operating/investing/financing cashflows, capital expenditures, stock buyback payments, dividend payouts, stock-based compensation, debt issuance/repayment, depreciation, and changes in working capital. Use this for free cash flow analysis, capital allocation review, and cash generation assessment.
Get central banks with their latest policy rate and historical rate series.
Get option chains for a ticker at a specific expiry date. Returns chain rows plus current underlying price data for the given expiry date. Use this when looking at a specific expiry date and want to see the chains for that expiry. Do not use this for upcoming earnings dates/calendars or analyst-rating actions. Open-interest interpretation: - Open Interest Changes need confirmation from the next morning's updated open-interest data. - Do not assume option volume equals open interest or new positioning. Volume can suggest possible activity, but it can include opening, closing, spread, roll, hedge, or same-day trades that do not become new OI. - When OI confirmation is unavailable, describe volume-over-OI or high-volume activity as unconfirmed until the next OI update.
Get company profile and metadata for a ticker.
Get stock correlation pairs based on historical price movement to find similarly performing or inversely moving stocks. Use this when the user wants statistically similar or opposite movers, hedging candidates, or pair-trade idea generation from one or more seed tickers. Do not use this for real-time price action, intraday chart analysis, fundamentals, options flow, or catalyst/event lookups. When to use examples: "What names are most correlated with NVDA?", "Show me inversely correlated stocks to XLE", "Find pair-trade candidates for AAPL and MSFT." When not to use examples: "What is AAPL doing right now?", "Show me TSLA options sweeps", "What are this week's earnings catalysts for semis?"
Get OHLC candle data for a crypto pair. Use this for crypto price action, historical candles, intraday crypto bars, and OHLCV analysis on pairs like BTC-USD or ETH-USD. Returns pair, open, high, low, close, volume, start_time, and timestamp.
Get the latest state for a crypto pair, including 24-hour OHLCV data. Use this for current crypto pair snapshots, latest 24h open/high/low/close/volume, or quick pair state checks for pairs like BTC-USD or ETH-USD. Returns pair, date, open_24h, high_24h, low_24h, close_24h, volume_24h, and timestamp.
Screen and rank off-exchange (dark pool/TRF) stock prints by size, premium, market-cap, and session context. Use this for dark-pool block-flow discovery and filtering, not listed-options contract activity. Supports session scoping (`market_times`) and relative-size filters versus daily/30-day volume. This tool maps directly to the `/large-trades?tab=dark-pool` page. If current page info says the user is on `/large-trades` with `tab=dark-pool`, treat that page's query params as the current dark pool filter state unless the user explicitly asks for a separate new filter. Apply the user's requested changes to the current dark pool filters, then call this tool with only valid filter args. When a user wants to build, edit, open, or share a dark pool flow filter, use these argument names as the canonical filter keys and offer a clickable deep link to `/large-trades` with `tab=dark-pool` plus matching query params. `tab=dark-pool` is required route state for the page link, not a data-tool filter argument. When the user asks to explain, summarize, or analyze the current page or the data displayed on it, use the current page URL to identify the matching tool and call it before answering. Reconstruct the displayed query using only URL parameters that are valid arguments in this tool's schema. Ignore authentication tokens, saved-view names, navigation state, and other non-tool parameters. Treat tool results as the source of truth for market data. Use page or image context only to explain visual presentation that the tool results do not represent. Keep the tool-call args and the page-link query params aligned as closely as possible. Never invent filter keys that are not part of this tool schema. Omit nil, blank, false-by-omission, or unspecified params from the page link. Serialize booleans in page links as lowercase `true` or `false`. Serialize arrays in page links as repeated bracket params, for example `market_times[]=pre_market&market_times[]=market_hours`, while still passing arrays to the tool itself. When returning a page link, briefly summarize the active filters/configs and then provide a clickable link in this format: [Open in Dark Pool Flow](https://unusualwhales.com/large-trades?tab=dark-pool&...query params...)
Get per-price-level volume concentration for a single ticker on the latest market session, including stock dark-pool/regular volume and options call/put volume at each price. Use this for price-level concentration and support/resistance context on one symbol, not for scanning many tickers or listing individual dark-pool prints.
Get earnings history for a ticker with reported EPS, estimated EPS, surprise amount, surprise percentage, report date, and report timing (pre/post market). Use this for earnings surprise analysis, EPS trends, and beat/miss history.
Get earnings call transcript text for a company ticker. Use this when the user asks for transcript content, management commentary, prepared remarks, or Q&A excerpts. Provide both quarter and year to target a specific period; if either is missing, returns the most recent transcript. Do not use this for upcoming earnings dates/calendars or analyst-rating actions.
screen and sort corporate earnings performance by tracking reported versus estimated earnings per share (EPS). It allows for rapid analysis of earnings surprises—both in absolute value and percentage—while organizing data by report dates and timing. By focusing on these core performance metrics, the tool helps identify significant market-moving events and historical trends in analyst accuracy. `order_by` and `order_direction` are optional. If `order_by` is omitted, no explicit user-requested sort is applied. If `order_by` is provided without `order_direction`, the downstream defaults to descending order. Supports filtering by `min_<field>` / `max_<field>` on any numeric or date field and by `tickers` for a specific symbol list. Combine multiple criteria in a single call instead of issuing repeated ranked calls.
Get a technical indicator time series for any ticker, including international stocks, OTC, and others that may lack intraday candle data. Use this as a fallback when get_ticker_indicator_series returns empty data, or for daily/weekly indicators with long history (20+ years). Supports an extended technical indicator function set covering 50+ indicators.
Get available alert rule definitions.
Screen for options flow alert hits generated by predefined unusual-activity rules. Covers repeated-hits/fill-pattern clusters, floor trades by market-cap bucket, sweeps-followed-by-floor, volume-over-OI, low-historic-volume floor, and OTM earnings floor. Best for rule-triggered event discovery and filtering, not for full raw tape reconstruction or every individual print. Open-interest interpretation: - Open Interest Changes need confirmation from the next morning's updated open-interest data. - Do not assume option volume equals open interest or new positioning. Volume can suggest possible activity, but it can include opening, closing, spread, roll, hedge, or same-day trades that do not become new OI. - When OI confirmation is unavailable, describe volume-over-OI or high-volume activity as unconfirmed until the next OI update. Time range defaults to the last 2 months. If newer_than is more than 2 months before older_than, it is clamped. This tool maps directly to the `/option-flow-alerts` page. If current page info says the user is on `/option-flow-alerts`, treat that page's query params as the current flow alerts filter state unless the user explicitly asks for a separate new filter. Apply the user's requested changes to the current flow alerts filters, then call this tool with only valid filter args. When a user wants to build, edit, open, or share an option flow alerts filter, use these argument names as the canonical filter keys and offer a clickable deep link to `/option-flow-alerts` with matching query params. When the user asks to explain, summarize, or analyze the current page or the data displayed on it, use the current page URL to identify the matching tool and call it before answering. Reconstruct the displayed query using only URL parameters that are valid arguments in this tool's schema. Ignore authentication tokens, saved-view names, navigation state, and other non-tool parameters. Treat tool results as the source of truth for market data. Use page or image context only to explain visual presentation that the tool results do not represent. Keep the tool-call args and the page-link query params aligned as closely as possible. Never invent filter keys that are not part of this tool schema. Omit nil, blank, false-by-omission, or unspecified params from the page link. Serialize booleans in page links as lowercase `true` or `false`. Serialize arrays in page links as repeated bracket params, for example `rule_name[]=VolumeOverOi&issue_types[]=Common%20Stock`, while still passing arrays to the tool itself. When returning a page link, briefly summarize the active filters/configs and then provide a clickable link in this format: [Open in Option Flow Alerts](https://unusualwhales.com/option-flow-alerts?...query params...)
Get aggregated option flow for a ticker grouped by expiration date for the last trading day. Returns call/put premium, ask-side and bid-side premium, volume, OTM volume/premium, and trade counts per expiry. Use this for expiry-level totals. Do not pair it with get_flow_per_strike as if those strike rows belong to one expiry. get_flow_per_strike sums every expiration at each strike. Use this for expiry-level flow concentration and directional premium comparisons, not for individual trade tape prints.
Get aggregated option flow for a ticker grouped by strike for a trading day. Returns call/put premium, ask-side and bid-side premium, volume, trade counts, timestamp, and ticker per strike. Each row is one strike. Call and put premium, volume, and trade counts on that row sum every expiration for that strike on the given date. There is no expiry filter. Do not present these strike totals as a single expiration, such as the earnings-week or 0DTE expiry. For expiry-level totals, use get_flow_per_expiry. For strike-level prints limited to one expiration, use get_option_trades with expiry_dates. Use this for strike-level flow concentration and directional premium comparisons, not for individual trade tape prints.
Get filing-based fundamentals for a ticker, including earnings, revenue, cash flow, dividends, EPS, balance sheet trends, and revenue breakdowns by product or geography. Use this for company financial statement analysis and medium/long-term fundamental context. Do not use this for real-time price action, intraday options flow, or event-calendar style upcoming catalysts.
Get a ticker's key gamma-exposure (GEX) price levels for a market date: call_wall, put_wall, gamma_magnet, gamma_flip, and nearby_flips. This is the tool for Spot Gamma Heatmap Call Wall / Put Wall / Gamma Flip questions, including Directionalized Volume readings. `call_wall` is the strike above spot with the largest positive net gamma (resistance). `put_wall` is the strike below spot with the largest positive net gamma (support). `gamma_magnet` is the strike with the largest-magnitude net gamma. `gamma_flip` is the interpolated price nearest spot where net dealer gamma crosses zero. `source` selects the exposure basis: `vol` is directionalized volume from the day's ask/bid sided flow (default, updates through the session); `oi` is open interest. Do not use get_options_chain or get_greek_exposure_by_strike to invent these levels. Use this tool instead. For a full per-strike GEX profile after you have the levels, use get_greek_exposure_by_strike. For the largest Call/Put Gamma bar on one expiration (Largest GEX by Strike & Expiry), use get_greek_exposure_by_strike_expiry. The response names the `ticker` it was computed for. When you have asked about more than one ticker, check that field against the ticker you asked for before quoting any level, and re-read the strikes against that ticker's spot price: walls or a flip far away from spot mean you are holding another ticker's rows.
Get a ticker's Greek exposure grouped by option expiry for a market date, including call and put gamma, delta, charm, vanna, and DTE values. Use this for current or historical ticker-level gamma exposure (GEX) broken down by expiration date. The response names the `ticker` it was computed for. When you have asked about more than one ticker, check that field against the ticker you asked for before quoting any level, and re-read the strikes against that ticker's spot price: walls or a flip far away from spot mean you are holding another ticker's rows.
Get a ticker's Greek exposure grouped by strike price for a market date, including call and put gamma, delta, charm, and vanna values. Use this for current or historical ticker-level gamma exposure (GEX) broken down by option strike. This returns the per-strike profile, not named Call Wall / Put Wall / Gamma Flip levels. For those Spot Gamma Heatmap or GEX levels, use get_gex_levels. The response names the `ticker` it was computed for. When you have asked about more than one ticker, check that field against the ticker you asked for before quoting any level, and re-read the strikes against that ticker's spot price: walls or a flip far away from spot mean you are holding another ticker's rows.
Get a ticker's Greek exposure grouped by strike price for a specific option expiry and market date, including call and put gamma, delta, charm, vanna, and DTE values. Use this for current or historical ticker-level gamma exposure (GEX) by strike within one expiration date, including Largest GEX by Strike & Expiry for a chosen expiry. Do not use this for session-wide Spot Gamma Heatmap Call Wall / Put Wall / Gamma Flip; use get_gex_levels for those. The response names the `ticker` it was computed for. When you have asked about more than one ticker, check that field against the ticker you asked for before quoting any level, and re-read the strikes against that ticker's spot price: walls or a flip far away from spot mean you are holding another ticker's rows.
Get a ticker's historical daily Greek exposure, including call and put gamma, delta, charm, and vanna values. Use this for ticker-level gamma exposure (GEX) or dealer Greek exposure over a date range. Do not use this for Call Wall, Put Wall, Gamma Flip, or Spot Gamma Heatmap levels; use get_gex_levels instead. The response names the `ticker` it was computed for. When you have asked about more than one ticker, check that field against the ticker you asked for before quoting any level, and re-read the strikes against that ticker's spot price: walls or a flip far away from spot mean you are holding another ticker's rows.
Get a flow group's minute-by-minute greek flow for a market day, including delta flow, vega flow, call/put premium, volume, and transaction counts. Use this for intraday delta and vega flow trends across thematic or sector flow groups such as airline, bank, semi, mag7, technology, energy, or financial services.
Get a flow group's minute-by-minute greek flow for a specific option expiry and market day, including delta flow, vega flow, call/put premium, volume, and transaction counts. Use this for intraday delta and vega flow trends by expiry across thematic or sector flow groups such as airline, bank, semi, mag7, technology, energy, or financial services.
Get a ticker's minute-by-minute Greek flow for a market day, including total and directional delta and vega flow, OTM flow, volume, and transaction counts. Use this for intraday delta and vega flow trends for a specific ticker such as SPY, AAPL, TSLA, or NVDA. The response names the `ticker` it was computed for. When you have asked about more than one ticker, check that field against the ticker you asked for before quoting any figure.
Get daily historical time-series for a single option contract, including volume, open interest, OI deltas, OHLC price fields, and IV. Use for contract-specific trend and delta questions (for example, largest OI increase over the last N days). Open-interest interpretation: - Open Interest Changes need confirmation from the next morning's updated open-interest data. - Do not assume option volume equals open interest or new positioning. Volume can suggest possible activity, but it can include opening, closing, spread, roll, hedge, or same-day trades that do not become new OI. - When OI confirmation is unavailable, describe volume-over-OI or high-volume activity as unconfirmed until the next OI update.
Get the implied volatility term structure for a ticker on a market date. Returns each option expiration's volatility, implied move, implied move percentage, and days to expiration. Use this to compare near-term and longer-dated implied volatility or identify contango and backwardation in a ticker's option volatility curve.
provides granular filtering and sorting capabilities for corporate earnings data across key financial metrics, including revenue, operating expenses, and profitability indicators like EBIT and EBITDA. It enables users to analyze specific fiscal periods by comparing net income, debt expenses, and R&D investments to evaluate a company's financial health and operational efficiency, and to identify of trends in both top-line growth and bottom-line performance. Supports filtering by `min_<field>` / `max_<field>` on any numeric or date field and by `tickers` for a specific symbol list. Combine multiple criteria in a single call instead of issuing repeated ranked calls.
Get detailed income statement data for a ticker, including revenue, cost of revenue, gross profit, operating income, EBIT, EBITDA, net income, R&D expenses, SG&A, depreciation & amortization, interest income/expense, tax expense, and comprehensive income. Use this for deep income statement analysis beyond what get_fundamental_breakdown provides.
Get all known SEC insiders associated with a ticker, including insider CIK, name, slug, person flag, and logo URL when available. Returns the same data as the public API /api/insider/{ticker} endpoint.
Get aggregated SEC Form 4 insider buy and sell flow for a sector by trading date. Use this to compare insider buying and selling trends across a market sector.
Get aggregated SEC Form 4 insider buy and sell flow for a ticker by trading date. Use this to inspect insider buying and selling trends for one company. Returns the same data as the public API /api/insider/{ticker}/ticker-flow endpoint.
Get grouped SEC Form 4 insider trades with filters for reporter role, transaction type, trade size/value, dates, watchlists, and company fundamentals. Results group related transactions from the same filing together and include the transaction count and underlying trade IDs when available. Returns trades matching all provided filters; omit filters to broaden results.
Get ticker-level 13F holdings for a single institution, plus optional activity and holdings breakdown metadata. Use this when the user asks for what one institution holds (by institution name/CIK/ticker), position-level filters, or institution-specific holdings activity. Do not use this for searching institutions broadly or asking who owns a ticker; use get_institutions for those cases.
Get institutional owners of a ticker from 13F filings. Use this when the user asks which institutions own a ticker, how ownership changed, or wants owners filtered by report date, institution tags, or position metrics. Do not use this to inspect the holdings of one institution; use get_institution_holdings instead.
Search or list 13F institutions by name or CIK. Use this for broad institution lookup. For institutions that own a ticker, use get_institutional_ownership_by_ticker. For the holdings of one institution, use get_institution_holdings.
Get ETF-holdings options Market Tide data for a current or past market date. Unlike get_market_tide, this is based only on options activity of the holdings of the specified ETF. Returns timestamped net_call_premium, net_put_premium, net_volume, and underlying_price. Use ticker to select the ETF and date for a historical trading date.
Get economic calendar events including earnings, Fed events, and macro data releases. Use this for date-scoped market event calendar queries. Do not infer chairs, speakers, or officials from training knowledge. Do not use this for ranked earnings screens; use get_upcoming_earnings for that workflow. Each event includes time (UTC) and time_local (weekday, date, and clock time in the user's timezone). When presenting events to the user, copy the weekday and clock time from time_local. Do not infer weekdays from the UTC date.
How do I improve a ChatGPT Plugin's discoverability?
The levers are the listing surface agents actually read: names, descriptions, keywords, tool metadata, and registry health. Which lever matters depends on where discovery breaks, which is what continuous measurement shows.
What are Unusual Whales alternatives on ChatGPT?
As of 2026-09-29, Unusual Whales competes with 3K秘書晨報, AbS, AlphaStocks, Análise de FIIs, Boersi, BrinkerAdvisor Rates, Cars.co.za, DeckCraft Slides, Equity Release Calculator, Fahali, Finmagine, Fintables, Jawz, Kova, Longbridge, Modrek, Morningstar, Next Stock - Market Insights, OnePro AI, PFT Edgebook - Trading Journal, PortfolioFit, Presentations Craft, Quantified Investor, Rallies, StockLens, Stocktwits, Superfunds, Tally Markets, Testfolio, The Fly Market Intelligence, TipRanks, TradingCursor, TradingNX Risk Manager, 엔카 내차팔기 in ChatGPT Stock & Investment Analysis Tools, ranked by public Discoverability Score.
Where is this profile measured?
This profile uses the geography attached to the latest public registry snapshot: US. Locale tags are intentionally omitted.