Strasmore Research
నేర్చుకోండి Matt Connorద్వారా Matt Connor

Sub-Penny Rule మరియు Price Improvement అర్థం చేసుకోండి

Rule 612, Sub-Penny Rule, $1.00 కంటే ఎక్కువ ధరల కోట్‌లలో cent కంటే సూక్ష్మమైన భాగాలను నిషేధిస్తుంది. అయినా మీ fill నాలుగు దశాంశాలతో ఎందుకు కనిపిస్తుందో real tape dataతో తెలుసుకోండి.

Sub-penny rule, Regulation NMSలోని Rule 612, ప్రదర్శించే షేర్ కోట్ ఉపయోగించగల అత్యంత సూక్ష్మ incrementను నిర్ణయిస్తుంది: $1.00 లేదా అంతకంటే ఎక్కువ ధరకు ఒక cent, $1.00 కంటే తక్కువ ధరకు ఒక centలో వందో వంతు. ఇది ఒక venue ఏమి ప్రదర్శించగలదో లేదా అంగీకరించగలదో నియంత్రిస్తుంది. కానీ ట్రేడ్ ఏ ధర వద్ద print కావచ్చో దీనివల్ల నిర్ణయించబడదు. అందుకే స్క్రీన్‌పై ప్రతి quote round centతో ముగిసినా, మీ confirmationలో fill $47.3218గా కనిపించవచ్చు.

Sub-penny rule వాస్తవంగా ఏమి చెబుతోంది

Rule 612ను 2005లో Regulation NMSతో ప్రవేశపెట్టారు. దాని అమలు నిబంధన సంక్షిప్తంగా ఉంటుంది. $1.00 లేదా అంతకంటే ఎక్కువ ధర ఉన్న NMS stockకు $0.01 కంటే సూక్ష్మమైన incrementలో ఏ national securities exchange, alternative trading system, vendor లేదా broker order, quotation లేదా indication of interestను display చేయకూడదు, rank చేయకూడదు లేదా accept చేయకూడదు. $1.00 కంటే తక్కువ ధరకు ఈ పరిమితి $0.0001. NMS stock అంటే exchange-listed equity. కాబట్టి US exchangeలో retail brokerage account ద్వారా కొనుగోలు చేయగల దాదాపు అన్నింటికీ ఈ rule వర్తిస్తుంది.

ఇక్కడ కీలకమైన పదాలు display మరియు accept. ఈ rule quotes, ordersకు వర్తిస్తుంది. Executionsకు వర్తించదు. ఏ venue అయినా $47.3215 bidను post చేయలేరు. మీ broker కూడా ఆ ధర వద్ద limit orderను accept చేయలేడు. అయినప్పటికీ ఒక trade చట్టబద్ధంగా ఆ ధర వద్ద print కావచ్చు.

ఈ rule రూపొందించడానికి కారణమైన పద్ధతి stepping ahead. Resting $10.00 bid ముందు trader $10.0001 bid post చేసి queueలో ముందుకు వెళ్లగలిగేవాడు. ఇందుకు వాస్తవ ఆర్థిక నిబద్ధతగా ఒక centలో వందో వంతు మాత్రమే అవసరమయ్యేది. Display చేసే ధరలకు coarse grid పెట్టడం ఈ కదలికను తొలగించి, price priorityకు కొంత ప్రాధాన్యం ఇస్తుంది.

మీ fill నాలుగు decimal places వద్ద ఎందుకు print అయింది

US stocksలో marketable retail ordersలో ఎక్కువ భాగం ఎప్పుడూ exchangeకు చేరవు. అవి wholesalerకు వెళ్తాయి. Wholesaler అంటే తన సొంత inventoryకి వ్యతిరేకంగా orderను fill చేసే off-exchange market maker. Wholesaler మీ orderను fill చేసేటప్పుడు quoteను display చేయడం లేదు. అందువల్ల penny grid execution priceను నియంత్రించదు. అది national best bid and offerలోపల fill చేస్తుంది. NBBOకి, మీ fillకి మధ్య ఉన్న ఈ తేడానే confirmationలో మరియు మీ broker execution quality reportsలో price improvementగా చూపబడుతుంది.

