Strasmore Research
Edukacja Matt ConnorAutor: Matt Connor

Jak znaleźć datę wygaśnięcia lockupu IPO

Data wygaśnięcia lockupu znajduje się w prospekcie IPO, nie w kalendarzu. Sprawdź, gdzie jej szukać i dlaczego liczenie 180 dni od debiutu bywa błędne.

Data wygaśnięcia lockupu jest określona w prospekcie emisyjnym IPO. Najszybciej można ją znaleźć, otwierając ostateczny prospekt emitenta w EDGAR i sprawdzając dwa miejsca: sekcję zatytułowaną „Shares Eligible for Future Sale” oraz omówienie „Lock-Up Agreements” w części „Underwriting”. Łącznie wskazują one liczbę akcji, które staną się zbywalne, oraz dzień zniesienia ograniczenia. Poniższa zasada liczenia jest przyczyną większości błędnie publikowanych dat. Warunki zwolnienia opisane dalej wyjaśniają natomiast, dlaczego data wydrukowana w prospekcie nie zawsze jest datą faktycznie obowiązującą.

Jeśli najpierw potrzebne jest wyjaśnienie pojęcia, czym jest lockup IPO opisuje działanie umowy i podmioty, które ją podpisują. Ta strona służy do wyszukiwania daty.

Gdzie podano datę wygaśnięcia lockupu

Każde IPO w USA pozostawia taki sam ślad w dokumentach. Należy otworzyć wyszukiwanie pełnego tekstu EDGAR, znaleźć spółkę i wyświetlić listę jej zgłoszeń.

  • S-1 to oświadczenie rejestracyjne. Zawiera postanowienia dotyczące lockupu już od pierwszego publicznego projektu, a kolejne wersje są składane jako S-1/A. Warunki mogą się między nimi zmieniać.
  • 424B4 to ostateczny prospekt emisyjny składany w ciągu dwóch dni roboczych od ustalenia ceny. Odzwierciedla warunki transakcji, która faktycznie doszła do skutku. Należy korzystać właśnie z tego dokumentu.

W dokumencie należy wyszukać oba zapisy: „lock-up” i „lockup”, ponieważ emitenci nie stosują jednolicie łącznika. Odpowiedź znajduje się w trzech sekcjach.

  • Shares Eligible for Future Sale przedstawia harmonogram podaży: liczbę akcji objętych ograniczeniami oraz datę, od której każda transza staje się zbywalna. Poszukiwane zdanie ma zwykle formę: „beginning 181 days after the date of this prospectus”.
  • Underwriting, czasami zatytułowana „No Sales of Similar Securities”, opisuje umowę: wskazuje jej sygnatariuszy, zakazy, wyjątki oraz underwriterów uprawnionych do wcześniejszego zwolnienia akcji.
  • Risk Factors niemal zawsze powtarza harmonogram prostszym językiem, w ramach czynnika ryzyka dotyczącego znacznej przyszłej podaży akcji.

Zgłoszenia składane przez spółkę obejmują pozostałe elementy alfabetu formularzy.

Liczenie od daty ustalenia ceny, a nie od pierwszego dnia notowań

Odliczanie rozpoczyna się od „the date of this prospectus”. Jest to data ustalenia ceny, czyli wieczór, w którym underwriterzy ustalają cenę emisyjną. Akcje debiutują na kolejnej sesji. Liczenie 180 dni od pierwszej świecy na wykresie prowadzi do daty przesuniętej o jeden dzień.

Liczenie odbywa się również w dniach kalendarzowych, a nie sesyjnych. Data końcowa może przypadać w sobotę. W przypadku dziewięciu dobrze znanych debiutów dzień 180. liczono od daty ustalenia ceny każdej transakcji:

