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

本月漲跌幅最大股票排名

本月漲跌幅最大股票排名,包含成交額超過十億美元之熱門股,助您掌握市場動向。

本月漲跌幅最大的股票排名如下,數據直接取自交易所報價,涵蓋了從 Jun 23Jul 2221 個已完成的交易日。本列表僅篩選在該期間內成交額達 10 億美元以上的營運公司,因此表中的每一項變動皆具備實際資金支持。槓桿與反向基金不在此列,且隨著新交易日的完成,數據窗口將持續更新。

本月漲幅最大的股票

此表格依據該期間內的漲幅進行排名。每一列除了百分比外,還列出了成交金額,這有助於區分是熱門股的重新定價,還是成交量稀薄的變動。

查詢本月漲幅最大股票(期間交易額 > $1B)
每個數據背後的精確 SQL 語法
WITH window_days AS (
    SELECT d
    FROM (
        SELECT d, max(d) OVER () AS last_full
        FROM (
            SELECT d
            FROM (
                SELECT d, bars, medianExact(bars) OVER () AS typical_bars
                FROM (
                    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d, count() AS bars
                    FROM global_markets.delayed_stocks_minute_aggs
                    WHERE window_start >= now() - INTERVAL 34 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
                    GROUP BY d
                    HAVING d < toDate(toTimeZone(now(), 'America/New_York'))
                )
            )
            WHERE bars >= 0.85 * typical_bars
        )
    )
    WHERE d > last_full - 30
)
SELECT ticker,
       round((argMax(c, d) / argMin(o, d) - 1) * 100, 1) AS month_return_pct,
       round(sum(dollars) / 1e9, 1) AS month_dollar_bn
