Strasmore Research
Edukacja Matt ConnorAutor: Matt Connor · data as of August 15, 2026 · refreshed weekly

Akcje o niskim P/E blisko 52-tygodniowych minimów

Analiza akcji o niskim wskaźniku P/E w pobliżu rocznych minimów. Prezentacja skutecznego filtra, ranking odległości od dołków oraz rzetelne dane o ryzyku dalszych spadków cen.

Akcje o niskim wskaźniku P/E, znajdujące się w pobliżu swoich 52-tygodniowych minimów, stanowią punkt przecięcia dwóch odmiennych filtrów: niskiego mnożnika zysków z ostatnich dwunastu miesięcy oraz ceny znajdującej się w dolnym zakresie rocznego przedziału notowań. Poniższy filtr przedstawia oba warunki w formie danych, które można kopiować, szereguje spółki według odległości od minimum i prezentuje zapytanie pod każdym panelem. Jedno ostrzeżenie na wstępie: lista zbudowana w ten sposób równie często wyłapuje „spadające noże”, co okazje inwestycyjne, a dalsza część artykułu wyjaśnia stojącą za tym arytmetykę.

Co oznacza bliskość 52-tygodniowego minimum

52-tygodniowe minimum to najniższa cena, po której akcje były notowane w ciągu ostatniego roku. Odległość od minimum wyrażamy w procentach: ostatni kurs zamknięcia dzielony przez 52-tygodniowe minimum, minus jeden. Akcja zamykająca się po 55 przy 52-tygodniowym minimum na poziomie 50 znajduje się 10% powyżej swojego minimum. Ta arytmetyka stanowi podstawę rankingu, a nasz przewodnik 52-tygodniowe maksima i minima szczegółowo omawia ten zakres.

Wskaźnik P/E, czyli cena podzielona przez zysk na akcję (EPS) z ostatnich dwunastu miesięcy, pochodzi z tabeli dziennych wskaźników stocks_ratios, tego samego źródła, które wykorzystujemy w filtrze spółki o najwyższej rentowności dywidendy. Przedział cenowy pochodzi z stocks_daily_aggs, po jednym wierszu na spółkę na sesję.

Filtr definiują cztery parametry, z których każdy jest arbitralny, dopóki nie zostanie zapisany:

  • odległość od 52-tygodniowego minimum na poziomie 10% lub niższym
  • wskaźnik P/E powyżej zera i na poziomie 15 lub niższym
  • kapitalizacja rynkowa na poziomie 10 miliardów USD lub wyższa
  • średni dzienny wolumen na poziomie 1 000 000 akcji lub wyższy

Dwa ostatnie parametry ograniczają listę do podmiotów o realnym rynku po obu stronach transakcji. Spółka o kapitalizacji 40 milionów USD, przy wolumenie 20 000 akcji dziennie, może wykazywać dowolny mnożnik.

ZapytanieSpółki o dużej kapitalizacji z wskaźnikiem P/E poniżej 15, w przedziale 10% od 52-tygodniowego minimum
Dokładny kod SQL dla każdej liczby
WITH ratios AS
(
    SELECT
        ticker,
        argMax(price_to_earnings, date) AS pe,
        argMax(market_cap, date)        AS mcap,
        argMax(average_volume, date)    AS adv
    FROM global_markets.stocks_ratios
    WHERE date >= today() - 14
      AND ticker NOT IN ('SPCX')
    GROUP BY ticker
),
band AS
(
    SELECT
        ticker,
        min(low)            AS low_52w,
        argMax(close, date) AS last_close
    FROM global_markets.stocks_daily_aggs
    WHERE date >= today() - 372
      AND ticker NOT IN ('SPCX')
    GROUP BY ticker
)
SELECT
    b.ticker                                                             AS ticker,
    round(toFloat64(b.last_close) / toFloat64(b.low_52w) * 100 - 100, 1) AS pct_above_low,
    round(r.pe, 1)                                                       AS pe_ratio
