Strasmore Research
Edukacja Matt ConnorAutor: Matt Connor

Dlaczego akcje spadają w dniu ex-dividend

Spadek kursu akcji w dniu ex-dividend wynika z technicznego dostosowania ceny o wartość wypłaty. Analizujemy rzeczywiste różnice kursowe dla spółek dywidendowych z pięciu lat.

Spadek kursu akcji w dniu ex-dividend jest technicznym dostosowaniem, a nie wyprzedażą. Nabywca akcji w dniu ex-date nie otrzymuje nadchodzącej wypłaty, zatem walor zmienia właściciela bez prawa do dywidendy, która była uwzględniona w cenie poprzedniego dnia. Giełda obniża kurs zamknięcia z poprzedniej sesji o wartość dywidendy dla celów wykresów i wyceny zleceń. Poziom, na którym akcje faktycznie otwierają notowania, jest kwestią odrębną; poniższe panele prezentują dane z pięciu lat dla grupy spółek o wysokich dywidendach.

Dlaczego akcje spadają w dniu ex-dividend: mechanizm dostosowania

Proces wypłaty dywidendy obejmuje cztery daty. Dzień ogłoszenia to moment, w którym zarząd informuje o wypłacie. Dzień ex-dividend to pierwsza sesja, podczas której akcje notowane są bez prawa do dywidendy. Dzień ustalenia prawa (record date) to moment, w którym spółka weryfikuje listę akcjonariuszy, a dzień wypłaty to termin przekazania gotówki. Nasz przewodnik po dniu ex-dividend omawia cały proces, a różnica między record date a ex-dividend date wyjaśnia dwa terminy, które są najczęściej mylone.

Zanim w dniu ex-date dojdzie do jakichkolwiek transakcji, giełda przeprowadza dwa techniczne dostosowania:

  • Kurs zamknięcia z poprzedniej sesji zostaje obniżony o wartość dywidendy w celach referencyjnych. Wykresy, pola zmiany procentowej, średnie kroczące oraz cena odniesienia dla aukcji otwarcia bazują na tej skorygowanej wartości.
  • Otwarte zlecenia oczekujące poniżej bieżącego kursu rynkowego są redukowane o kwotę dywidendy.

Żadne z tych dostosowań nie jest transakcją. Nie dochodzi do zmiany właściciela akcji ani do żadnych obrotów. Akcje rozpoczynają dzień z niższego punktu odniesienia, a szereg cenowy nieuwzględniający tego dostosowania wykazywałby sztuczny spadek co kwartał.

Czy giełdy obniżają otwarte zlecenia w dniu ex-date?

Tak, w przypadku typów zleceń znajdujących się poniżej bieżącej ceny. W dniu ex-date giełdy redukują otwarte zlecenia kupna z limitem ceny (buy limit) oraz zlecenia sprzedaży typu stop (sell stop), w tym zlecenia sell stop limit, o wartość dywidendy. Zlecenie kupna z limitem 50,00 USD przed dywidendą 0,50 USD otwiera dzień ex-date jako zlecenie z limitem 49,50 USD. Zlecenia oczekujące powyżej rynku, takie jak sell limit lub buy stop, pozostają bez zmian. Redukcja utrzymuje zlecenie w podobnej odległości od rynku, jaką wybrał inwestor dzień wcześniej; jest ona wyrażona w pełnych centach, zgodnie z zasadami kwotowania akcji w USA.

DNR (ang. Do Not Reduce) to instrukcja, która wyłącza zlecenie z tego procesu. Po jej dodaniu zlecenie kupna z limitem 50,00 USD pozostaje na poziomie 50,00 USD również w dniu ex-date. Nie każda platforma detaliczna udostępnia opcję DNR w oknie zlecenia; jeśli jest dostępna, zazwyczaj znajduje się obok pola czasu ważności zlecenia jako pole wyboru lub w menu rozwijanym instrukcji specjalnych. Analogiczna instrukcja, DNI (Do Not Increase), dotyczy liczby akcji w przypadku dywidend akcyjnych i podziałów akcji, co szczegółowo omawia artykuł due bills i podziały akcji.

O ile faktycznie spada kurs w dniu ex-date?

