Strasmore Research
Formazione Matt ConnorDi Matt Connor · Aggiornato 2026-07-24 · data as of July 24, 2026 · refreshed weekly

Perché i dati sullo short interest sono obsoleti

Analisi del ritardo nella pubblicazione dei dati FINRA, il ciclo di reporting e l'impatto dei giorni to cover sulle strategie di hedge e trading.

I dati sullo short interest sono sempre obsoleti per una ragione strutturale: non si tratta di un feed in tempo reale. I broker effettuano uno snapshot delle azioni vendute allo scoperto nei propri conti nelle settlement dates stabilite da FINRA — due volte al mese, a metà mese e a fine mese — e successivamente inviano i totali a FINRA. Quest'ultima aggrega i report di ogni società membro e pubblica il dato complessivo circa otto giorni lavorativi dopo. Considerando il passaggio attraverso il vendor e il database per visualizzare il file sul proprio schermo, il numero di short interest più recente disponibile in un dato giorno descrive il posizionamento così come appariva da una a quattro settimane prima. Questa pagina misura tale scarto invece di limitarsi ad asserirlo.

Come avviene effettivamente il ritardo nella segnalazione

Il ciclo si articola in quattro fasi, e ognuna aggiunge giorni di attesa.

  1. La data di settlement. FINRA pubblica un calendario delle date di settlement — una a metà mese, una a fine mese. In ogni data, ogni broker-dealer registra le posizioni short detenute nei propri conti clienti e aziendali. Si tratta di date di settlement, non di date di trading: con il settlement T+1, un'operazione conclusa di lunedì si liquida martedì, quindi le posizioni conteggiate in una data di settlement sono quelle i cui trade sono stati regolati entro quel momento.
  2. La scadenza per la segnalazione. Ogni società membro invia i totali short per ogni singolo security a FINRA entro i successivi due giorni lavorativi circa. Nulla è pubblico in questa fase; si tratta di una segnalazione normativa, non di un feed di market data.
  3. Compilazione. FINRA somma migliaia di report a livello di singola società per ogni security e assembla un unico file: un numero unico per security per data di settlement — senza cronologia intraday, senza dettagli sulla sede di negoziazione e senza suddivisione per singola società.
  4. Diffusione. Il file diventa pubblico circa otto giorni lavorativi dopo la data di settlement che descrive. I vendor lo prelevano, le borse lo ripubblicano e i data warehouse, come quello che gestisce questa pagina, lo elaborano.

Nessuno trattiene intenzionalmente il dato. Il ritardo è la somma della finestra di raccolta, della finestra di compilazione e del passaggio di distribuzione — ogni fase è un processo batch basato sul calendario, non uno stream.

Qual è il ritardo, misurato in giorni?

Ecco ogni data di settlement ricevuta da questo warehouse come consegna incrementale — la data di settlement da un lato, il giorno in cui le righe sono apparse per la prima volta qui dall'altro.

QueryOgni settlement incrementale: misurato in una data, su file con giorni di ritardo
L'esatto SQL dietro ogni numero
WITH first_arrival AS (
    SELECT settlement_date,
           toDate(min(_ingest_time)) AS arrived
    FROM global_markets.stocks_short_interest
    GROUP BY settlement_date
),
bulk_days AS (
    SELECT arrived
    FROM first_arrival
    GROUP BY arrived
    HAVING count() > 5
)
SELECT settlement_date,
       toString(arrived) AS arrived_here,
       dateDiff('day', settlement_date, arrived) AS publication_lag_days
FROM first_arrival
WHERE arrived NOT IN (SELECT arrived FROM bulk_days)
ORDER BY settlement_date

L'ultimo settlement registrato, 2026-06-30, è arrivato qui il 2026-07-1111 giorni dopo la registrazione delle posizioni che descrive. Il precedente ha richiesto 16 giorni. Nell'intera serie la forma è una banda, non un valore costante:

