Strasmore Research
Edukacja Matt ConnorAutor: Matt Connor

Zlecenie typu iceberg: definicja i mechanizm działania

Analiza działania zleceń typu iceberg na giełdzie. Wyjaśnienie relacji między widoczną częścią zlecenia a ukrytą rezerwą oraz wpływ odświeżania wolumenu na priorytet w kolejce.

Zlecenie typu iceberg to pojedyncze zlecenie z limitem ceny (limit order) oczekujące w arkuszu giełdowym, któremu przypisano dwie wielkości: wielkość widoczną, dostępną dla całego rynku w kwotowaniach, oraz ukrytą rezerwę, którą system transakcyjny automatycznie uwalnia w miarę realizacji widocznej części zlecenia. Nazwa odnosi się do kształtu: niewielki wierzchołek nad linią wody i większość masy ukryta pod nią. Ukrywanie ma swoją cenę, płaconą pozycją w kolejce: każda odświeżona porcja zlecenia otrzymuje nowy znacznik czasu i trafia na koniec kolejki zleceń oczekujących po danej cenie.

Czym jest zlecenie typu iceberg?

Załóżmy, że fundusz chce kupić 50 000 akcji i jest gotów zapłacić maksymalnie 50,00 USD. Wprowadzone jako zwykłe zlecenie z limitem ceny, zlecenie pokazuje w arkuszu popyt na 50 000 akcji po tej cenie, widoczny dla wszystkich uczestników. Wprowadzone jako iceberg z wielkością widoczną 500 sztuk, arkusz pokazuje tylko 500. Gdy te 500 akcji zostanie kupionych, system transakcyjny pobiera kolejne 500 z rezerwy, wystawia je w arkuszu i powtarza proces, aż rezerwa zostanie wyczerpana lub zlecenie zostanie anulowane.

Dwie kwestie pozostają niezmienne. Jest to jedno zlecenie, po jednej cenie, na jednym rynku, a giełda dysponuje pełną ilością od momentu jego wprowadzenia.

Opis, z którym można spotkać się najczęściej – trader dzielący duże zlecenie na części i wprowadzający je na rynek przez wiele godzin lub dni – to inna technika. Jest to harmonogram realizacji (execution schedule), obsługiwany przez algorytm wysyłający wiele oddzielnych zleceń cząstkowych na różne rynki i rozliczany względem benchmarku, takiego jak VWAP. Iceberg to atrybut zlecenia na konkretnym rynku. Dzielenie odbywa się wewnątrz systemu transakcyjnego, w mikrosekundach, w jednym arkuszu.

Słownictwo różni się w zależności od rynku. Część widoczna to wielkość wyświetlana (display quantity) lub wierzchołek (tip), reszta to rezerwa (reserve) lub część nieujawniona, a regulamin Nasdaq nazywa ten atrybut Reserve Size.

Jak mała może być widoczna część zlecenia?

Rynki ustalają dolny limit dla części widocznej i wyrażają go w jednostkach handlowych (round lots), a nie w sztywnej liczbie akcji. Nasdaq wymaga, aby wielkość widoczna zlecenia typu reserve wynosiła co najmniej jedną standardową jednostkę handlową w momencie wprowadzenia i zaokrągla zlecenia o niestandardowej wielkości w dół do najbliższej pełnej jednostki. Arkusz BZX giełdy Cboe uzupełnia wielkość widoczną, gdy spadnie ona poniżej jednej jednostki handlowej. Sformułowania różnią się w zależności od rynku i podlegają zmianom, dlatego należy zapoznać się z regulaminem rynku, na który kieruje się zlecenie, zamiast polegać na informacjach z drugiej ręki.

