Strasmore Research
市場概況 Matt Connor著者: Matt Connor ・更新: 2026-07-23 · data as of July 23, 2026 · refreshed weekly

今月の株価騰落率ランキング

今月の主要な上昇・下落銘柄を取引データに基づき紹介します。取引額も併記しており、市場の勢いを詳細に把握できます。

今月の主要な騰落銘柄を、取引所のデータに基づき以下の通りランキング形式で紹介します。対象期間は Jun 22 から Jul 21 までの 21 営業日です。本リストには、当該期間中に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

CRNXが取引額9.4十億ドル、上昇率133.6%で首位となりました。これにPBF75.5%、MAN56.8%で続きました。これほどの規模の月間変動は、通常、その銘柄の平均出来高に対して相対出来高が急増することから始まります。また、期間を通じて緩やかに上昇するのではなく、ある日の窓開けから始まることも少なくありません。

今月の株価下落率ランキング

逆のパターン:取引額が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

NVTS-47.6%の下落率を記録し、取引額は5.1十億ドルでした。次いでWOLF-47.1%でした。このボードのドル列に注目してください。取引量の多い銘柄の下落は、取引量の少ない銘柄の下落とは性質が異なります。ここでは、それらを推測ではなく、データに基づいて区別しています。

3つの時間軸における同一の問い

1つの問いに対し、3つの期間を設定します。ある銘柄が1つのリストで上位に入っても、他の2つのリストには全く現れないことがあります。

3つのリストは個別に作成されており、表示条件は同一ではありません。週足のページは、5取引日のウィンドウにおける独自の流動性下限と取引最小単位を設定しています。年初来のページは、期間中の総取引額ではなく、1日あたりの平均ドル取引額でスクリーニングを行います。各ページは「method」セクションに独自のルールを記載しています。あるリストの銘柄を別のリストと比較する際は、必ずそれらを確認してください。

単発の急騰・急落は週足のリストで目立ちますが、年間のデータでは消失します。緩やかな月次の推移は、週足のリストには全く現れません。これら3つを並べて確認することが、単発の事象とトレンドを見分ける最も効率的な方法です。

同期間における市場の状況

ある銘柄の月間騰落率は、市場全体の月間騰落率とは異なります。期間中の初値にリベースした主要4指数の状況は以下の通りです。

クエリ主要4指数の推移(初値基準)
各数値の背後にある正確な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が0.08%、Nasdaq 100が-4.46%、Dowが0.91%、Russell 2000が-0.21%でした。同一期間において、4つの指数で結果が分かれました。この範囲と比較した上昇銘柄の状況は以下の通りです。上昇率の上位銘柄は、同期間に133.6%を記録しました。個別銘柄の動きは指数よりもはるかに分散しており、それが個別銘柄リストが単一銘柄のリストとして存在する理由です。

有名銘柄のパフォーマンス

今月の最良銘柄を探している投資家は、自身が保有する銘柄の動向も知りたいと考えています。同じ期間、同じ構成による、大手8銘柄の固定バスケットの結果は以下の通りです。

クエリ主要メガキャップ8銘柄の推移
各数値の背後にある正確な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

このグループの騰落率は、最高値の12.5%(META)から最低値の-6.6%(AVGO)までとなりました。銘柄は一律には動いていませんが、これは例外ではなく一般的な傾向です。指数構成銘柄としてこれらはまとめられていますが、収益源に共通点はありません。このバスケットはランキングではなく、固定された8銘柄のリストです。銘柄の規模を示すものではなく、あくまで指標としてお使いください。

通常の月の状況

リーダーボードは極端な例を示しています。こちらは全体的な傾向を示しています。画面に表示されたすべての 1162 社を、期間中のリターンに基づいて分類したものです。

クエリスクリーニング銘柄の月間リターン分布
各数値の背後にある正確な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

スクリーニングされた企業の 60 が期間中に20%以上の利益を上げ、77 が20%以上の損失を出しました。リターンがほぼゼロに近い2つのグループには、それぞれ 315 社と 426 社が含まれています。このチャートは、ムーブ・リーダーボードの元となるデータであり、上位10社はその右端に位置します。上記のボードを読む際は、この点を念頭に置いてください。月間の上位10社の動きは、構造上アウトライヤー(外れ値)であり、一般的な銘柄にとっての典型的な月ではありません。

月間騰落銘柄リストに入る要因

1ヶ月という期間は、複数のイベントが発生するのに十分な長さですが、通常はそのうちの1つが全体を支配します。リストに載る銘柄は、多くの場合、企業のスケジュール上の特定のイベントと一致しています。最も一般的なのは四半期決算です。予想を上回るか下回るかによって、1セッションで株価が再設定され、その後の1ヶ月間はその水準付近で取引されます。業績発表を伴わないガイダンスの変更も、同様の効果をもたらします。

