Daty ex-dividend w tym tygodniu
Kalendarz nadchodzących terminów ex-dividend. Sprawdź terminy wypłat oraz wysokość dywidend dla największych spółek w bieżącym tygodniu i kolejnym.
Nadchodzące daty ex-dividend decydują o uprawnieniach do wypłaty: posiadanie akcji przed datą ex-dividend gwarantuje otrzymanie kolejnej dywidendy; zakup w dniu ex-dividend lub po tej dacie oznacza, że środki zachowuje sprzedający. Niniejsza strona stanowi aktualizowany na bieżąco kalendarz — zawiera listę spółek przechodzących na status ex-dividend każdego dnia w bieżącym tygodniu oraz największych podmiotów, dla których termin ten przypada w ciągu najbliższych dwóch tygodni. Dane są obliczane na podstawie ogłoszonych rejestrów dywidendowych i odświeżane co tydzień. Strona analizuje również rzeczywiste zmiany kursu akcji w poranek ex-dividend oraz sprawdza skuteczność strategii „dividend capture”.
Daty po odcięciu dywidendy w tym tygodniu
Wszystkie ogłoszone dywidendy gotówkowe, które zostaną odcięte w ciągu najbliższych siedmiu dni, z podziałem na dni oraz częstotliwość wypłat:
Dokładny kod SQL dla każdej liczby
SELECT toString(ex_dividend_date) AS ex_date,
formatDateTime(ex_dividend_date, '%b %e') AS ex_date_label,
count() AS names_going_ex,
countIf(frequency = 12) AS monthly_payers,
countIf(frequency = 4) AS quarterly_payers
FROM global_markets.stocks_dividends
WHERE ex_dividend_date > today()
AND ex_dividend_date <= today() + 7
AND cash_amount > 0
GROUP BY ex_dividend_date
ORDER BY ex_dividend_dateW najbliższym terminie przypada 5 dni po odcięciu dywidendy, zaczynając od Jul 27 z podziałem na spółki 40 — wypłacające dywidendę co miesiąc 3 oraz co kwartał 27. Ten podział jest istotny podczas analizy kalendarza: spółki miesięczne (fundusze dochodowe, trusty hipoteczne, niektóre REITs) pojawiają się co cztery tygodnie i grupują wokół połowy miesiąca; spółki kwartalne — większość spółek operacyjnych — pojawiają się raz na kwartał. Aby otrzymać którąkolwiek z tych płatności, aktywa muszą być posiadane na koniec dnia sesyjnego przed wskazaną datą. Mechanizm wyznaczania terminów znajduje się w naszym przewodniku daty po odcięciu dywidendy, a data ustalenia prawa do dywidendy a data po odcięciu dywidendy wyjaśnia, dlaczego dla kupujących kluczowa jest data po odcięciu dywidendy.
Najwięksi emitenci z terminem ex-dividend w ciągu najbliższych dwóch tygodni
Największe spółki (kapitalizacja powyżej 10 mld USD) z terminem ex w ciągu czternastu dni — kwota wypłaty, data płatności oraz roczna rentowność wynikająca z wypłaty przy obecnej cenie:
Dokładny kod SQL dla każdej liczby
WITH latest AS (
SELECT ticker, argMax(market_cap, date) AS mcap, argMax(price, date) AS px
FROM global_markets.stocks_ratios
WHERE date >= today() - 10
GROUP BY ticker
)
SELECT d.ticker AS ticker,
toString(d.ex_dividend_date) AS ex_date,
formatDateTime(d.ex_dividend_date, '%b %e') AS ex_date_label,
round(max(d.cash_amount), 4) AS per_share_usd,
toString(any(d.pay_date)) AS pay_date,
formatDateTime(any(d.pay_date), '%b %e') AS pay_date_label,
round(any(l.mcap) / 1e9, 0) AS mcap_bn,
round(100 * max(d.cash_amount) * max(d.frequency) / any(l.px), 2) AS indicated_yield_pct
FROM global_markets.stocks_dividends d
JOIN latest l ON d.ticker = l.ticker
WHERE d.ex_dividend_date > today()
AND d.ex_dividend_date <= today() + 14
AND d.cash_amount > 0
AND d.distribution_type = 'recurring'
AND d.frequency > 0
AND l.mcap >= 10000000000
AND d.ticker NOT IN ('SPCX')
GROUP BY d.ticker, d.ex_dividend_date
ORDER BY any(l.mcap) DESC
LIMIT 12Największą spółką na liście jest MS, która przechodzi do statusu ex dnia Jul 31. Wypłata w wysokości 1.15 za akcję nastąpi Aug 14 — co przy ostatniej cenie oznacza wskazaną roczną rentowność na poziomie 2.14%. Należy uważnie analizować kolumnę rentowności: wartość ta stanowi roczną skumulowaną kwotę zadeklarowanej wypłaty przy jej określonej częstotliwości — jest to wyliczenie statystyczne, a nie gwarancja. Wysoka kwota na akcję oraz wysoka rentowność to różne wartości, co wyjaśnia czym jest dywidenda . Jeden symbol został wykluczony z rankingowych tabel (filtr jest widoczny w zapytaniu SQL panelu): jego ticker został użyty przez drugiego emitenta, przez co rekordy pod tym symbolem dotyczą dwóch spółek; usunięto go, aby uniknąć błędnego przypisania danych.
Jakie rodzaje spółek wypłacają obecnie dywidendy
Strumień danych dywidendowych nie zawiera etykiet sektorowych, dlatego obraz dwutygodniowego okna musi wynikać z dostępnych danych: wielkości spółki, częstotliwości wypłat oraz rentowności, jaką każda zadeklarowana płatność implikuje przy obecnej cenie. Wszystkie podmioty wypłacające dywidendy cyklicznie, które w ciągu czternastu dni przejdą do statusu ex-dividend, pogrupowane według przedziałów wielkości:
Dokładny kod SQL dla każdej liczby
WITH latest AS (
SELECT ticker, argMax(market_cap, date) AS mcap, argMax(price, date) AS px
FROM global_markets.stocks_ratios
WHERE date >= today() - 10
GROUP BY ticker
),
names AS (
SELECT d.ticker AS ticker,
multiIf(any(l.mcap) >= 1e11, '1 Mega cap ($100B+)',
any(l.mcap) >= 1e10, '2 Large cap ($10-100B)',
any(l.mcap) >= 2e9, '3 Mid cap ($2-10B)',
'4 Small cap (under $2B)') AS size_band,
max(d.cash_amount) AS amt,
max(d.frequency) AS freq,
any(l.px) AS px
FROM global_markets.stocks_dividends d
JOIN latest l ON d.ticker = l.ticker
WHERE d.ex_dividend_date > today()
AND d.ex_dividend_date <= today() + 14
AND d.cash_amount > 0
AND d.distribution_type = 'recurring'
AND d.frequency > 0
AND l.px > 0
AND l.mcap > 0
GROUP BY d.ticker
)
SELECT size_band,
count() AS names_going_ex,
round(quantileDeterministic(0.5)(100 * amt * freq / px, cityHash64(ticker)), 2) AS median_indicated_yield_pct,
countIf(freq = 12) AS monthly_payers,
countIf(freq = 4) AS quarterly_payers
FROM names
GROUP BY size_band
ORDER BY size_bandW oknie tym znajduje się 4 spółek typu mega cap (powyżej 100 mld USD) oraz 43 spółek typu large cap (od 10 mld USD do 100 mld USD), obok 37 spółek typu mid cap i 85 mniejszych podmiotów. Mediana wskazanej rentowności wynosi 2.01% w segmencie mega cap, 2.56% w segmencie large cap, 2.4% w segmencie mid cap oraz 2.79% wśród spółek typu small cap. Wielkość i rentowność to oddzielne osie: kalendarz posortowany według rentowności prezentuje inny zestaw spółek niż ten posortowany według wielkości kapitału rynkowego, dlatego filtr oparty wyłącznie na rentowności stopniowo prowadzi przez kolejne szczeble wielkości spółek. Częstotliwość wypłat dzieli dane w taki sam sposób jak powyższa tabela dzienna. Dominującym modelem na rynku są wypłaty kwartalne, przy czym 4 spółek mega cap wypłaca dywidendy kwartalnie, a 0 miesięcznie, podczas gdy podmioty wypłacające dywidendy miesięcznie znajdują się niżej w zestawieniu: 13 spółek typu small cap w tym oknie wypłaca dywidendy co miesiąc.
Wymagania niezbędne do otrzymania wypłaty
W niemal każdym przypadku nie trzeba robić nic. Nie jest wymagany żaden formularz, kontakt z brokerem ani rejestracja: należy posiadać akcje na koniec dnia sesyjnego poprzedzającego datę ex-date, a środki zostaną przelane na konto w dniu wypłaty, zazwyczaj kilka tygodni później. Zakup dokonany właśnie w tym ostatnim dniu również jest skuteczny — transakcje na rynku US rozliczane są w następnym dniu roboczym (T+1), a data ex-date jest ustalana w tym terminie. Jedynym opcjonalnym krokiem jest DRIP (plan reinwestycji dywidendy), czyli ustawienie u brokera, które zamienia gotówkę na ułamkowe części tych samych akcji.
Kwestie podatkowe zależą od daty ex-date. Na opodatkowanym koncie w USA dywidenda jest uznawana za qualified — opodatkowana niższymi stawkami od długoterminowych zysków kapitałowych — tylko jeśli akcje są trzymane przez ponad 60 dni w ramach 121-dniowego okna, rozpoczynającego się 60 dni przed datą ex-dividend. Jeśli zakup nastąpi dzień przed ex-date, odbierze się wypłatę, a tydzień później sprzeda akcje, test ten zostanie niespełniony: wypłata zostanie opodatkowana jako zwykły dochód. Wypłaty z REIT oraz wielu funduszy są zawsze traktowane jako zwykły dochód, a rodzaj konta zmienia sytuację (konto IRA pozwala uniknąć tego opodatkowania). To nie jest porada podatkowa — jednak krótkoterminowa strategia "capture" przynosi mniejszy zysk po opodatkowaniu, niż wynika to z samych liczb.
Zachowanie ceny w poranek po dacie ex
Standardowym założeniem jest, że akcje otwierają się w dniu ex po obniżeniu o wartość dywidendy. Giełda faktycznie koryguje cenę referencyjną w dół przed otwarciem, jednak cena otwarcia uwzględnia to obniżenie oraz wszystkie inne zdarzenia nocne. Trzy spółki dywidendowe w swoich ostatnich datach ex:
Dokładny kod SQL dla każdej liczby
WITH last_ex AS (
SELECT ticker,
max(ex_dividend_date) AS ex_d,
argMax(cash_amount, ex_dividend_date) AS div_amt
FROM global_markets.stocks_dividends
WHERE ticker IN ('KO', 'VZ', 'XOM')
AND cash_amount > 0
AND distribution_type = 'recurring'
AND ex_dividend_date < today()
AND ex_dividend_date >= today() - 120
GROUP BY ticker
),
daily AS (
SELECT ticker,
toDate(toTimeZone(window_start, 'America/New_York')) AS d,
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_px,
argMinIf(toFloat64(open), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS open_px,
countIf((toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS bars
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('KO', 'VZ', 'XOM')
AND window_start >= toDateTime(today() - 130)
GROUP BY ticker, d
HAVING bars > 200
),
seq AS (
SELECT ticker, d, open_px, close_px,
lagInFrame(close_px, 1) OVER (PARTITION BY ticker ORDER BY d ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS pre_close
FROM daily
)
SELECT s.ticker AS ticker,
toString(e.ex_d) AS last_ex_date,
formatDateTime(e.ex_d, '%b %e') AS last_ex_label,
round(e.div_amt, 4) AS dividend_usd,
round(s.pre_close, 2) AS close_before_ex_usd,
round(s.open_px, 2) AS ex_morning_open_usd,
round(100 * (s.open_px - s.pre_close) / s.pre_close, 2) AS open_gap_pct,
round(100 * e.div_amt / s.pre_close, 2) AS dividend_pct_of_price
FROM seq s
JOIN last_ex e ON e.ticker = s.ticker AND e.ex_d = s.d
WHERE s.pre_close > 0
ORDER BY tickerAnalizując ostatnią datę ex spółki Coca-Cola, Jun 15: wypłata w wysokości $0.53, stanowiąca 0.64% zamknięcia z poprzedniego wieczoru na poziomie $82.6, przy pierwszej cenie otwarcia wynoszącej $81.08 — luka wyniosła -1.84%. Dywidenda Verizon stanowiła 1.68% jego poprzedniego zamknięcia na poziomie $42.22; spółka otworzyła się na poziomie -1.46%. Dywidenda Exxon wynosiła 0.67%; spółka otworzyła się na poziomie 0.64%. Trzy spółki dywidendowe, trzy różne luki, żadna nie odpowiadała dokładnie wartości wypłaty. Korekta w dół jest jedynie księgowym dostosowaniem ceny referencyjnej; cena otwarcia jest ceną rynkową, a ceny zmieniają się w nocy z powodów niezwiązanych z dywidendą. Wartość wypłaty jest znana z wyprzedzeniem; cena w poranek po dacie ex nie jest znana.
Czy strategia dividend-capture jest skuteczna?
"Dividend capture" to strategia polegająca na zakupie akcji tuż przed dniem bez dywidendy (ex-date), odebraniu wypłaty i sprzedaży po odrobieniu strat przez kurs. Strategia ta opiera się na mierzalnym założeniu. Test polegał na analizie 78 zdarzeń bez dywidendy w grupie pięćdziesięciu spółek typu mega-cap w ciągu ostatnich sześciu miesięcy. Każde zdarzenie monitorowano od zamknięcia sesji przed dniem bez dywidendy, przez otwarcie w dniu bez dywidendy, zamknięcie w tym dniu, aż po pierwszą, piątą i dziesiątą sesję po tym terminie.
Dokładny kod SQL dla każdej liczby
WITH rth AS (
SELECT ticker,
toDate(toTimeZone(window_start, 'America/New_York')) AS d,
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_px,
argMinIf(toFloat64(open), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS open_px,
countIf((toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS bars
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('AAPL', 'MSFT', 'JNJ', 'KO', 'PG', 'XOM', 'CVX', 'JPM', 'HD', 'MCD',
'PEP', 'ABBV', 'MRK', 'PFE', 'VZ', 'T', 'CSCO', 'IBM', 'WMT', 'CAT',
'BAC', 'WFC', 'C', 'GS', 'MS', 'UNH', 'LLY', 'AMGN', 'BMY', 'GILD',
'TXN', 'QCOM', 'AVGO', 'ADP', 'LMT', 'RTX', 'HON', 'GE', 'MMM', 'UPS',
'LOW', 'TGT', 'COST', 'SBUX', 'NKE', 'DIS', 'CMCSA', 'DUK', 'SO', 'NEE')
AND window_start >= toDateTime(today() - 190)
GROUP BY ticker, d
HAVING bars > 200
),
seq AS (
SELECT ticker, d, open_px,
lagInFrame(close_px, 1) OVER w AS pre_close,
close_px AS ex_close,
leadInFrame(close_px, 1) OVER w AS c1,
leadInFrame(close_px, 5) OVER w AS c5,
leadInFrame(close_px, 10) OVER w AS c10
FROM rth
WINDOW w AS (PARTITION BY ticker ORDER BY d ROWS BETWEEN 1 PRECEDING AND 10 FOLLOWING)
),
ev AS (
SELECT s.ticker AS ticker, s.d AS ex_d, s.pre_close AS pre_close, s.open_px AS ex_open,
s.ex_close AS ex_close, s.c1 AS c1, s.c5 AS c5, s.c10 AS c10,
max(dv.cash_amount) AS div_amt
FROM seq s
JOIN global_markets.stocks_dividends dv ON dv.ticker = s.ticker AND dv.ex_dividend_date = s.d
WHERE dv.cash_amount > 0
AND dv.distribution_type = 'recurring'
AND s.d >= today() - 160
AND s.pre_close > 0 AND s.c1 > 0 AND s.c5 > 0 AND s.c10 > 0
GROUP BY s.ticker, s.d, s.pre_close, s.open_px, s.ex_close, s.c1, s.c5, s.c10
),
paths AS (
SELECT ticker, ex_d, pre_close, div_amt,
arrayJoin([('1 ex-day open', ex_open),
('2 ex-day close', ex_close),
('3 one session later', c1),
('4 five sessions later', c5),
('5 ten sessions later', c10)]) AS chk
FROM ev
)
SELECT chk.1 AS checkpoint,
count() AS events,
round(avg(100 * div_amt / pre_close), 2) AS avg_dividend_pct,
round(avg(100 * (chk.2 - pre_close) / pre_close), 2) AS avg_move_pct,
round(quantileDeterministic(0.5)(100 * (chk.2 - pre_close) / pre_close, cityHash64(ticker, ex_d)), 2) AS median_move_pct,
round(100 * countIf(chk.2 >= pre_close) / count(), 1) AS pct_back_above_pre_ex
FROM paths
GROUP BY checkpoint
ORDER BY checkpointŚrednia wypłata wynosiła tutaj 0.65% ceny akcji przed dniem bez dywidendy. W dniu bez dywidendy, podczas otwarcia, średni kurs akcji zmienił się o -0.5% względem zamknięcia poprzedniej sesji (mediana -0.45%), a tylko 25.6% zdarzeń otworzyło się na poziomie równym lub wyższym od poprzedniego zamknięcia: spadek wartości jest realny i natychmiastowy. Poniżej przedstawiono dane, które są pomijane w ofertach inwestycyjnych. Do zamknięcia dnia bez dywidendy średni kurs znajdował się -0.69% od ceny początkowej; po jednej sesji wynosił -1.08%; po pięciu sesjach -1.24%; po dziesięciu sesjach -0.25% — przy czym 44.9% spółek wróciło do poziomu początkowego lub powyżej niego.
Oczekiwanie na powrót kursu oznacza trzymanie akcji przez dziesięć sesji zwykłej zmienności — ruchów, które w obu kierunkach przewyższają wypłatę rzędu 0.65% — przy jednoczesnej utracie preferencyjnego opodatkowania dywidend kwalifikowanych w przypadku krótkich pozycji. Dywidenda jest transferem wartości z ceny akcji na konto inwestora, a nie darmowym zyskiem; dalsza ścieżka kursu zależy wyłącznie od rynku.
Fundusze i ETF: dlaczego nie występują w kalendarzu terminów przyszłych
Inwestorzy dochodowi często posiadają fundusze zamiast pojedynczych akcji. Powodem braku tych instrumentów w powyższym kalendarzu jest przyczyna strukturalna: większość funduszy ETF nie ogłasza daty ex-date z dużym wyprzedzeniem, tak jak robią to zarządy spółek. Ich dywidendy są rejestrowane w momencie wystąpienia ex-date lub tuż przed tym terminem. Posiadają one jednak regularny cykl, który pozwala na planowanie. Trzynaście popularnych funduszy dochodowych wraz z ich ostatnią datą ex-date, typowym odstępem między terminami oraz przewidywaną kolejną datą wynikającą z tego cyklu:
Dokładny kod SQL dla każdej liczby
WITH hist AS (
SELECT ticker, ex_dividend_date, cash_amount, frequency,
dateDiff('day', lagInFrame(ex_dividend_date) OVER (PARTITION BY ticker ORDER BY ex_dividend_date), ex_dividend_date) AS gap_days
FROM global_markets.stocks_dividends
WHERE ticker IN ('SCHD', 'VYM', 'VIG', 'DVY', 'SPYD', 'JEPI', 'JEPQ', 'QYLD', 'SPHD', 'NOBL', 'DGRO', 'HDV', 'SPY')
AND cash_amount > 0
AND ex_dividend_date >= today() - 800
)
SELECT ticker,
any(frequency) AS payments_per_year,
toString(max(ex_dividend_date)) AS last_ex_date,
formatDateTime(max(ex_dividend_date), '%b %e') AS last_ex_label,
round(argMax(cash_amount, ex_dividend_date), 4) AS last_per_share_usd,
round(quantileDeterministicIf(0.5)(gap_days, cityHash64(ticker, ex_dividend_date), gap_days BETWEEN 5 AND 200)) AS typical_gap_days,
toString(max(ex_dividend_date) + toIntervalDay(round(quantileDeterministicIf(0.5)(gap_days, cityHash64(ticker, ex_dividend_date), gap_days BETWEEN 5 AND 200)))) AS implied_next_ex,
formatDateTime(max(ex_dividend_date) + toIntervalDay(round(quantileDeterministicIf(0.5)(gap_days, cityHash64(ticker, ex_dividend_date), gap_days BETWEEN 5 AND 200))), '%b %e') AS implied_next_label
FROM hist
GROUP BY ticker
HAVING countIf(gap_days BETWEEN 5 AND 200) > 0
ORDER BY implied_next_ex, tickerNajbliższy w grupie jest JEPI, ostatnie ex-date miało miejsce Jul 1 przy wartości $0.3872 na akcję w cyklu 30-dniowym, co wskazuje na kolejne ex-date w okolicach Jul 31. Najdalszy termin ma HDV, który przy cyklu 91 dni wskazuje na Oct 14. Kolumna payments_per_year dzieli fundusze: podmioty wypłacające dywidendy dwanaście razy w roku robią to co około cztery tygodnie; fundusze wypłacające cztery razy w roku robią to raz na kwartał, w miesiącach kończących kwartał. Przewidywaną datę należy traktować jako szacunek — wiążące jest wyłącznie powiadomienie emitenta.
Czy jest to miesiąc o dużej czy małej liczbie dywidend?
Daty wypłat dywidend nie są rozłożone równomiernie w ciągu roku — dane z trzech lat, uśrednione według miesięcy kalendarzowych:
Dokładny kod SQL dla każdej liczby
SELECT multiIf(toMonth(ex_dividend_date) = 1, '01 Jan', toMonth(ex_dividend_date) = 2, '02 Feb', toMonth(ex_dividend_date) = 3, '03 Mar',
toMonth(ex_dividend_date) = 4, '04 Apr', toMonth(ex_dividend_date) = 5, '05 May', toMonth(ex_dividend_date) = 6, '06 Jun',
toMonth(ex_dividend_date) = 7, '07 Jul', toMonth(ex_dividend_date) = 8, '08 Aug', toMonth(ex_dividend_date) = 9, '09 Sep',
toMonth(ex_dividend_date) = 10, '10 Oct', toMonth(ex_dividend_date) = 11, '11 Nov', '12 Dec') AS month,
round(count() / 3.0) AS ex_dates_per_year,
round(countIf(frequency = 4) / 3.0) AS quarterly_payers,
round(countIf(frequency = 12) / 3.0) AS monthly_payers
FROM global_markets.stocks_dividends
WHERE ex_dividend_date >= toStartOfMonth(today()) - INTERVAL 36 MONTH
AND ex_dividend_date < toStartOfMonth(today())
AND cash_amount > 0
GROUP BY month
ORDER BY monthMiesiące kończące kwartał generują największą liczbę zdarzeń: marzec ma średnio 5605 dat wypłat, czerwiec 5792, wrzesień 4973 i grudzień 6380, przy czym każdy z nich obejmuje ponad dwa tysiące płatników kwartalnych (sam czerwiec to 2640). Pierwszy miesiąc każdego kwartału charakteryzuje się mniejszą aktywnością — styczeń ma średnio 2043, a lipiec 2683, co stanowi połowę liczby dat z końca kwartału lub mniej. Minimalną liczbę dywidend w spokojnych miesiącach stanowią płatnicy miesięczniowi: stanowią oni 1470 średniej dla lipca, całkowicie ignorując kalendarz kwartalny. Krótka lista w tym tygodniu wynika ze specyfiki kalendarza, a nie z kondycji rynku.
Dlaczego kalendarze się różnią — i jak korzystać z tego zestawienia
Porównanie tej strony z kalendarzem brokera wykaże niewielkie różnice. Każdy kalendarz powstaje na podstawie komunikatów spółek, a źródła różnią się szybkością przetwarzania ogłoszeń, sposobem uwzględniania zmienionych dat oraz tym, czy obejmują fundusze, trusty i spółki zagraniczne obok podmiotów operacyjnych (powyższe zestawienie dni obejmuje wszystkie te typy; tylko rankingowe tabele uwzględniają minimalną kapitalizację rynkową). W przypadku rozbieżności między kalendarzami, rozstrzygające znaczenie ma komunikat prasowy spółki. Szczegółowe dane, obliczane w czasie rzeczywistym:
Dokładny kod SQL dla każdej liczby
SELECT countIf(ex_dividend_date > today()) AS future_ex_dates_declared,
countIf(ex_dividend_date > today() AND ex_dividend_date <= today() + 7) AS in_the_next_7_days,
countIf(ex_dividend_date > today() AND ticker IN ('SCHD', 'VYM', 'VIG', 'DVY', 'SPYD', 'JEPI', 'JEPQ', 'QYLD', 'SPHD', 'NOBL', 'DGRO', 'HDV', 'SPY')) AS fund_records_declared_ahead,
toString(max(ex_dividend_date)) AS furthest_declared_date,
formatDateTime(max(ex_dividend_date), '%b %e, %Y') AS furthest_declared_label
FROM global_markets.stocks_dividends
WHERE ex_dividend_date > today() - 1
AND cash_amount > 0Obecnie zarejestrowano 3379 przyszłych dat ex-dividend, z czego 364 przypada na najbliższy tydzień, a ogłoszenia obejmują okres do Nov 12, 2027. W powyższych trzynastu funduszach liczba zapowiedzianych dat ex-date wynosi 0 — jest to strukturalna luka, która sprawia, że to cykliczność, a nie same ogłoszenia, pozwala przewidzieć kolejną datę ex-date funduszu. Zarządy ogłaszają spotkania pojedynczo, dlatego odległe terminy w kalendarzu są uzupełniane wraz z pojawianiem się komunikatów: daty bliskie należy traktować jako wiarygodne, a odległe jako tymczasowe.
FAQ dotyczące kalendarza dywidendowych
Jak znaleźć nadchodzące daty ex-dividend?
Spółki ogłaszają każdą dywidendę wraz z datami ex-dividend, rejestracji oraz wypłaty, a te ogłoszenia trafiają do strumieni danych rynkowych. Niniejsza strona oblicza kalendarz bezpośrednio na podstawie tych rekordów — 3379 przyszłych dat w bazie — i jest aktualizowana co tydzień.
Czy jeśli kupię akcje w dniu ex-dividend, otrzymam dywidendę?
Nie. Data ex-dividend to pierwszy dzień, w którym akcje są handlowane bez prawa do dywidendy. Aby ją otrzymać, należy posiadać akcje na koniec dnia sesyjnego poprzedzającego datę ex-dividend; zakup w dniu ex-dividend oznacza, że wypłatę zachowuje sprzedający.
Czy muszę coś zrobić, aby otrzymać dywidendę?
Nie. Należy trzymać akcje do zamknięcia sesji przed datą ex-dividend, a środki zostaną automatycznie zakredytowane na koncie maklerskim w dniu wypłaty — bez formularzy, roszczeń czy telefonów. Jedynym opcjonalnym krokiem jest DRIP, czyli ustawienie u brokera automatycznego reinwestowania wypłaty w kolejne akcje.
Czy kupowanie akcji tuż przed datą ex-dividend w celu przejęcia dywidendy jest opłacalne?
Dane temu zaprzeczają. W ciągu 78 zdarzeń dywidendowych spółek typu mega-cap w ciągu ostatnich sześciu miesięcy, cena otwarcia przeciętnej akcji zmieniła się o -0.5% względem zamknięcia przed ex-date, przy średniej wypłacie wynoszącej 0.65% ceny, a dziesięć sesji później tylko 44.9% wróciło do poziomu wyjściowego lub powyżej niego. Krótka ekspozycja nie spełnia również testu okresu posiadania dla dywidend kwalifikowanych.
Czy opodatkowanie dywidend różni się w zależności od terminu zakupu?
Tak, w przypadku amerykańskiego konta opodatkowanego. Dywidenda jest kwalifikowana — opodatkowana stawką podatku od długoterminowych zysków kapitałowych — tylko jeśli akcje są trzymane przez ponad 60 dni w ramach 121-dniowego okna, zaczynającego się 60 dni przed datą ex-dividend. Transakcja typu „kup tuż przed, sprzedaj tuż po” nie mieści się w tym oknie, a wypłata jest opodatkowana jako zwykły dochód. Wypłaty z REIT oraz wielu funduszy i tak są traktowane jako zwykły dochód. Informacja techniczna, nie porada podatkowa.
Profile dywidendy według symboli ticker
Każdy emitent o dużej kapitalizacji w tym kalendarzu posiada własny, zmierzony profil dywidendy. Obejmuje on bieżącą rentowność obliczoną na podstawie ostatniego zamknięcia, pełną historię wypłat zarejestrowaną w systemie, ciągłość wzrostów oraz sposób handlu w dniach bez prawa do dywidendy (ex-dividend):
AAPL, ABBV, ABT, ACN, ADP, AMGN, AVGO, AXP, BAC, BLK, BMY, C, CAT, CL, CMCSA, COP, COST, CRM, CSCO, CVX, DE, DHR, DUK, GE, GILD, GIS, GOOGL, GS, HD, HON, IBM, JNJ, JPM, KMB, KO, LIN, LLY, LMT, LOW, MA, MCD, MDLZ, MDT, META, MMM, MO, MRK, MS, MSFT, NEE, NKE, O, ORCL, PEP, PFE, PG, PM, QCOM, RTX, SBUX, SO, SPGI, T, TGT, TMO, TXN, UNH, UNP, USB, V, VZ, WFC, WMT, XOM.
Każda tabela powyżej jest zapisanym, wersjonowanym zapytaniem dotyczącym zadeklarowanych rekordów dywidendowych oraz rzeczywistych słupków minutowych — można rozwinąć kod SQL pod dowolnym panelem lub samodzielnie przefiltrować kalendarz na terminalu Strasmore.