ఈ విధానం public tapeపై ఒక గుర్తును వదిలిపెడుతుంది. ప్రతి trade తన ఖచ్చితమైన ధరతో consolidated feedలో print అవుతుంది. కాబట్టి ధరలో centలో కొంత భాగం ఉన్న printsను లెక్కిస్తే, gridలోపల జరిగిన fillsను లెక్కించినట్లే.

క్వెరీసబ్-పెన్నీ ధరపై నమోదైన ట్రేడ్‌ల వాటా
ప్రతి సంఖ్య వెనుక ఉన్న ఖచ్చితమైన SQL
SELECT
    ticker,
    round(100 * countIf(toUInt64(round(toFloat64(price) * 10000)) % 100 != 0) / count(), 2)       AS subpenny_trade_pct,
    round(100 * sumIf(size, toUInt64(round(toFloat64(price) * 10000)) % 100 != 0) / sum(size), 2) AS subpenny_volume_pct
FROM global_markets.stocks_trades
WHERE ticker IN ('MSFT', 'AAPL', 'NVDA', 'KO', 'BAC', 'T', 'F')
  AND sip_timestamp >= '2026-06-17 14:00:00'
  AND sip_timestamp <  '2026-06-17 14:15:00'
  AND price > 0
GROUP BY ticker
ORDER BY subpenny_trade_pct DESC
Run this yourself

17 June 2026న పదిహేను నిమిషాల వ్యవధిలో, కొలిచిన 7 పేర్లలో అత్యధిక రేటును KO చూపించింది. దాని printsలో 46.56% sub-penny ధర వద్ద జరిగాయి. అత్యల్ప రేటు 31.87%తో MSFTలో నమోదైంది. Printsకు బదులుగా sharesను లెక్కిస్తే రెండో దృక్కోణం కనిపిస్తుంది: KOలో చేతులు మారిన sharesలో 24.88% sub-penny printsకు చెందినవి.

Wholesaler fills చిన్న పరిమాణాల వైపు మొగ్గు చూపుతాయి. దిగువ panelలో AAPL printsను trade size ఆధారంగా ఒక పూర్తి sessionకు విభజించాం. దీని ద్వారా retail పరిమాణంలోని flowను institutional blocks నుంచి వేరు చేయవచ్చు.

క్వెరీ17 జూన్ 2026న ట్రేడ్ పరిమాణం ప్రకారం AAPL సబ్-పెన్నీ ప్రింట్ రేటు
ప్రతి సంఖ్య వెనుక ఉన్న ఖచ్చితమైన SQL
WITH prints AS
(
    SELECT
        size,
        multiIf(size < 100,  'under 100 shares',
                size < 500,  '100 to 499 shares',
                size < 1000, '500 to 999 shares',
                size < 5000, '1,000 to 4,999 shares',
                             '5,000 shares and up')       AS size_bucket,
        toUInt64(round(toFloat64(price) * 10000)) % 100 != 0 AS sub_penny
    FROM global_markets.stocks_trades
    WHERE ticker = 'AAPL'
      AND sip_timestamp >= '2026-06-17 00:00:00'
      AND sip_timestamp <  '2026-06-18 00:00:00'
      AND price > 0
      AND size > 0
)
SELECT
    size_bucket,
    round(100 * countIf(sub_penny) / count(), 2)           AS subpenny_trade_pct,
    round(100 * count() / (SELECT count() FROM prints), 2) AS share_of_prints_pct
FROM prints
GROUP BY size_bucket
ORDER BY min(size)
Run this yourself

under 100 shares పరిమాణంలోని prints ఆ sessionలోని AAPL tradesలో 88.99%కు ప్రాతినిధ్యం వహించాయి. వాటిలో 38.66% sub-penny ధర వద్ద జరిగాయి. అతిపెద్ద band అయిన 5,000 shares and upలో, 18.06% prints sub-penny ధర వద్ద జరిగాయి. Panelలోని రెండు అంచులలోనూ ఇవి కనిపిస్తాయి.