FROM band AS b
INNER JOIN ratios AS r ON r.ticker = b.ticker
WHERE r.mcap >= 10000000000
  AND r.adv >= 1000000
  AND r.pe > 0
  AND r.pe <= 15
  AND b.low_52w > 0
  AND toFloat64(b.last_close) / toFloat64(b.low_52w) <= 1.10
ORDER BY pct_above_low ASC, b.ticker ASC
LIMIT 15
Run this yourself

Panel wymienia 6 spółek znajdujących się najbliżej swoich minimów przy zachowaniu powyższych parametrów, z limitem do piętnastu wierszy. VICI znajduje się najbliżej swojego dna, na poziomie 2.3% powyżej najniższej ceny z ostatniego roku, przy mnożniku 10.5. Na drugim końcu panelu BRK.B znajduje się 9.7% powyżej swojego minimum.

Jak szeregować listę

Sortowanie to krok, który pomija większość filtrów. Szeregowanie według P/E umieszcza na górze najtańsze mnożniki, ukrywając położenie ceny. Szeregowanie według odległości od minimum umieszcza na górze spółki najbliżej nowego dołka, ukrywając ich wycenę. Panel sortuje rosnąco według odległości i zawiera mnożnik w kolejnej kolumnie, co pozwala zachować oba fakty w jednym wierszu. W przypadku remisu decyduje kolejność alfabetyczna – szczegół istotny, gdy kilka nazw zaokrągla się do tej samej wartości dziesiętnej.

Odtworzenie tego wymaga czterech danych wejściowych: szeregu dziennych cen zamknięcia z pełnego roku, wartości EPS z ostatnich dwunastu miesięcy, liczby akcji dla kapitalizacji rynkowej oraz średniego wolumenu. Wszystko inne to odejmowanie i dzielenie.

Liczba wyników zależy od ustawienia parametrów

Zmiana jednego parametru zmienia wielkość listy. Poniższy panel utrzymuje stałe progi kapitalizacji i płynności, zmieniając zakres odległości od 5% do 30% i zliczając kwalifikujące się spółki przy dwóch pułapach P/E.

ZapytanieKwalifikujące się spółki o dużej kapitalizacji w miarę rozszerzania pasma odległości i limitu P/E
Dokładny kod SQL dla każdej liczby
WITH ratios AS
(
    SELECT
        ticker,
        argMax(price_to_earnings, date) AS pe,
        argMax(market_cap, date)        AS mcap,
        argMax(average_volume, date)    AS adv
    FROM global_markets.stocks_ratios
    WHERE date >= today() - 14
      AND ticker NOT IN ('SPCX')
    GROUP BY ticker
),
band AS
(
    SELECT
        ticker,
        min(low)            AS low_52w,
        argMax(close, date) AS last_close
    FROM global_markets.stocks_daily_aggs
    WHERE date >= today() - 372
      AND ticker NOT IN ('SPCX')
    GROUP BY ticker
),
universe AS
(
    SELECT
        b.ticker                                                   AS ticker,
        toFloat64(b.last_close) / toFloat64(b.low_52w) * 100 - 100 AS pct_above_low,
        r.pe                                                       AS pe
    FROM band AS b
    INNER JOIN ratios AS r ON r.ticker = b.ticker
    WHERE r.mcap >= 10000000000
      AND r.adv >= 1000000
      AND r.pe > 0
      AND b.low_52w > 0
)
SELECT
    concat('within ', toString(cutoff), '%')      AS distance_band,
    countIf(pct_above_low <= cutoff AND pe <= 15) AS names_pe_under_15,
    countIf(pct_above_low <= cutoff AND pe <= 25) AS names_pe_under_25
FROM
(
    SELECT
        pct_above_low,
        pe,
        arrayJoin([5, 10, 15, 20, 25, 30]) AS cutoff
    FROM universe
)
GROUP BY cutoff
ORDER BY cutoff
Run this yourself