Jednostka handlowa (round lot) nie zawsze wynosi 100 akcji. Zgodnie ze znowelizowaną definicją Regulation NMS, obowiązującą od 3 listopada 2025 r., jej wielkość zależy od ceny: 100 akcji przy cenie 250,00 USD i niższej, 40 akcji od 250,01 USD do 1 000,00 USD, 10 akcji od 1 000,01 USD do 10 000,00 USD oraz jedna akcja powyżej tej kwoty. Giełdy przypisują każdą spółkę do odpowiedniej kategorii dwa razy w roku na podstawie średniej ceny zamknięcia z okresu oceny w marcu lub wrześniu. Komunikat Nasdaq dotyczący zmian zawiera listę progów i dat. W przypadku akcji o cenie czterocyfrowej najmniejszy dopuszczalny wierzchołek to dziesięć akcji.

Czy zlecenia typu iceberg tracą priorytet w kolejce?

Tak, i jest to część, którą większość wyjaśnień pomija. Arkusze akcji w USA szeregują zlecenia oczekujące najpierw według ceny, a następnie według czasu. Kto złoży zlecenie wcześniej po tej samej cenie, ten realizuje je wcześniej.

Widoczna część zlecenia iceberg dołącza do kolejki w momencie wystawienia. Gdy ta część zostanie zrealizowana, a system uzupełni ją z rezerwy, uzupełnienie wchodzi jako nowe zlecenie widoczne z nowym znacznikiem czasu, na koniec kolejki dla danej ceny. Przepis Nasdaq jasno określa tę asymetrię:

Gdy zlecenie typu Reserve Order zostaje wystawione, jeśli nastąpi realizacja części widocznej, która spowoduje spadek jej wielkości poniżej standardowej jednostki handlowej, wprowadzane jest nowe zlecenie widoczne, które otrzymuje nowy znacznik czasu, podczas gdy wielkość części nieujawnionej zostaje zmniejszona o tę samą wartość i nie otrzymuje nowego znacznika czasu.

Jest to zapis z Nasdaq Equity 4, Rule 4703(h), cytowany za decyzją SEC zatwierdzającą zmianę zasad dotyczących zleceń typu reserve z 18 lutego 2021 r. Rezerwa zachowuje swoją pierwotną pozycję, podczas gdy widoczny wierzchołek resetuje się przy każdym odświeżeniu. Zlecenie na 50 000 akcji, pokazywane po 500 sztuk, odświeża się nawet sto razy, a każde odświeżenie zaczyna się od nowa za każdym zleceniem widocznym, które już oczekuje po tej cenie. To jest rzeczywisty koszt ukrywania.

Wiele rynków dodaje drugi koszt. Zlecenia widoczne mają pierwszeństwo przed zleceniami nieujawnionymi przy tej samej cenie, więc rezerwa ustępuje miejsca każdemu zleceniu widocznemu, nawet jeśli rezerwa dotarła na rynek pierwsza.

Zlecenie iceberg a zlecenie ukryte a dark pool

  • Zlecenie typu iceberg oczekuje na giełdzie publicznej i umieszcza swoją widoczną część w publicznym kwotowaniu, gdzie może ona wyznaczać krajową najlepszą ofertę kupna lub sprzedaży (NBBO). Rezerwa za nią nigdy nie pojawia się w kwotowaniu.
  • Zlecenie w pełni ukryte nie wyświetla niczego. Oczekuje na tej samej giełdzie publicznej, realizuje się po limicie ceny i pojawia się w danych publicznych dopiero po zawarciu transakcji. Rynki zazwyczaj szeregują je za zleceniami widocznymi po tej samej cenie.
  • Dark pool to oddzielny rynek, który w ogóle nie posiada publicznych kwotowań. Informacja o transakcji trafia do rejestru (tape) za pośrednictwem systemu raportowania transakcji już po fakcie.
  • Transakcja pakietowa (block trade) przenosi całą ilość w jednym wynegocjowanym zapisie. Maksymalna wielkość, minimalny czas trwania – podejście przeciwne do powolnego sączenia zlecenia.

