Zlecenie stop a stop-limit: różnice w realizacji
Zlecenie stop zmienia się w rynkowe i realizuje po każdej cenie. Zlecenie stop-limit staje się limitem i może nie dojść do skutku. Dane z pięciu lat potwierdzają to ryzyko.
Zlecenie stop oraz zlecenie stop-limit pozostają nieaktywne do momentu, w którym rynek osiągnie wybraną cenę; w chwili jej dotknięcia ich drogi się rozchodzą. Zlecenie stop zmienia się w zlecenie rynkowe i realizuje po dowolnej dostępnej cenie, niezależnie od tego, jak bardzo odbiega ona od poziomu aktywacji. Zlecenie stop-limit zmienia się w zlecenie z limitem ceny, które nie zostanie zrealizowane, jeśli cena rynkowa będzie mniej korzystna niż ustalony limit. Jedno zlecenie priorytetyzuje pewność realizacji, drugie – cenę; żadne nie gwarantuje obu tych korzyści jednocześnie.
Czym jest zlecenie stop?
Zlecenie stop to instrukcja przekazana brokerowi: gdy kurs akcji zostanie zarejestrowany na poziomie ceny stop lub poniżej, należy wysłać zlecenie rynkowe. Do momentu zarejestrowania takiej transakcji zlecenie pozostaje nieaktywne. Nie znajduje się ono w arkuszu zleceń giełdy, nie widzą go inni inwestorzy i nie zapewnia płynności po określonej cenie. Większość zleceń stop inwestorów indywidualnych przechowywana jest w systemach brokera i trafia na giełdę dopiero po spełnieniu warunku aktywacji.
Po aktywacji zlecenie staje się zwykłym zleceniem rynkowym bez dolnego ograniczenia ceny, realizowanym po najlepszej dostępnej ofercie, a następnie po kolejnych, aż do wyczerpania wolumenu. Na głębokim i płynnym rynku kosztuje to grosze. Na rynku o niskiej płynności lub przy dużej zmienności może to kosztować kilka procent. Różnica między zleceniem rynkowym a zleceniem z limitem stanowi istotę tego, co dzieje się po aktywacji, ponieważ zlecenie stop przejmuje wszystkie cechy zlecenia, w które się przekształca.
Czym jest zlecenie stop-limit?
Zlecenie stop-limit zawiera dwie ceny. Cena stop jest wyzwalaczem i działa dokładnie tak, jak opisano powyżej. Cena limit to najgorsza cena, jaką inwestor jest w stanie zaakceptować po aktywacji zlecenia. Gdy warunek aktywacji zostanie spełniony, broker wysyła zlecenie z limitem ceny zamiast zlecenia rynkowego.
Od tego momentu zlecenie zachowuje się jak każde inne zlecenie z limitem: realizuje się po cenie limit lub lepszej, a gdy rynek znajduje się poniżej tego poziomu, zlecenie oczekuje. Jeśli cena nie powróci do założonego poziomu, zlecenie wygasa zgodnie z okresem ważności, a pozycja pozostaje niezmieniona. Limit ustawiony na poziomie ceny stop jest najbardziej restrykcyjny i najczęściej nie dochodzi do realizacji. Limit ustawiony znacznie poniżej ceny stop jest bardziej elastyczny i przypomina zlecenie stop z określonym „podłogą” cenową.
Zlecenie stop a stop-limit w obliczu luki cenowej
Rozważmy przykład hipotetyczny. Akcje zamykają się po 50 USD, a inwestor ustawia zlecenie stop na 48 USD. Następnego ranka pierwsza transakcja odbywa się po 41 USD. Zlecenie stop aktywuje się na otwarciu i realizuje w okolicach 41 USD. Poziom 48 USD nigdy nie był dostępny, a zlecenie nie próbowało go osiągnąć. Zlecenie stop-limit na 48 USD z limitem 47,50 USD również aktywuje się na otwarciu, wystawiając ofertę sprzedaży po 47,50 USD na rynku handlującym po 41 USD. Do realizacji nie dochodzi, a inwestor nadal posiada akcje wyceniane na 41 USD, mając aktywne zlecenie sprzedaży sześć i pół dolara powyżej rynku.
Ruchy tej skali są rzadkie dla spółek o dużej kapitalizacji. W przypadku mniejszych spółek są one rutynowe, a zlecenie stop potrzebuje tylko niewielkiego impulsu, aby się aktywować. Poniższa tabela przedstawia, jak często w ciągu pięciu lat sesji kończących się w lipcu 2026 r. kurs otwarcia pięciu znanych spółek był o co najmniej jeden procent i co najmniej trzy procent niższy od poprzedniego zamknięcia. Daty podziału akcji (split) zostały wykluczone z porównania: split 10-za-1 zamienia jedną akcję w dziesięć i obniża kurs o około dziewięćdziesiąt procent, co jest kwestią arytmetyczną, a nie luką cenową. Dlaczego powstają luki cenowe omawia sesję nocną.
Dokładny kod SQL dla każdej liczby
WITH sessions AS
(
SELECT
ticker,
date,
toFloat64(open) AS open_px,
toFloat64(close) AS close_px,
row_number() OVER (PARTITION BY ticker ORDER BY date) AS session_n,
row_number() OVER (PARTITION BY ticker ORDER BY date) + 1 AS next_session_n
FROM global_markets.stocks_daily_aggs
WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'SPY', 'KO')
AND date >= '2021-08-01'
AND date < '2026-08-01'
)
SELECT
cur.ticker AS symbol,
round(100 * countIf(cur.open_px <= prior.close_px * 0.99) / count(), 1) AS opened_1pct_lower_pct,
round(100 * countIf(cur.open_px <= prior.close_px * 0.97) / count(), 1) AS opened_3pct_lower_pct
FROM sessions AS cur
INNER JOIN sessions AS prior
ON cur.ticker = prior.ticker
AND cur.session_n = prior.next_session_n
WHERE (cur.ticker, cur.date) NOT IN
(
SELECT ticker, execution_date
FROM global_markets.stocks_splits
)
GROUP BY symbol
ORDER BY opened_1pct_lower_pct DESCW tym okresie NVDA otwierało się co najmniej jeden procent poniżej poprzedniego zamknięcia na 22.1% sesji, a co najmniej trzy procent poniżej na 3.4%. W przypadku mniej zmiennej spółki KO miało to miejsce na 2.3% sesji. Zlecenie stop znajdujące się blisko rynku jest narażone na aktywację podczas jednej sesji nocnej.
To wolumen decyduje o różnicy między tymi typami zleceń, a pierwsze pół godziny sesji jest momentem, w którym różnica ta staje się kosztowna. Kolejna tabela wskazuje 8 największych luk spadkowych na otwarciu dla NVDA w ciągu tych samych pięciu lat. Każdy wiersz zawiera dwa pomiary: kurs otwarcia względem poprzedniego zamknięcia oraz minimum z pierwszych trzydziestu minut regularnego handlu względem kursu otwarcia.
Dokładny kod SQL dla każdej liczby
WITH sessions AS
(
SELECT
date,
toFloat64(open) AS open_px,
toFloat64(close) AS close_px,
row_number() OVER (ORDER BY date) AS session_n,
row_number() OVER (ORDER BY date) + 1 AS next_session_n
FROM global_markets.stocks_daily_aggs
WHERE ticker = 'NVDA'
AND date >= '2021-08-01'
AND date < '2026-08-01'
),
gap_days AS
(
SELECT
cur.date AS d,
round(100 * (cur.open_px / prior.close_px - 1), 2) AS gap_pct
FROM sessions AS cur
INNER JOIN sessions AS prior ON cur.session_n = prior.next_session_n
WHERE cur.date NOT IN
(
SELECT execution_date
FROM global_markets.stocks_splits
WHERE ticker = 'NVDA'
)
ORDER BY gap_pct ASC
LIMIT 8
),
opening_30m AS
(
SELECT
toDate(toTimeZone(window_start, 'America/New_York')) AS d,
argMin(toFloat64(open), window_start) AS first_print,
min(toFloat64(low)) AS low_30m
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'NVDA'
AND window_start >= '2021-08-01'
AND window_start < '2026-08-01'
AND toDate(toTimeZone(window_start, 'America/New_York')) IN (SELECT d FROM gap_days)
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) < 600
GROUP BY d
)
SELECT
toString(g.d) AS session_date,
g.gap_pct AS open_vs_prior_close_pct,
round(100 * (o.low_30m / o.first_print - 1), 2) AS first_30m_low_vs_open_pct
FROM gap_days AS g
INNER JOIN opening_30m AS o ON o.d = g.d
ORDER BY g.dW dniu 2025-04-16, ostatnim z nich, otwarcie wyniosło -6.82% względem poprzedniego zamknięcia, a minimum z pierwszej pół godziny handlu wyniosło -0.19% względem otwarcia. Najstarszy wiersz, 2022-02-24, otworzył się na poziomie -6.13%. Zlecenie stop aktywowane w jeden z tych poranków realizuje się gdzieś w tym przedziale, a posiadacz akcji nie ma wpływu na cenę.
Czy zlecenie stop-limit realizuje się później w ciągu dnia?
Czasami. Zlecenie z limitem, które nie zrealizowało się na otwarciu, pozostaje aktywne i jeśli cena powróci przed wygaśnięciem zlecenia, może dojść do transakcji. Pytanie brzmi, jak często cena powraca do tego poziomu w tej samej sesji.
Poniższa tabela stosuje jedno hipotetyczne założenie dla tych samych spółek: zlecenie stop dwa procent poniżej poprzedniego zamknięcia, z limitem jeden procent poniżej ceny stop. Uwzględniono tylko sesje, które otworzyły się poniżej obu tych cen – sytuację, w której aktywacja następuje na otwarciu, a limit jest już poza zasięgiem – a następnie sprawdzono, czy maksimum sesji kiedykolwiek osiągnęło cenę limitu.
Dokładny kod SQL dla każdej liczby
WITH sessions AS
(
SELECT
ticker,
date,
toFloat64(open) AS open_px,
toFloat64(high) AS high_px,
toFloat64(close) AS close_px,
row_number() OVER (PARTITION BY ticker ORDER BY date) AS session_n,
row_number() OVER (PARTITION BY ticker ORDER BY date) + 1 AS next_session_n
FROM global_markets.stocks_daily_aggs
WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'SPY', 'KO')
AND date >= '2021-08-01'
AND date < '2026-08-01'
)
SELECT
cur.ticker AS symbol,
count() AS gapped_through_sessions,
round(100 * countIf(cur.high_px >= prior.close_px * 0.9702) / count(), 1) AS reached_limit_intraday_pct
FROM sessions AS cur
INNER JOIN sessions AS prior
ON cur.ticker = prior.ticker
AND cur.session_n = prior.next_session_n
WHERE cur.open_px < prior.close_px * 0.9702
AND (cur.ticker, cur.date) NOT IN
(
SELECT ticker, execution_date
FROM global_markets.stocks_splits
)
GROUP BY symbol
ORDER BY reached_limit_intraday_pct DESCKO powróciło do poziomu limitu w pewnym momencie tej samej sesji w 100% z 2 dni z luką cenową, co stanowi najwyższy odsetek wśród 5 spółek, które odnotowały takie przypadki. MSFT powróciło na poziomie 66.7%. Dotknięcie ceny nie jest równoznaczne z realizacją: zlecenie dołącza do kolejki, a krótkotrwałe przebicie poziomu może zrealizować tylko zlecenia znajdujące się przed nami. Aby uzyskać szersze informacje na ten temat, zobacz czy luki cenowe są domykane.
Co faktycznie uruchamia zlecenie stop
Warunek aktywacji jest węższy, niż sugeruje bilet zlecenia. U większości brokerów zlecenie sprzedaży stop aktywuje się po zarejestrowaniu ostatniej transakcji na poziomie ceny stop lub poniżej. Cena kupna (bid) może spaść poniżej tego poziomu na minutę bez zawarcia ani jednej transakcji, pozostawiając zlecenie w stanie uśpienia, podczas gdy jedna mała transakcja może je aktywować. U wielu brokerów liczą się nawet transakcje o małym wolumenie (odd lots), więc wystarczy transakcja na 7 akcji po przypadkowej cenie.
Dwa warunki czynią ten mechanizm wrażliwym. Kwotowania na otwarciu są najszersze w ciągu dnia, co szczegółowo wyjaśnia artykuł dlaczego spready rozszerzają się na otwarciu. Wznowienia notowań po zawieszeniu handlu wyglądają podobnie, z pierwszą transakcją daleko od ostatniej przed zawieszeniem.
Czas jest równie ważny jak poziom ceny. Poniższa tabela mierzy, jak duży dystans pokonuje pojedyncza minuta handlu (od maksimum do minimum) w każdym półgodzinnym interwale sesji, wyrażony w punktach bazowych. Jeden punkt bazowy to jedna setna procenta, więc 50 punktów bazowych to pół procenta ceny.
Dokładny kod SQL dla każdej liczby
SELECT
formatDateTime(toStartOfInterval(toTimeZone(window_start, 'America/New_York'), INTERVAL 30 MINUTE), '%H:%i') AS et_time,
round(avgIf(10000 * (toFloat64(high) - toFloat64(low)) / toFloat64(close), ticker = 'NVDA'), 1) AS nvda_range_bps,
round(avgIf(10000 * (toFloat64(high) - toFloat64(low)) / toFloat64(close), ticker = 'SPY'), 1) AS spy_range_bps
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('NVDA', 'SPY')
AND window_start >= '2025-08-01'
AND window_start < '2026-08-01'
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
GROUP BY et_time
HAVING countIf(ticker = 'NVDA') > 0
AND countIf(ticker = 'SPY') > 0
ORDER BY et_timeDla NVDA przedział 09:30 wykazuje średnio 28.5 punktów bazowych zmienności na minutę w porównaniu do 10 punktów bazowych w przedziale 12:30. SPY, instrument o znacznie szerszym charakterze, wykazuje 7 punktów bazowych na otwarciu i 3.9 punktów bazowych w tym samym południowym przedziale czasowym. Zlecenie stop, które przetrwało noc, aktywuje się w pierwszym z tych przedziałów.
Jak okres ważności zmienia zlecenie stop
Zlecenie stop posiada okres ważności, tak jak każde inne zlecenie. Zlecenie dzienne (day order) wygasa na zamknięciu sesji i musi zostać ponownie wprowadzone następnego ranka. Zlecenie ważne do odwołania (GTC) utrzymuje się przez kolejne sesje, zgodnie z zasadami wygasania zleceń u danego brokera. Ruch, który aktywuje zlecenie stop, często ma miejsce w nocy, dokładnie wtedy, gdy wczorajsze zlecenie dzienne już nie istnieje. Wyjaśnienie okresów ważności zleceń omawia zlecenia dzienne, GTC oraz warianty dla handlu poza godzinami sesji.
Wielu brokerów ocenia warunki aktywacji zleceń stop tylko podczas regularnej sesji, chyba że zlecenie jest oznaczone do realizacji w godzinach wydłużonych. Akcje mogą być notowane pięć procent niżej o godzinie 7:00 rano, podczas gdy zlecenie stop pozostaje uśpione aż do otwarcia sesji.
Zlecenia trailing stop oraz zlecenia stop na opcjach
Zlecenie trailing stop wykorzystuje tę samą logikę aktywacji z ruchomym punktem odniesienia. Ustawia się odległość w centach lub procentach, a poziom aktywacji podąża za najlepszą ceną osiągniętą od momentu złożenia zlecenia, przesuwając się tylko w jednym kierunku. Występuje zarówno jako zlecenie trailing stop, jak i trailing stop-limit, przejmując te same kompromisy w momencie aktywacji.
Opcje stanowią trudniejszy przypadek. Kwotowania opcji są szersze niż kwotowania akcji i rozszerzają się jeszcze bardziej na szybkich rynkach, a cena kontraktu zmienia się wraz z instrumentem bazowym, upływem czasu oraz zmiennością implikowaną, czyli przyszłymi ruchami wycenianymi w opcji. Zlecenie stop na kontrakcie może aktywować się po jednej transakcji na rynku, gdzie cena kupna i sprzedaży różnią się o dolary. Niektórzy brokerzy ograniczają typy zleceń stop dla opcji.
FAQ
Czy zlecenie stop-loss gwarantuje cenę realizacji?
Nie. Zlecenie stop gwarantuje jedynie, że zlecenie zostanie wysłane po zarejestrowaniu ceny aktywacji i zostanie zrealizowane po cenie oferowanej w arkuszu, która po luce cenowej może być znacznie niższa od ceny stop. Zlecenie stop-limit gwarantuje cenę, ale rezygnuje z gwarancji realizacji zlecenia.
Czy zlecenie stop-limit jest lepsze od zlecenia stop?
Odpowiadają one na różne potrzeby. Zlecenie stop traktuje wyjście z pozycji jako priorytet. Zlecenie stop-limit traktuje cenę wyjścia jako priorytet, akceptując ryzyko, że pozycja może pozostać otwarta. Ryzyko przesuwa się z ceny na pewność realizacji, zamiast znikać.
Czy inni inwestorzy widzą moje zlecenie stop?
Nie jako zlecenie stop. Zlecenie stop przechowywane przez brokera znajduje się w jego systemach i nie pojawia się w żadnym arkuszu giełdowym, dopóki warunek aktywacji go nie uruchomi. To, co rynek widzi później, jest zwykłym zleceniem rynkowym lub z limitem.
Jaka cena aktywuje zlecenie stop?
U większości brokerów zlecenie sprzedaży stop aktywuje się po zarejestrowaniu ostatniej transakcji na poziomie ceny stop lub poniżej, a zlecenie kupna stop po transakcji na poziomie ceny stop lub powyżej. Istnieją również zasady oparte na kwotowaniach, a pojedyncza transakcja o małym wolumenie może być wystarczająca. Dokumentacja brokera dotycząca obsługi zleceń określa, która zasada ma zastosowanie do danego rachunku.
Każda tabela zawiera zapytanie SQL, które ją wygenerowało. Wystarczy zmienić ticker lub próg luki cenowej, aby uzyskać odpowiedź dla obserwowanych spółek, w prostym języku, na terminalu Strasmore.