Przy parametrach z pierwszego panelu, zakresie 10% i pułapie 15, kwalifikuje się łącznie 7 spółek o dużej kapitalizacji. Po zawężeniu zakresu do 5% pozostaje 1. Rozszerzenie do 30% zwiększa liczbę do 43, natomiast podniesienie pułapu do 25 przy tej samej szerokości daje 137. Żadne ustawienie nie jest obiektywnie poprawne. To tylko parametry, a uczciwym sposobem publikacji filtra jest wskazanie, jakie wartości zostały przyjęte.

52-tygodniowe minimum to ruchoma podłoga

Samo minimum jest zmienne. Jest to pomiar kroczący, więc stare minimum wypada z okna czasowego wraz z upływem czasu, a podłoga podnosi się w dniach, w których dla danej akcji nic się nie wydarzyło. Śledzenie jednej spółki miesiąc po miesiącu czyni to zjawisko widocznym. Poniższy panel śledzi KO, spółkę o dużej kapitalizacji, w odniesieniu do najniższej ceny z ostatnich dwunastu miesięcy.

ZapytanieKurs zamknięcia KO na koniec miesiąca względem 12-miesięcznego minimum
Dokładny kod SQL dla każdej liczby
SELECT
    formatDateTime(m, '%Y-%m')                                             AS month,
    round(toFloat64(month_close), 2)                                       AS close_price,
    round(toFloat64(trailing_low), 2)                                      AS trailing_12m_low,
    round(toFloat64(month_close) / toFloat64(trailing_low) * 100 - 100, 1) AS pct_above_low
FROM
(
    SELECT
        m,
        month_close,
        min(month_low) OVER (ORDER BY m ASC ROWS BETWEEN 11 PRECEDING AND CURRENT ROW) AS trailing_low
    FROM
    (
        SELECT
            toStartOfMonth(date) AS m,
            argMax(close, date)  AS month_close,
            min(low)             AS month_low
        FROM global_markets.stocks_daily_aggs
        WHERE ticker = 'KO'
          AND date >= today() - 1100
        GROUP BY m
    )
)
WHERE m >= toStartOfMonth(today() - 400)
ORDER BY m
Run this yourself

Na dzień 2026-08, KO zamknęło się po 87.71 USD wobec 52-tygodniowego minimum na poziomie 65.35 USD, co daje odległość 34.2%. Luka między dwiema liniami cenowymi to wielkość mierzona przez ten filtr. Gdy linia minimum rośnie, a linia zamknięcia pozostaje płaska, mierzona odległość maleje bez ruchu kursu akcji.

Dlaczego filtr wyłapuje „spadające noże”

Mechanizm jest czysto arytmetyczny. Zysk w P/E jest historyczny i aktualizuje się cztery razy w roku, w momencie publikacji raportów spółki. Cena aktualizuje się w każdej sekundzie sesji. Cena spadająca przez cały kwartał, w zestawieniu z zyskiem ustalonym do czasu kolejnego raportu, tydzień po tygodniu obniża mnożnik. Mnożnik wygląda na najtańszy w momencie, gdy cena najbardziej oddaliła się od ostatniej zaraportowanej wartości. Gdy kolejny raport obniża zysk, mnożnik ponownie rośnie przy nowej, niższej cenie, a akcje nigdy nie były tanie. Ten schemat ma swoją nazwę: pułapka wartości (value trap).

Spółki cykliczne odwracają ten pomiar. Producent samochodów czy firma budowlana zazwyczaj wykazuje najniższy P/E w szczycie cyklu zysków, gdy EPS osiąga historyczne maksimum, a najwyższy w dołku.

Pomiar tego wzorca wymagałby przebudowania filtra na datę z przeszłości i śledzenia każdej spółki, która się w nim znalazła, co wymagałoby mnożnika dla każdego tickera z tamtego okresu, a nie tylko najnowszego. Wiersze stocks_ratios za powyższymi panelami są odczytywane według najnowszej daty dla każdego tickera, a niniejsza strona opisuje mechanizm bez dołączania wyników historycznych, dla których nie może przedstawić zapytania. Jedna kohorta z jednej daty początkowej byłaby w każdym razie tylko pojedynczą obserwacją: zmiana miesiąca startowego zmienia liczby. Lista nie zawiera żadnych prognoz dotyczących przyszłego zachowania cen.