Każde z tych rozwiązań przesuwa wolumen bez wcześniejszego reklamowania go. Różnica polega na tym, gdzie zlecenie oczekuje i jak duża jego część trafia do publicznego kwotowania. Ukryte zlecenia mogą oczekiwać po cenach, których kwotowanie nigdy nie pokazuje, więc widoczny arkusz zawsze stanowi jedynie częściowy obraz dostępnej płynności, o czym warto pamiętać w kontekście rynków zablokowanych i skrzyżowanych (locked and crossed markets).

Jaka część danych w rejestrze transakcji dotyczy małych zleceń?

Zanim będzie można odczytać ślad zlecenia typu iceberg, trzeba wyczuć zwykłą strukturę rejestru transakcji. Poniższy panel dzieli miesięczny wolumen akcji przez liczbę transakcji w danym miesiącu dla dwóch znanych spółek, w przypadku których w tym okresie nie wystąpił podział akcji.

ZapytanieŚrednia liczba akcji na transakcję, ujęcie miesięczne, MSFT i KO
Dokładny kod SQL dla każdej liczby
SELECT
    toString(month_start)                                                            AS month,
    formatDateTime(month_start, '%b %Y')                                             AS month_label,
    round(sumIf(volume, ticker = 'MSFT') / sumIf(transactions, ticker = 'MSFT'), 1)  AS msft_shares_per_print,
    round(sumIf(volume, ticker = 'KO')   / sumIf(transactions, ticker = 'KO'), 1)    AS ko_shares_per_print
FROM
(
    SELECT
        toStartOfMonth(toDate(toTimeZone(window_start, 'America/New_York'))) AS month_start,
        ticker,
        volume,
        transactions
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('MSFT', 'KO')
      AND window_start >= toDateTime('2019-01-01 00:00:00', 'UTC')
      AND window_start <  toDateTime('2026-07-01 00:00:00', 'UTC')
)
GROUP BY month_start
HAVING sumIf(transactions, ticker = 'MSFT') > 0
   AND sumIf(transactions, ticker = 'KO') > 0
ORDER BY month_start
Run this yourself

W Jan 2019 średnia realizacja dla Microsoft wynosiła 137.4 akcji. Do Jun 2026 średnia wynosiła 39.5 akcji, przy 47.7 dla Coca Cola w tym samym miesiącu. Zlecenia instytucjonalne nie zmalały. Zmalały pojedyncze transakcje. Jedno zlecenie nadrzędne trafia teraz do rejestru jako setki lub tysiące małych realizacji, niezależnie od tego, czy jest ukryte, planowane, czy oba naraz.

Po przybliżeniu do pojedynczej sesji widać tę samą strukturę. Kolejny panel grupuje każdą transakcję AAPL z 17 czerwca 2026 r. według wielkości.

ZapytanieWszystkie transakcje AAPL z dnia 17 czerwca 2026 r., z podziałem na wielkość
Dokładny kod SQL dla każdej liczby
WITH tape AS
(
    SELECT size
    FROM global_markets.stocks_trades
    WHERE ticker = 'AAPL'
      AND sip_timestamp >= toDateTime('2026-06-17 04:00:00', 'UTC')
      AND sip_timestamp <  toDateTime('2026-06-18 04:00:00', 'UTC')
)
SELECT
    multiIf(size < 100,  'under 100',
            size < 200,  '100 to 199',
            size < 500,  '200 to 499',
            size < 1000, '500 to 999',
            size < 5000, '1000 to 4999',
                         '5000 and up')                    AS print_size_bucket,
    count()                                                AS prints,
    round(100 * count() / sum(count()) OVER (), 2)         AS pct_of_prints,
    round(100 * sum(size) / sum(sum(size)) OVER (), 2)     AS pct_of_shares
FROM tape
GROUP BY print_size_bucket
ORDER BY min(size)
Run this yourself

Transakcje poniżej 100 akcji stanowiły 88.99% wszystkich realizacji tego dnia, obejmując 22.84% wolumenu. Na drugim końcu, koszyk 5000 and up odpowiadał za 0.02% transakcji i 48.77% wolumenu. Transakcja na 500 akcji nie wyróżnia się w tym rozkładzie, co jest pierwszym powodem, dla którego wykrycie zlecenia typu iceberg jest trudne.