చవకైన stockపై ఒక cent ఎందుకు ఎక్కువ భారం అవుతుంది

Basis point అంటే ఒక శాతం యొక్క వందో వంతు. Share prices మధ్య trading costsను పోల్చడానికి ఇది ప్రామాణిక unit. Basis pointsలో కొలిచినప్పుడు, $3 stockపై ఒక cent minimum tick విధించే charge, $500 stockపై విధించే chargeతో పూర్తిగా భిన్నంగా ఉంటుంది.

క్వెరీషేర్ ధర పరిధి ప్రకారం ఒక సెంట్ విలువ
ప్రతి సంఖ్య వెనుక ఉన్న ఖచ్చితమైన SQL
WITH day_prices AS
(
    SELECT
        ticker,
        toFloat64(close) AS px
    FROM global_markets.stocks_daily_aggs
    WHERE date = '2026-06-17'
      AND volume >= 500000
      AND close >= 1
      AND close <  1000
)
SELECT
    multiIf(px < 2,   '$1 to $2',
            px < 5,   '$2 to $5',
            px < 10,  '$5 to $10',
            px < 25,  '$10 to $25',
            px < 50,  '$25 to $50',
            px < 100, '$50 to $100',
            px < 250, '$100 to $250',
                      '$250 to $1,000') AS price_bucket,
    count()                             AS stock_count,
    round(avg(10000 * 0.01 / px), 2)    AS one_cent_bps
FROM day_prices
GROUP BY price_bucket
ORDER BY min(px)
Run this yourself

17 June 2026న ఉన్న 8 price bandsలో, $1 to $2 bandలో share priceలో ఒక cent విలువ 71.37 basis points. $250 to $1,000 bandలో అది 0.28 basis points. ఒకే centను చాలా భిన్నమైన pricesతో పోల్చినప్పుడు వచ్చే తేడా ఇది.

ఈ ruleలో దీనికి ఇప్పటికే ఒక adjustment ఉంది. $1.00 కంటే తక్కువ ధరకు increment $0.0001కు తగ్గుతుంది. ఇది పై ధరల పరిధిలో వర్తించే tickలో ఒక centలో వందో వంతు. $0.99 వద్ద ఉన్న stock, $1.01 వద్ద ఉన్న అదే stockతో పోలిస్తే వంద రెట్లు సూక్ష్మమైన gridపై quote అవుతుంది. ఈ మార్పు సరిహద్దు వద్దే జరుగుతుంది.

ఈ లెక్కలు quoted bid ask spreadsలో కనిపిస్తాయి. దిగువ panel అదే secondలో ఎక్కడైనా post అయిన అత్యధిక bid, అత్యల్ప offerను తీసుకుని, ఆ gapను పదిహేను నిమిషాల వ్యవధిలో సగటు చేస్తుంది. Book locked లేదా crossedగా ఉన్న secondsను తొలగిస్తారు. locked and crossed marketsలో అవి ఎలా ఉంటాయో వివరించాం.

క్వెరీపెన్నీ టిక్ మరియు కోట్ చేసిన గ్యాప్, బేసిస్ పాయింట్లలో
ప్రతి సంఖ్య వెనుక ఉన్న ఖచ్చితమైన SQL
WITH best_quote AS
(
    SELECT
        ticker,
        toStartOfSecond(sip_timestamp) AS sec,
        toFloat64(max(bid_price))      AS best_bid,
        toFloat64(min(ask_price))      AS best_ask
    FROM global_markets.cache_stocks_quotes
    WHERE ticker IN ('MSFT', 'AAPL', 'NVDA', 'KO', 'BAC', 'T', 'F')
      AND sip_timestamp >= '2026-06-17 14:00:00'
      AND sip_timestamp <  '2026-06-17 14:15:00'
      AND bid_price > 0
      AND ask_price > bid_price
    GROUP BY ticker, sec
    HAVING min(ask_price) > max(bid_price)
)
SELECT
    concat(ticker, ' ($', toString(round(avg((best_bid + best_ask) / 2), 0)), ')') AS name,
    round(avg(best_ask - best_bid) * 100, 2)                                       AS avg_spread_cents,
    round(10000 * 0.01 / avg((best_bid + best_ask) / 2), 2)                        AS one_cent_bps,
    round(10000 * avg(best_ask - best_bid) / avg((best_bid + best_ask) / 2), 2)    AS spread_bps,
    if(avg(best_ask - best_bid) <= 0.015, 'at or under $0.015', 'above $0.015')     AS tier