FROM (
    SELECT ticker,
           toDate(toTimeZone(window_start, 'America/New_York')) AS d,
           argMin(toFloat64(open), window_start) AS o,
           argMax(toFloat64(close), window_start) AS c,
           sum(toFloat64(close) * toFloat64(volume)) AS dollars
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= now() - INTERVAL 34 DAY
      AND toDate(toTimeZone(window_start, 'America/New_York')) IN (SELECT d FROM window_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')) < 960
      AND ticker NOT IN ('SPCX')
      AND ticker NOT IN ('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 IN (SELECT ticker FROM global_markets.stocks_ratios
                     WHERE market_cap > 0)
      AND ticker NOT IN (SELECT ticker FROM global_markets.stocks_splits
                         WHERE execution_date BETWEEN today() - 45 AND today())
    GROUP BY ticker, d
)
GROUP BY ticker
HAVING sum(dollars) >= 1000000000 AND argMin(o, d) >= 10 AND count() >= 15
ORDER BY argMax(c, d) / argMin(o, d) DESC
LIMIT 10

CRNX136.1% 領漲,成交金額達 $9.7 十億,優於 PBF65.9% 以及 MAN62.1%。單月內如此規模的波動,通常會先體現為 相對成交量 高於該股票的 日均成交量,且往往是從某個交易日的 跳空開盤 開始,而非在整個期間內穩定攀升。

本月跌幅最大的股票

反向呈現相同的結構:在交易量超過 10 億美元的公司中,找出該期間內跌幅最劇烈的標的。

查詢本月跌幅最大股票(期間交易額 > $1B)
每個數據背後的精確 SQL 語法
WITH window_days AS (
    SELECT d
    FROM (
        SELECT d, max(d) OVER () AS last_full
        FROM (
            SELECT d
            FROM (
                SELECT d, bars, medianExact(bars) OVER () AS typical_bars
                FROM (
                    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d, count() AS bars
                    FROM global_markets.delayed_stocks_minute_aggs
                    WHERE window_start >= now() - INTERVAL 34 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
                    GROUP BY d
                    HAVING d < toDate(toTimeZone(now(), 'America/New_York'))
                )
            )
            WHERE bars >= 0.85 * typical_bars
        )
    )
    WHERE d > last_full - 30
)
SELECT ticker,
       round((argMax(c, d) / argMin(o, d) - 1) * 100, 1) AS month_return_pct,
       round(sum(dollars) / 1e9, 1) AS month_dollar_bn
FROM (
    SELECT ticker,
           toDate(toTimeZone(window_start, 'America/New_York')) AS d,
           argMin(toFloat64(open), window_start) AS o,
           argMax(toFloat64(close), window_start) AS c,
           sum(toFloat64(close) * toFloat64(volume)) AS dollars
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= now() - INTERVAL 34 DAY
      AND toDate(toTimeZone(window_start, 'America/New_York')) IN (SELECT d FROM window_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')) < 960
      AND ticker NOT IN ('SPCX')
      AND ticker NOT IN ('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 IN (SELECT ticker FROM global_markets.stocks_ratios
                     WHERE market_cap > 0)
      AND ticker NOT IN (SELECT ticker FROM global_markets.stocks_splits
                         WHERE execution_date BETWEEN today() - 45 AND today())
    GROUP BY ticker, d
)
GROUP BY ticker
HAVING sum(dollars) >= 1000000000 AND argMin(o, d) >= 10 AND count() >= 15
ORDER BY argMax(c, d) / argMin(o, d) ASC
LIMIT 10

CLBK 是跌幅最大的股票,跌幅達 -44.6%,交易額為 1.1 億美元,其次是 NVTS,跌幅為 -41.6%。請觀察此表格中的美元欄位。在交易量龐大的市場中發生的下跌,與在交易清淡的市場中發生的下跌是不同的事件,本表格會直接呈現兩者的差異,而非僅憑假設。

三種時間維度的相同問題

一個問題,三個觀察窗口。某檔股票可能在其中一個榜單名列前茅,但在另外兩個榜單中完全沒有出現。

這三個榜單是分別建立的,其篩選條件並不相同。週榜單針對五個交易日的窗口,設定了自身的流動性下限與交易量最小值;而年初至今頁面則是根據日均成交金額進行篩選,而非該期間的總成交金額。每個頁面都在其方法論章節中說明了各自的規則,因此在將某檔股票從一個榜單移至另一個榜單前,請先閱讀相關說明。

單日的劇烈跳空會主導週榜單,但在年度數據中會被稀釋。緩慢的月度走勢則完全不會出現在週榜單中。同時對照這三個榜單,是區分單日事件與長期趨勢最有效率的方式。

同一期間的市場表現

個股的單月表現與大盤的單月表現有所不同。以下四個主要指數追蹤指標,皆以該期間的首個開盤價為基準:

查詢同期四大指數走勢(以首日開盤價為基準)
每個數據背後的精確 SQL 語法
WITH window_days AS (
    SELECT d
    FROM (
        SELECT d, max(d) OVER () AS last_full
        FROM (
            SELECT d
            FROM (
                SELECT d, bars, medianExact(bars) OVER () AS typical_bars
                FROM (
                    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d, count() AS bars
                    FROM global_markets.delayed_stocks_minute_aggs
                    WHERE window_start >= now() - INTERVAL 34 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
                    GROUP BY d
                    HAVING d < toDate(toTimeZone(now(), 'America/New_York'))
                )
            )
            WHERE bars >= 0.85 * typical_bars
        )
    )
    WHERE d > last_full - 30
)
SELECT session,
       round(anyIf(cum_pct, ticker = 'SPY'), 2) AS sp500_pct,
       round(anyIf(cum_pct, ticker = 'QQQ'), 2) AS nasdaq100_pct,
       round(anyIf(cum_pct, ticker = 'DIA'), 2) AS dow_pct,
       round(anyIf(cum_pct, ticker = 'IWM'), 2) AS russell2000_pct
FROM (
    SELECT ticker,
           formatDateTime(d, '%Y-%m-%d') AS session,
           100 * (c / first_value(o) OVER (PARTITION BY ticker ORDER BY d) - 1) AS cum_pct
    FROM (
        SELECT ticker,
               toDate(toTimeZone(window_start, 'America/New_York')) AS d,
               argMin(toFloat64(open), window_start) AS o,
               argMax(toFloat64(close), window_start) AS c
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE window_start >= now() - INTERVAL 34 DAY
          AND ticker IN ('SPY', 'QQQ', 'DIA', 'IWM')
          AND toDate(toTimeZone(window_start, 'America/New_York')) IN (SELECT d FROM window_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')) < 960
        GROUP BY ticker, d
    )
)
GROUP BY session
ORDER BY session

截至最後一個交易日,S&P 500 指數漲幅為 1.85%,Nasdaq 100 指數漲幅為 -1.47%,道瓊工業指數漲幅為 1.33%,而 Russell 2000 指數漲幅為 0.17%。四個籃子、同一個期間,卻有四種不同的結果。若將漲幅排行榜與此區間對比:在相同期間內,漲幅領先者突破了 136.1%。個別公司的表現比其所屬的指數籃子更為分散,這正是漲幅榜僅列出單一名稱的原因。

知名企業的表現如何

尋找本月表現最佳股票的讀者,通常也想了解他們已持有的股票表現如何。以下是八家知名大型股的固定組合,採用相同的觀察期間與結構:

查詢同期八大超大型股
每個數據背後的精確 SQL 語法
WITH window_days AS (
    SELECT d
    FROM (
        SELECT d, max(d) OVER () AS last_full
        FROM (
            SELECT d
            FROM (
                SELECT d, bars, medianExact(bars) OVER () AS typical_bars
                FROM (
                    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d, count() AS bars
                    FROM global_markets.delayed_stocks_minute_aggs
                    WHERE window_start >= now() - INTERVAL 34 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
                    GROUP BY d
                    HAVING d < toDate(toTimeZone(now(), 'America/New_York'))
                )
            )
            WHERE bars >= 0.85 * typical_bars
        )
    )
    WHERE d > last_full - 30
)
SELECT ticker,
       round((argMax(c, d) / argMin(o, d) - 1) * 100, 1) AS month_return_pct
FROM (
    SELECT ticker,
           toDate(toTimeZone(window_start, 'America/New_York')) AS d,
           argMin(toFloat64(open), window_start) AS o,
           argMax(toFloat64(close), window_start) AS c
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= now() - INTERVAL 34 DAY
      AND ticker IN ('AAPL', 'MSFT', 'NVDA', 'AMZN', 'GOOGL', 'META', 'TSLA', 'AVGO')
      AND toDate(toTimeZone(window_start, 'America/New_York')) IN (SELECT d FROM window_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')) < 960
      AND ticker NOT IN (SELECT ticker FROM global_markets.stocks_splits
                         WHERE execution_date BETWEEN today() - 45 AND today())
    GROUP BY ticker, d
)
GROUP BY ticker
HAVING count() >= 15
ORDER BY argMax(c, d) / argMin(o, d) DESC

該組合的表現從 11.5% 期間的 META(最高)到 -4.7% 期間的 TSLA(最低)。這些股票並非同步變動,這在市場中屬於常態而非例外。雖然指數將這些公司歸為一類,但它們的營收來源幾乎沒有關聯。此組合是八家公司的固定清單而非排名,因此僅供參考,不代表這些公司的規模大小。

常態月份的樣貌

排行榜呈現的是極端值。此圖表呈現的是常態分布。所有通過篩選的 1167 家公司,皆依據該期間的報酬率進行分類:

查詢篩選個股表現:各分組月報酬率
每個數據背後的精確 SQL 語法
WITH window_days AS (
    SELECT d
    FROM (
        SELECT d, max(d) OVER () AS last_full
        FROM (
            SELECT d
            FROM (
                SELECT d, bars, medianExact(bars) OVER () AS typical_bars
                FROM (
                    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d, count() AS bars
                    FROM global_markets.delayed_stocks_minute_aggs
                    WHERE window_start >= now() - INTERVAL 34 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
                    GROUP BY d
                    HAVING d < toDate(toTimeZone(now(), 'America/New_York'))
                )
            )
            WHERE bars >= 0.85 * typical_bars
        )
    )
    WHERE d > last_full - 30
)
SELECT tup.1 AS return_bucket,
       tup.3 AS stocks
FROM (
    SELECT arrayJoin(arrayZip(
               ['down 20% or more', 'down 10% to 20%', 'down 0% to 10%',
                'up 0% to 10%', 'up 10% to 20%', 'up 20% or more'],
               [1, 2, 3, 4, 5, 6],
               [countIf(r <= -20), countIf(r > -20 AND r <= -10), countIf(r > -10 AND r < 0),
                countIf(r >= 0 AND r < 10), countIf(r >= 10 AND r < 20), countIf(r >= 20)])) AS tup
    FROM (
        SELECT ticker,
               (argMax(c, d) / argMin(o, d) - 1) * 100 AS r
        FROM (
            SELECT ticker,
                   toDate(toTimeZone(window_start, 'America/New_York')) AS d,
                   argMin(toFloat64(open), window_start) AS o,
                   argMax(toFloat64(close), window_start) AS c,
                   sum(toFloat64(close) * toFloat64(volume)) AS dollars
            FROM global_markets.delayed_stocks_minute_aggs
            WHERE window_start >= now() - INTERVAL 34 DAY
              AND toDate(toTimeZone(window_start, 'America/New_York')) IN (SELECT d FROM window_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')) < 960
              AND ticker NOT IN ('SPCX')
              AND ticker NOT IN ('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 IN (SELECT ticker FROM global_markets.stocks_ratios
                             WHERE market_cap > 0)
              AND ticker NOT IN (SELECT ticker FROM global_markets.stocks_splits
                                 WHERE execution_date BETWEEN today() - 45 AND today())
            GROUP BY ticker, d
        )
        GROUP BY ticker
        HAVING sum(dollars) >= 1000000000 AND argMin(o, d) >= 10 AND count() >= 15
    )
)
ORDER BY tup.2

在通過篩選的公司中,有 52 的報酬率達到 20% 以上,而 50 的報酬率下跌超過 20%。最接近持平的兩個區間分別包含 300515 家公司。該圖表呈現了漲跌幅排行榜的組成結構,而前十名則是其最右側的邊緣。閱讀上方排行榜時請記住:月報酬率前十名的變動屬於結構性的離群值,絕非一般股票的常態月份。

哪些因素會使股票進入月漲跌榜

一個月的時間足以發生多起事件,但也短到通常會由其中一項事件主導。這些榜單上的名稱通常與公司財報日相關。財報結果是最常見的原因:盈餘優於或低於預期會在單一交易日內重塑股價,隨後該股在該月剩餘時間內會圍繞新價位交易。財測調整在沒有公布財報的情況下,也能達到同樣的效果。

併購消息在月漲跌榜上留下的特徵最為明顯。股價會跳升至接近公告交易價的水平,隨後趨於平穩,此時成交金額依然龐大,但漲跌幅百分比則會趨於平緩。如果漲幅榜前列的股票顯示出極高的成交金額,且股價在該月中期便停止波動,那麼在觀察其他因素前,應優先檢查這種模式。

產業趨勢在一個月內的影響力,通常比在一週內更顯著。利率、原油或記憶體價格的變動會同時影響整個產業群體,這也是為什麼月漲跌榜常出現同類型企業集群,而非十個完全無關的個股。分析師評等變動、指數成分股納入或剔除、臨床試驗與監管審查結果,以及軋空現象,構成了榜單的其他部分。僅看漲跌幅百分比無法看清全貌,因此成交金額欄位與市場波動週期,會與每一項變動並列呈現。

衡量方式

所有門檻皆在此明確列出,而非隱含其中。若篩選規則不明,其結果僅是意見而非數據。

  • 時間窗口。 指從最近一個數據已完全載入的交易日算起,回溯 30 個日曆日,該期間包含從 Jun 23Jul 2221 個交易日。判斷交易日是否符合資格有兩項規則:首先,該交易日必須在紐約當前日期之前結束,因此進行中的交易日不會納入範圍;其次,其常規交易時段的 K 線數量必須達到 34 天掃描期間中位數的 85%,這會排除數據尚未載入完全的交易日。由於節假日的交易時段較短,產生的 K 線數量僅約正常交易日的一半,因此同樣的規則會將其排除,而非將其視為數據僅載入一半。
  • 報酬率。 以窗口內第一個常規交易時段的開盤價,對應最後一個常規交易時段的收盤價,並由分鐘線計算。僅計算常規交易時段,不包含盤前與盤後數據。此為價格報酬:不包含股利回補。
  • 門檻限制。 整個窗口內的總成交金額須至少達 10 億美元、開盤價須在 10 美元或以上,且窗口內至少要有 15 個交易日有成交紀錄。美元門檻是以月度總額計算,這比以單週計算更容易達成。
  • 排除對象。 直接排除槓桿型與反向型基金。每個代號也必須在我們的參考數據中擁有公司基本面與市值紀錄。第二項規則會排除 ETF、封閉式基金、商品信託以及快速成長的單一股票槓桿產品,否則這些產品會佔據大部分的列表。該參考表是以每個代號佔一行,而非每日快照,因此篩選是針對整個表格進行,而非由單一日期決定資格。若任何代號在過去 45 天內有股票拆分,則會直接排除而非進行回溯調整,因為拆分僅改變每股價格,不會改變持倉價值。若供應商數據將同一個代號重新分配給兩家不同的公司,該代號也會被排除。
  • 大型股面板。 由八家廣泛持有的美國大型公司組成的固定籃子,其名稱列於該面板的 SQL 中。其計算窗口與報酬率建構方式與其他面板相同,且不受成交金額篩選限制。
  • 不適用的規則。 本篩選不包含產業分類、市值門檻或指數成分要求,因此交易頻繁的小型公司可以與大型公司並列。排名僅依據百分比變化,因此會在旁邊列出成交金額欄位。

其中一個面板會列出所有計算細節:包含窗口涵蓋的交易日,以及每個面板篩選時的原始範圍。

查詢本頁所有圖表之觀察期間與篩選範圍
每個數據背後的精確 SQL 語法
WITH window_days AS (
    SELECT d
    FROM (
        SELECT d, max(d) OVER () AS last_full
        FROM (
            SELECT d
            FROM (
                SELECT d, bars, medianExact(bars) OVER () AS typical_bars
                FROM (
                    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d, count() AS bars
                    FROM global_markets.delayed_stocks_minute_aggs
                    WHERE window_start >= now() - INTERVAL 34 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
                    GROUP BY d
                    HAVING d < toDate(toTimeZone(now(), 'America/New_York'))
                )
            )
            WHERE bars >= 0.85 * typical_bars
        )
    )
    WHERE d > last_full - 30
),
screened AS (
    SELECT ticker
    FROM (
        SELECT ticker,
               toDate(toTimeZone(window_start, 'America/New_York')) AS d,
               argMin(toFloat64(open), window_start) AS o,
               sum(toFloat64(close) * toFloat64(volume)) AS dollars
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE window_start >= now() - INTERVAL 34 DAY
          AND toDate(toTimeZone(window_start, 'America/New_York')) IN (SELECT d FROM window_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')) < 960
          AND ticker NOT IN ('SPCX')
          AND ticker NOT IN ('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 IN (SELECT ticker FROM global_markets.stocks_ratios
                         WHERE market_cap > 0)
          AND ticker NOT IN (SELECT ticker FROM global_markets.stocks_splits
                             WHERE execution_date BETWEEN today() - 45 AND today())
        GROUP BY ticker, d
    )
    GROUP BY ticker
    HAVING sum(dollars) >= 1000000000 AND argMin(o, d) >= 10 AND count() >= 15
)
SELECT formatDateTime(w.first_d, '%b %e') AS first_session_date,
       formatDateTime(w.last_d, '%b %e') AS last_session_date,
       w.n AS sessions,
       (SELECT count() FROM global_markets.stocks_ratios WHERE market_cap > 0) AS companies_on_file,
       (SELECT count() FROM screened) AS companies_screened
FROM (SELECT min(d) AS first_d, max(d) AS last_d, count() AS n FROM window_days) AS w

本次篩選從參考表中具有市值紀錄的 4121 個代號開始,最終篩選出符合成交金額、價格與交易日門檻的 1167 家公司。這兩個數字會在頁面每次重新整理時儲存,因此若篩選範圍縮減,其結果會顯示在明細中,而不會被忽略。

FAQ

What are the biggest stock gainers this month?

For the window ending Jul 22, the largest gains among companies trading over $1 billion were CRNX at 136.1% and PBF at 65.9%. The full top ten sits in the first table on this page, and it rolls forward as new sessions complete.

What stocks have dropped the most this month?

CLBK was the steepest decliner at -44.6%, followed by NVTS at -41.6%. Both are measured over the same 21 sessions, with the same $1 billion dollar-volume floor as the gainers board.

How are monthly stock returns measured?

A monthly return here is the change from a stock's first regular-session opening price inside the window to its last regular-session close, built from minute bars. It is a price return, so dividends are not added back, and any company with a stock split executing near the window is dropped rather than back-adjusted.

Why are leveraged ETFs excluded from a stock movers list?

A leveraged or inverse fund multiplies the daily move of an index or a single stock, so it can top a raw movers board on an ordinary market day with no company news behind it. Removing them keeps this a list of operating companies. How leveraged ETFs work covers the daily reset and the drift that comes with holding one for a month.


Every panel above is a stored query with its SQL attached. Open one, change the dollar floor or the window length, and screen the same tape yourself on the Strasmore terminal.