Poniższy panel obejmuje grupę spółek o wysokich dywidendach oraz wszystkie dni ex-date w okresie od 2021 do 2025 roku. Żadna z tych spółek nie przeprowadziła podziału akcji w tym czasie, dzięki czemu surowe ceny i kwoty dywidend są bezpośrednio porównywalne. Dla każdego dnia ex-date zmierzono różnicę między kursem zamknięcia z poprzedniej sesji a kursem otwarcia w dniu ex-date, a następnie zestawiono ją z całkowitą wypłaconą dywidendą.

ZapytanieSpadek kursu na dolara wypłaconej dywidendy, dni ustalenia prawa do dywidendy 2021–2025
Dokładny kod SQL dla każdej liczby
WITH
prices AS
(
    SELECT
        ticker,
        date,
        open_px,
        any(close_px) OVER (PARTITION BY ticker ORDER BY date ASC ROWS BETWEEN 1 PRECEDING AND 1 PRECEDING) AS prior_close
    FROM
    (
        SELECT
            ticker,
            date,
            toFloat64(max(open))  AS open_px,
            toFloat64(max(close)) AS close_px
        FROM global_markets.stocks_daily_aggs
        WHERE ticker IN ('KO','PG','JNJ','PEP','XOM','CVX','MCD','HD','VZ','ABBV')
          AND date >= '2020-12-01'
          AND date <  '2026-01-01'
        GROUP BY ticker, date
    )
),
ex_days AS
(
    SELECT
        ticker,
        ex_dividend_date            AS ex_date,
        toFloat64(max(cash_amount)) AS dividend
    FROM global_markets.stocks_dividends
    WHERE ticker IN ('KO','PG','JNJ','PEP','XOM','CVX','MCD','HD','VZ','ABBV')
      AND ex_dividend_date >= '2021-01-01'
      AND ex_dividend_date <  '2026-01-01'
      AND cash_amount > 0
    GROUP BY ticker, ex_dividend_date
)
SELECT
    e.ticker                                                   AS ticker,
    count()                                                    AS payment_count,
    round(avg(e.dividend), 4)                                  AS avg_dividend_usd,
    round(sum(p.prior_close - p.open_px) / sum(e.dividend), 2) AS drop_per_dollar_paid
FROM ex_days AS e
INNER JOIN prices AS p ON p.ticker = e.ticker AND p.date = e.ex_date
WHERE p.prior_close > 0
GROUP BY e.ticker
ORDER BY drop_per_dollar_paid DESC
Run this yourself

Ostatnią kolumnę należy interpretować jako dolary spadku na otwarciu przypadające na dolara wypłaconej dywidendy. Wśród 10 spółek wartość ta waha się od 0.28 w dolnej części panelu do 1.23 w górnej, przy czym najwyższy wynik należy do ABBV przy płatnościach 20. Wartość 1,00 oznaczałaby, że akcje otworzyły się średnio o pełną wartość dywidendy poniżej poprzedniego zamknięcia.

Agregacja wszystkich płatności według roku kalendarzowego pokazuje, jak bardzo wynik zmienia się w zależności od wybranej próby.

ZapytanieSkumulowany spadek kursu na dolara wypłaconej dywidendy według lat kalendarzowych
Dokładny kod SQL dla każdej liczby
WITH
prices AS
(
    SELECT
        ticker,
        date,
        open_px,
        any(close_px) OVER (PARTITION BY ticker ORDER BY date ASC ROWS BETWEEN 1 PRECEDING AND 1 PRECEDING) AS prior_close
    FROM
    (
        SELECT
            ticker,
            date,
            toFloat64(max(open))  AS open_px,
            toFloat64(max(close)) AS close_px
        FROM global_markets.stocks_daily_aggs
        WHERE ticker IN ('KO','PG','JNJ','PEP','XOM','CVX','MCD','HD','VZ','ABBV')
          AND date >= '2020-12-01'
          AND date <  '2026-01-01'
        GROUP BY ticker, date
    )
),
ex_days AS
(
    SELECT
        ticker,
        ex_dividend_date            AS ex_date,
        toFloat64(max(cash_amount)) AS dividend
    FROM global_markets.stocks_dividends
    WHERE ticker IN ('KO','PG','JNJ','PEP','XOM','CVX','MCD','HD','VZ','ABBV')
      AND ex_dividend_date >= '2021-01-01'
      AND ex_dividend_date <  '2026-01-01'
      AND cash_amount > 0
    GROUP BY ticker, ex_dividend_date
)
SELECT
    toString(toYear(e.ex_date))                                AS year,
    count()                                                    AS payment_count,
    round(sum(p.prior_close - p.open_px) / sum(e.dividend), 2) AS drop_per_dollar_paid