Jak rozpoznać zlecenie typu iceberg w rejestrze transakcji?

Skonsolidowany rejestr transakcji zawiera cenę, wielkość, czas i rynek dla każdej realizacji. Nie zawiera identyfikatorów zleceń, wielkości wyświetlanych ani rezerw. To, co może pokazać, to ślad: jedna wielkość powtarzająca się wielokrotnie po tej samej cenie, w czasie, w którym pojedyncze zlecenie widoczne o tej wielkości rzadko by przetrwało. Poniższy panel łączy każdą cenę z każdą wielkością transakcji dla tej samej sesji i zlicza powtórzenia.

ZapytanieNajczęściej powtarzające się pary cena-wielkość, AAPL, 17 czerwca 2026 r.
Dokładny kod SQL dla każdej liczby
SELECT
    concat(toString(size), ' shares at $', toString(round(toFloat64(price), 2)))                  AS level_and_size,
    count()                                                                                       AS prints,
    formatDateTime(toTimeZone(min(sip_timestamp), 'America/New_York'), '%H:%i')                    AS first_et,
    formatDateTime(toTimeZone(max(sip_timestamp), 'America/New_York'), '%H:%i')                    AS last_et,
    round(dateDiff('minute', min(sip_timestamp), max(sip_timestamp)) / 60.0, 1)                    AS hours_spanned
FROM global_markets.stocks_trades
WHERE ticker = 'AAPL'
  AND sip_timestamp >= toDateTime('2026-06-17 04:00:00', 'UTC')
  AND sip_timestamp <  toDateTime('2026-06-18 04:00:00', 'UTC')
  AND size >= 200
GROUP BY price, size
ORDER BY prints DESC
LIMIT 12
Run this yourself

Najczęściej powtarzającą się parą było 300 shares at $300.54, realizowane 67 razy między 09:34 a 09:58 czasu ET, w przedziale 0.4 godzin. Śledzenie tej pary w sesji w półgodzinnych interwałach pozwala sprawdzić, czy powtórzenia rozkładają się na cały dzień, czy skupiają w jednym przedziale.

ZapytanieNajbardziej aktywne pary cena-wielkość, w ujęciu półgodzinnym
Dokładny kod SQL dla każdej liczby
WITH top_level AS
(
    SELECT
        price,
        size
    FROM global_markets.stocks_trades
    WHERE ticker = 'AAPL'
      AND sip_timestamp >= toDateTime('2026-06-17 04:00:00', 'UTC')
      AND sip_timestamp <  toDateTime('2026-06-18 04:00:00', 'UTC')
      AND size >= 200
    GROUP BY price, size
    ORDER BY count() DESC, size DESC, price DESC
    LIMIT 1
)
SELECT
    formatDateTime(toStartOfInterval(toTimeZone(sip_timestamp, 'America/New_York'), INTERVAL 30 MINUTE), '%H:%i') AS et_time,
    count()                                    AS prints,
    sum(count()) OVER (ORDER BY et_time)       AS cum_prints
FROM global_markets.stocks_trades
WHERE ticker = 'AAPL'
  AND sip_timestamp >= toDateTime('2026-06-17 04:00:00', 'UTC')
  AND sip_timestamp <  toDateTime('2026-06-18 04:00:00', 'UTC')
  AND (price, size) IN (SELECT price, size FROM top_level)
GROUP BY et_time
ORDER BY et_time
Run this yourself

Skupiają się. Ślad pojawia się jako pojedynczy półgodzinny interwał, ten rozpoczynający się o 09:30 ET, który zawierał 67 transakcji i kończy sesję z wynikiem 67. Trzydzieści minut powtórzeń po jednej cenie to impuls, a nie całodniowe czuwanie, a tak krótki ślad jest słabszym dowodem, niż sugeruje wzorzec. Zlecenie widoczne o tej wielkości, po tej cenie, w tak aktywnej spółce, zostałoby zazwyczaj skonsumowane w kilka sekund. Coś musiało je stale uzupełniać.

