Bài viết gần đây
Trang chủ → Bài Viết → Mô hình nến nhấn chìm (Engulfing): Cách nhận biết & giao dịch chuẩn trong MT5
| Mô hình nến nhấn chìm (Engulfing): Cách nhận biết & giao dịch chuẩn trong MT5
Được viết bởi Đặng Trí Thanh vào ngày 01/09/2026 lúc 21:08 | 49 lượt xem
Đặng Trí Thanh
Giám đốc Công nghệ · DNT Digital · Hướng Nghiệp Dữ Liệu
Giảng dạy Khóa Kiến thức Giao dịch Forex MQL MT5, Lập trình MT5, Bot Auto Trading.
Mô hình nến nhấn chìm (Engulfing): Cách nhận biết & giao dịch chuẩn trong MT5

Mô hình nến nhấn chìm (Engulfing) là một trong những mô hình nến đảo chiều phổ biến và dễ nhận biết nhất trong phân tích kỹ thuật Forex. Nó xuất hiện khi một cây nến “nuốt trọn” toàn bộ thân của cây nến trước đó — cho thấy phe mua hoặc phe bán đang chiếm ưu thế đảo ngược.
Trong bài viết này, chúng ta sẽ tìm hiểu chi tiết về mô hình nến nhấn chìm: định nghĩa, cách nhận biết, quy ước màu khi giao dịch tại Việt Nam, cách kết hợp các giá trị cây nến, và cách lập trình tín hiệu này trong MQL5.
1. Mô hình nến nhấn chìm là gì?
Nến nhấn chìm (Engulfing Pattern) là mô hình gồm hai cây nến:
- Cây nến thứ nhất có thân nhỏ, thể hiện xu hướng hiện tại
- Cây nến thứ hai có thân lớn, bao trùm (nuốt) toàn bộ thân của cây nến thứ nhất
Khi cây nến thứ hai đóng cửa bao phủ toàn bộ thân nến trước, thị trường cho thấy sự đảo chiều tiềm năng.
1.1. Nến nhấn chìm tăng (Bullish Engulfing)
Là mô hình xuất hiện ở đáy của xu hướng giảm, báo hiệu khả năng đảo chiều lên:
- Nến 1: nến giảm (thân nhỏ)
- Nến 2: nến tăng (thân lớn, đóng cửa cao hơn mức mở cửa của nến 1 và mở cửa thấp hơn hoặc bằng đáy nến 1)
1.2. Nến nhấn chìm giảm (Bearish Engulfing)
Xuất hiện ở đỉnh của xu hướng tăng, báo hiệu đảo chiều xuống:
- Nến 1: nến tăng (thân nhỏ)
- Nến 2: nến giảm (thân lớn, đóng cửa thấp hơn mức mở cửa của nến 1)
2. Quy ước màu nến khi giao dịch tại Việt Nam
Quan trọng: Tại Việt Nam, nhiều sàn và phần mềm (bao gồm MT5 khi cài đặt theo tùy chọn VN) dùng quy ước đỏ = tăng, xanh = giảm (ngược với chuẩn phương Tây).
Vì vậy, trong bài giảng khóa Kiến thức Giao dịch Forex MQL MT5, giảng viên nhấn mạnh:
- Cặp nến tăng = Nến 1 XANH (giảm) + Nến 2 ĐỎ (tăng) → nến đỏ nuốt nến xanh → tín hiệu MUA
- Cặp nến giảm = Nến 1 ĐỎ (tăng) + Nến 2 XANH (giảm) → nến xanh nuốt nến đỏ → tín hiệu BÁN
| Mô hình | Nến 1 | Nến 2 | Ý nghĩa |
|---|---|---|---|
| Bullish Engulfing | Xanh (giảm) | Đỏ (tăng) | Tín hiệu MUA |
| Bearish Engulfing | Đỏ (tăng) | Xanh (giảm) | Tín hiệu BÁN |
3. 6 giá trị của cây nến (OHLC)
Để nhận biết chính xác nến nhấn chìm, bạn cần nắm 6 giá trị của mỗi cây nến:
| Giá trị | Ý nghĩa |
|---|---|
| Open | Giá mở cửa |
| High | Giá cao nhất |
| Low | Giá thấp nhất |
| Close | Giá đóng cửa |
| Tick Volume | Khối lượng tick |
| Real Volume | Khối lượng thực |
Trong MQL5, ta lấy các giá trị này bằng hàm iOpen, iHigh, iLow, iClose:
// Lấy 6 giá trị của nến hiện tại (shift = 1: nến vừa đóng)
int shift = 1;
double open = iOpen(_Symbol, _Period, shift);
double high = iHigh(_Symbol, _Period, shift);
double low = iLow(_Symbol, _Period, shift);
double close = iClose(_Symbol, _Period, shift);
Print("Open=", open, " High=", high, " Low=", low, " Close=", close);
4. Cách nhận biết nến nhấn chìm trong MQL5
Dựa vào 6 giá trị cây nến, ta có thể viết điều kiện kiểm tra mô hình nến nhấn chìm. Với quy ước đỏ = tăng, xanh = giảm:
4.1. Kiểm tra nến tăng / nến giảm
bool IsBullishCandle(int shift)
{
// Đỏ = tăng (theo quy ước VN): Close > Open
return iClose(_Symbol, _Period, shift) > iOpen(_Symbol, _Period, shift);
}
bool IsBearishCandle(int shift)
{
// Xanh = giảm: Close < Open
return iClose(_Symbol, _Period, shift) < iOpen(_Symbol, _Period, shift);
}
4.2. Kiểm tra nến nhấn chìm
// Bullish Engulfing: nến 1 xanh (giảm) + nến 2 đỏ (tăng) nuốt nến 1
bool IsBullishEngulfing()
{
int shift = 1; // nến vừa đóng
double o1 = iOpen(_Symbol, _Period, shift + 1);
double c1 = iClose(_Symbol, _Period, shift + 1);
double o2 = iOpen(_Symbol, _Period, shift);
double c2 = iClose(_Symbol, _Period, shift);
// Nến 1 giảm, nến 2 tăng, nến 2 nuốt toàn bộ thân nến 1
return (c1 < o1) && (c2 > o2)
&& (o2 <= c1) && (c2 >= o1);
}
// Bearish Engulfing: nến 1 đỏ (tăng) + nến 2 xanh (giảm) nuốt nến 1
bool IsBearishEngulfing()
{
int shift = 1;
double o1 = iOpen(_Symbol, _Period, shift + 1);
double c1 = iClose(_Symbol, _Period, shift + 1);
double o2 = iOpen(_Symbol, _Period, shift);
double c2 = iClose(_Symbol, _Period, shift);
return (c1 > o1) && (c2 < o2)
&& (o2 >= c1) && (c2 <= o1);
}
5. Lọc tín hiệu bằng khối lượng (Volume)
Mô hình nến nhấn chìm càng đáng tin khi đi kèm khối lượng tăng (volume spike) — cho thấy dòng tiền thực sự tham gia đảo chiều.
// Lấy Tick Volume nến hiện tại
long vol1 = iTickVolume(_Symbol, _Period, 2); // nến trước
long vol2 = iTickVolume(_Symbol, _Period, 1); // nến nhấn chìm
// Tín hiệu mạnh hơn khi volume nến nhấn chìm > 1.5 lần nến trước
bool volumeConfirm = (vol2 > vol1 * 1.5);
6. Ví dụ EA đầy đủ: Giao dịch theo nến nhấn chìm
Dưới đây là EA đơn giản vào lệnh khi gặp nến nhấn chìm có xác nhận:
//+------------------------------------------------------------------+
//| EngulfingEA.mq5 — Giao dịch theo mô hình nến nhấn chìm |
//+------------------------------------------------------------------+
#property strict
input double LotSize = 0.01;
input int StopLossPips = 30;
input int TakeProfitPips = 60;
int OnInit() { return INIT_SUCCEEDED; }
void OnDeinit(const int reason) {}
bool IsBullishEngulfing()
{
int shift = 1;
double o1 = iOpen(_Symbol, _Period, shift + 1);
double c1 = iClose(_Symbol, _Period, shift + 1);
double o2 = iOpen(_Symbol, _Period, shift);
double c2 = iClose(_Symbol, _Period, shift);
return (c1 < o1) && (c2 > o2) && (o2 <= c1) && (c2 >= o1);
}
bool IsBearishEngulfing()
{
int shift = 1;
double o1 = iOpen(_Symbol, _Period, shift + 1);
double c1 = iClose(_Symbol, _Period, shift + 1);
double o2 = iOpen(_Symbol, _Period, shift);
double c2 = iClose(_Symbol, _Period, shift);
return (c1 > o1) && (c2 < o2) && (o2 >= c1) && (c2 <= o1);
}
void OnTick()
{
static bool hasPosition = false;
// Kiểm tra lệnh đang mở
for(int i = 0; i < PositionsTotal(); i++)
{
if(PositionGetSymbol(i) == _Symbol)
{
hasPosition = true;
return;
}
}
hasPosition = false;
if(hasPosition) return;
double ask = SymbolInfoDouble(_Symbol, SYMBOL_ASK);
double bid = SymbolInfoDouble(_Symbol, SYMBOL_BID);
int digits = (int)SymbolInfoInteger(_Symbol, SYMBOL_DIGITS);
if(IsBullishEngulfing())
{
double sl = NormalizeDouble(bid - StopLossPips * 10 * _Point, digits);
double tp = NormalizeDouble(bid + TakeProfitPips * 10 * _Point, digits);
// Mở lệnh BUY
MqlTradeRequest req = {};
MqlTradeResult res = {};
req.action = TRADE_ACTION_DEAL;
req.symbol = _Symbol;
req.volume = LotSize;
req.type = ORDER_TYPE_BUY;
req.price = ask;
req.sl = sl;
req.tp = tp;
req.deviation = 10;
req.comment = "Bullish Engulfing";
OrderSend(req, res);
}
if(IsBearishEngulfing())
{
double sl = NormalizeDouble(ask + StopLossPips * 10 * _Point, digits);
double tp = NormalizeDouble(ask - TakeProfitPips * 10 * _Point, digits);
// Mở lệnh SELL
MqlTradeRequest req = {};
MqlTradeResult res = {};
req.action = TRADE_ACTION_DEAL;
req.symbol = _Symbol;
req.volume = LotSize;
req.type = ORDER_TYPE_SELL;
req.price = bid;
req.sl = sl;
req.tp = tp;
req.deviation = 10;
req.comment = "Bearish Engulfing";
OrderSend(req, res);
}
}
7. Lưu ý khi giao dịch nến nhấn chìm
- Khung thời gian lớn đáng tin hơn — H4, D1 cho tín hiệu mạnh hơn M1, M5
- Kết hợp vùng hỗ trợ/kháng cự — nến nhấn chìm tại vùng quan trọng đáng tin hơn
- Chờ xác nhận — nến nhấn chìm ở cuối xu hướng mới mạnh
- Quản lý vốn — luôn đặt SL, không vào lệnh quá lớn
- Nến nhấn chìm trong xu hướng mạnh có thể chỉ là nến điều chỉnh, không phải đảo chiều
8. Câu hỏi thường gặp (FAQ)
8.1. Nến nhấn chìm tăng là gì?
Là mô hình 2 nến: nến 1 giảm + nến 2 tăng nuốt trọn thân nến 1 — báo hiệu đảo chiều lên (tín hiệu mua).
8.2. Nến nhấn chìm giảm là gì?
Là mô hình 2 nến: nến 1 tăng + nến 2 giảm nuốt trọn thân nến 1 — báo hiệu đảo chiều xuống (tín hiệu bán).
8.3. Nến nhấn chìm có chắc chắn đảo chiều không?
Không. Đây là tín hiệu xác suất, cần kết hợp volume, vùng giá và quản lý vốn. Không có mô hình nào chắc chắn 100%.
8.4. Màu nến nào là tăng ở Việt Nam?
Tại Việt Nam phổ biến quy ước đỏ = tăng, xanh = giảm. Hãy kiểm tra cài đặt MT5 của bạn.
9. Kết luận
Mô hình nến nhấn chìm (Engulfing) là công cụ mạnh để nhận biết sớm sự đảo chiều trong giao dịch Forex. Kết hợp với 6 giá trị cây nến và khối lượng, bạn có thể lập trình bot EA phát hiện tín hiệu này hoàn toàn tự động trong MQL5.
Nếu bạn muốn học bài bản từ nền tảng — từ nến, Pip/Point, lệnh đến lập trình bot EA MQL5 — hãy tham gia khóa học Kiến thức Giao dịch tài chính & Lập trình đầu tư tự động (Forex MQL MT5 Cơ bản) tại Hướng Nghiệp Dữ Liệu.
🎬 Xem giải thích nhanh 60 giây: Mô hình nến nhấn chìm
📚 Đăng ký khóa học: https://www.huongnghiepdulieu.com/kien-thuc-giao-dich-tai-chinh-forex-mt5/
Hướng Nghiệp Dữ Liệu — Đào tạo lập trình & giao dịch thực chiến · Hotline / Zalo: 0934 145 100
Weekly Digest — Nhận Bản Tin Hàng Tuần
Nhận các bài viết phân tích kỹ thuật chuyên sâu, thuật toán giao dịch tự động (Trading Bot) và các giải pháp công nghệ mới nhất từ Hướng Nghiệp Dữ Liệu.
Đặng Trí Thanh
Giám đốc Công nghệ · DNT Digital · Giảng viên HNDLĐặng Trí Thanh — Founder & CTO · Hướng Nghiệp Dữ Liệu - DNT Digital. Chuyên đào tạo và triển khai thực chiến Python, MT5 và hệ thống bot auto trading / IB cho học viên và doanh nghiệp.