QueryLag della pipeline in una riga — più il bulk backfill deliberatamente escluso
L'esatto SQL dietro ogni numero
WITH first_arrival AS (
    SELECT settlement_date,
           toDate(min(_ingest_time)) AS arrived
    FROM global_markets.stocks_short_interest
    GROUP BY settlement_date
),
bulk_days AS (
    SELECT arrived
    FROM first_arrival
    GROUP BY arrived
    HAVING count() > 5
),
organic AS (
    SELECT settlement_date,
           dateDiff('day', settlement_date, arrived) AS lag
    FROM first_arrival
    WHERE arrived NOT IN (SELECT arrived FROM bulk_days)
)
SELECT count() AS settlements_measured,
       min(lag) AS fastest_lag_days,
       round(quantileDeterministic(0.5)(lag, cityHash64(settlement_date)), 1) AS median_lag_days,
       max(lag) AS slowest_lag_days,
       (SELECT count() FROM first_arrival WHERE arrived IN (SELECT arrived FROM bulk_days)) AS settlements_bulk_loaded,
       (SELECT toString(max(arrived)) FROM bulk_days) AS bulk_load_date
FROM organic

Su 8 settlement consegnati incrementalmente, il print più veloce è arrivato 10 giorni dopo la sua data di settlement e il più lento ha richiesto 26 giorni; la mediana è di 14 giorni — le "due settimane" del titolo, misurate e non ipotizzate.

Nota cosa escludono queste query. La cronologia di un warehouse non è un registro della velocità di pubblicazione: il 2026-03-16 questo database ha caricato 197 settlement contemporaneamente, in un singolo backfill dell'archivio. I timestamp di ingest su quelle righe indicano la data del backfill, non la disclosure, e qualsiasi "lag" calcolato da essi è un artefatto del nostro programma di caricamento. Solo i settlement arrivati uno alla volta, dopo l'implementazione dell'archivio, misurano il pipeline reale — ovvero le righe sopra riportate.

Lo stato attuale del ciclo

Il ritardo è più evidente nel gap stesso: in ogni momento esiste una data di settlement già avvenuta ma non ancora pubblicata. Questo pannello rappresenta il dato in tempo reale.

QueryStato attuale del cycle — l'ultimo print su file e quello ancora in pipeline
L'esatto SQL dietro ogni numero
WITH (SELECT max(settlement_date) FROM global_markets.stocks_short_interest) AS latest
SELECT toString(latest) AS latest_settlement_on_file,
       (SELECT count() FROM global_markets.stocks_short_interest
        WHERE settlement_date = latest) AS securities_in_that_print,
       (SELECT dateDiff('day', latest, toDate(min(_ingest_time))) FROM global_markets.stocks_short_interest
        WHERE settlement_date = latest) AS its_publication_lag_days,
       (SELECT count() FROM global_markets.stocks_short_interest
        WHERE settlement_date > latest AND settlement_date <= latest + 16) AS next_settlement_rows_on_file,
       (SELECT count(DISTINCT date) FROM global_markets.stocks_short_volume
        WHERE date > latest) AS daily_short_volume_files_since,
       (SELECT dateDiff('day', latest, max(date)) FROM global_markets.stocks_short_volume) AS days_from_settlement_to_newest_daily_file

L'ultimo dato sullo short interest disponibile è il settlement del 2026-06-30, che copre 22207 titoli ed è stato consegnato 11 giorni dopo l'evento. Il prossimo settlement del ciclo mostra 0 righe: non è ancora stato pubblicato, il che è del tutto normale considerando i ritardi misurati sopra. Quella colonna è intenzionalmente limitata a zero. Quando il dato viene pubblicato, il limite scatta e la pagina viene messa in attesa per un aggiornamento invece di mostrare un dato obsoleto — lo stesso meccanismo utilizzato nel riepilogo di giugno un ciclo fa.

Nel frattempo, il file del volume giornaliero degli short è stato pubblicato 12 volte da quella data di settlement; il suo giorno più recente è più recente di 17 giorni rispetto all'ultimo snapshot dello short interest. Due dataset FINRA, due orologi diversi.

Cosa si muove durante l'attesa della pubblicazione

