วิธีเลือกหุ้น Day Trade —
Day Trade หุ้น

วิธีเลือกหุ้น Day Trade Volume Volatility Gap Scanner Momentum Technical Analysis Price Action Risk Management Position Sizing Stop Loss
| Criteria | เกณฑ์ขั้นต่ำ | เกณฑ์ดี | เกณฑ์ดีมาก | วิธีตรวจ |
|---|---|---|---|---|
| Volume | > 1.5x avg | > 3x avg | > 5x avg | Volume / SMA(20) |
| ATR % | > 2% | > 3% | > 5% | ATR(14) / Price |
| Gap % | > 1% | > 3% | > 5% | Open vs Prev Close |
| Spread | < 0.5% | < 0.2% | < 0.1% | Ask - Bid / Mid |
| Float | < 100M shares | < 50M | < 20M | Free float data |
| News | มี Catalyst | งบ/M&A | Breaking news | News feed |
Stock Screening
# === Day Trade Stock Screener ===
from dataclasses import dataclass
import numpy as np
@dataclass
class StockCandidate:
symbol: str
price: float
volume: int
avg_volume: int
atr_pct: float
gap_pct: float
spread_pct: float
catalyst: str
score: int
def screen_stocks(candidates):
results = []
for c in candidates:
score = 0
vol_ratio = c.volume / c.avg_volume
if vol_ratio > 5: score += 3
elif vol_ratio > 3: score += 2
elif vol_ratio > 1.5: score += 1
if c.atr_pct > 5: score += 3
elif c.atr_pct > 3: score += 2
elif c.atr_pct > 2: score += 1
if abs(c.gap_pct) > 5: score += 3
elif abs(c.gap_pct) > 3: score += 2
elif abs(c.gap_pct) > 1: score += 1
if c.spread_pct < 0.1: score += 2
elif c.spread_pct < 0.2: score += 1
if c.catalyst: score += 2
c.score = score
results.append(c)
return sorted(results, key=lambda x: x.score, reverse=True)
candidates = [
StockCandidate("AAA", 25.50, 15000000, 3000000, 4.2, 5.5, 0.08, "Q3 earnings beat", 0),
StockCandidate("BBB", 120.00, 8000000, 2000000, 3.1, 2.8, 0.05, "New product launch", 0),
StockCandidate("CCC", 8.50, 50000000, 10000000, 8.5, -7.2, 0.12, "CEO resignation", 0),
StockCandidate("DDD", 45.00, 5000000, 4000000, 1.8, 0.5, 0.04, "", 0),
StockCandidate("EEE", 180.00, 3000000, 500000, 5.2, 4.1, 0.03, "FDA approval", 0),
]
screened = screen_stocks(candidates)
print("=== Day Trade Candidates (Ranked) ===")
for s in screened:
vol_ratio = s.volume / s.avg_volume
print(f" [{s.symbol}] Score: {s.score}/14 | Price: {s.price}")
print(f" Vol: {vol_ratio:.1f}x avg | ATR: {s.atr_pct}% | Gap: {s.gap_pct:+.1f}%")
print(f" Spread: {s.spread_pct}% | Catalyst: {s.catalyst or 'None'}")
Entry Strategy
# === Day Trade Entry Strategies ===
@dataclass
class EntryStrategy:
name: str
setup: str
entry: str
stop_loss: str
target: str
win_rate: str
risk_reward: str
strategies = [
EntryStrategy("Opening Range Breakout", "First 15 min range (ORB)",
"Break above/below ORB high/low with volume",
"Opposite side of ORB", "1.5-2x ORB range",
"45-55%", "1:2"),
EntryStrategy("Gap and Go", "Gap up > 3% with volume",
"Break above pre-market high",
"Below gap fill level", "Equal to gap size",
"50-60%", "1:1.5"),
EntryStrategy("VWAP Bounce", "Price pulls back to VWAP in uptrend",
"Bullish candle at VWAP + volume",
"Below VWAP", "Previous high or 2x risk",
"55-65%", "1:2"),
EntryStrategy("Red to Green", "Stock opens red, reverses to green",
"Break above previous close with volume",
"Below session low", "Morning high",
"50-55%", "1:2"),
EntryStrategy("Momentum Scalp", "Strong momentum + volume surge",
"Pull back 1-2 candles in 1-min chart",
"Below pullback low", "New high of move",
"45-50%", "1:1.5"),
]
print("=== Entry Strategies ===")
for s in strategies:
print(f" [{s.name}]")
print(f" Setup: {s.setup}")
print(f" Entry: {s.entry}")
print(f" SL: {s.stop_loss} | TP: {s.target}")
print(f" Win: {s.win_rate} | R:R: {s.risk_reward}")
Risk Management
# === Position Sizing and Risk ===
def position_size(account, risk_pct, entry, stop_loss):
risk_amount = account * (risk_pct / 100)
risk_per_share = abs(entry - stop_loss)
if risk_per_share == 0:
return 0
shares = int(risk_amount / risk_per_share)
position_value = shares * entry
return shares, position_value, risk_amount
# Example calculations
account = 100000 # 100,000 THB
risk_pct = 1.0 # 1% risk
trades = [
("AAA", 25.50, 24.80),
("BBB", 120.00, 118.00),
("CCC", 8.50, 8.00),
("EEE", 180.00, 176.00),
]
print("=== Position Sizing (Account: 100,000 THB, Risk: 1%) ===")
for symbol, entry, sl in trades:
shares, value, risk = position_size(account, risk_pct, entry, sl)
pct_of_account = (value / account) * 100
print(f" [{symbol}] Entry: {entry} | SL: {sl}")
print(f" Shares: {shares} | Value: {value:,.0f} THB ({pct_of_account:.0f}% of account)")
print(f" Risk: {risk:,.0f} THB | Risk/Share: {abs(entry-sl):.2f}")
# Daily Rules
rules = {
"Max Risk/Trade": "1% of account (1,000 THB for 100K account)",
"Max Daily Loss": "3% of account (3,000 THB) — stop trading",
"Max Open Positions": "3-5 positions at a time",
"Max Position Size": "25% of account per position",
"Revenge Trade": "ห้าม — หยุด 30 นาทีหลังเสีย",
"News Time": "ไม่เทรด 5 นาทีก่อน/หลังข่าวสำคัญ",
"First 5 min": "ดูเฉยๆ ไม่เทรด ให้ตลาดเซ็ตตัวก่อน",
"Last 30 min": "ปิด Position ทั้งหมดก่อนตลาดปิด",
}
print(f"\n\nDaily Trading Rules:")
for k, v in rules.items():
print(f" [{k}]: {v}")
เคล็ดลับ
- Volume: Volume คือ King ของ Day Trade ไม่มี Volume ไม่เทรด
- Scan: สแกนหุ้นก่อนตลาดเปิดทุกวัน เตรียม Watchlist 5-10 ตัว
- Risk: ไม่เกิน 1% ต่อ Trade ตั้ง Stop Loss ก่อน Entry ทุกครั้ง
- Journal: จดบันทึกทุก Trade วิเคราะห์ทุกสัปดาห์
- Discipline: ทำตามแผน ไม่เทรดอารมณ์ หยุดเมื่อถึง Max Loss
ข้อควรรู้สำหรับนักลงทุนไทย ปี 2026

