MU: Micron volumi scambio giugno 2026
Micron a giugno 2026: 995.7 miliardi di turnover in orario regolare, il first nel mercato, mentre il repricing è sceso al 14 percent.
Micron ha subito una forte rivalutazione durante la prima metà del 2026 — a giugno il prezzo si è stabilizzato, ma i volumi di scambio sono rimasti elevati. MU ha chiuso giugno a $1151.01, con un aumento del 14% — il suo mese più stabile da febbraio, dopo un maggio con una variazione del 89.8% — mentre il suo volume di scambi durante l'orario regolare di $995.7 miliardi si è classificato first su tutto il mercato statunitense, superando lo SPY. Analizzato giornalmente, è stato anche il mese più volatile del semestre (127.6% annualizzato): la calma è solo un'illusione. Ecco i dati di giugno — volumi, documenti della settimana degli utili, volatilità, peer, spread, opzioni, posizioni short e l'andamento semestrale. Ogni numero deriva da una query memorizzata; espandere ogni pannello per visualizzare la relativa SQL.
Il mese in un'unica riga
L'esatto SQL dietro ogni numero
WITH
(
SELECT count() FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= toDateTime('2026-06-19 00:00:00') AND window_start < toDateTime('2026-06-20 00:00:00')
) AS spy_jun19,
(
SELECT max(toFloat64(high)) FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'MU'
AND window_start >= toDateTime('2026-06-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
) AS hi,
(
SELECT min(toFloat64(low)) FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'MU'
AND window_start >= toDateTime('2026-06-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
) AS lo
SELECT
round(argMinIf(toFloat64(open), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199), 2) AS month_open,
round(argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199), 2) AS month_close,
round((argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) / argMinIf(toFloat64(open), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) - 1) * 100, 1) AS month_return_pct,
round(hi, 2) AS month_high,
formatDateTime(toTimeZone(minIf(window_start, toFloat64(high) >= hi - 0.011), 'America/New_York'), '%Y-%m-%d %H:%i') AS month_high_first_bar_et,
round(lo, 2) AS month_low,
formatDateTime(toTimeZone(minIf(window_start, toFloat64(low) <= lo + 0.011), 'America/New_York'), '%Y-%m-%d %H:%i') AS month_low_first_bar_et,
round(minIf(toFloat64(low), (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) - lo, 2) AS rth_minus_extended_low,
round(toFloat64(sum(volume)) / 1e9, 2) AS month_shares_bn,
round(sumIf(toFloat64(close) * toFloat64(volume), (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) / 1e9, 1) AS rth_dollar_bn,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS session_days_observed,
spy_jun19 AS spy_bars_june19
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'MU'
AND window_start >= toDateTime('2026-06-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')L'intervallo intramonth è stato enorme per un titolo di queste dimensioni: un minimo di $850.1 (2026-06-05 16:34 ET) e un massimo di $1255 (2026-06-25 09:35 ET) — un range più ampio dell'intero anno di la maggior parte delle azioni. Il 19 giugno si è verificata una chiusura generalizzata del mercato (0 barre SPY), quindi il mese ha coperto 21 sessioni.
Giugno rispetto all'andamento semestrale
14% è un valore elevato? Per questo ticker, in questo semestre, il periodo è stato caratterizzato da stabilità. Il pannello ricalcola i dati ogni mese in modo identico e in tempo reale.
L'esatto SQL dietro ogni numero
SELECT toString(toStartOfMonth(toDate(toTimeZone(window_start, 'America/New_York')))) AS period_start,
round((argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) / argMinIf(toFloat64(open), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS month_return_pct,
round(argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959), 2) AS month_close,
round(sumIf(toFloat64(close) * toFloat64(volume), (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) / 1e9, 1) AS rth_dollar_bn
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'MU'
AND window_start >= toDateTime('2026-01-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY period_start
ORDER BY period_startL'andamento: 40.5% a gennaio, un piatto 0% a febbraio, un -15.9% a marzo che ha segnato il minimo di chiusura del semestre ($337.62), poi 48.4% ad aprile e 89.8% a maggio — da $414.73 a $1151.01 in sei mesi. Il turnover è cresciuto di conseguenza: da $235.8 miliardi a gennaio a $995.7 miliardi a giugno. La variazione di prezzo di giugno è stata la più contenuta da febbraio; il volume degli scambi di giugno è stato il più alto dell'intero periodo.
Il prezzo si è raffreddato. La volatilità no.
Un mese di +14% è calmo? La volatilità realizzata — ovvero gli spostamenti giornalieri di chiusura, annualizzati — presenta dati molto diversi per giugno.
L'esatto SQL dietro ogni numero
SELECT
toString(toStartOfMonth(et_date)) AS period_start,
round(stddevSamp(log_ret) * sqrt(252) * 100, 1) AS realized_vol_ann_pct,
round(100 * stddevSamp(log_ret) / max(stddevSamp(log_ret)) OVER (), 1) AS pct_of_peak_vol,
round(avg(day_range_pct), 1) AS avg_day_range_pct,
round(max(abs(day_move_pct)), 1) AS biggest_day_move_pct,
count() AS return_days
FROM (
SELECT et_date, day_range_pct,
if(prev_close > 0, ln(close_usd / prev_close), NULL) AS log_ret,
if(prev_close > 0, (close_usd / prev_close - 1) * 100, NULL) AS day_move_pct
FROM (
SELECT et_date, close_usd, day_range_pct,
lagInFrame(close_usd) OVER (ORDER BY et_date ASC ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prev_close
FROM (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS et_date,
argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS close_usd,
(maxIf(toFloat64(high), (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) / minIf(toFloat64(low), (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100 AS day_range_pct
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'MU'
AND window_start >= toDateTime('2026-01-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY et_date
)
)
)
WHERE isFinite(log_ret) AND log_ret IS NOT NULL
GROUP BY period_start
ORDER BY period_startGiugno è stato il mese più turbolento del semestre secondo questo parametro: 127.6% annualizzato, superiore persino al 101.4% di maggio, con un range medio delle sessioni del 7.6% e un movimento da chiusura a chiusura del 15.8%. I punti di arrivo sono stati stabili; le giornate intermedie no.
Session per session
L'esatto SQL dietro ogni numero
SELECT et_date, close_usd,
round(if(prev_close = 0, NULL, (close_usd / prev_close - 1) * 100), 1) AS change_pct,
shares_m
FROM (
SELECT et_date, close_usd, shares_m,
lagInFrame(close_usd) OVER (ORDER BY et_date ASC ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prev_close
FROM (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS et_date,
round(argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199), 2) AS close_usd,
round(toFloat64(sum(volume)) / 1e6, 1) AS shares_m
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'MU'
AND window_start >= toDateTime('2026-06-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY et_date
)
)
ORDER BY et_dateLa tabella mostra una forte volatilità in entrambe le direzioni — da $1034.83 in 2026-06-01 durante la fase di turbolenza fino a $1151.01 nell'ultima sessione. Questo è ciò che il dato "+14% sul mese" nasconde: solo i punti estremi sono stati stabili. I valori più elevati si registrano durante la settimana dei report sugli utili — di seguito.
Le oscillazioni coincidono con un trimestre riportato?
È possibile stabilire le date: la documentazione di MU di giugno tratta dall'indice della SEC, confrontata con l'andamento del mercato in quelle date.
L'esatto SQL dietro ogni numero
WITH
(
SELECT maxIf(filing_date, form_type = '8-K')
FROM global_markets.stocks_sec_edgar_index
WHERE cik = '0000723125' AND filing_date >= toDate('2026-06-01') AND filing_date <= toDate('2026-06-30')
) AS last_8k_date,
(
SELECT minIf(filing_date, form_type = '10-Q')
FROM global_markets.stocks_sec_edgar_index
WHERE cik = '0000723125' AND filing_date >= toDate('2026-06-01') AND filing_date <= toDate('2026-06-30')
) AS tenq_date,
(
SELECT (count(), countIf(form_type = '8-K'), countIf(form_type = '4'))
FROM global_markets.stocks_sec_edgar_index
WHERE cik = '0000723125' AND filing_date >= toDate('2026-06-01') AND filing_date <= toDate('2026-06-30')
) AS filing_census,
(
SELECT toDate(toTimeZone(min(window_start), 'America/New_York'))
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'MU'
AND window_start >= toDateTime('2026-06-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
AND toFloat64(high) >= (
SELECT max(toFloat64(high)) FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'MU' AND window_start >= toDateTime('2026-06-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
) - 0.011
) AS month_high_date
SELECT
toString(last_8k_date) AS earnings_8k_filed,
if(last_8k_date = toDate('2026-06-24'), 1, 0) AS eightk_on_jun24,
toString(tenq_date) AS tenq_filed,
dateDiff('day', last_8k_date, tenq_date) AS days_8k_to_10q,
filing_census.1 AS june_filings_total,
filing_census.2 AS eightk_filings,
filing_census.3 AS form4_filings,
round((anyIf(close_usd, et_date = toDate('2026-06-25')) / anyIf(close_usd, et_date = toDate('2026-06-24')) - 1) * 100, 1) AS next_session_move_pct,
round(anyIf(shares_m, et_date = toDate('2026-06-25')), 1) AS next_session_shares_m,
round(anyIf(shares_m, et_date = toDate('2026-06-25')) - maxIf(shares_m, et_date != toDate('2026-06-25')), 1) AS shares_lead_over_next_busiest_m,
if(month_high_date = toDate('2026-06-25'), 1, 0) AS month_high_on_jun25
FROM (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS et_date,
argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) AS close_usd,
toFloat64(sum(volume)) / 1e6 AS shares_m
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'MU'
AND window_start >= toDateTime('2026-06-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY et_date
)Il modulo 8-K trimestrale di MU è datato 2026-06-24, il 10-Q è datato 1, un giorno dopo (documenti di giugno 8, moduli Form 4 per insider 3). La sessione successiva alla data dell'8-K si è chiusa 15.8% più alta con 77.2 milioni di azioni — il volume più elevato del mese, con 5.9 milioni di scarto rispetto al secondo valore più alto — e il massimo mensile di $1255 è stato registrato in quella stessa sessione (2026-06-25 09:35 ET; la colonna degli accordi conferma la corrispondenza). L'osservazione riguarda la coincidenza temporale; questa pagina si ferma qui.
Una storia di Micron, o una storia della memoria?
Anche il resto del comparto memory e storage si è mosso? Il paniere è definito: i tre titoli storage associati dalle notizie di giugno a MU sono i principali, con NVDA e SPY come benchmark.
L'esatto SQL dietro ogni numero
WITH (
SELECT (argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) / argMinIf(toFloat64(open), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) - 1) * 100
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'MU' AND window_start >= toDateTime('2026-06-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
) AS mu_return
SELECT ticker,
round(june_return_pct, 1) AS june_return_pct,
round(june_return_pct - mu_return, 1) AS vs_mu_pct_points,
rth_dollar_bn,
round(100 * rth_dollar_bn / max(rth_dollar_bn) OVER (), 1) AS pct_of_top_turnover
FROM (
SELECT ticker,
(argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) / argMinIf(toFloat64(open), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) - 1) * 100 AS june_return_pct,
round(sumIf(toFloat64(close) * toFloat64(volume), (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) / 1e9, 1) AS rth_dollar_bn
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('MU', 'SNDK', 'WDC', 'INTC', 'NVDA', 'SPY')
AND window_start >= toDateTime('2026-06-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY ticker
)
ORDER BY june_return_pct DESCSi è trattato di un movimento del settore memory — e MU è rimasta indietro. SNDK è salito del 31.3%, INTC 27.5%, WDC 19.1% — ogni titolo storage ha battuto MU di 5.1 fino a 17.3 punti — mentre SPY e NVDA hanno chiuso giugno in calo. La particolarità di MU: il suo turnover supera ogni altra voce in questo elenco.
Il ticker più importante del mercato
L'esatto SQL dietro ogni numero
SELECT ticker,
round(sum(toFloat64(volume) * toFloat64(close)) / 1e9, 1) AS regular_hours_dollar_bn,
round(100 * sum(toFloat64(volume) * toFloat64(close)) / max(sum(toFloat64(volume) * toFloat64(close))) OVER (), 1) AS pct_of_leader
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= toDateTime('2026-06-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
AND ticker NOT IN ('SPCX')
GROUP BY ticker
ORDER BY regular_hours_dollar_bn DESC
LIMIT 10L'esatto SQL dietro ogni numero
WITH (
SELECT sum(toFloat64(volume) * toFloat64(close))
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'MU'
AND window_start >= toDateTime('2026-06-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
) AS mu_d
SELECT
countIf(d > mu_d AND ticker != 'MU') + 1 AS mu_rank,
round(mu_d / 1e9, 1) AS mu_dollar_bn,
round((mu_d - maxIf(d, d < mu_d AND ticker != 'MU')) / 1e9, 1) AS lead_over_next_bn
FROM (
SELECT ticker, sum(toFloat64(volume) * toFloat64(close)) AS d
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= toDateTime('2026-06-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
AND ticker NOT IN ('SPCX')
GROUP BY ticker
)MU si è posizionata al first posto per volume monetario durante l'orario regolare di giugno tra tutti i simboli quotati negli Stati Uniti — $995.7 miliardi, con $224.3 miliardi di scarto rispetto a SPY al secondo posto. Una singola società con volumi superiori a un flagship index fund per un intero mese rappresenta una struttura di mercato rara; le sezioni relative alla settimana degli earnings e ai peer sopra riportate forniscono il contesto necessario. Base: 1–30 giugno orario regolare, esclusa una quotazione con simbolo riutilizzato in attesa di verifica dell'entità (i suoi rendiconti). La panoramica generale del mercato è disponibile nel riepilogo di giugno.
Composizione del tape
L'esatto SQL dietro ogni numero
WITH
(
SELECT (round(count() / 1e6, 2),
round(100.0 * countIf(bid_price > 0 AND ask_price > 0 AND ask_price > bid_price) / count(), 2),
countIf(bid_price > 0 AND ask_price > 0 AND ask_price < bid_price),
countIf(bid_price <= 0 OR ask_price <= 0))
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'MU'
AND sip_timestamp >= toDateTime64('2026-06-01 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)
) AS quote_census
SELECT
round(count() / 1e6, 2) AS prints_m,
quantileDeterministic(0.5)(toFloat64(size), toUInt64(abs(sequence_number))) AS median_print_shares,
round(avg(toFloat64(size)), 1) AS avg_print_shares,
round(100.0 * countIf(size < 100) / count(), 1) AS odd_lot_pct_of_prints,
round(100.0 * countIf(toFloat64(size) != round(toFloat64(size))) / count(), 2) AS fractional_pct_of_prints,
quote_census.1 AS nbbo_updates_m,
quote_census.2 AS clean_two_sided_pct,
quote_census.3 AS crossed_updates,
quote_census.4 AS one_sided_or_empty_updates
FROM global_markets.stocks_trades
WHERE ticker = 'MU'
AND sip_timestamp >= toDateTime64('2026-06-01 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)35.17 milioni di operazioni con una mediana di 8 azioni — e 91.7% odd lots, uno dei tape con maggiore frammentazione retail che abbiamo misurato (il mese di giugno di NVDA è stato materialmente più basso; il suo deep-dive contiene il doppio pannello). Con un prezzo per azione a quattro cifre, un "round lot" rappresenta una cifra importante, quindi le piccole operazioni dominano per struttura; anche le frazioni (9.04%) indicano la stessa tendenza. La metà delle quotazioni: 19.64 milioni di aggiornamenti NBBO, 99.86% bilaterali pulite, 16963 incrociate, 78 unidirezionali o vuote — divulgate, non rimosse.
Lo spread durante un repricing
Un titolo che quasi triplica il valore in un trimestre pone il problema dello spread in modo diverso: lo spread è rimasto contenuto mentre il prezzo cercava un nuovo livello?
L'esatto SQL dietro ogni numero
SELECT session,
round(quantileDeterministicIf(0.5)(toFloat64(ask_price) - toFloat64(bid_price), toUInt64(toUnixTimestamp64Micro(sip_timestamp)), bid_price > 0 AND ask_price >= bid_price) * 100, 1) AS med_spread_cents,
round(quantileDeterministicIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, toUInt64(toUnixTimestamp64Micro(sip_timestamp)), bid_price > 0 AND ask_price >= bid_price), 2) AS med_spread_bps,
count() AS quote_updates,
countIf(NOT (bid_price > 0 AND ask_price > 0 AND ask_price >= bid_price)) AS invalid_dropped
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'MU'
AND sip_timestamp >= toDateTime64('2026-06-01 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)
AND (toHour(sip_timestamp) * 60 + toMinute(sip_timestamp)) BETWEEN 810 AND 1199
GROUP BY toDate(toTimeZone(sip_timestamp, 'America/New_York')) AS session
ORDER BY sessionIn basis points, lo spread è rimasto di livello istituzionale durante tutto il movimento: 3.96 bps su 2026-06-01, 4.19 bps nell'ultima sessione — la colonna dei centesimi segue approssimativamente il livello del prezzo stesso. Per i dettagli tecnici, consulta la spiegazione dello spread.
Opzioni: un book bidirezionale
L'esatto SQL dietro ogni numero
SELECT
round(count() / 1e6, 2) AS prints_m,
uniqExact(ticker) AS distinct_contracts,
round(sum(size) / 1e6, 2) AS contracts_traded_m,
round(sum(toFloat64(price) * size) * 100 / 1e9, 2) AS premium_notional_busd,
round(toFloat64(sumIf(size, substring(ticker, 11, 1) = 'P')) / toFloat64(sumIf(size, substring(ticker, 11, 1) = 'C')), 2) AS month_put_call_ratio,
uniqExact(substring(ticker, 5, 6)) AS expiries_traded,
round(intDiv(toUInt32OrZero(substring(argMax(ticker, sz), 12, 8)), 1000), 0) AS busiest_strike_usd
FROM (
SELECT ticker, price, size, sum(size) OVER (PARTITION BY ticker) AS sz
FROM global_markets.options_trades
WHERE startsWith(ticker, 'O:MU') AND length(ticker) = 19
AND sip_timestamp >= toDateTime64('2026-06-01 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)
)16.76 milioni di contratti su 11789 contratti distinti, per un premio di $77.13 miliardi — e il book era bidirezionale: un rapporto put/call mensile di 0.99, sostanzialmente in parità (i contratti call di NVDA per giugno erano prevalenti; confronta). La parità durante un repricing violento indica che il mercato delle opzioni è diviso su entrambi i lati del movimento — i dati mostrano la divisione, non l'intento.
L'esatto SQL dietro ogni numero
SELECT
concat('$', toString(toUInt32(bucket))) AS strike_bucket,
call_contracts,
put_contracts,
round(100.0 * put_contracts / (call_contracts + put_contracts), 1) AS put_share_pct
FROM (
SELECT
least(floor(toFloat64(toUInt32OrZero(substring(ticker, 12, 8))) / 1000 / 100) * 100, 1500) AS bucket,
toUInt64(sumIf(size, substring(ticker, 11, 1) = 'C')) AS call_contracts,
toUInt64(sumIf(size, substring(ticker, 11, 1) = 'P')) AS put_contracts
FROM global_markets.options_trades
WHERE startsWith(ticker, 'O:MU') AND length(ticker) = 19
AND sip_timestamp >= toDateTime64('2026-06-01 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)
GROUP BY bucket
)
ORDER BY toUInt32OrZero(substring(strike_bucket, 2))La mappa degli strike copre un intervallo che sarebbe stato assurdo a gennaio — volumi reali dal bucket $0 fino al tetto di $1500+; una traccia di quanto si sia mosso l'underlying. Quanto è costato detenere quel movimento? I prezzi dell'ultima sessione del mese lo determinano:
L'esatto SQL dietro ogni numero
WITH (
SELECT argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199)
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'MU' AND window_start >= toDateTime('2026-06-30 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
) AS spot
SELECT
toString(any(expiry)) AS nearest_expiry,
dateDiff('day', toDate('2026-06-30'), any(expiry)) AS calendar_days_to_expiry,
round(spot, 2) AS spot_close,
argMin(strike_usd, (dist, strike_usd)) AS atm_strike,
round(argMin(call_last + put_last, (dist, strike_usd)), 2) AS straddle_usd,
round(argMin(call_last + put_last, (dist, strike_usd)) / spot * 100, 2) AS straddle_pct_of_spot,
count() AS two_sided_strikes
FROM (
SELECT expiry, strike_usd, abs(strike_usd - spot) AS dist,
anyIf(last_px, opt_type = 'C') AS call_last,
anyIf(last_px, opt_type = 'P') AS put_last
FROM (
SELECT
toDateOrNull(concat('20', substring(ticker, 5, 2), '-', substring(ticker, 7, 2), '-', substring(ticker, 9, 2))) AS expiry,
substring(ticker, 11, 1) AS opt_type,
toFloat64(toUInt32OrZero(substring(ticker, 12, 8))) / 1000 AS strike_usd,
argMax(toFloat64(price), (sip_timestamp, toFloat64(price))) AS last_px
FROM global_markets.options_trades
WHERE startsWith(ticker, 'O:MU') AND length(ticker) = 19
AND sip_timestamp >= toDateTime64('2026-06-30 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)
GROUP BY expiry, opt_type, strike_usd
)
WHERE expiry > toDate('2026-06-30')
GROUP BY expiry, strike_usd
HAVING countIf(opt_type = 'C') > 0 AND countIf(opt_type = 'P') > 0
)
WHERE expiry = (
SELECT min(toDateOrNull(concat('20', substring(ticker, 5, 2), '-', substring(ticker, 7, 2), '-', substring(ticker, 9, 2))))
FROM global_markets.options_trades
WHERE startsWith(ticker, 'O:MU') AND length(ticker) = 19
AND sip_timestamp >= toDateTime64('2026-06-30 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)
AND toDateOrNull(concat('20', substring(ticker, 5, 2), '-', substring(ticker, 7, 2), '-', substring(ticker, 9, 2))) > toDate('2026-06-30')
)Alla chiusura del 30 giugno, la scadenza più vicina era a 2 giorni di calendario; la coppia at-the-money — una call e una put allo strike di $1150 — è stata scambiata l'ultima volta per un totale di $69.95: 6.08% del prezzo dell'azione di $1151.01. Un acquirente avrebbe avuto bisogno di un movimento di quella entità, in qualsiasi direzione, entro quei 2 giorni per raggiungere il break even — giugno si è concluso con prezzi che riflettevano ancora un movimento eccezionale.
Il flusso delle notizie
L'esatto SQL dietro ogni numero
WITH
(
SELECT (JSONExtractString(any(publisher), 'name'), count())
FROM global_markets.stocks_news
WHERE has(tickers, 'MU')
AND published_utc >= toDateTime('2026-06-01 00:00:00') AND published_utc < toDateTime('2026-07-01 04:00:00')
GROUP BY JSONExtractString(publisher, 'name') ORDER BY count() DESC LIMIT 1
) AS top_pub
SELECT
count() AS june_articles,
uniqExact(JSONExtractString(publisher, 'name')) AS publishers,
top_pub.1 AS top_publisher,
round(100.0 * top_pub.2 / count(), 0) AS top_publisher_pct,
countIf(has(tickers, 'NVDA')) AS nvda_co_articles,
countIf(has(tickers, 'SNDK')) AS sndk_co_articles,
countIf(has(tickers, 'INTC')) AS intc_co_articles
FROM global_markets.stocks_news
WHERE has(tickers, 'MU')
AND published_utc >= toDateTime('2026-06-01 00:00:00') AND published_utc < toDateTime('2026-07-01 04:00:00')195 articoli con tag MU da 4 editori — da leggere con scetticismo, The Motley Fool da soli hanno scritto 59% di essi. I co-tag delineano una narrazione sui semiconduttori: NVDA in 86 articoli, SNDK in 32, INTC in 21. Qual era l'argomento? I tag degli articoli stessi forniscono il vocabolario senza adottarlo:
L'esatto SQL dietro ogni numero
SELECT keyword, count() AS articles,
round(100.0 * count() / (SELECT count() FROM global_markets.stocks_news WHERE has(tickers, 'MU') AND published_utc >= toDateTime('2026-06-01 00:00:00') AND published_utc < toDateTime('2026-07-01 04:00:00')), 1) AS pct_of_articles
FROM global_markets.stocks_news
ARRAY JOIN keywords AS keyword
WHERE has(tickers, 'MU')
AND published_utc >= toDateTime('2026-06-01 00:00:00') AND published_utc < toDateTime('2026-07-01 04:00:00')
GROUP BY keyword
ORDER BY articles DESC, keyword ASC
LIMIT 10"AI infrastructure" guida con 49 di 195 articoli, seguita da "memory chips", "DRAM" e "high-bandwidth memory" — un vocabolario relativo all'AI-memory, riportato come conteggio di tag, non come spiegazione.
Le posizioni short sono diminuite — e rimane un buco nella copertura
L'esatto SQL dietro ogni numero
SELECT toString(date) AS d,
round(toFloat64(any(short_volume)) / 1e6, 2) AS short_shares_m,
round(100 * toFloat64(any(short_volume)) / toFloat64(any(total_volume)), 1) AS short_pct_of_offexchange
FROM global_markets.stocks_short_volume
WHERE ticker = 'MU' AND date >= toDate('2026-06-01') AND date <= toDate('2026-06-30')
GROUP BY date
ORDER BY dateAnalisi della copertura: il file del volume short di MU per giugno contiene solo 16 di 21 sessioni — oltre alla troncamento generalizzato del 29 giugno, diverse righe di MU sono semplicemente assenti — pertanto non è possibile calcolare il rapporto mensile; le righe giornaliere sono corrette, i vuoti sono stati dichiarati.
L'esatto SQL dietro ogni numero
SELECT
toString(maxIf(settlement_date, settlement_date <= toDate('2026-06-20'))) AS mid_june_settlement,
round(toFloat64(maxIf(short_interest, settlement_date <= toDate('2026-06-20'))) / 1e6, 2) AS mid_june_shares_short_m,
toString(maxIf(settlement_date, settlement_date > toDate('2026-06-20'))) AS eom_settlement,
round(toFloat64(maxIf(short_interest, settlement_date > toDate('2026-06-20'))) / 1e6, 2) AS eom_shares_short_m,
round((toFloat64(maxIf(short_interest, settlement_date <= toDate('2026-06-20'))) - toFloat64(maxIf(short_interest, settlement_date > toDate('2026-06-20')))) / 1e6, 2) AS decline_m_shares,
round(toFloat64(maxIf(short_interest, settlement_date > toDate('2026-06-20'))) / toFloat64(maxIf(avg_daily_volume, settlement_date > toDate('2026-06-20'))), 2) AS eom_days_to_cover
FROM global_markets.stocks_short_interest
WHERE ticker = 'MU' AND settlement_date >= toDate('2026-06-01') AND settlement_date <= toDate('2026-06-30')La coppia di settlement è completa: 41.59 milioni di azioni short al settlement del 2026-06-15 sono scesi a 31.67 milioni entro il 2026-06-30 — un calo di 9.92 milioni di azioni nella seconda metà del mese, quella che ha coperto la settimana degli earnings. La posizione di fine mese equivale a 0.53 giorni di volume medio — un valore ridotto per questo titolo. Questa pagina è stata pubblicata inizialmente con quel dato in attesa (il ritardo è normale); il numero sopra riportato è il dato aggiornato.
I fondamentali dietro i dati
Cosa mostrano i comunicati ufficiali della società? Un limite: il feed segue il calendario delle scadenze — l'ultima riga è precedente al 10-Q di giugno, quindi il trend è rappresentato dall'esibizione dei dati, non dall'ultimo dato disponibile.
L'esatto SQL dietro ogni numero
SELECT quarter_end, revenue_bn,
round(100 * revenue_bn / max(revenue_bn) OVER (), 1) AS pct_of_peak_revenue,
net_income_bn, diluted_eps
FROM (
SELECT toString(period_end) AS quarter_end,
round(toFloat64(revenue) / 1e9, 2) AS revenue_bn,
round(toFloat64(net_income_loss_attributable_common_shareholders) / 1e9, 2) AS net_income_bn,
round(toFloat64(diluted_earnings_per_share), 2) AS diluted_eps
FROM global_markets.stocks_income_statements
WHERE has(tickers, 'MU') AND timeframe = 'quarterly'
ORDER BY period_end DESC
LIMIT 6
)
ORDER BY quarter_end ASCNell'arco dei sei trimestri registrati, il fatturato varia da $7.75 miliardi (2024-08-29) a $13.64 miliardi (2025-11-27) — l'ultima riga rappresenta il picco del periodo — con un utile netto di $5.24 miliardi e un EPS diluito di $4.6 in quel trimestre. Non si tratta di una crescita lineare, ma il periodo analizzato si conclude al suo massimo livello.
Cosa monitorare da qui
Solo dati di calendario: il prossimo settlement dello short-interest avverrà a metà luglio, con pubblicazione secondo il consueto ritardo di FINRA; il trimestre con dati depositati a giugno diventerà un punto di riferimento per i fondamentali non appena il feed del vendor si aggiornerà; e i dati di luglio riceveranno lo stesso trattamento nella prossima edizione della serie.
FAQ
Perché il titolo MU ha registrato tale volatilità a giugno 2026?
Questa pagina fornisce misurazioni piuttosto che spiegazioni: MU è stata scambiata tra $850.1 e $1255; il report trimestrale 8-K è datato 2026-06-24, con la sessione successiva in rialzo del 15.8% con i volumi più elevati del mese; l'intero basket della memoria ha seguito lo stesso andamento durante il periodo.
Qual è stata la volatilità di MU a giugno 2026?
Il mese più volatile del semestre: volatilità realizzata annualizzata del 127.6% e un range medio di sessione del 7.6%, a fronte di un rendimento endpoint-to-endpoint di appena il 14%.
Il movimento di MU a giugno è stato specifico del titolo o del settore?
Settoriale, con MU come il titolo più lento tra i rialzi: SNDK è salito del 31.3% e ogni titolo del settore storage ha superato il 14% di MU, mentre SPY e NVDA hanno chiuso in calo. La particolarità di MU è stata il turnover: $995.7 miliardi, il più alto del basket.
Lo short interest di MU è elevato?
Ridotto rispetto al proprio volume di scambi: 31.67 milioni di azioni alla settlement del 2026-06-30 — circa 0.53 giorni di volume medio per coprire la posizione, in calo di 9.92 milioni rispetto a metà giugno. Lo short interest viene sempre pubblicato con un ritardo rispetto alla settlement.
Cosa significa il put/call ratio di MU?
Il rapporto di 0.99 di giugno indica che puts e calls sono state scambiate con volumi quasi equivalenti — un mercato a due vie, non una scommessa unidirezionale. Un valore ben al di sotto di uno indica una preferenza per le call (quella di NVDA a giugno), un valore ben al di sopra di uno indica una preferenza per le put.
Note sui dati
Note complete sui dati
- Entità. MU è Micron Technology, Inc., CIK 0000723125 — un'unica identità EDGAR; nessuna clausola di riutilizzo del simbolo.
- Copertura short-volume. Il file di giugno copre 16 di 21 sessioni (la troncature del 29 giugno più le assenze specifiche di MU); i rapporti sono indicati solo su base giornaliera.
- Basket peer. SNDK, WDC, INTC — i tag relativi alle società di storage più frequenti a giugno nel flusso di notizie di MU — più NVDA e SPY come benchmark; dichiarati preventivamente, mai assemblati ex post.
- Analisi options. Scadenza/tipo/strike rielaborati dal simbolo OCC (posizioni 5/11/12); il premio assume il moltiplicatore di 100 azioni.
- Metodo straddle. Prezzi TRADED dell'ultima transazione (non quotazioni) allo strike più vicino alla chiusura finale, più vicino alla scadenza dopo la fine del mese — si tratta di una ricevuta di scambio, non di volatilità implicita da modello.
- Ritardo fondamentali. Il feed del conto economico segue il calendario dei depositi; la sua riga MU più recente è precedente al 10-Q di giugno — solo contesto di trend.
- Chiusura del 19 giugno verificata tramite la ricevuta del scoreboard con zero barre SPY.
- Pannelli spread escludono quotazioni incrociate o unidirezionali, con conteggio delle perdite indicato nella riga.
- Il contesto di mercato — con questo ticker in cima alla classifica dell'intero tape — è incluso nel riepilogo di giugno 2026.
Metodologia
- Il periodo va dal 1° al 30 giugno 2026 (21 sessioni, verificate tramite le barre osservate). I rendimenti sono calcolati dall'apertura alla chiusura delle ore ordinarie; giugno segue l'orario EDT, quindi i limiti temporali sono 13:30–20:00 UTC. I pannelli storici coprono i mesi in EST e utilizzano il filtro basato sull'orario Eastern.
- Volatilità realizzata = deviazione standard del campione dei rendimenti logaritmici close-over-close giornalieri (chiusure in orario ordinario), annualizzata tramite la radice quadrata di 252; il primo rendimento di un mese che supera il limite temporale viene conteggiato nel mese successivo.
- I confronti storici vengono ricalcolati in tempo reale, mai da un valore memorizzato.
- La generazione avviene solo tramite batch attraverso il percorso di sola lettura protetto; la pagina pubblica non interroga mai i dati in tempo reale. Warehouse aggiornato al 12 luglio 2026.
Ogni pannello è un singolo oggetto memorizzato — grafico, tabella, SQL. Per qualsiasi query aggiuntiva, utilizzare il terminale Strasmore.