FROM best_quote
GROUP BY ticker
ORDER BY avg((best_bid + best_ask) / 2) DESC
Run this yourself

MSFT ($388)కు penny tick ధరలో 0.26 basis points. Average quoted gap 6.23 cents, అంటే 1.61 basis points. F ($14)కు penny 6.94 basis points. 1 cents quoted gap 6.94 basis pointsకు సమానం. తక్కువ ధర ఉన్న పేరు percentage screenపై విస్తృతంగా కనిపించవచ్చు. అయినప్పటికీ అది ఒక cent gapతో quote అవుతుండవచ్చు. Display grid అనుమతించే అత్యల్ప gap అదే. ఆ దశలో quoted spread market depthను కాకుండా tick పరిమాణాన్ని కొలుస్తుంది.

2024 సవరణ మరియు half cent tick

September 2024లో SEC Rule 612ను సవరించి రెండో quoting incrementను జోడించింది. గత evaluation periodలో time-weighted average quoted spread $0.015 లేదా అంతకంటే తక్కువగా ఉన్న NMS stockలు $0.005 incrementsలో quote అవుతాయి. మిగతావన్నీ penny gridలోనే ఉంటాయి. Evaluation నిర్ణీత schedule ప్రకారం మళ్లీ జరుగుతుంది. ప్రభావిత symbolsను ప్రతి roundలో తిరిగి ప్రచురిస్తారు. అందుకే ఈ పేజీ thresholdను మాత్రమే చెబుతుంది; symbols జాబితాను SECకు వదిలేస్తుంది.

$0.015 test ఏ పేర్లను ఎంపిక చేస్తుంది? ఇప్పటికే floor వద్ద ఉన్న పేర్లను. అంటే sessionలో ఎక్కువ భాగం quoted spread ఒక centకు సమానంగా లేదా దానికి చాలా దగ్గరగా ఉండే, అధికంగా trade అయ్యే stocksను. సాధారణంగా మూడు లేదా నాలుగు cents వెడల్పుగా quote అయ్యే stock ఈ testకు ఎప్పుడూ దగ్గరగా రాదు. పై panelలోని tier column, కొలిచిన windowకు threshold లెక్కలను వర్తింపజేస్తుంది. అందువల్ల అది illustration మాత్రమే, అధికారిక designation కాదు. SEC పూర్తి evaluation periodలో time-weighted averageను కొలుస్తుంది. ఒక sessionలోని పదిహేను నిమిషాలు దానికి సమానం కావు.

అదే rulemaking, protected quoteను access చేయడానికి exchange వసూలు చేయగల fee capను కూడా తగ్గించింది. $1.00 లేదా అంతకంటే ఎక్కువ ధర ఉన్న stocksకు ఇది shareకు $0.0010. ఈ రెండు సంఖ్యలు కలిసి పనిచేస్తాయి. Half cent quoting grid పక్కన tenth-of-a-cent access fee ఉంటే, fee tickలోని పెద్ద భాగాన్ని వినియోగించదు.

ఈ amendment quotingను నియంత్రిస్తుంది. Execution prices గురించి పైవన్నీ దీనివల్ల మారవు. Quoteలోపల జరిగే off-exchange fill ఇప్పటికీ మరింత సూక్ష్మమైన increment వద్ద land కావచ్చు.