การลงทุนในสินทรัพย์ดิจิทัลและตลาดการเงินต้องเข้าใจความเสี่ยง สิ่งสำคัญที่สุดคือ การจัดการความเสี่ยง ไม่ลงทุนมากกว่าที่พร้อมจะเสีย กระจายพอร์ตลงทุนในสินทรัพย์หลายประเภท ตั้ง Stop Loss ทุกครั้ง และไม่ใช้ Leverage สูงเกินไป
ในประเทศไทย กลต กำหนดกรอบกฎหมายชัดเจนสำหรับ Digital Assets ผู้ให้บริการต้องได้รับใบอนุญาต นักลงทุนต้องทำ KYC และเสียภาษี 15% จากกำไร แนะนำให้ใช้แพลตฟอร์มที่ได้รับอนุญาตจาก กลต เท่านั้น เช่น Bitkub Satang Pro หรือ Zipmex
เนื้อหาเกี่ยวข้อง — SonarQube Analysis Cloud Migration Strategy
สำหรับ Forex ต้องเลือก Broker ที่มี Regulation จากหน่วยงานที่น่าเชื่อถือ เช่น FCA, ASIC, CySEC เริ่มต้นด้วย Demo Account ก่อน เรียนรู้ Technical Analysis และ Fundamental Analysis ให้เข้าใจ และมีแผนการเทรดที่ชัดเจน ไม่เทรดตามอารมณ์
แนะนำเพิ่มเติม — บทวิเคราะห์จาก XM Signal
เปรียบเทียบข้อดีและข้อเสีย
จากตารางเปรียบเทียบจะเห็นว่าข้อดีมีมากกว่าข้อเสียอย่างชัดเจน โดยเฉพาะในแง่ของประสิทธิภาพและความสามารถในการ Scale สำหรับข้อเสียส่วนใหญ่สามารถแก้ไขได้ด้วยการเรียนรู้อย่างเป็นระบบและวางแผนทรัพยากรให้เหมาะสม
เนื้อหาเกี่ยวข้อง — อ่านต่อ: โอนเงินจากกสิกรไปไทยพาณิชย์เงินไม่เข้า —
Day Trade คืออะไร
ซื้อขายภายในวัน ไม่ถือข้ามคืน Volume สูง Spread แคบ Volatility Chart 1 5 15 นาที Technical Analysis Stop Loss Risk 1% Discipline
เลือกหุ้นอย่างไร
Volume 1.5x avg ATR 2% Gap News Catalyst Support Resistance Sector Momentum Spread แคบ Float ต่ำ ผันผวนมาก Scanner TradingView
แนะนำเพิ่มเติม — SiamCafeBook
เนื้อหาเกี่ยวข้อง — อ่านต่อ: Snowflake Snowpark Monitoring และ Alerting
ใช้ Scanner อะไร
TradingView Screener ฟรี Volume Gap Finviz Pre-market Trade Ideas Real-time Jitta หุ้นไทย Settrade Streaming Alert Volume Spike Break Level
Risk Management ทำอย่างไร
1% ต่อ Trade Stop Loss ก่อน Entry Position Sizing ATR Max Daily Loss 3% หยุด 3-5 ตัว Revenge Trade ห้าม Journal วิเคราะห์ทุกสัปดาห์
เนื้อหาเกี่ยวข้อง — Java GraalVM Hexagonal Architecture
สรุป
วิธีเลือกหุ้น Day Trade Volume Volatility Gap Scanner Momentum Entry Strategy ORB VWAP Risk Management Position Sizing Stop Loss Journal Discipline