Il ritardo è rilevante solo se i prezzi si muovono durante questo intervallo. I prezzi si muovono. Questo pannello utilizza l'ultimo settlement, confrontando poi la chiusura della sessione regolare di ogni titolo alla data del settlement con la sua chiusura nel giorno in cui il file è effettivamente arrivato.

QueryBlind window: performance di cinque stock tra la data di settlement e la pubblicazione del short interest
L'esatto SQL dietro ogni numero
WITH latest AS (SELECT max(settlement_date) AS d FROM global_markets.stocks_short_interest),
arrived AS (
    SELECT toDate(min(_ingest_time)) AS a
    FROM global_markets.stocks_short_interest
    WHERE settlement_date = (SELECT d FROM latest)
),
daily AS (
    SELECT ticker,
           toDate(toTimeZone(window_start, 'America/New_York')) AS session,
           argMax(toFloat64(close), window_start) AS rth_close
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('AAPL', 'TSLA', 'NVDA', 'GME', 'MU')
      AND toDate(toTimeZone(window_start, 'America/New_York')) >= (SELECT d FROM latest)
      AND toDate(toTimeZone(window_start, 'America/New_York')) <= (SELECT a FROM arrived)
      AND toHour(toTimeZone(window_start, 'America/New_York')) * 60
          + toMinute(toTimeZone(window_start, 'America/New_York')) BETWEEN 570 AND 959
    GROUP BY ticker, session
)
SELECT si.ticker AS ticker,
       round(si.short_interest / 1e6, 1) AS shares_short_m,
       round(argMin(d.rth_close, d.session), 2) AS close_at_settlement,
       round(argMax(d.rth_close, d.session), 2) AS close_when_published,
       round((argMax(d.rth_close, d.session) / argMin(d.rth_close, d.session) - 1) * 100, 1) AS move_while_pending_pct,
       count() AS sessions_in_window
FROM global_markets.stocks_short_interest AS si
INNER JOIN daily AS d ON d.ticker = si.ticker
WHERE si.settlement_date = (SELECT d FROM latest)
GROUP BY si.ticker, si.short_interest
ORDER BY abs(move_while_pending_pct) DESC, si.ticker ASC

L'intervallo ha coperto 8 sessioni di trading. Il titolo con la variazione maggiore tra i cinque è stato MU, passato da $1151.01 alla chiusura del settlement a $978.69 nel giorno in cui è stata disponibile la sua short interest print — una variazione del -15% in un periodo in cui la posizione short dichiarata era, per definizione, congelata a 31.7 milioni di azioni. Il titolo con la variazione minore, GME, ha comunque registrato un movimento del -1.9%.

Questo è il contenuto pratico del ritardo. Qualsiasi titolo che riporti la "short interest in X" descrive la posizione all'ultimo settlement; tutto ciò che è avvenuto nell'intervallo sopra citato risulta invisibile. Gli short potrebbero aver coperto durante un rally o aver aggiunto posizioni durante un ribasso; il dato non può e non potrà dirlo fino alla prossima pubblicazione.

Days to cover, calcolato con un numeratore obsoleto

Days to cover — le azioni short divise per il volume medio giornaliero — è il rapporto che i lettori incontrano più spesso, e eredita l'obsolescenza due volte: un numeratore fissato alla data di settlement e un denominatore basato su volumi calcolati dal file settimane fa. GameStop è il caso più evidente, essendo sia un nome noto che uno dei ticker liquidi più affollati.