Invalid increment కారణంగా limit order ఎందుకు తిరస్కరించబడుతుంది

$47.3215 వద్ద ఉన్న limit orderను accept చేయమని brokerను కోరడం, rule అనుమతించని ధరను accept చేయమని కోరడమే. అందువల్ల order invalid price increment సందేశంతో తిరిగి రావచ్చు. సంస్థను బట్టి అది సమీపంలోని చట్టబద్ధమైన tickకు round కావచ్చు. $1.00 boundary order ధరకు వర్తిస్తుంది; stock చివరి sale ధరకు కాదు. కాబట్టి $0.4732 వద్ద order $0.0001 gridపై చట్టబద్ధమైనది. $0.47325 మాత్రం చట్టబద్ధం కాదు.

Trade మరో వైపు కూడా ఇదే విధానం కనిపిస్తుంది. Wholesaler మిమ్మల్ని $47.3218 వద్ద fill చేసినప్పుడు, మీ ధరకు మరియు తన ధరకు మధ్య ఉన్న centలోని భాగాన్ని తన వద్ద ఉంచుతుంది. how market makers make moneyలో ఆ భాగం ఎక్కడికి వెళ్తుందో వివరించాం.

తరచుగా అడిగే ప్రశ్నలు

Sub-penny rule అంటే ఏమిటి?

ఇది Regulation NMSలోని Rule 612. $1.00 లేదా అంతకంటే ఎక్కువ ధర ఉన్న NMS stockకు $0.01 కంటే సూక్ష్మమైన incrementలో, అలాగే $1.00 కంటే తక్కువ ధర ఉన్న stockకు $0.0001 కంటే సూక్ష్మమైన incrementలో ఏ exchange, alternative trading system, broker లేదా vendor order లేదా quoteను display చేయడాన్ని లేదా accept చేయడాన్ని ఈ rule నిరోధిస్తుంది.

నా stock order నాలుగు decimal places ఉన్న ధర వద్ద ఎందుకు fill అయింది?

ఈ rule quotes, ordersను నియంత్రిస్తుంది; executionsను కాదు. మీ orderను national best bid and offerలోపల fill చేసే off-exchange market maker, quote కంటే centలో కొంత భాగం మెరుగైన ధర వద్ద execute చేయవచ్చు. Brokerలు price improvementగా report చేసేది అదే తేడా.

Invalid price increment కారణంగా నా limit order ఎందుకు తిరస్కరించబడింది?

మీ limit price, ఆ ధర స్థాయిలో Rule 612 అనుమతించే దానికంటే సూక్ష్మమైన incrementను ఉపయోగించింది. $1.00 లేదా అంతకంటే ఎక్కువ ధర ఉన్న orderకు ఒక cent కంటే సూక్ష్మమైన increment, లేదా $1.00 కంటే తక్కువ ధర ఉన్న orderకు $0.0001 కంటే సూక్ష్మమైన increment ఉపయోగించబడింది. Orderను చట్టబద్ధమైన incrementలో మళ్లీ నమోదు చేస్తే rejection తొలగుతుంది.

2024 SEC tick size amendmentలో ఏమి మారింది?

గత evaluation periodలో time-weighted average quoted spread $0.015 లేదా అంతకంటే తక్కువగా ఉన్న NMS stocksకు $0.005 quoting incrementను ఇది జోడించింది. ఈ thresholdకు వెలుపల ఉన్న stocks whole centsలోనే quote అవుతాయి. ఈ amendment execution pricesను కాకుండా quoting incrementsను నియంత్రిస్తుంది.


ఇక్కడి ప్రతి panelను రూపొందించిన SQLతో అందిస్తున్నాం. ప్రతి లెక్క ఎలా తీసుకున్నారో చూడటానికి ఒక panelను expand చేయండి. Strasmore terminalలో ఏ symbolకైనా, ఏ windowకైనా sub-penny print share మరియు average quoted spreadను కొలవచ్చు.

#reg nms#rule 612#tick size#price improvement#limit orders