ZapytanieDzień 180 liczony od daty ustalenia ceny: dziewięć debiutów w USA
Dokładny kod SQL dla każdej liczby
WITH ipos AS (
    SELECT tupleElement(pair, 1) AS ticker,
           toDate(tupleElement(pair, 2)) AS pricing_date
    FROM (
        SELECT arrayJoin([('LYFT', '2019-03-28'), ('UBER', '2019-05-09'),
                          ('DASH', '2020-12-08'), ('ABNB', '2020-12-09'),
                          ('HOOD', '2021-07-28'), ('RIVN', '2021-11-09'),
                          ('CAVA', '2023-06-14'), ('BIRK', '2023-10-10'),
                          ('RDDT', '2024-03-20')]) AS pair
    )
),
sessions AS (
    SELECT DISTINCT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND window_start >= toDateTime('2019-03-01 00:00:00')
      AND window_start < toDateTime('2026-08-01 00:00:00')
)
SELECT i.ticker AS ticker,
       formatDateTimeInJodaSyntax(i.pricing_date, 'MMM d, yyyy') AS pricing_date_label,
       formatDateTimeInJodaSyntax(addDays(i.pricing_date, 180), 'MMM d, yyyy') AS day_180_label,
       formatDateTime(addDays(i.pricing_date, 180), '%W') AS day_180_weekday,
       countIf(s.session_date > i.pricing_date
               AND s.session_date <= addDays(i.pricing_date, 180)) AS market_opens,
       formatDateTimeInJodaSyntax(
           minIf(s.session_date, s.session_date >= addDays(i.pricing_date, 180)),
           'MMM d, yyyy') AS next_open_session_label
FROM ipos AS i
CROSS JOIN sessions AS s
GROUP BY i.ticker, i.pricing_date
ORDER BY (minIf(s.session_date, s.session_date >= addDays(i.pricing_date, 180))
          > addDays(i.pricing_date, 180)) DESC,
         i.pricing_date ASC
Run this yourself

Sto osiemdziesiąt dni kalendarzowych odpowiadało 122 otwarciom rynku dla DASH oraz 123 dla RDDT. Liczenie 180 dni sesyjnych przesuwa datę mniej więcej o dwa miesiące. To drugi często popełniany błąd.

Panel uporządkowano tak, aby na początku znalazły się przypadki, w których data przypadła na dzień zamknięcia rynku. DASH ustaliła cenę w dniu Dec 8, 2020, jej 180. dzień przypadł w Sunday, a pierwsza sesja przypadająca tego dnia lub później odbyła się Jun 7, 2021. Akcje stają się zbywalne w dniu określonym w umowie. Mogą jednak zmienić właściciela dopiero przy kolejnym otwarciu rynku.

180 dni to konwencja, a nie reguła

Okres 180 dni jest standardem rynkowym, ale stanowi zwyczaj, a nie wymóg. W dokumentach można znaleźć między innymi następujące warianty:

  • 90 dni, częściej spotykane w mniejszych transakcjach.
  • 365 dni, niekiedy stosowane wobec założycieli lub akcjonariuszy kontrolujących w tej samej transakcji, w której pozostali akcjonariusze podlegają okresowi 180 dni.
  • Zwolnienia etapowe, w których część akcji zostaje zwolniona w jednej dacie, a pozostała część w innej. Prospekt podaje dla każdej transzy liczbę akcji i datę.
  • Różne warunki dla poszczególnych grup. Członkowie władz, dyrektorzy, fundusze obecne przed IPO i pracownicy mogą podpisywać odrębne umowy w ramach jednej transakcji. W takim przypadku nie istnieje jedna data wygaśnięcia lockupu.

Liczba akcji jest równie istotna jak data. Należy porównać blokadę akcji z free floatem akcji, aby ocenić, jak dużą podaż zbywalnych walorów może teoretycznie wprowadzić harmonogram.