QueryGME days to cover — come riportato nel file e ricalcolato sul volume scambiato durante il pending del print
L'esatto SQL dietro ogni numero
WITH latest AS (SELECT max(settlement_date) AS d FROM global_markets.stocks_short_interest),
arrived AS (
    SELECT toDate(min(_ingest_time)) AS a
    FROM global_markets.stocks_short_interest
    WHERE settlement_date = (SELECT d FROM latest)
),
tape AS (
    SELECT count(DISTINCT toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions,
           sum(toFloat64(volume)) AS shares
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'GME'
      AND toDate(toTimeZone(window_start, 'America/New_York')) > (SELECT d FROM latest)
      AND toDate(toTimeZone(window_start, 'America/New_York')) <= (SELECT a FROM arrived)
      AND toHour(toTimeZone(window_start, 'America/New_York')) * 60
          + toMinute(toTimeZone(window_start, 'America/New_York')) BETWEEN 570 AND 959
)
SELECT toString((SELECT d FROM latest)) AS settlement,
       round(si.short_interest / 1e6, 1) AS shares_short_m,
       round(si.avg_daily_volume / 1e6, 2) AS file_adv_m,
       round(si.days_to_cover, 2) AS reported_days_to_cover,
       round(tape.shares / tape.sessions / 1e6, 2) AS tape_adv_since_settlement_m,
       round(si.short_interest / (tape.shares / tape.sessions), 2) AS days_to_cover_on_recent_volume,
       round(abs(si.short_interest / (tape.shares / tape.sessions) - si.days_to_cover), 2) AS days_of_difference,
       tape.sessions AS sessions_measured
FROM global_markets.stocks_short_interest AS si, tape
WHERE si.ticker = 'GME'
  AND si.settlement_date = (SELECT d FROM latest)

Leggere la riga da sinistra a destra. Al settlement del 2026-06-30, GameStop aveva 55.9 milioni di azioni short. Il file accosta questo dato a un volume medio giornaliero di 5.2 milioni di azioni e riporta 10.75 days to cover — il numero visualizzato da uno screener.

Ora sostituiamo il denominatore con la realtà. Durante le 7 sessioni regolari di trading avvenute mentre il dato era ancora in elaborazione, GameStop ha registrato una media di 3.09 milioni di azioni al giorno sul consolidated tape. La stessa posizione short su quel volume corrisponde a 18.08 giorni7.33 giorni rispetto al rapporto pubblicato, mantenendo il numeratore identico. È cambiata solo la stima del volume. Considerate i days to cover come un rapporto datato costruito su due input obsoleti, non come una misura in tempo reale di quanto tempo servirebbe per chiudere le posizioni.

Short squeeze: dove il ritardo incide realmente

Il motivo principale per cui si ricerca questo tema è lo squeeze. In uno squeeze, la posizione short è l'elemento centrale — e si tratta esattamente della quantità che nessuno può vedere in tempo reale. Il caso GameStop all'inizio del 2021 ne è l'esempio classico. Le colonne seguenti indicano la chiusura della sessione regolare di ogni settlement e la chiusura otto sessioni di trading dopo, rappresentando l'obiettivo di diffusione di circa otto giorni lavorativi di FINRA.

QueryGME, inverno 2020-21: ogni short interest print e il price move precedente la pubblicazione (as-traded prices)
L'esatto SQL dietro ogni numero
WITH daily AS (
    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session,
           argMax(toFloat64(close), window_start) AS cl
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'GME'
      AND window_start >= toDateTime('2020-12-01 00:00:00')
      AND window_start < toDateTime('2021-03-15 00:00:00')
      AND toHour(toTimeZone(window_start, 'America/New_York')) * 60
          + toMinute(toTimeZone(window_start, 'America/New_York')) BETWEEN 570 AND 959
    GROUP BY session
),
ranked AS (
    SELECT session, cl, row_number() OVER (ORDER BY session) AS n
    FROM daily
)
SELECT toString(si.settlement_date) AS settlement,
       round(si.short_interest / 1e6, 1) AS shares_short_m,
       round(r0.cl, 2) AS close_at_settlement,
       round(r8.cl, 2) AS close_8_sessions_later,
       round((r8.cl / r0.cl - 1) * 100, 1) AS move_while_pending_pct
FROM global_markets.stocks_short_interest AS si
INNER JOIN ranked AS r0 ON r0.session = si.settlement_date
INNER JOIN ranked AS r8 ON r8.n = r0.n + 8
WHERE si.ticker = 'GME'
  AND si.settlement_date >= toDate('2020-12-15')
  AND si.settlement_date <= toDate('2021-02-26')
ORDER BY si.settlement_date

Seguire il settlement 2021-01-15. Ha registrato 61.8 milioni di azioni short con il titolo a $35.49. Otto sessioni dopo — circa quando un dato del genere diventa pubblico — GameStop ha chiuso a $197.44, con un movimento del 456.3%. Chiunque abbia letto quel dato sullo short interest il giorno della sua pubblicazione stava leggendo la descrizione di un titolo che non esisteva più a quel prezzo.

Il dato successivo inverte la trappola. Il settlement 2021-01-29 ha registrato 21.4 milioni di azioni short — la maggior parte della posizione era già stata chiusa, con il titolo a $328.24. Dopo otto sessioni era a $51.19, -84.4%. Il covering era già avvenuto prima che il file relativo diventasse pubblico. Entrambe le fasi dello squeeze — l'affollamento e lo smaltimento — sono state divulgate a posteriori.

Il dato giornaliero e ciò che non rivela

FINRA pubblica un dato ogni giorno: il short volume, ovvero la quota del volume giornaliero riportato come esecuzioni short-sale, la mattina successiva. È un dato quasi in tempo reale e rappresenta una misurazione differente. Il short volume conta il trading flow — gran parte del quale è market-maker hedging che si chiude a zero alla fine della sessione — e non le posizioni detenute. Un titolo può registrare un forte short volume ogni giorno per una settimana mentre il suo short interest rimane invariato. La differenza tra i due dataset è la differenza tra il traffico su una strada e le auto parcheggiate alla fine della stessa; entrambi i file sono descritti qui in dettaglio.

Negli Stati Uniti non esiste un numero giornaliero divulgato per lo short interest. I vendor vendono stime giornaliere modellate su dati di securities-lending e di flusso; si tratta di modelli, non di dati ufficiali. Il dato ufficiale viene pubblicato due volte al mese e arriva con ritardo.

FAQ

Perché i dati sullo short interest sono vecchi di due settimane?

I broker rilevano le posizioni short solo nelle due date di settlement mensili della FINRA, inviano i totali dopo un paio di giorni lavorativi e la FINRA distribuisce il file compilato circa otto giorni lavorativi dopo la data di settlement. Tra i settlement ricevuti come consegne live, l'intero processo è durato da 10 a 26 giorni, con una mediana di 14 giorni.

Come viene calcolato e riportato lo short interest dai broker?

Ogni broker-dealer conta le azioni detenute short nei propri conti clienti e aziendali alla data di settlement, le aggrega per titolo e invia il totale alla FINRA. La FINRA somma i report di tutte le società membri in un unico numero per titolo — 22207 di essi nella stampa 2026-06-30. Si tratta di un conteggio regolamentare delle posizioni, non di un conteggio delle operazioni.

Il ciclo di reporting è diverso per i titoli NYSE, Nasdaq o OTC?

No. Lo stesso programma di settlement bisettimanale e lo stesso ciclo di compilazione e distribuzione si applicano a tutte le sedi di quotazione statunitensi; le borse ripubblicano i dati dal file FINRA invece di produrre un proprio conteggio. La sede di quotazione di un titolo non cambia l'anzianità del suo dato sullo short interest.

Qual è una percentuale di short interest buona o cattiva?

Non esiste una soglia che renda un titolo un investimento buono o cattivo, e un valore elevato non è una previsione. Le misure di crowding descrivono quanto sia grande una posizione short rispetto al volume scambiabile del titolo: l'ultima stampa di GameStop riporta 10.75 giorni di copertura, contro le singole cifre basse per la maggior parte dei titoli liquidi — consulta i leader attuali del crowding per la distribuzione.

Il ritardo nel reporting è rilevante per gli short squeeze?

È proprio qui che il ritardo è più critico. Nel settlement GameStop del 2021-01-15, il titolo si è mosso del 456.3% tra la misurazione e il limite di otto sessioni che approssima la pubblicazione — e alla stampa del 2021-01-29 la posizione short era già scesa a 21.4 milioni di azioni. Il crowding da squeeze viene confermato nei dati pubblici solo dopo l'evento.


Ogni pannello sopra riportato include la SQL che lo ha prodotto — espandi uno qualsiasi per verificare i numeri, o esegui il calendario dei settlement sul terminale Strasmore.