FROM ex_days AS e
INNER JOIN prices AS p ON p.ticker = e.ticker AND p.date = e.ex_date
WHERE p.prior_close > 0
GROUP BY year
ORDER BY year
Run this yourself

Suma dla całej próby wyniosła 0.85 przy 40 płatnościach w 2021 oraz 0.81 przy 40 płatnościach w 2025. Każde twierdzenie, że spadek w dniu ex-date stanowi stały ułamek dywidendy, jest jedynie pojedynczym wynikiem z tak szerokiego rozkładu.

Dlaczego jeden dzień ex-date nie daje pełnego obrazu

Coca-Cola (KO) od dziesięcioleci wypłaca dywidendy w regularnym, kwartalnym cyklu. Wykres dywidendy na akcję w zestawieniu z faktycznym spadkiem na otwarciu w każdym dniu ex-date ilustruje problem pomiarowy.

ZapytanieKO: dywidenda na akcję a zrealizowany spadek kursu na otwarciu, wszystkie dni ustalenia prawa do dywidendy 2021–2025
Dokładny kod SQL dla każdej liczby
WITH
prices AS
(
    SELECT
        date,
        open_px,
        any(close_px) OVER (ORDER BY date ASC ROWS BETWEEN 1 PRECEDING AND 1 PRECEDING) AS prior_close
    FROM
    (
        SELECT
            date,
            toFloat64(max(open))  AS open_px,
            toFloat64(max(close)) AS close_px
        FROM global_markets.stocks_daily_aggs
        WHERE ticker = 'KO'
          AND date >= '2020-12-01'
          AND date <  '2026-01-01'
        GROUP BY date
    )
),
ex_days AS
(
    SELECT
        ex_dividend_date            AS ex_date,
        toFloat64(max(cash_amount)) AS dividend
    FROM global_markets.stocks_dividends
    WHERE ticker = 'KO'
      AND ex_dividend_date >= '2021-01-01'
      AND ex_dividend_date <  '2026-01-01'
      AND cash_amount > 0
    GROUP BY ex_dividend_date
)
SELECT
    toString(e.ex_date)                 AS ex_date,
    concat(monthName(e.ex_date), ' ', toString(toDayOfMonth(e.ex_date)), ', ', toString(toYear(e.ex_date))) AS ex_date_label,
    round(e.dividend, 4)                AS dividend_per_share,
    round(p.prior_close - p.open_px, 2) AS drop_at_open
FROM ex_days AS e
INNER JOIN prices AS p ON p.date = e.ex_date
WHERE p.prior_close > 0
ORDER BY e.ex_date
Run this yourself

Linia dywidendy jest niemal płaska, z rocznym wzrostem. Linia spadku kursu oscyluje wokół niej; zdarzają się dni ex-date, w których kurs otwarcia był znacznie niższy od skorygowanego, oraz takie, w których otwarcie nastąpiło powyżej poprzedniego zamknięcia. Spółka KO wypłaciła 0.42 USD na akcję w dniu March 12, 2021 oraz 0.51 USD w dniu December 1, 2025, w ramach 20 dni ex-date w badanym okresie.

Obraz z pojedynczego dnia jest nieczytelny w tej skali. Kwartalna dywidenda spółki o dużej kapitalizacji stanowi znacznie mniej niż jeden procent ceny akcji, a zwykłe wahania kursu w trakcie sesji nocnej osiągają podobną skalę. Poniższy panel zestawia te dwie wartości w punktach bazowych (jeden punkt bazowy to jedna setna punktu procentowego) i zlicza, jak często zwykły ruch nocny był większy niż cała kwartalna dywidenda.