Co może zmienić datę po jej opublikowaniu

  • Zrzeczenie się ograniczenia. Wskazani underwriterzy mogą pisemnie zwolnić posiadaczy wcześniej. Często następuje to równocześnie z ofertą wtórną kierowaną do rynku. Pierwotne zgłoszenie nie zostaje przy tym zmienione.
  • Warunki wcześniejszego zwolnienia. W wielu nowszych umowach transza zostaje zwolniona, gdy kurs akcji przez określoną liczbę dni w wyznaczonym przedziale utrzymuje się na poziomie określonej premii względem ceny IPO, a także dopiero po publikacji wyników za pierwszy lub drugi kwartał.
  • Otwarcie okna po publikacji wyników. Umowy często przewidują otwarcie okna zwolnienia po określonej liczbie dni sesyjnych od raportu wynikowego. W efekcie data faktyczna zależy od kalendarza wyników, a nie od samego upływu rocznicy.
  • Nowa rejestracja. Oświadczenie rejestracyjne dotyczące odsprzedaży lub sprzedaż akcji z wykorzystaniem programu shelf registration może wprowadzić określony pakiet akcji na rynek według własnego harmonogramu.

Każdy z tych przypadków znajduje potwierdzenie w zgłoszeniu lub komunikacie spółki. Data podana na stronie z kalendarzem, której nie potwierdza żadne zgłoszenie, jest jedynie szacunkiem.

Co dzieje się na rynku w pobliżu 180. dnia

Wolumen jest najbardziej bezpośrednio obserwowalnym elementem. Poniżej przedstawiono jedną spółkę, Reddit, analizowaną tydzień po tygodniu w pierwszym roku od debiutu. Cena została ustalona 20 marca 2024 r.:

ZapytanieTygodniowy średni dzienny wolumen: pierwszy rok notowań Reddit, marzec 2024–marzec 2025
Dokładny kod SQL dla każdej liczby
WITH daily AS (
    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
           toFloat64(sum(volume)) AS shares
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'RDDT'
      AND window_start >= toDateTime('2024-03-21 00:00:00')
      AND window_start < toDateTime('2025-03-21 00:00:00')
    GROUP BY session_date
)
SELECT toMonday(session_date) AS week,
       round(avg(shares) / 1e6, 2) AS avg_daily_volume_m
FROM daily
GROUP BY week
ORDER BY week
Run this yourself

Wykres obejmuje 53 tygodni. Średni wolumen w pierwszym tygodniu wyniósł 32.21 mln akcji na sesję. W ostatnim tygodniu było to 12.16 mln. Pogrupowanie tych samych sesji według odległości od daty ustalenia ceny pozwala określić przedziały istotne przy analizie lockupu:

ZapytanieWolumen akcji Reddit według przedziału, liczony w dniach od daty ustalenia ceny 20 marca 2024 r.
Dokładny kod SQL dla każdej liczby
WITH daily AS (
    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
           toFloat64(sum(volume)) AS shares
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'RDDT'
      AND window_start >= toDateTime('2024-03-21 00:00:00')
      AND window_start < toDateTime('2025-03-21 00:00:00')
    GROUP BY session_date
)
SELECT multiIf(dateDiff('day', toDate('2024-03-20'), session_date) <= 30, 'Days 1-30',
               dateDiff('day', toDate('2024-03-20'), session_date) <= 90, 'Days 31-90',
               dateDiff('day', toDate('2024-03-20'), session_date) <= 170, 'Days 91-170',
               dateDiff('day', toDate('2024-03-20'), session_date) <= 200, 'Days 171-200',
               'Days 201-365') AS window_label,
       round(avg(shares) / 1e6, 2) AS avg_daily_volume_m,
       round(max(shares) / 1e6, 2) AS busiest_session_m
FROM daily
GROUP BY window_label
ORDER BY min(dateDiff('day', toDate('2024-03-20'), session_date))
Run this yourself

Średni wolumen w dniach od 1. do 30. wyniósł 10.17 mln akcji na sesję. W dniach od 91. do 170., czyli w okresie poprzedzającym 180. dzień, wyniósł 3.39 mln. W dniach od 171. do 200., obejmujących cztery tygodnie przed 180. dniem i po nim, wyniósł 3.92 mln, a maksymalny wolumen na jednej sesji sięgnął 7.2 mln akcji.

Należy traktować te dane jako historię jednej spółki, a nie regułę. Przyjmijmy teraz konwencję 180 dni i zastosujmy ją do wszystkich dziewięciu debiutów:

