Strasmore Research
市場回顧 Matt Connor作者: Matt Connor · 更新於 2026-07-24 · data as of July 24, 2026 · refreshed weekly

52週新高與新低個股清單

透過交易所成交紀錄篩選,即時掌握觸及52週高點與低點的股票數量與廣度指標。

52週高點是指股票在過去一年中的最高收盤價,52週低點則是最低收盤價。在最近一個交易日 Jul 21, 2026,此篩選清單中的 26 檔股票收盤價達到或接近 52週高點的 1% 以內,而 7 檔股票收盤價達到或接近 52週低點的 1% 以內。此篩選範圍涵蓋具備高流動性的美國大型營運公司,並根據交易所成交紀錄重新建構。

股價創 52 週新高

下表列出今年以來漲幅最強的股票,最多包含 12 檔。每檔股票的收盤價皆位於過去 52 週最高收盤價的 1% 範圍內。

查詢52週新高個股,依 YTD 回報率排序
每個數據背後的精確 SQL 語法
WITH universe AS (
    SELECT ticker
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= now() - INTERVAL 20 DAY
      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
      AND ticker IN (SELECT arrayJoin(tickers) FROM global_markets.stocks_income_statements
                     WHERE period_end >= today() - 400)
      AND ticker NOT IN ('SPCX','KORU','SOXL','SOXS','TQQQ','SQQQ','NVDL','NVDS','NVD','TSLL','TSLQ','TSLZ','SPXL','SPXS','UPRO','SPXU','LABU','LABD','FAS','FAZ','TNA','TZA','YINN','YANG','UDOW','SDOW','BOIL','KOLD','UCO','SCO','USD','SSO','SDS','QLD','QID','ERX','ERY','DRN','DRV','CURE','SOXY','MUU','SNXX','UVXY','SVXY','UVIX','SVIX','BULZ','WEBL','WEBS','DPST','DRIP','GUSH','AGQ','ZSL','BITX','ETHU','MSTX','MSTU','CONL','DUST','JNUG','JDST','NUGT')
      AND ticker NOT IN (SELECT ticker FROM global_markets.stocks_splits
                         WHERE execution_date BETWEEN today() - 460 AND today())
    GROUP BY ticker
    HAVING sum(toFloat64(close) * toFloat64(volume)) >= 2000000000
),
last_session AS (
    SELECT max(toDate(et)) AS d
    FROM (
        SELECT toTimeZone(window_start, 'America/New_York') AS et
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY' AND window_start >= now() - INTERVAL 12 DAY
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) >= 955
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) < 960
    )
),
daily AS (
    SELECT ticker, toDate(et) AS dt, argMax(c, et) AS c, count() AS nbars
    FROM (
        SELECT ticker, toTimeZone(window_start, 'America/New_York') AS et, toFloat64(close) AS c
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE window_start >= now() - INTERVAL 375 DAY
          AND ticker IN (SELECT ticker FROM universe)
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) >= 930
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) < 960
    )
    GROUP BY ticker, dt
    HAVING nbars >= 20 AND dt > (SELECT d FROM last_session) - 365
),
ranged AS (
    SELECT ticker,
           argMax(c, dt) AS last_close,
           max(c) AS hi,
           min(c) AS lo,
           argMaxIf(c, dt, dt <= toDate('2025-12-31')) AS base_close,
           count() AS n_sessions,
           min(dt) AS first_dt,
           max(dt) AS last_dt
    FROM daily
    GROUP BY ticker
    HAVING n_sessions >= 200
       AND countIf(dt <= toDate('2025-12-31')) > 0
       AND last_dt = (SELECT d FROM last_session)
       AND first_dt <= (SELECT d FROM last_session) - 350
)
SELECT ticker,
       round(last_close, 2) AS close,
       round((last_close / base_close - 1) * 100, 1) AS ytd_return_pct
FROM ranged
WHERE last_close >= hi * 0.99
ORDER BY ytd_return_pct DESC, ticker ASC
LIMIT 12

