
Chiến lược này là một hệ thống giao dịch tổng hợp kết hợp các khái niệm như ICT (nhà giao dịch nội bộ), hình thức ăn và phân tích khu vực cung cầu. Nó xác định các cơ hội giao dịch có khả năng cao bằng cách phân tích cấu trúc thị trường đa chiều, kết hợp các chỉ số kỹ thuật và hành vi giá. Chiến lược này hoạt động trong khung thời gian 15 phút, sử dụng phương pháp dừng lỗ phần trăm để quản lý rủi ro.
Chiến lược này dựa trên 3 yếu tố chính:
Hệ thống sử dụng 10% số tiền cho mỗi giao dịch và đặt mức dừng lỗ 1.5% và mức dừng 3%, điều này cung cấp tỷ lệ lợi nhuận rủi ro 2: 1.
Đề xuất kiểm soát rủi ro:
Đây là một hệ thống giao dịch tổng hợp có cấu trúc tốt, cung cấp tín hiệu giao dịch đáng tin cậy thông qua phân tích đa chiều. Quản lý rủi ro của hệ thống là hợp lý, nhưng vẫn có chỗ để tối ưu hóa.
/*backtest
start: 2024-02-21 00:00:00
end: 2025-02-18 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("ICT + Engulfing + Supply & Demand", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// Input settings
timeframe = input.timeframe("15", title="Backtest Timeframe")
use_snd = input(true, title="Enable Supply & Demand Zones")
stopLossPerc = input(1.5, title="Stop Loss %")
takeProfitPerc = input(3, title="Take Profit %")
// Identify Engulfing Patterns
bullishEngulfing = (close[1] < open[1]) and (close > open) and (close > open[1]) and (open < close[1])
bearishEngulfing = (close[1] > open[1]) and (close < open) and (close < open[1]) and (open > close[1])
// Supply & Demand Zones (basic identification)
highestHigh = ta.highest(high, 20)
lowestLow = ta.lowest(low, 20)
supplyZone = use_snd ? highestHigh : na
demandZone = use_snd ? lowestLow : na
// Entry & Exit Conditions
longCondition = bullishEngulfing and close > demandZone
shortCondition = bearishEngulfing and close < supplyZone
// Stop-Loss & Take-Profit Calculation
longSL = close * (1 - stopLossPerc / 100)
longTP = close * (1 + takeProfitPerc / 100)
shortSL = close * (1 + stopLossPerc / 100)
shortTP = close * (1 - takeProfitPerc / 100)
// Execute trades
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("Long Exit", from_entry="Long", stop=longSL, limit=longTP)
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("Short Exit", from_entry="Short", stop=shortSL, limit=shortTP)
// Plot Supply & Demand Zones
plot(use_snd ? supplyZone : na, color=color.red, title="Supply Zone")
plot(use_snd ? demandZone : na, color=color.green, title="Demand Zone")