ZapytanieWolumen w czterech tygodniach wokół 180. dnia vs tygodnie wcześniejsze: dziewięć debiutów w USA
Dokładny kod SQL dla każdej liczby
WITH ipos AS (
    SELECT tupleElement(pair, 1) AS ticker,
           toDate(tupleElement(pair, 2)) AS pricing_date
    FROM (
        SELECT arrayJoin([('LYFT', '2019-03-28'), ('UBER', '2019-05-09'),
                          ('DASH', '2020-12-08'), ('ABNB', '2020-12-09'),
                          ('HOOD', '2021-07-28'), ('RIVN', '2021-11-09'),
                          ('CAVA', '2023-06-14'), ('BIRK', '2023-10-10'),
                          ('RDDT', '2024-03-20')]) AS pair
    )
),
daily AS (
    SELECT ticker,
           toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
           toFloat64(sum(volume)) AS shares
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('LYFT', 'UBER', 'DASH', 'ABNB', 'HOOD', 'RIVN', 'CAVA', 'BIRK', 'RDDT')
      AND window_start >= toDateTime('2019-07-01 00:00:00')
      AND window_start < toDateTime('2024-11-01 00:00:00')
    GROUP BY ticker, session_date
)
SELECT d.ticker AS ticker,
       round(avgIf(d.shares, dateDiff('day', i.pricing_date, d.session_date) BETWEEN 120 AND 170) / 1e6, 2) AS baseline_volume_m,
       round(avgIf(d.shares, dateDiff('day', i.pricing_date, d.session_date) BETWEEN 171 AND 200) / 1e6, 2) AS window_volume_m,
       round(avgIf(d.shares, dateDiff('day', i.pricing_date, d.session_date) BETWEEN 171 AND 200)
             / avgIf(d.shares, dateDiff('day', i.pricing_date, d.session_date) BETWEEN 120 AND 170), 2) AS volume_ratio
FROM daily AS d
INNER JOIN ipos AS i ON d.ticker = i.ticker
GROUP BY d.ticker
HAVING countIf(dateDiff('day', i.pricing_date, d.session_date) BETWEEN 120 AND 170) >= 20
   AND countIf(dateDiff('day', i.pricing_date, d.session_date) BETWEEN 171 AND 200) >= 10
ORDER BY volume_ratio DESC
Run this yourself

Wskaźnik porównuje średni dzienny wolumen w dniach od 171. do 200. ze średnim wolumenem w dniach od 120. do 170. Wartość bliska 1 oznacza, że tygodnie wokół 180. dnia wyglądały podobnie do wcześniejszych tygodni. UBER osiągnęło najwyższą wartość: 4.53x, przy bazowym wolumenie 8.47 mln akcji na sesję. LYFT osiągnęło najniższą wartość: 0.93x. W przypadku 9 transakcji to samo założenie prowadzi do szerokiego zakresu wyników. Jest to argument za analizą zgłoszenia zamiast polegania na konwencji.

Informacje o zarejestrowanych ofertach wtórnych są publikowane po zamknięciu rynku, a pierwszy odczyt widoczny dla inwestorów pojawia się przy otwarciu następnego dnia. Luki overnight opisują ten mechanizm.

Oferty wtórne i Formularz 144 w pobliżu tej daty

W pobliżu daty zwolnienia mogą pojawić się dwa rodzaje zgłoszeń.

  • Oferta zarejestrowana. Suplement do prospektu składany na podstawie Rule 424(b)(5) albo nowy S-1 rejestrujący odsprzedaż istniejących akcji oznacza, że posiadacze sprzedają akcje za pośrednictwem underwriterów, a nie pojedynczo na giełdzie. Dokument wskazuje sprzedających oraz liczbę oferowanych przez nich akcji.
  • Form 144. Podmiot powiązany planujący sprzedaż akcji objętych ograniczeniami lub akcji kontrolnych składa zawiadomienie, gdy sprzedaż przekracza 5 000 akcji lub 50 000 USD w dowolnym okresie trzech miesięcy. Od 2023 r. zawiadomienia te są składane elektronicznie w EDGAR, dzięki czemu można je wyszukiwać razem z pozostałymi dokumentami. Rule 144 ogranicza także kwartalny wolumen sprzedaży podmiotu powiązanego do większej z dwóch wartości: 1% akcji pozostających w obrocie albo średniego tygodniowego wolumenu raportowanego w ciągu czterech tygodni poprzedzających zawiadomienie.