DAVE 今年漲幅最高,達到 99.6%,收盤價為 $439.18。根據此列表的編制方式,收盤價即為 52 週新高(誤差在 1% 以內),因此價格欄位同時也代表測試的價位。DINO 緊隨其後,分別為 99% 與 MPC96.6%。表格最後一欄 ROKU 今年漲幅為 33%。

重點在於此價差。52 週新高僅描述價格在其一年波動範圍內的位置,僅此而已。無論是去年夏天大幅下跌後回升的股票,還是持續攀升的股票,都會被貼上相同的標籤。

股價觸及 52 週新低

此篩選條件與前述相反。以下列出 12 檔收盤價等於或接近過去 52 週最低收盤價(誤差在 1% 以內)的股票,並依據年初至今(YTD)表現由弱至強排序。

查詢52週新低個股,依 YTD 回報率排序
每個數據背後的精確 SQL 語法
WITH universe AS (
    SELECT ticker
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= now() - INTERVAL 20 DAY
      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
      AND ticker IN (SELECT arrayJoin(tickers) FROM global_markets.stocks_income_statements
                     WHERE period_end >= today() - 400)
      AND ticker NOT IN ('SPCX','KORU','SOXL','SOXS','TQQQ','SQQQ','NVDL','NVDS','NVD','TSLL','TSLQ','TSLZ','SPXL','SPXS','UPRO','SPXU','LABU','LABD','FAS','FAZ','TNA','TZA','YINN','YANG','UDOW','SDOW','BOIL','KOLD','UCO','SCO','USD','SSO','SDS','QLD','QID','ERX','ERY','DRN','DRV','CURE','SOXY','MUU','SNXX','UVXY','SVXY','UVIX','SVIX','BULZ','WEBL','WEBS','DPST','DRIP','GUSH','AGQ','ZSL','BITX','ETHU','MSTX','MSTU','CONL','DUST','JNUG','JDST','NUGT')
      AND ticker NOT IN (SELECT ticker FROM global_markets.stocks_splits
                         WHERE execution_date BETWEEN today() - 460 AND today())
    GROUP BY ticker
    HAVING sum(toFloat64(close) * toFloat64(volume)) >= 2000000000
),
last_session AS (
    SELECT max(toDate(et)) AS d
    FROM (
        SELECT toTimeZone(window_start, 'America/New_York') AS et
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY' AND window_start >= now() - INTERVAL 12 DAY
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) >= 955
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) < 960
    )
),
daily AS (
    SELECT ticker, toDate(et) AS dt, argMax(c, et) AS c, count() AS nbars
    FROM (
        SELECT ticker, toTimeZone(window_start, 'America/New_York') AS et, toFloat64(close) AS c
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE window_start >= now() - INTERVAL 375 DAY
          AND ticker IN (SELECT ticker FROM universe)
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) >= 930
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) < 960
    )
    GROUP BY ticker, dt
    HAVING nbars >= 20 AND dt > (SELECT d FROM last_session) - 365
),
ranged AS (
    SELECT ticker,
           argMax(c, dt) AS last_close,
           max(c) AS hi,
           min(c) AS lo,
           argMaxIf(c, dt, dt <= toDate('2025-12-31')) AS base_close,
           count() AS n_sessions,
           min(dt) AS first_dt,
           max(dt) AS last_dt
    FROM daily
    GROUP BY ticker
    HAVING n_sessions >= 200
       AND countIf(dt <= toDate('2025-12-31')) > 0
       AND last_dt = (SELECT d FROM last_session)
       AND first_dt <= (SELECT d FROM last_session) - 350
)
SELECT ticker,
       round(last_close, 2) AS close,
       round((last_close / base_close - 1) * 100, 1) AS ytd_return_pct
FROM ranged
WHERE last_close <= lo * 1.01
ORDER BY ytd_return_pct ASC, ticker ASC
LIMIT 12

PNR 是名單中年初至今表現最差的股票,漲跌幅為 -41%,收盤價為 $61.48,與其 52 週最低收盤價的差距在 1% 以內。CPRT 緊隨其後,表現為 -30.6%。