Dlaczego wykrywanie zleceń typu iceberg jest zawodne?

„Coś musiało je stale uzupełniać” to uczciwa granica tego, co potwierdzają dane z rejestru. Ten sam ślad ma zwykłe wyjaśnienia, które nie wymagają istnienia zlecenia typu reserve:

  • Algorytm realizacji dzielący zlecenie nadrzędne na równe zlecenia cząstkowe i wysyłający je pojedynczo z serwera brokera.
  • Niezwiązani ze sobą uczestnicy rynku wybierający tę samą okrągłą liczbę akcji przy tej samej okrągłej cenie, do czego zachęcają okrągłe liczby.
  • Animator rynku (market maker) wielokrotnie wystawiający tę samą wielkość na poziomie, który chce utrzymać.
  • Rozbieżność między liczbą transakcji a liczbą zleceń, ponieważ jedno zlecenie oczekujące może zostać zrealizowane przez serię transakcji, które w rejestrze pojawiają się jako kilka osobnych zapisów.

Istnieje również przypadek milczący. Zlecenie typu iceberg, które nigdy nie zostaje zrealizowane, nie pozostawia żadnego śladu, a rejestr odnotowuje tylko zrealizowane transakcje. Każda miara ukrytej płynności zbudowana na podstawie transakcji mierzy tylko tę część, która została zrealizowana, a nigdy tę, która czekała. Traktuj wzorzec jako hipotezę wartą sprawdzenia w odniesieniu do struktury rynku i kwotowań, a nigdy jako fakt dotyczący konkretnego zlecenia.

FAQ

Czym jest zlecenie typu iceberg w tradingu?

Zlecenie z limitem ceny z dwiema wielkościami: małą wielkością widoczną, która pojawia się w publicznym kwotowaniu, oraz większą ukrytą rezerwą, którą giełda automatycznie uwalnia za każdym razem, gdy widoczna część zostanie zrealizowana. Znajduje się ono po jednej cenie na jednym rynku jako pojedyncze zlecenie.

Czy zlecenia typu iceberg tracą swoje miejsce w kolejce?

Widoczna część tak. Każde uzupełnienie jest wystawiane jako nowe zlecenie widoczne z nowym znacznikiem czasu, za wszystkim, co już oczekuje po tej cenie. Zgodnie z zasadami Nasdaq, nieujawniona rezerwa zachowuje swój pierwotny znacznik czasu.

Czy zlecenia typu iceberg widać w arkuszu Level 2?

Nie. Widok głębokości arkusza pokazuje tylko widoczną część, która wygląda jak zwykłe małe zlecenie z limitem ceny. Rezerwa pozostaje niewidoczna, dopóki nie zostanie zrealizowana, i nigdy nie pojawia się jako osobna linia.

Czy zlecenie typu iceberg to to samo co zlecenie w dark pool?

Nie. Zlecenie typu iceberg oczekuje na giełdzie publicznej i publikuje swoją część w publicznym kwotowaniu. Zlecenie w dark pool oczekuje na rynku bez publicznych kwotowań, a transakcja pojawia się w danych publicznych dopiero po jej zawarciu.

Czy zlecenia typu iceberg są legalne?

Tak. Zlecenia typu reserve są udokumentowanymi atrybutami zleceń w regulaminach giełdowych, zgłoszonymi do SEC i dostępnymi dla firm członkowskich oraz ich klientów. Ukrywanie części wielkości zlecenia jest jawną funkcją tego typu zlecenia.


Każdy panel tutaj zawiera kod SQL, który go wygenerował, dzięki czemu można sprawdzić, jak liczono każdą wartość. Aby uruchomić skanowanie powtarzających się transakcji dla wybranego tickera i daty, poproś o to w prostym języku angielskim na terminalu Strasmore.

#order types#market microstructure#hidden liquidity#execution#market structure