Form 4 rejestruje faktyczne transakcje sprzedaży przeprowadzone przez insiderów. Czytane łącznie, Form 144 oznacza zamiar, a Form 4 potwierdza wykonanie transakcji.

Rocznik 2026 podlega tej samej dokumentacji

Należy pobrać formularz 424B4 dla wybranej spółki, przeczytać obie sekcje, liczyć od daty prospektu, a następnie sprawdzić, czy umowa zawiera warunek wcześniejszego zwolnienia. Rynek IPO w 2026 r. obejmuje przepływ transakcji w pierwszej połowie roku, a pierwszy miesiąc notowań SpaceX pokazuje zachowanie rynku w tygodniach po debiucie.

Należy zachować ostrożność wobec publikowanych tabel przyszłych dat. Większość z nich powstaje przez dodanie 180 dni do daty debiutu. Powtarza to oba opisane wyżej błędy: przesunięcie o jeden dzień oraz założenie, że konwencja dotyczy każdego posiadacza. Data jest wiarygodna tylko wtedy, gdy potwierdza ją zgłoszenie. Z tego powodu na tej stronie nie ma tabeli prognoz.

FAQ dotyczące daty wygaśnięcia lockupu

Gdzie w formularzu S-1 znajduje się data wygaśnięcia lockupu?

W dwóch sekcjach. „Shares Eligible for Future Sale” przedstawia harmonogram zwolnienia akcji oraz wskazuje ich liczbę i terminy. Tekst „Lock-Up Agreements” w części „Underwriting” opisuje warunki umowy i wskazuje underwriterów uprawnionych do uchylenia ograniczeń. Ostateczny prospekt 424B4 powtarza oba elementy, uwzględniając wartości z transakcji po ustaleniu ceny.

Czy lockup rozpoczyna się w dniu IPO czy w dniu ustalenia ceny?

W dniu ustalenia ceny. W zgłoszeniach okres jest określany jako liczba dni od „the date of this prospectus”, czyli od dnia ustalenia ceny transakcji, przypadającego na jedną sesję przed rozpoczęciem notowań. Przy takim sposobie liczenia dzień 180. obejmował 122 otwarcia rynku dla DASH, a dzień 180. przypadł na Jun 6, 2021.

Czy każdy lockup IPO trwa 180 dni?

Nie. Okres 180 dni jest konwencją. W dokumentach występują zarówno okresy 90-, jak i 365-dniowe. Zwolnienia etapowe mogą uwolnić część pakietu wcześniej, a różne grupy posiadaczy w ramach jednej transakcji mogą podpisywać odmienne umowy.

Czy lockup może zakończyć się przed datą podaną w prospekcie?

Tak. Underwriterzy mogą pisemnie uchylić ograniczenie, a wiele umów zawiera warunki wcześniejszego zwolnienia zależne od kursu akcji w określonym przedziale dni sesyjnych. Często uzależniają je także od okresu po publikacji wyników. Każde wcześniejsze zwolnienie należy potwierdzić w zgłoszeniu lub komunikacie spółki.

Jak sprawdzić, czy insiderzy sprzedawali akcje po wygaśnięciu lockupu?

Zawiadomienia Form 144 rejestrują zamiar sprzedaży przez podmiot powiązany, a formularze Form 4 dokumentują zakończone transakcje insiderów. Zarejestrowana oferta wtórna pojawia się jako suplement 424(b)(5) albo formularz S-1 dotyczący odsprzedaży i wskazuje sprzedających.


Wszystkie powyższe dane liczbowe pochodzą z zapisanego zapytania obejmującego dane sesyjne. Kod SQL znajduje się pod każdym panelem. Można zmienić tickery, przesunąć przedziały dni i wykonać takie samo obliczenie w terminalu Strasmore.