M&A(合併・買収)のニュースは、月間リストにおいて最も顕著な特徴を示します。株価は発表された買収価格に近い水準まで急騰し、その後は静かになります。騰落率は横ばいになりますが、取引代金は非常に大きな値を維持します。上昇率ランキングの上位にあり、取引代金が極めて大きく、かつ期間の途中で株価の動きが止まっている銘柄があれば、まずそのパターンを確認すべきです。

セクター全体の動きは、週単位ではあまり見られないものの、月単位では重要になります。金利、原油価格、またはメモリ価格の変化は、関連するグループ全体に同時に影響を与えます。そのため、月間リストには無関係な10銘柄ではなく、類似した業種が集中して表示されることがよくあります。その他に、アナリストの判断、指数への採用・除外、治験や規制当局の発表、ショートスクイーズなどが含まれます。騰落率だけではこれらの要因を判別できないため、すべての銘柄において取引代金と市場の推移期間が併記されています。

How this is measured

Every threshold is stated here rather than left implied. A screen with hidden rules reads as data and is actually an opinion.

  • The window. The trailing 30 calendar days ending at the most recent session whose tape is fully loaded, which came to the 21 sessions from Jun 22 to Jul 21. Two rules decide whether a session qualifies. It must have closed before the current date in New York, so the session in progress is never in scope. Its regular-hours bar count must also reach 85% of the median session across the 34-day scan, which holds back an earlier day whose tape is still filling in. A shortened holiday session prints roughly half a normal day of bars, so the same rule drops it rather than measuring it half loaded.
  • The return. First regular-session opening price inside the window to last regular-session close, built from minute bars. Regular hours only, so premarket and after-hours prints are excluded. It is a price return: dividends are not added back.
  • The floors. At least $1 billion traded across the whole window, an opening price of $10 or more, and prints on at least 15 of the window's sessions. The dollar floor is a monthly total, which makes it an easier bar to clear than the same figure measured over a single week.
  • The exclusions. Leveraged and inverse funds are removed by name. Every ticker must also carry company fundamentals, a market capitalization on file, in our reference data. That second rule drops ETFs, closed-end funds, commodity trusts and the fast-growing family of leveraged single-stock products, which would otherwise fill most of both boards. That reference table holds one row per ticker rather than a dated daily snapshot, so the screen reads the whole table and no single date decides who is eligible. Any ticker with a stock split executing in the last 45 days is dropped rather than back-adjusted, since a split moves the per-share price without changing what a holding is worth. One symbol that vendor feeds have reassigned between two different companies is excluded by name.
  • The mega-cap panel. A fixed basket of eight widely held large US companies, listed by name in that panel's SQL. It uses the same window and the same return construction as the boards, and it sits outside the dollar-volume screen.
  • What is not applied. There is no sector filter, no market-cap floor and no index-membership requirement, so a heavily churned small company can sit on the board beside a large one. Ranking is by percentage change only, which is why the dollars-traded column is printed next to it.

One panel carries the receipt for all of it: the sessions the window covered, and the universe each board was screened from.

クエリ期間およびスクリーニング対象の定義
各数値の背後にある正確な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

The screen started from 4122 tickers carrying a market capitalization in the reference table and finished with 1162 companies clearing the dollar-volume, price and session floors. Both figures are stored with every refresh of this page, so a run over a shrunken universe shows up in the receipt instead of passing unnoticed.

FAQ

今月の株価上昇率トップ銘柄は?

Jul 21に終了する期間において、時価総額10億ドル以上の銘柄の中で最大の上げ幅を記録したのは133.6%のCRNX、次いで75.5%のPBFでした。上位10銘柄の全リストは、本ページの一番目の表に記載されており、取引セッションの終了に合わせて更新されます。

今月の株価下落率トップ銘柄は?

-47.6%のNVTSが最大の下げ幅を記録し、-47.1%のWOLFがそれに続きました。両銘柄とも、上昇銘柄と同様に21のセッションを対象とし、時価総額10億ドル以上の条件で算出されています。

月間騰落率はどのように算出されますか?

ここでの月間騰落率は、対象期間内の最初の定時取引開始価格から、分足データに基づく最後の定時取引終値までの変化率です。これは価格騰落率であり、配当は含まれません。また、対象期間中に株式分割を行った銘柄は、修正調整ではなくリストから除外されます。

なぜレバレッジ型ETFは銘柄リストから除外されるのですか?

レバレッジ型またはインバース型ファンドは、指数や個別銘柄の日次変動を倍率で反映するため、企業ニュースがなくても通常の取引日に騰落率の上位に入ることがあります。これらを除外することで、本リストは事業会社に限定されます。レバレッジ型ETFの仕組みでは、日次リセットと、1ヶ月間保有した際に発生するドリフトについて説明しています。


上記のパネルはすべて、SQLが紐付けられた保存済みクエリです。クエリを開いて、時価総額の基準や期間を変更し、Strasmoreターミナルで同様のスクリーニングを自身で行うことができます。