52 週新低僅代表價格區間的走勢,並不代表對企業經營狀況的定論。獲利能力健全的公司可能因長期股價低迷而進入此名單,經營陷入困境的公司亦然。單憑收盤價無法區分兩者。若欲了解市場整體的復甦情況,請參閱 市場如何從崩盤中復甦

高低點數量對市場廣度的啟示

廣度衡量參與行情走勢的股票數量,而非指數漲跌幅度。新高與新低的數量比是歷史最悠久的廣度指標之一,也是本頁面最值得關注的數據。

查詢過去六週每日 52週新高與新低對比
每個數據背後的精確 SQL 語法
WITH universe AS (
    SELECT ticker
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= now() - INTERVAL 20 DAY
      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
      AND ticker IN (SELECT arrayJoin(tickers) FROM global_markets.stocks_income_statements
                     WHERE period_end >= today() - 400)
      AND ticker NOT IN ('SPCX','KORU','SOXL','SOXS','TQQQ','SQQQ','NVDL','NVDS','NVD','TSLL','TSLQ','TSLZ','SPXL','SPXS','UPRO','SPXU','LABU','LABD','FAS','FAZ','TNA','TZA','YINN','YANG','UDOW','SDOW','BOIL','KOLD','UCO','SCO','USD','SSO','SDS','QLD','QID','ERX','ERY','DRN','DRV','CURE','SOXY','MUU','SNXX','UVXY','SVXY','UVIX','SVIX','BULZ','WEBL','WEBS','DPST','DRIP','GUSH','AGQ','ZSL','BITX','ETHU','MSTX','MSTU','CONL','DUST','JNUG','JDST','NUGT')
      AND ticker NOT IN (SELECT ticker FROM global_markets.stocks_splits
                         WHERE execution_date BETWEEN today() - 460 AND today())
    GROUP BY ticker
    HAVING sum(toFloat64(close) * toFloat64(volume)) >= 2000000000
),
last_session AS (
    SELECT max(toDate(et)) AS d
    FROM (
        SELECT toTimeZone(window_start, 'America/New_York') AS et
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY' AND window_start >= now() - INTERVAL 12 DAY
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) >= 955
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) < 960
    )
),
daily AS (
    SELECT ticker, toDate(et) AS dt, argMax(c, et) AS c, count() AS nbars
    FROM (
        SELECT ticker, toTimeZone(window_start, 'America/New_York') AS et, toFloat64(close) AS c
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE window_start >= now() - INTERVAL 425 DAY
          AND ticker IN (SELECT ticker FROM universe)
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) >= 930
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) < 960
    )
    GROUP BY ticker, dt
    HAVING nbars >= 20 AND dt <= (SELECT d FROM last_session)
),
rolled AS (
    SELECT ticker, dt, c,
           max(c) OVER w AS hi,
           min(c) OVER w AS lo,
           count() OVER w AS n_sessions,
           min(dt) OVER (PARTITION BY ticker) AS first_dt
    FROM daily
    WINDOW w AS (PARTITION BY ticker ORDER BY dt RANGE BETWEEN 364 PRECEDING AND CURRENT ROW)
)
SELECT formatDateTime(dt, '%b %e, %Y') AS date,
       countIf(c >= hi * 0.99) AS at_52w_high,
       countIf(c <= lo * 1.01) AS at_52w_low,
       countIf(c >= hi * 0.99) - countIf(c <= lo * 1.01) AS net_highs
FROM rolled
WHERE n_sessions >= 200
  AND first_dt <= dt - 350
  AND dt > (SELECT d FROM last_session) - 43
GROUP BY dt
ORDER BY dt

Jul 21, 2026,處於或接近 52 週高點的股票數量為 26 檔,處於或接近低點的數量為 7 檔,淨值為 19。六週前的 Jun 9, 2026,同一篩選條件顯示有 35 個新高與 3 個新低。