ZapytanieKwartalna dywidenda a standardowe zmiany kursu w sesji nocnej, 2021–2025
Dokładny kod SQL dla każdej liczby
WITH
prices AS
(
    SELECT
        ticker,
        date,
        open_px,
        any(close_px) OVER (PARTITION BY ticker ORDER BY date ASC ROWS BETWEEN 1 PRECEDING AND 1 PRECEDING) AS prior_close
    FROM
    (
        SELECT
            ticker,
            date,
            toFloat64(max(open))  AS open_px,
            toFloat64(max(close)) AS close_px
        FROM global_markets.stocks_daily_aggs
        WHERE ticker IN ('KO','PG','JNJ','PEP','XOM','CVX','MCD','HD','VZ','ABBV')
          AND date >= '2020-12-01'
          AND date <  '2026-01-01'
        GROUP BY ticker, date
    )
),
ex_days AS
(
    SELECT
        ticker,
        ex_dividend_date            AS ex_date,
        toFloat64(max(cash_amount)) AS dividend
    FROM global_markets.stocks_dividends
    WHERE ticker IN ('KO','PG','JNJ','PEP','XOM','CVX','MCD','HD','VZ','ABBV')
      AND ex_dividend_date >= '2021-01-01'
      AND ex_dividend_date <  '2026-01-01'
      AND cash_amount > 0
    GROUP BY ticker, ex_dividend_date
),
div_size AS
(
    SELECT
        e.ticker                                AS ticker,
        avg(e.dividend / p.prior_close) * 10000 AS dividend_bps
    FROM ex_days AS e
    INNER JOIN prices AS p ON p.ticker = e.ticker AND p.date = e.ex_date
    WHERE p.prior_close > 0
    GROUP BY e.ticker
),
ordinary AS
(
    SELECT
        ticker,
        date,
        abs(open_px / prior_close - 1) * 10000 AS abs_gap_bps
    FROM prices
    WHERE prior_close > 0
      AND date >= '2021-01-01'
      AND (ticker, date) NOT IN (SELECT ticker, ex_date FROM ex_days)
)
SELECT
    o.ticker                                                              AS ticker,
    round(max(d.dividend_bps), 1)                                         AS dividend_bps,
    round(quantileDeterministic(0.5)(o.abs_gap_bps, toUInt32(o.date)), 1) AS median_gap_bps,
    round(100 * countIf(o.abs_gap_bps > d.dividend_bps) / count(), 1)     AS sessions_over_dividend_pct
FROM ordinary AS o
INNER JOIN div_size AS d ON d.ticker = o.ticker
GROUP BY o.ticker
ORDER BY sessions_over_dividend_pct DESC
Run this yourself

Mediana zwykłego ruchu nocnego dla HD wyniosła 40.5 punktów bazowych przy kwartalnej dywidendzie o wartości 60.7, a w 33.2 procentach zwykłych sesji sam ruch nocny był większy niż cała wypłata. Na drugim końcu panelu, VZ pokryło swoją dywidendę w ten sposób w 3.2 procentach sesji. Jeden dzień ex-date jest tylko pojedynczą próbką z tego rozkładu, z nałożoną na nią dywidendą.

Dlaczego spadek jest zazwyczaj mniejszy niż dywidenda

Dwa mechanizmy sprawiają, że obserwowany spadek jest mniejszy niż pełna kwota wypłaty.

Pierwszym jest podatek. Dolar dywidendy i dolar wzrostu ceny akcji nie mają tej samej wartości po opodatkowaniu dla inwestora: dywidenda jest opodatkowana w roku otrzymania, podczas gdy niezrealizowany zysk kapitałowy jest opodatkowany dopiero w momencie sprzedaży, według stawki obowiązującej w tamtym czasie. Jeśli inwestor wycenia dolara dywidendy jako „jeden minus stopa dywidendy”, a dolara ceny jako „jeden minus stopa zysków kapitałowych”, punkt obojętności znajduje się przy spadku równym dywidendzie pomnożonej przez (1 - td) / (1 - tg). Przyjmijmy przykładowe stawki: inwestor opodatkowany 20 procentami od dywidendy kwalifikowanej i 15 procentami od zysków długoterminowych wycenia wypłatę na 0,80 / 0,85, czyli około 94 centy za dolara, co wspiera spadek o około 0,47 USD przy dywidendzie 0,50 USD. Przy stawkach 37 procent i 20 procent stosunek ten wynosi 0,63 / 0,80, czyli około 79 centów, co przekłada się na spadek o około 0,39 USD przy tej samej wypłacie. Obowiązujące stawki zależą od okresu posiadania i typu rachunku, a okres posiadania dywidendy kwalifikowanej określa stosowne wymogi. Stawki zmieniają się w czasie, ale logika matematyczna pozostaje niezmienna.

Drugim mechanizmem jest minimalna zmiana ceny (tick). Ceny notowane są w pełnych centach, a dywidenda w wysokości 0,235 USD nie ma dokładnego odzwierciedlenia w cenie otwarcia.

Czy warto kupić akcje dzień wcześniej, aby otrzymać dywidendę?

