
Chiến lược này kết hợp nhiều chỉ số kỹ thuật và phân tích hành vi giá để xác định sự thay đổi cấu trúc thị trường và sử dụng xu hướng để giao dịch. Cốt lõi của chiến lược bao gồm: Đường trung bình di chuyển chỉ số 20 và 200 ngày (EMA) để xác định xu hướng, chỉ số tương đối mạnh (RSI) và chỉ số kênh hàng hóa (CCI) xác nhận động lực, khái niệm cấu trúc thị trường (SMC) để xác định ngưỡng kháng cự hỗ trợ quan trọng, cấu trúc đột phá (BOS) xác nhận xu hướng tiếp tục, và các tín hiệu tăng cường hình thức hình thức như ngâm hình / đường nón.
||
The strategy combines multiple technical indicators and price action analysis to identify market structure changes and capitalize on trends. Key components include: 20-day and 200-day Exponential Moving Averages (EMA) for trend direction, Relative Strength Index (RSI) and Commodity Channel Index (CCI) for momentum confirmation, Smart Money Concepts (SMC) for identifying key support/resistance levels, Break of Structure (BOS) for trend continuation confirmation, and engulfing/hammer candlestick patterns to enhance entry signals. Finally, it uses ATR-based trailing stops for dynamic risk management.
||
||
||
||
Chiến lược này xây dựng một hệ thống giao dịch bán lẻ có logic cấp tổ chức bằng cách kết hợp các chỉ số kỹ thuật truyền thống (SMC + EMA) với các kỹ thuật định lượng hiện đại (ATR tự điều chỉnh rủi ro). Giá trị cốt lõi của nó là: 1 khung xác minh đa điều kiện nghiêm ngặt 2 phù hợp với lý thuyết cấu trúc vi mô thị trường 3 cơ chế điều chỉnh rủi ro động.
||
This strategy combines traditional technical indicators (SMC+EMA) with modern quant techniques (ATR-adaptive risk control) to create an institutional-grade retail trading system. Key value propositions include: ① Rigorous multi-condition verification ② Alignment with market microstructure theory ③ Dynamic risk adjustment. Optimal application is during early trend phases (confirmed by BOS), avoiding high-uncertainty periods around major economic releases.
/*backtest
start: 2025-04-22 00:00:00
end: 2025-04-23 00:00:00
period: 2m
basePeriod: 2m
exchanges: [{"eid":"Futures_Binance","currency":"DOGE_USDT"}]
*/
//@version=6
strategy("SMC + EMA + Candles + RSI/CCI + BOS + Trailing", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// === EMAs
ema20 = ta.ema(close, 20)
ema200 = ta.ema(close, 200)
plot(ema20, color=color.orange, linewidth=1)
plot(ema200, color=color.blue, linewidth=1)
// === RSI and CCI
rsi = ta.rsi(close, 14)
cci = ta.cci(close, 20)
rsi_ok_long = rsi > 50
rsi_ok_short = rsi < 50
cci_ok_long = cci > 0
cci_ok_short = cci < 0
// === ATR
atr = ta.atr(14)
tp_mult = 2.0
sl_mult = 1.0
trail_offset = atr * 1.0
trail_step = atr * 0.5
// === Price Action Candles
bull_engulf = close[1] < open[1] and close > open and close > open[1] and open <= close[1]
bear_engulf = close[1] > open[1] and close < open and close < open[1] and open >= close[1]
bull_pinbar = (high - math.max(open, close)) > 2 * (math.min(open, close) - low)
bear_pinbar = (math.min(open, close) - low) > 2 * (high - math.max(open, close))
doji = math.abs(close - open) <= (high - low) * 0.1
bull_marubozu = close > open and high - close < atr * 0.1 and open - low < atr * 0.1
bear_marubozu = open > close and high - open < atr * 0.1 and close - low < atr * 0.1
bull_candle = bull_engulf or bull_pinbar or bull_marubozu or doji
bear_candle = bear_engulf or bear_pinbar or bear_marubozu or doji
// === Smart Money Concept (SMC) Zones
swing_high = ta.pivothigh(high, 10, 10)
swing_low = ta.pivotlow(low, 10, 10)
var float supply_zone = na
var float demand_zone = na
if not na(swing_high)
supply_zone := swing_high
if not na(swing_low)
demand_zone := swing_low
// === Break of Structure (BOS) Confirmation
bos_long = ta.crossover(close, supply_zone)
bos_short = ta.crossunder(close, demand_zone)
// === Proximity to Structure Zones
near_demand = not na(demand_zone) and close >= demand_zone * 0.98 and close <= demand_zone * 1.01
near_supply = not na(supply_zone) and close <= supply_zone * 1.02 and close >= supply_zone * 0.99
// === Long Entry Condition
longCondition = (close > ema20 or close > ema200) and near_demand and bull_candle and bos_long and rsi_ok_long and cci_ok_long
// === Short Entry Condition
shortCondition = (close < ema20 or close < ema200) and near_supply and bear_candle and bos_short and rsi_ok_short and cci_ok_short
// === Entry and Exit (with Trailing Stop)
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("Long Exit", from_entry="Long", trail_points=trail_offset, trail_offset=trail_step)
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("Short Exit", from_entry="Short", trail_points=trail_offset, trail_offset=trail_step)
// === Plotting Structure Zones
plot(supply_zone, title="Supply", color=color.red, style=plot.style_linebr, linewidth=1)
plot(demand_zone, title="Demand", color=color.green, style=plot.style_linebr, linewidth=1)
plot(rsi, title="RSI", color=color.fuchsia)
plot(cci, title="CCI", color=color.teal)