在圖表所示的 29 個交易日內,這兩項數據每日大幅波動,因此單一交易日的數值重要性,不如數週內的趨勢重要。若指數持平但新高數量減少,代表市場廣度比指數單看數據所顯示的更窄。當新低數量激增時,即是 在他人恐懼時買入 的背景環境,我們已針對新聞情緒對此進行了測試。

市場其他成分股與自身高點的距離

高點與低點是分布的兩個端點;大多數股票位於中間。此面板依據與 52 週高點的距離對全螢幕進行排序,並報告各區間的年初至今中位數報酬率。

查詢全市場股價相對於 52週高點之位置
每個數據背後的精確 SQL 語法
WITH universe AS (
    SELECT ticker
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= now() - INTERVAL 20 DAY
      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
      AND ticker IN (SELECT arrayJoin(tickers) FROM global_markets.stocks_income_statements
                     WHERE period_end >= today() - 400)
      AND ticker NOT IN ('SPCX','KORU','SOXL','SOXS','TQQQ','SQQQ','NVDL','NVDS','NVD','TSLL','TSLQ','TSLZ','SPXL','SPXS','UPRO','SPXU','LABU','LABD','FAS','FAZ','TNA','TZA','YINN','YANG','UDOW','SDOW','BOIL','KOLD','UCO','SCO','USD','SSO','SDS','QLD','QID','ERX','ERY','DRN','DRV','CURE','SOXY','MUU','SNXX','UVXY','SVXY','UVIX','SVIX','BULZ','WEBL','WEBS','DPST','DRIP','GUSH','AGQ','ZSL','BITX','ETHU','MSTX','MSTU','CONL','DUST','JNUG','JDST','NUGT')
      AND ticker NOT IN (SELECT ticker FROM global_markets.stocks_splits
                         WHERE execution_date BETWEEN today() - 460 AND today())
    GROUP BY ticker
    HAVING sum(toFloat64(close) * toFloat64(volume)) >= 2000000000
),
last_session AS (
    SELECT max(toDate(et)) AS d
    FROM (
        SELECT toTimeZone(window_start, 'America/New_York') AS et
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY' AND window_start >= now() - INTERVAL 12 DAY
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) >= 955
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) < 960
    )
),
daily AS (
    SELECT ticker, toDate(et) AS dt, argMax(c, et) AS c, count() AS nbars
    FROM (
        SELECT ticker, toTimeZone(window_start, 'America/New_York') AS et, toFloat64(close) AS c
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE window_start >= now() - INTERVAL 375 DAY
          AND ticker IN (SELECT ticker FROM universe)
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) >= 930
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) < 960
    )
    GROUP BY ticker, dt
    HAVING nbars >= 20 AND dt > (SELECT d FROM last_session) - 365
),
ranged AS (
    SELECT ticker,
           argMax(c, dt) AS last_close,
           max(c) AS hi,
           min(c) AS lo,
           argMaxIf(c, dt, dt <= toDate('2025-12-31')) AS base_close,
           count() AS n_sessions,
           min(dt) AS first_dt,
           max(dt) AS last_dt
    FROM daily
    GROUP BY ticker
    HAVING n_sessions >= 200
       AND countIf(dt <= toDate('2025-12-31')) > 0
       AND last_dt = (SELECT d FROM last_session)
       AND first_dt <= (SELECT d FROM last_session) - 350
)
SELECT multiIf(p < 1, 'At the high (under 1%)',
               p < 5, '1% to 5% below',
               p < 10, '5% to 10% below',
               p < 20, '10% to 20% below',
               p < 35, '20% to 35% below',
               'More than 35% below') AS bucket,
       count() AS stocks,
       round(100.0 * count() / sum(count()) OVER (), 1) AS share_pct,
       round(quantileExact(0.5)(ytd), 1) AS median_ytd_pct
FROM (
    SELECT (1 - last_close / hi) * 100 AS p,
           (last_close / base_close - 1) * 100 AS ytd,
           multiIf(p < 1, 0, p < 5, 1, p < 10, 2, p < 20, 3, p < 35, 4, 5) AS ord
    FROM ranged
)
GROUP BY bucket, ord
ORDER BY ord