Czego nie uwzględnia niski P/E

  • Które zyski. EPS z ostatnich dwunastu miesięcy obejmuje zdarzenia jednorazowe, sprzedaż aktywów i ugody prawne. Jeden wyjątkowo zyskowny kwartał utrzymuje mnożnik na niskim poziomie przez rok po tym, jak gotówka już dawno została wydana.
  • Kontekst sektorowy. Banki, ubezpieczyciele, producenci samochodów i rafinerie mają strukturalnie niższe mnożniki niż spółki technologiczne, a jeden pułap zastosowany do wszystkich wypełnia listę tymi samymi kilkoma branżami.
  • Bilans. P/E ignoruje zadłużenie. Dwie spółki o tym samym mnożniku, ale bardzo różnym poziomie dźwigni finansowej, nie są w tej samej cenie.
  • Straty. Spółka z ujemnym zyskiem nie ma sensownego P/E i nigdy się tu nie pojawi. Brak na liście nie jest werdyktem.

Dwie sąsiednie listy dobrze uzupełniają tę analizę. Największe ruchy cenowe w tym miesiącu pokazuje, które spółki przebyły największą drogę w ciągu ostatniego miesiąca, a spółki o najniższej zmienności pokazują przeciwny temperament.

Uwagi dotyczące danych i definicje
  • Ceny pochodzą z stocks_daily_aggs, jeden wiersz na spółkę na sesję. 52-tygodniowe minimum to minimum z kolumny dziennych minimów z ostatnich 372 dni kalendarzowych.
  • Mnożnik, kapitalizacja rynkowa i średni wolumen pochodzą z stocks_ratios, odczytane jako najnowszy wiersz dla każdego tickera.
  • Split lub duża wypłata specjalna wewnątrz okna czasowego przesuwa surowy przedział cenowy, co warto sprawdzić w przypadku każdej spółki, która miała takie zdarzenie w ciągu ostatniego roku.
  • Filtr wymaga dodatniego mnożnika, więc spółki przynoszące straty nigdy się na nim nie pojawiają.

FAQ

Co oznacza, gdy akcja znajduje się blisko 52-tygodniowego minimum?

Oznacza to, że obecna cena jest bliska najniższej ceny, po której akcje były notowane w ciągu ostatniego roku. Odległość od minimum to ostatni kurs zamknięcia podzielony przez 52-tygodniowe minimum, minus jeden, wyrażony w procentach.

Jaki P/E uznaje się za niski?

Nie ma ustalonej granicy. Filtry zazwyczaj ograniczają mnożnik do 15 lub do 10 w przypadku bardziej rygorystycznego podejścia, a mnożniki różnią się na tyle w zależności od branży, że jeden pułap dla całego rynku wypełnia listę tymi samymi kilkoma sektorami.

Czy akcje o niskim P/E blisko 52-tygodniowego minimum to dobry zakup?

Żaden filtr nie odpowiada na to pytanie, podobnie jak niniejsza strona. Oba warunki opisują przeszłość: ile rynek płaci za dolara już zaraportowanego zysku i gdzie cena znajduje się wewnątrz swojego rocznego zakresu. Żaden z nich nie opisuje tego, co wydarzy się później.

Czym jest pułapka wartości (value trap)?

Pułapka wartości to akcje, które wyglądają na tanie przy niskim mnożniku, ale ich cena nadal spada. Zysk na akcję aktualizuje się kwartalnie, podczas gdy cena w sposób ciągły, więc spadająca cena przy stałym zysku historycznym daje coraz niższy mnożnik, a kolejny raport może zresetować ten mnożnik wyżej przy niższej cenie.


Każdy panel tutaj zawiera zapytanie, które go wygenerowało. Otwórz jedno, zmień pułap P/E lub zakres odległości, a lista przebuduje się według Twoich własnych parametrów na terminalu Strasmore.

#screens#52-week lows#valuation#value investing#p/e ratio