Day Trading Strategy: 4 Setup Wey Traders Run
Four day trading strategy, each one with setup, trigger, invalidation and exit, Lagos time for di US open, relative volume as filter, plus wetin PDT rule mean.
Day trading strategy na di written plan wey you carry enter one session: which setup you dey wait for, wetin go trigger di entry, which price go tell you say di idea dead, and where you go comot. Four of dem dey cover almost everything retail traders dey run on US stock, and relative volume dey gate all four. If you dey trade from Lagos, di US regular session dey open 2:30 p.m. WAT as of October 2026, so na evening work for your side, no be morning work.
Di US session for Lagos clock
Regular session for US stock dey run 9:30 a.m. to 4:00 p.m. New York time. For Lagos, wey be UTC+1, dat one na 2:30 p.m. to 9:00 p.m. WAT while US dey summer time, and di first hour dey end 3:30 p.m. WAT. Wen US clock fall back on 1 November 2026, everything shift one hour: open go be 3:30 p.m. WAT and close 10:00 p.m. WAT. Di premarket and after hours window move along with am, and our premarket and after hours trading page carry di full clock.
Volume no spread flat across dat window. Di panel below chop di regular session into 30 minute block and show wetin percent of di whole day volume each block dey carry, for SPY, AAPL and KO.
| et_time | spy_pct | aapl_pct | ko_pct |
|---|---|---|---|
| 09:30 | 11.4 | 16.9 | 15.3 |
| 10:00 | 8.4 | 9.6 | 8.9 |
| 10:30 | 6.9 | 7.7 | 8 |
| 11:00 | 6.7 | 7 | 7 |
| 11:30 | 5.9 | 6.5 | 5.7 |
| 12:00 | 5.3 | 5.7 | 5 |
| 12:30 | 4.5 | 5.1 | 4.5 |
| 13:00 | 4.9 | 4.9 | 4.2 |
| 13:30 | 4.2 | 4.7 | 4.2 |
| 14:00 | 5.5 | 4.9 | 5 |
| 14:30 | 6.2 | 5.3 | 5.4 |
| 15:00 | 7.6 | 6.3 | 6.4 |
| 15:30 | 22.5 | 15.5 | 20.5 |
The exact SQL behind every number
WITH bars AS (
SELECT
ticker,
formatDateTime(
toStartOfInterval(toTimeZone(window_start, 'America/New_York'), INTERVAL 30 MINUTE),
'%H:%i'
) AS et_time,
toFloat64(sum(volume)) AS vol
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'AAPL', 'KO')
AND window_start >= today() - 120
AND window_start < today() - 1
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, et_time
),
shares AS (
SELECT
ticker,
et_time,
100 * vol / sum(vol) OVER (PARTITION BY ticker) AS pct
FROM bars
)
SELECT
et_time,
round(sumIf(pct, ticker = 'SPY'), 1) AS spy_pct,
round(sumIf(pct, ticker = 'AAPL'), 1) AS aapl_pct,
round(sumIf(pct, ticker = 'KO'), 1) AS ko_pct
FROM shares
GROUP BY et_time
ORDER BY et_timeFor SPY, di first 30 minute after di open carry 11.4% of di whole regular session volume, AAPL carry 16.9%, and di last 30 minute before di close carry 22.5% for SPY and 20.5% for KO. Di 12:30 ET block, wey sit for di middle of di session, drop reach 4.5% for SPY. Dat shape dey decide which strategy fit which Lagos hour: di 2:30 p.m. hour and di last hour na where di participation dey, and di quiet patch for di middle na another kind of market entirely.
Relative volume na di gate for all four setup
Relative volume, wey people dey shorten to RVOL, na today volume divided by di average daily volume over di last 20 session. 1.0 mean di stock dey trade exactly like e normally dey trade. Under 1.0 mean fewer hand dey for di tape than usual, and a chart pattern wey form on dat kind tape dey break anyhow. Di panel count every session for eight household name over di last trading year and sort dem into RVOL bucket.
| rvol_bucket | sessions | share_pct |
|---|---|---|
| under 0.7 | 347 | 17.1 |
| 0.7 to 1.0 | 903 | 44.4 |
| 1.0 to 1.5 | 619 | 30.5 |
| 1.5 to 2.0 | 101 | 5 |
| 2.0 and up | 62 | 3.1 |
The exact SQL behind every number
WITH dedup AS (
SELECT
ticker,
date,
toFloat64(max(volume)) AS vol
FROM global_markets.stocks_daily_aggs
WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'SPY', 'KO', 'AMD', 'F', 'T')
AND date >= today() - 420
AND date < today()
GROUP BY ticker, date
),
windowed AS (
SELECT
ticker,
date,
vol,
avg(vol) OVER (
PARTITION BY ticker ORDER BY date
ROWS BETWEEN 20 PRECEDING AND 1 PRECEDING
) AS base_vol
FROM dedup
),
rv AS (
SELECT vol / base_vol AS rvol
FROM windowed
WHERE base_vol > 0
AND date >= today() - 370
)
SELECT
multiIf(rvol < 0.7, 'under 0.7',
rvol < 1.0, '0.7 to 1.0',
rvol < 1.5, '1.0 to 1.5',
rvol < 2.0, '1.5 to 2.0',
'2.0 and up') AS rvol_bucket,
count() AS sessions,
round(100 * count() / (SELECT count() FROM rv), 1) AS share_pct
FROM rv
GROUP BY rvol_bucket
ORDER BY min(rvol)17.1% of di session land inside di quiet bucket, under 0.7, and only 3.1% of dem, 62 session, reach di top bucket of 2.0 and up. Dat na why RVOL dey work as a gate: di day wey a setup get plenty participant behind am na di minority, no be di default. One simple grid: 1.5 and above na tradeable, 1.0 to 1.5 na watch only, under 1.0 no be setup at all, e just be a drawing. If you dey still picking which name to follow, our best stocks for day trading page show how we rank di liquid ones.
Four day trading strategy, setup to exit
Every one of dem get di same four part: setup (di condition), trigger (di thing wey put you inside), invalidation (di price wey kill di idea), and exit. Each one also pass through di RVOL gate first.
1. Trend continuation from one level
- Setup: di stock dey move one direction since di open, and e come back touch a level wey e already respect, like yesterday high or di 52 week line, with RVOL above 1.5.
- Trigger: di first candle wey close back inside di trend direction after di touch.
- Invalidation: a close on di wrong side of dat same level. Di level na di whole idea, so once e gone, di trade no longer exist.
- Exit: di prior swing extreme for di trend direction, or time based if di move no follow inside di first few minute.
Di level wey plenty eye dey watch dey carry di most volume around am, and our 52 week high and low page show how we count dem.
2. Fade back to VWAP
VWAP na di volume weighted average price for di session, meaning di average price wey every share wey change hand actually pay. Plenty intraday trader dey treat am as di fair value line of di day. Di fade dey wait for price to stretch far from dat line on thin participation, then dey enter facing VWAP.
- Setup: price stretch well away from VWAP while RVOL dey under 1.5, and no fresh headline dey for di tape.
- Trigger: a candle wey fail to make a new extreme, with price turning back toward VWAP.
- Invalidation: a new extreme beyond di stretch point.
- Exit: VWAP itself, or di halfway mark if di tape thin out.
| ticker | crossed_vwap_pct | closed_above_vwap_pct |
|---|---|---|
| KO | 73.2 | 46 |
| SPY | 72.1 | 56.9 |
| MSFT | 70.7 | 47.8 |
| NVDA | 70.7 | 46.7 |
| AAPL | 69.9 | 56.2 |
| AMD | 68.1 | 56.2 |
The exact SQL behind every number
WITH dedup AS (
SELECT
ticker,
date,
toFloat64(any(open)) AS o,
toFloat64(any(close)) AS c,
toFloat64(any(vwap)) AS vw
FROM global_markets.stocks_daily_aggs
WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'SPY', 'KO', 'AMD')
AND date >= today() - 400
AND date < today()
GROUP BY ticker, date
)
SELECT
ticker,
round(100 * countIf((o > vw AND c < vw) OR (o < vw AND c > vw)) / count(), 1) AS crossed_vwap_pct,
round(100 * countIf(c > vw) / count(), 1) AS closed_above_vwap_pct
FROM dedup
WHERE vw > 0 AND o > 0
GROUP BY ticker
ORDER BY crossed_vwap_pct DESCOver dat window, KO cross pass everybody: 73.2% of im session open one side of VWAP and close di other side, while AMD do di same thing for 68.1% of session. Closing above VWAP happen for 46% of KO session, wey dey sit near coin flip. Dat na just wetin di daily bar dey show: price dey spend time on both side of dat line almost every day, and di direction alone no carry any promise. If you wan anchor di line from one event instead of di open, see anchored VWAP.
3. Gap continuation
A gap na wen di open print far from yesterday close. Di continuation plan dey wait for di stock to hold di gap direction for di first minutes, then join di move.
- Setup: open at least 2% away from yesterday close, with RVOL above 1.5 for di opening block.
- Trigger: price reclaim or hold di first five minute extreme for di gap direction.
- Invalidation: price fill back half di gap.
- Exit: take part at di prior day extreme, trail di rest.
| gap_bucket | sessions | median_rvol | median_range_pct |
|---|---|---|---|
| under 0.5% | 1043 | 0.89 | 1.68 |
| 0.5% to 1% | 485 | 0.92 | 2.08 |
| 1% to 2% | 317 | 0.97 | 2.63 |
| 2% to 4% | 142 | 0.97 | 3.56 |
| 4% and up | 45 | 1.38 | 5.2 |
The exact SQL behind every number
WITH dedup AS (
SELECT
ticker,
date,
toFloat64(any(open)) AS o,
toFloat64(any(close)) AS c,
toFloat64(any(high)) AS h,
toFloat64(any(low)) AS l,
toFloat64(max(volume)) AS vol
FROM global_markets.stocks_daily_aggs
WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'SPY', 'KO', 'AMD', 'F', 'T')
AND date >= today() - 420
AND date < today()
GROUP BY ticker, date
),
windowed AS (
SELECT
ticker,
date,
o, c, h, l, vol,
lagInFrame(c, 1) OVER (
PARTITION BY ticker ORDER BY date
ROWS BETWEEN 1 PRECEDING AND CURRENT ROW
) AS prev_close,
avg(vol) OVER (
PARTITION BY ticker ORDER BY date
ROWS BETWEEN 20 PRECEDING AND 1 PRECEDING
) AS base_vol
FROM dedup
),
gaps AS (
SELECT
ticker,
date,
abs(o / prev_close - 1) * 100 AS gap_pct,
vol / base_vol AS rvol,
(h - l) / o * 100 AS range_pct
FROM windowed
WHERE prev_close > 0
AND base_vol > 0
AND o > 0
AND date >= today() - 370
)
SELECT
multiIf(gap_pct < 0.5, 'under 0.5%',
gap_pct < 1.0, '0.5% to 1%',
gap_pct < 2.0, '1% to 2%',
gap_pct < 4.0, '2% to 4%',
'4% and up') AS gap_bucket,
count() AS sessions,
round(quantileDeterministic(0.5)(rvol, cityHash64(ticker, date)), 2) AS median_rvol,
round(quantileDeterministic(0.5)(range_pct, cityHash64(ticker, date)), 2) AS median_range_pct
FROM gaps
GROUP BY gap_bucket
ORDER BY min(gap_pct)Di quiet bucket, under 0.5%, carry median RVOL of 0.89 and median high to low range of 1.68%. Di widest bucket, 4% and up, carry median RVOL of 1.38 and median range of 5.2%, from 45 session. Gap size and volume dey move together, and di room wey you get to work with dey wide inside di big bucket. Dat wide room cut both side: your invalidation price go sit far from your entry, wey mean your share count go small.
4. Range fade for di midday lull
Between around 5:00 p.m. and 7:00 p.m. WAT while US dey summer time, wey be di middle block for di first panel, volume dey sit at di lowest part of di day and price dey often grind inside one narrow range.
- Setup: at least two touch of di same high and di same low after 12:00 ET, with RVOL under 1.0.
- Trigger: a rejection candle at di edge of di range.
- Invalidation: one close outside di range with volume picking up.
- Exit: di opposite edge, or di middle of di range.
Dis one dey punish impatience pass di other three, as di same thin tape wey build di range na di one wey make any break hard to confirm.
How to size am with fixed fractional
Fixed fractional sizing mean you dey risk di same small percent of your account on every trade, no matter how sweet di setup look. Take a hypothetical: $2,000 account, 1% risk na $20 for one trade. If your invalidation price sit 25 cent away from your entry, $20 divided by $0.25 na 80 share, and dat 80 na di ceiling for dat trade. Now bring di gap setup: inside di 4% and up bucket di median day range na 5.2%, so your stop distance go wide, and di same $20 go buy you far fewer share. Di stop distance dey decide di size, no be how confident you feel.
Di PDT rule go meet you first
If your broker account na US margin account under $25,000, di fourth day trade inside five business day go flag you as a pattern day trader, and di account go block from opening new day trade until you fund am above $25,000 or di flag clear. A cash account no carry dat count, but settlement dey tie your money for a day after each sale, so di number of round trip you fit run per week still get ceiling. Plenty Nigerian reader dey meet dis wall before dem ever meet a bad setup. Full mechanics dey for pattern day trader rule.
Data notes
- RVOL for dis page na daily volume divided by di average daily volume of di 20 session before am, from stored daily bar. Intraday RVOL, wey compare a stock against di same clock time on normal day, dey sharper for live trading.
- Di clock panel group di tape by New York clock time, so di WAT hour for di prose shift by one wen US clock change for November and March.
- Di newest one or two session may still dey land, so every window here stop before today.
FAQ
Wetin time di US stock market dey open for Lagos time?
2:30 p.m. WAT while US dey summer time, and 3:30 p.m. WAT after dem fall back, with di close landing 9:00 p.m. or 10:00 p.m. WAT. Di first 30 minute alone carry 11.4% of SPY whole regular session volume.
Which relative volume number good for day trading?
1.0 na normal. Setup wey dey run at 1.5 and above get more hand behind dem, and under 1.0 na where pattern dey fail quiet quiet. For di session we count, only 3.1% reach 2.0 and up.
How much money I need before I fit day trade US stock?
Any amount fit open a position, but a US margin account under $25,000 dey capped at three day trade inside five business day before di pattern day trader flag land on di fourth one. Dat threshold dey bite most small account before any strategy question even enter.
Which setup fit di midday lull?
Di range fade, with small size. For SPY, di 12:30 ET block carry only 4.5% of di day volume, and any break wey show up inside dat block dey come with di day thinnest tape behind am.
Day trading strategy dey guarantee profit?
No. Nothing here na advice or prediction. Di four plan above na structure for making decision, and di fixed fractional rule na wetin keep an account alive long enough for di learning to happen.
Every panel on dis page carry di exact SQL under am, open any one make you see how we count di number. If you wan run di same count for your own ticker and your own window, ask di question in plain English on di Strasmore terminal.