全螢幕中有 5.3%,共 26 檔股票,收盤價位在 52 週高點的 1% 以內。在另一端,有 17% 檔股票收盤價位低於高點超過 35%。最高區間的年初至今中位數報酬率為 32.8%;最低區間則為 -28.9%,圖表呈現兩者之間的趨勢。

這種梯度更接近算術規律而非發現:根據定義,接近 52 週高點的股票,其今年大部分時間都在上漲。此面板在規模上的價值在於:極端情況有多罕見,以及市場中有多少比例的股票遠離其最佳價格。大量持有其中任何一檔股票,即是 單一股票的真實風險 所衡量的風險敞口。

市場目前處於 52 週區間之位置

單一股票處於高點時,相對於接近高點的市場與相對於遠離高點的市場,其意義完全不同。下方的五檔大盤 ETF 衡量方式與上述個股一致。

查詢五檔大盤 ETF 於其 52週區間內之位置
每個數據背後的精確 SQL 語法
WITH last_session AS (
    SELECT max(toDate(et)) AS d
    FROM (
        SELECT toTimeZone(window_start, 'America/New_York') AS et
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY' AND window_start >= now() - INTERVAL 12 DAY
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) >= 955
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) < 960
    )
),
daily AS (
    SELECT ticker, toDate(et) AS dt, argMax(c, et) AS c, count() AS nbars
    FROM (
        SELECT ticker, toTimeZone(window_start, 'America/New_York') AS et, toFloat64(close) AS c
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE window_start >= now() - INTERVAL 375 DAY
          AND ticker IN ('SPY', 'QQQ', 'DIA', 'IWM', 'RSP')
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) >= 930
          AND toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York')) < 960
    )
    GROUP BY ticker, dt
    HAVING nbars >= 20
       AND dt > (SELECT d FROM last_session) - 365
       AND dt <= (SELECT d FROM last_session)
),
ranged AS (
    SELECT ticker,
           argMax(c, dt) AS last_close,
           max(c) AS hi,
           min(c) AS lo,
           argMaxIf(c, dt, dt <= toDate('2025-12-31')) AS base_close,
           count() AS n_sessions,
           min(dt) AS first_dt,
           max(dt) AS last_dt
    FROM daily
    GROUP BY ticker
    HAVING n_sessions >= 200
       AND countIf(dt <= toDate('2025-12-31')) > 0
       AND last_dt = (SELECT d FROM last_session)
       AND first_dt <= (SELECT d FROM last_session) - 350
)
SELECT multiIf(ticker = 'SPY', 'S&P 500 (SPY)',
               ticker = 'QQQ', 'Nasdaq 100 (QQQ)',
               ticker = 'DIA', 'Dow 30 (DIA)',
               ticker = 'RSP', 'S&P 500 equal weight (RSP)',
               'Russell 2000 (IWM)') AS label,
       round((1 - last_close / hi) * 100, 2) AS pct_below_high,
       round((last_close / lo - 1) * 100, 1) AS pct_above_low,
       round((last_close / base_close - 1) * 100, 1) AS ytd_return_pct
FROM ranged
ORDER BY pct_below_high ASC

S&P 500 equal weight (RSP) 收盤價較其 52 週高點低 1.08%,是五檔中最接近高點的,且較其 52 週低點高 17.2%。Nasdaq 100 (QQQ) 距離高點最遠,位於 4.98%。今年至今的表現分別為 11.1% 與 15.4%。

同一指數的等權重版本與市值加權版本之間的差距,本身即是一種廣度指標。當等權重線較接近高點時,代表成分股的平均表現優於大型權值股。當市值加權線較接近高點時,則代表少數大型企業帶動了指數。這兩種情況皆無法預測未來,若在錯誤的時機離場,將面臨 錯失市場最佳漲幅 的代價。

衡量方式