Wykonajmy obliczenia. Akcje zamykają się po 50,00 USD dzień przed dniem ex-date, z dywidendą 0,50 USD. Kupując 100 akcji po tej cenie, posiadasz aktywa o wartości 5000 USD. Następnego ranka skorygowany kurs zamknięcia wynosi 49,50 USD, 100 akcji jest wycenianych na 4950 USD, a Ty posiadasz należność z tytułu dywidendy w wysokości 50 USD, która zostanie rozliczona tygodnie później. Przed opodatkowaniem, po obu stronach dnia ex-date, dysponujesz kwotą 5000 USD. Zamieniłeś 50 USD ceny akcji na 50 USD gotówki, co na rachunku opodatkowanym stanowi zdarzenie podatkowe.

Kupno akcji dzień przed dniem ex-date decyduje o momencie uzyskania dochodu. To, czy kurs otwarcia znajdzie się powyżej czy poniżej skorygowanego kursu odniesienia w konkretny poranek, jest szumem informacyjnym widocznym na wykresie KO powyżej. Podejście, które celowo wykorzystuje tę różnicę, ma swoją nazwę, a strategia dividend capture omawia koszty jej stosowania. W kwestii mechaniki wyjścia z pozycji, sprzedaż w dniu ex-dividend odpowiada bezpośrednio na to pytanie.

Jak przygotowano te panele

Wybrano duże spółki z USA o ciągłej historii kwartalnych wypłat dywidendy, które nie przeprowadziły podziału akcji w latach 2021–2025, dzięki czemu nieskorygowane ceny otwarcia i kwoty gotówkowe pozostają porównywalne w całym badanym okresie. Kurs zamknięcia z poprzedniej sesji dla każdego dnia ex-date to poprzedni wiersz w szeregu dziennych sesji danego tickera, co pozwala na obsługę weekendów i świąt bez sztywnego kalendarza. Wiersze z dywidendami są deduplikowane według tickera i dnia ex-date. Panele wskaźnikowe sumują spadek w relacji do całkowitej dywidendy, zamiast uśredniać wskaźniki dla każdego zdarzenia, co zapobiega dominacji małych wypłat w końcowym wyniku.

FAQ

Dlaczego kurs akcji spada w dniu ex-dividend?

W dniu ex-dividend nabywca nie otrzymuje już nadchodzącej wypłaty, a giełda obniża kurs zamknięcia z poprzedniej sesji o wartość dywidendy dla celów referencyjnych i wyceny zleceń. Spadek jest wpisany w mechanikę tego dnia i następuje przed rozpoczęciem notowań.

Czy akcje zawsze spadają dokładnie o wartość dywidendy?

Nie. Dostosowanie kursu odniesienia jest dokładnie równe dywidendzie, podczas gdy cena otwarcia zależy od wyniku aukcji. Uśredniając dane z wielu dni ex-date, spadek zazwyczaj oscyluje poniżej pełnej kwoty wypłaty, a w pojedynczy poranek zwykłe wahania cen są często większe niż sama dywidenda.

Czym jest zlecenie DNR?

DNR oznacza „Do Not Reduce” (nie redukować). Jest to instrukcja dołączana do otwartego zlecenia kupna z limitem lub zlecenia sprzedaży typu stop, informująca giełdę, aby pozostawiła cenę zlecenia bez zmian w dniu ex-dividend, zamiast obniżać ją o wartość dywidendy.

Czy otrzymam dywidendę, jeśli kupię akcje w dniu ex-dividend?

Nie. Kupno akcji w dniu ex-date lub później oznacza, że nadchodząca wypłata przypada sprzedającemu. Aby ją otrzymać, należy posiadać akcje przed otwarciem dnia ex-date, co wyznacza właśnie ta data.

Czy spadek w dniu ex-dividend oznacza, że straciłem pieniądze?

Przed opodatkowaniem wartość przesuwa się z ceny akcji do gotówki. Inwestor posiadający akcje w dniu ex-date widzi obniżenie wyceny pozycji, ale jednocześnie pojawia się należność z tytułu dywidendy. Podatki oraz termin wypłaty sprawiają, że w praktyce obie strony różnią się od siebie.


Każdy panel zawiera odpowiadające mu zapytanie SQL, dzięki czemu można sprawdzić, które sesje zostały uwzględnione, a które pominięte. Aby przeprowadzić to samo porównanie dla spółki, którą już posiadasz, zadaj pytanie w prostym języku na terminalu Strasmore.