本頁面所有數據均來自美國交易所的逐筆成交數據(minute bars),並彙整為每日收盤價。完整規則如下:

  • 選股範圍。 僅限在美國上市的營運公司。公司必須向 SEC 提交過在過去 400 天內結束的損益表,因此 ETF 與基金不會出現在兩份清單中。為了確保準確,槓桿與反向 ETF 也被明確排除。
  • 流動性門檻。 個股在過去 20 個日曆日內,成交金額必須至少達到 20 億美元。扣除週末與國定假日後,該區間約包含 12 個交易日,因此平均每場交易約需達到 1.5 億美元。此規則確保清單內的標的具備實際交易流動性,避免因成交量過低而產生極端數據。
  • 不進行拆股調整。 任何在過去 460 天內執行過股票拆股的標的,皆會從篩選結果中剔除。此區間刻意設定超過一年,以涵蓋下方廣度圖表所追溯的最早價格。這是此類頁面最容易產生錯誤數據的原因:例如 1 比 20 的反向拆股會在沒有實際交易支撐的情況下,使報價價格暴增 20 倍,若未經調整的篩選器會因此誤報一個驚人的 52 週新高。正向拆股則會產生相反的效果,誤報 52 週新低。
  • 以收盤價為準,而非日內極值。 高點與低點皆以收盤價衡量。個股在交易日內可能突破 52 週新高,但若收盤價低於該高點,則不會出現在此清單中。基於日內價格建立的篩選器會顯示較大的數量。
  • 交易時段必須完整。 當日收盤價是指紐約時間 15:30 至 16:00 之間的最後一根分鐘 K 線。尚未完成的交易時段在此半小時內沒有 K 線,因此無法納入計算,進行中的交易時段亦然。提前收盤的節假日交易時段也因同樣原因被排除。上方標註的日期為通過測試的最後一個交易時段,因此可能比實際日期晚一至兩天。
  • 完整的一年歷史數據。 個股在 52 週的區間內必須至少包含 200 個交易日,且首個交易日必須至少在 350 天之前。僅上市三個月的公司無法在此顯示 52 週新高。
  • 1% 區間。 「處於 52 週新高」意指收盤價位於過去 52 週最高收盤價的當下,或在其 1% 的範圍內;低點清單則以此類推。年初至今(YTD)的報酬率是以 2025 年最後一個收盤價作為計算基準。

常見問題

在 52 週高點買入是好主意嗎?

這沒有通用的答案,且本文不構成任何投資建議。本頁面呈現的是回溯性數據:與 52 週高點差距在 1% 以內的股票,其年初至今的中位數報酬率為 32.8%,而低於高點 35% 以上的股票則為 -28.9%。這描述的是這些股票過去一年的表現,而非未來一年的表現。此標籤僅代表價格區間的位置,而非估值。

股票觸及 52 週低點代表什麼意義?

這代表該股票的收盤價低於過去 52 週內的任何價格。在 Jul 21, 2026,本篩選條件中有 7 檔股票符合此條件。低點可能伴隨著經營狀況惡化,也可能僅是獲利能力穩定的公司在長期走跌,單憑價格無法判斷屬於哪種情況。

目前有多少股票處於 52 週高點?

截至 Jul 21, 2026 收盤,本篩選條件中有 26 檔股票的收盤價等於或在 52 週高點的 1% 以內,而處於 52 週低點 1% 以內的股票則有 7 檔。本篩選條件僅包含大型且具流動性的美國營運公司,且過去 20 個日曆日內成交額須超過 20 億美元,因此這些數量會比全市場篩選的結果更少。

52 週高點是如何計算的?

取過去 52 週內的所有收盤價並找出最大值。若最新的收盤價等於該最大值,則該股票創下 52 週收盤新高。本頁面也會將與該價位差距在 1% 以內的股票納入計算,並剔除過去 460 天內有股票拆分紀錄的代號,因為拆分會改變報價,但不會改變持股價值。


上述每個面板都儲存了其背後的 SQL 語法。您可以開啟任何表格下方的查詢指令來審核篩選條件,或在 Strasmore 終端機上執行。若要查看本週漲跌幅最大的股票,而非年度極值,請參閱 本週漲跌幅最大的股票

#52-week high#52-week low#market breadth#stock screener#market data