Thứ Năm, 05/11/202605/11/2026

Hướng Dẫn Sử Dụng Bot CNPS36-NEON cho VN30F1M

Hướng dẫn Bot CNPS 36 Neon Keltner Multi Engine: giao dịch Reversal, Pullback, Band Breakout kết hợp Keltner Channel, WaveTrend và quản trị SL/TP.

Keltner Multi-Engine Trading Strategy
Keltner Multi-Engine Trading Strategy
Mục lục
Mục lục

Trong giao dịch chứng khoán phái sinh, thị trường không phải lúc nào cũng vận động theo một trạng thái cố định. Có những giai đoạn giá liên tục tăng hoặc giảm theo xu hướng rõ ràng, nhưng cũng có những thời điểm thị trường dao động quanh vùng cân bằng và thường xuyên xuất hiện các nhịp đảo chiều ngắn hạn.

Chính sự khác biệt giữa các trạng thái thị trường khiến việc áp dụng duy nhất một phương pháp giao dịch có thể gặp nhiều hạn chế.

Một chiến lược giao dịch Breakout có thể tìm kiếm cơ hội khi giá thoát khỏi vùng biến động, nhưng không phải lúc nào cũng phù hợp trong giai đoạn Sideway. Ngược lại, một chiến lược Reversal có thể hoạt động theo nguyên tắc giá quay lại vùng cân bằng, nhưng vẫn có nguy cơ giao dịch ngược những xu hướng đang phát triển mạnh.

Để tiếp cận nhiều trạng thái thị trường, nhà giao dịch có thể kết hợp các phương pháp Reversal, Trend Pullback và Volatility Breakout, đồng thời sử dụng bộ lọc xu hướng, động lượng và quản trị rủi ro riêng cho từng loại tín hiệu.

CNPS 36 NEON KELTNER MULTI ENGINE là chiến lược được phát triển bằng Pine Script v6 trên TradingView, kết hợp hệ thống Keltner Channel, dải độ lệch thống kê, WaveTrend và bộ lọc EMA dài hạn để tìm kiếm cơ hội giao dịch Long hoặc Short.

Điểm nổi bật của CNPS 36 là hỗ trợ ba nhóm chiến lược:

  • Reversal: Tìm kiếm tín hiệu khi giá từng nằm ngoài Deviation Band rồi quay trở lại bên trong, kết hợp độ sâu biến động Keltner, hướng EMA dài hạn và WaveTrend.
  • Pullback: Tìm kiếm điểm vào lệnh khi giá điều chỉnh về Midline hoặc Inner Band, sau đó xuất hiện nến xác nhận theo hướng xu hướng đang được duy trì.
  • Band Breakout: Giao dịch khi giá đóng cửa vượt dải EMA20 ± 2 ATR, đồng thời yêu cầu cây nến kế tiếp mở cửa tiếp tục nằm ngoài biên phá vỡ.

Khác với những bot chỉ sử dụng một tín hiệu kỹ thuật, CNPS 36 cho phép người dùng lựa chọn riêng Reversal, Pullback, kết hợp Reversal + Pullback hoặc chuyển sang Band Breakout.

Về quản trị vị thế, bot sử dụng Stop Loss theo cấu trúc kết hợp khoảng đệm ATR, mục tiêu Keltner Band, Take Profit theo Reward/Risk hoặc SL/TP cố định.

Riêng Band Breakout áp dụng cơ chế giữ vị thế cho đến khi giá đóng cửa quay qua đường EMA20 Basis, Stop Loss bị khớp hoặc giao dịch vượt giới hạn số nến nắm giữ.

Vậy CNPS 36 hoạt động như thế nào, ba nhóm tín hiệu có gì khác biệt và nhà đầu tư cần lưu ý gì khi sử dụng?

1. CNPS 36 Neon Keltner Multi Engine là gì?

CNPS 36 Neon Keltner Multi Engine là chiến lược giao dịch được phát triển trên TradingView, hướng đến việc hỗ trợ giao dịch hợp đồng tương lai chỉ số VN30 bằng cách kết hợp các phương pháp giao dịch dựa trên kênh giá và biến động thị trường.

Chiến lược có bốn thành phần chính.

1.1. Keltner Channel Engine

Bot xây dựng một đường trung tâm Midline và hai cặp biên Keltner.

Đường trung tâm có thể sử dụng EMA, SMA hoặc Kijun.

Theo cấu hình mặc định:

Midline = EMA34.

Khoảng cách giữa Midline và các biên được tính từ True Range đã làm mượt.

Bot sử dụng hai nhóm biên:

Inner Band = Midline ± 1,5 × Channel Range.

Outer Band = Midline ± 3,5 × Channel Range.

Những biên này được sử dụng để đánh giá mức độ giá di chuyển xa khỏi vùng trung tâm và làm mục tiêu tham chiếu cho một số nhóm giao dịch.

1.2. Deviation Band và Reversal Engine

Để xác định tín hiệu đảo chiều, CNPS 36 xây dựng thêm dải độ lệch dựa trên Standard Deviation.

Mặc định:

Deviation Length = 34.

Deviation Multiplier = 2,0.

Bot sử dụng chỉ báo %B để đánh giá vị trí giá đóng cửa so với dải độ lệch.

Khi giá từng di chuyển ra ngoài dải và sau đó quay lại bên trong, chiến lược có thể phát sinh Raw Reversal Signal.

Tuy nhiên, bot còn kiểm tra độ sâu Keltner Excursion, hướng EMA dài hạn, WaveTrend và Cooldown trước khi xác nhận tín hiệu.

1.3. Pullback Engine

Pullback Engine sử dụng xu hướng dài hạn để tìm cơ hội giao dịch sau khi giá điều chỉnh về vùng tham chiếu.

Với Long, chiến lược yêu cầu EMA dài hạn có độ dốc tăng, giá đã kiểm tra vùng Midline hoặc Inner Band và xuất hiện nến tăng đóng cửa trở lại phía trên Midline.

Với Short, quy tắc tương ứng được áp dụng theo hướng giảm.

Bot còn kiểm tra độ mạnh xu hướng theo ATR và hướng của WaveTrend để xác nhận.

1.4. Band Breakout Engine

Band Breakout sử dụng một hệ thống dải giá riêng:

EMA20 ± 2 ATR14.

Khi giá đóng cửa vượt Upper Band hoặc phá xuống Lower Band, chiến lược ghi nhận một Breakout Pending Setup.

Tín hiệu không được giao dịch ngay trên nến Breakout.

Bot yêu cầu cây nến kế tiếp mở cửa tiếp tục nằm ngoài dải phá vỡ trước đó.

Nếu hợp lệ, chiến lược xem xét mở lệnh sau khi cây nến xác nhận đóng cửa.

1.5. Cấu hình mặc định

Thành phầnThông số mặc định
Signal ModeReversal + Pullback
Trade DirectionBoth
Keltner MidlineEMA34
Keltner TR Length88
Inner Band1,5
Outer Band3,5
Deviation Length34
Deviation Multiplier2,0
Reversal TierExclude Outer Band
Long EMA FilterBật
Long EMA Length200
EMA Slope Distance50
WaveTrend ModeFlexible
Dynamic WT ThresholdBật
Pullback ZoneMidline
Pullback Lookback5 nến
Pullback Cooldown10 nến
Core Exit ModeSource H2
Structure Stop Buffer0,5 ATR
Maximum Structure Risk0 – Tắt
Maximum Trades Per Day4
Global Cooldown0
Break EvenTắt
Khối lượng3 hợp đồng

Quy trình tổng quát:

Keltner / Deviation / Breakout Engine → Signal Confirmation → Structure Risk → Entry Approval → Position Management.

Source Code CNPS 36: CNPS36

2. Các khái niệm kỹ thuật được sử dụng trong CNPS 36

2.1. Keltner Channel – Kênh biến động giá

Keltner Channel là công cụ phân tích kỹ thuật sử dụng một đường trung bình làm trung tâm và các dải biến động nằm phía trên hoặc dưới đường này.

Trong CNPS 36, Midline có thể được xác định bằng một trong ba phương pháp.

EMA: Đường trung bình động hàm mũ.

SMA: Đường trung bình động đơn giản.

Kijun: Trung điểm giữa High cao nhất và Low thấp nhất trong một khoảng thời gian.

Với Kijun:

Kijun = (Highest High + Lowest Low) / 2.

Theo cấu hình mặc định, bot sử dụng EMA34.

Điểm quan trọng là CNPS 36 không bắt buộc người dùng sử dụng một loại Midline cố định.

Khi thay đổi EMA sang SMA hoặc Kijun, cả hệ thống Keltner Band và Deviation Band đều sử dụng Midline mới.

Vì vậy, việc thay đổi Midline có thể ảnh hưởng đến cả Reversal và Pullback.

2.2. Channel Range và hai lớp Keltner Band

CNPS 36 tính True Range theo từng cây nến, sau đó làm mượt bằng EMA hoặc SMA.

Mặc định:

TR Smoothing = EMA.

Keltner TR Length = 88.

Do đó, Channel Range mặc định là:

EMA(True Range, 88).

Đây là một điểm cần phân biệt với ATR tiêu chuẩn thường sử dụng phương pháp RMA trong TradingView.

Sau khi có Channel Range, bot tính:

Upper Inner = Midline + 1,5 × Channel Range.

Lower Inner = Midline − 1,5 × Channel Range.

Upper Outer = Midline + 3,5 × Channel Range.

Lower Outer = Midline − 3,5 × Channel Range.

Hai lớp biên đóng những vai trò khác nhau.

Inner Band được sử dụng để đánh giá mức độ biến động vừa phải và làm mục tiêu cho Reversal.

Outer Band được sử dụng để phân loại mức độ biến động mạnh và làm mục tiêu cho Pullback trong chế độ Source H2.

Điều quan trọng là các biên này thay đổi theo Midline và Channel Range, không phải những mức giá cố định.

2.3. Deviation Band – Dải độ lệch thống kê

Ngoài Keltner Channel, CNPS 36 xây dựng thêm Deviation Band.

Công thức:

Deviation = Standard Deviation(Close, 34) × 2,0.

Sau đó:

Deviation Upper = Midline + Deviation.

Deviation Lower = Midline − Deviation.

Trong cấu hình mặc định, Midline là EMA34.

Vì vậy, Deviation Band của CNPS 36 không hoàn toàn giống Bollinger Bands tiêu chuẩn sử dụng SMA làm đường Basis.

Đây là một hệ thống dải độ lệch có Midline tùy chỉnh.

Deviation Band được dùng chủ yếu để phát hiện giá rời khỏi vùng biến động rồi quay trở lại.

2.4. Percent B (%B) – Vị trí giá trong dải độ lệch

CNPS 36 sử dụng %B để đánh giá vị trí giá đóng cửa so với Deviation Band.

Công thức:

%B = (Close − Deviation Lower) / (Deviation Upper − Deviation Lower).

Theo cấu hình mặc định:

%B Upper Level = 1,0.

%B Lower Level = 0,0.

Ý nghĩa:

  • %B dưới 0: Close nằm dưới Deviation Lower.
  • %B bằng 0: Close ở Deviation Lower.
  • %B bằng 0,5: Close ở trung điểm dải.
  • %B bằng 1: Close ở Deviation Upper.
  • %B trên 1: Close nằm trên Deviation Upper.

Trong CNPS 36, %B được sử dụng để phát hiện Reversal.

Reversal Buy Raw: %B cắt lên qua 0.

Reversal Sell Raw: %B cắt xuống qua 1.

Điểm quan trọng là đây là tín hiệu quay trở lại dải độ lệch.

Bot không tự động mở Long ngay khi %B xuống dưới 0 hoặc mở Short ngay khi %B vượt 1.

2.5. Keltner Excursion Tier – Phân loại độ sâu biến động

CNPS 36 sử dụng hệ thống Tier để đánh giá độ sâu của lần giá di chuyển ra ngoài Deviation Band.

Có ba cấp độ:

Tier 0: Chưa ghi nhận giá chạm Inner Band trong giai đoạn Excursion.

Tier 1: Giá đã chạm Inner Band nhưng chưa chạm Outer Band.

Tier 2: Giá đã chạm Outer Band.

Với Reversal Long, chiến lược theo dõi Low trong những nến có %B dưới ngưỡng Lower.

Nếu Low chạm Lower Inner, Tier có thể tăng lên 1.

Nếu Low chạm Lower Outer, Tier tăng lên 2.

Với Reversal Short, bot sử dụng High để kiểm tra Upper Inner và Upper Outer.

Tier cao nhất được duy trì trong suốt giai đoạn giá nằm ngoài Deviation Band.

Khi xuất hiện sự kiện %B quay trở lại, bot sử dụng Tier đã ghi nhận để lọc tín hiệu.

Theo cấu hình mặc định:

Reversal Tier = Exclude Outer Band.

Điều kiện này chấp nhận Tier 0 và Tier 1, nhưng loại bỏ Tier 2.

Điểm cần hiểu là Exclude Outer Band không có nghĩa bot bắt buộc giá phải chạm Inner Band.

Tier 0 vẫn được chấp nhận.

2.6. Bốn chế độ Reversal Tier

CNPS 36 cho phép lựa chọn:

Reversal TierĐiều kiện
AllChấp nhận mọi Tier
Inner Or StrongerTier ≥ 1
Outer OnlyChỉ Tier 2
Exclude Outer BandTier ≤ 1

Mặc định là Exclude Outer Band.

Ví dụ, một tín hiệu Long có %B vừa cắt lên 0 sau khi giá từng chạm Lower Outer.

Khi đó:

Excursion Buy Tier = 2.

Nếu đang sử dụng Exclude Outer Band, tín hiệu bị từ chối.

Nếu chuyển sang Outer Only, tín hiệu này đáp ứng điều kiện Tier.

Tuy nhiên, việc được Tier chấp nhận chưa đồng nghĩa bot sẽ mở Long.

Chiến lược còn kiểm tra EMA Slope, WaveTrend, Cooldown và các điều kiện giao dịch khác.

2.7. Long EMA200 Trend Filter

CNPS 36 sử dụng EMA dài hạn để đánh giá hướng thị trường.

Mặc định:

Long EMA Length = 200.

EMA Slope Distance = 50 nến.

Điều kiện tăng:

EMA200 hiện tại > EMA200 của 50 nến trước.

Điều kiện giảm:

EMA200 hiện tại < EMA200 của 50 nến trước.

Nếu Long Trend Filter đang bật, Reversal Long và Pullback Long yêu cầu trạng thái tăng.

Reversal Short và Pullback Short yêu cầu trạng thái giảm.

Điểm đặc biệt quan trọng:

Bộ lọc này không bắt buộc Close nằm trên EMA200 đối với Long hoặc nằm dưới EMA200 đối với Short.

Source chỉ kiểm tra độ dốc của EMA.

Ví dụ, EMA200 hiện tại cao hơn EMA200 cách 50 nến nhưng giá đang nằm dưới EMA200, điều kiện Long Trend vẫn có thể đạt.

Đây là điểm cần phân biệt với các bot sử dụng EMA Alignment theo vị trí giá.

2.8. WaveTrend – Bộ lọc động lượng

WaveTrend là chỉ báo động lượng sử dụng giá trung bình HLC3 và các phép làm mượt để nhận diện thay đổi động lượng thị trường.

CNPS 36 tính:

WT Average Price = HLC3.

Sau đó sử dụng EMA để tính đường trung tâm và độ lệch.

Công thức tổng quát:

ESA = EMA(HLC3, 10).

WT Deviation = EMA(|HLC3 − ESA|, 10).

CI = (HLC3 − ESA) / (0,015 × WT Deviation).

WT1 = EMA(CI, 21).

WT2 = SMA(WT1, 4).

Mặc định:

  • WT Channel Length = 10.
  • WT Average Length = 21.
  • WT Signal Length = 4.
  • WT Confirmation Lookback = 5 nến.

WT1 và WT2 được sử dụng để xác nhận hướng động lượng.

Với Pullback Long:

WT1 > WT2.

Với Pullback Short:

WT1 < WT2.

Trong Reversal, WaveTrend sử dụng một hệ thống xác nhận linh hoạt hơn.

2.9. Năm chế độ WaveTrend Confirmation

CNPS 36 cung cấp năm chế độ:

Off

Không yêu cầu xác nhận WaveTrend đối với Reversal.

Extreme

Long yêu cầu WaveTrend đã tiếp cận vùng Oversold trong Lookback.

Short yêu cầu WaveTrend đã tiếp cận vùng Overbought.

Cross

Long yêu cầu WT1 đã cắt lên WT2 trong Lookback.

Short yêu cầu WT1 đã cắt xuống WT2 trong Lookback.

Flexible

Chấp nhận một trong hai điều kiện:

  • Extreme.
  • Cross.

Auto

Tự động lựa chọn Cross hoặc Extreme dựa trên trạng thái thị trường.

Mặc định:

WaveTrend Confirmation = Flexible.

Vì vậy, Reversal Long không bắt buộc đồng thời có tín hiệu Oversold và WT Cross Up.

Chỉ cần một trong hai điều kiện đạt là đủ vượt bộ lọc WaveTrend.

2.10. Dynamic WaveTrend Threshold

CNPS 36 hỗ trợ tính vùng Overbought và Oversold động.

Mặc định:

  • Dynamic WT Threshold: Bật.
  • Dynamic WT History: 200 nến.
  • Dynamic WT Tail: 10%.
  • Minimum Threshold: 20.
  • Fixed Overbought: +53.
  • Fixed Oversold: −53.

Bot sử dụng phân vị của WT2 để ước tính vùng cực trị.

Dynamic Oversold = Phân vị 10% của WT2 trong 200 nến.

Dynamic Overbought = Phân vị 90% của WT2 trong 200 nến.

Sau đó áp dụng giới hạn:

Oversold Limit = Min(Dynamic Oversold, −20).

Overbought Limit = Max(Dynamic Overbought, +20).

Ví dụ, nếu phân vị 10% của WT2 bằng −35, ngưỡng Oversold có thể được xác định là −35.

Nếu phân vị này chỉ bằng −12, chiến lược sử dụng ngưỡng −20.

Điều này giúp các ngưỡng WaveTrend phản ánh sự phân bố dữ liệu trong thời gian gần đây.

Tuy nhiên, khi dữ liệu động chưa đủ, bot sử dụng các ngưỡng cố định làm giá trị dự phòng.

2.11. Auto WaveTrend Regime

Khi chọn WaveTrend Mode = Auto, CNPS 36 có thể phân loại trạng thái thị trường bằng Efficiency Ratio hoặc ADX.

Efficiency Ratio

Đánh giá mức thay đổi giá ròng so với tổng độ biến động tuyệt đối trong một chu kỳ.

Mặc định:

  • Efficiency Length = 20.
  • Trend Threshold = 0,30.

Bot còn làm mượt Efficiency Ratio bằng SMA3.

Nếu Efficiency Ratio đạt hoặc vượt 0,30, thị trường được xem là Trend Regime theo thuật toán.

ADX

Một phương án khác là sử dụng ADX14.

Mặc định:

ADX Trend Threshold = 25.

Nếu ADX ≥ 25, bot xác định Trend Regime.

Sau khi phân loại:

Trend Regime → WaveTrend Cross.

Non-Trend Regime → WaveTrend Extreme.

Đây là cơ chế lựa chọn bộ lọc WaveTrend, không phải một chiến lược vào lệnh độc lập.

Ngoài ra, Auto Regime chỉ ảnh hưởng đến Reversal WaveTrend Confirmation. Pullback vẫn sử dụng điều kiện WT1 > WT2 hoặc WT1 < WT2 nếu bộ lọc Pullback WT đang bật.

2.12. Pullback Trend Strength

CNPS 36 sử dụng một chỉ số riêng để đánh giá mức độ thay đổi của EMA dài hạn.

Công thức:

Trend Strength ATR = |EMA200 hiện tại − EMA200 cách 50 nến| / ATR14.

Mặc định:

Minimum Trend Strength ATR = 1,0.

Ví dụ:

  • EMA200 hiện tại = 1.900.
  • EMA200 cách 50 nến = 1.888.
  • ATR14 = 10.

Khi đó:

Trend Strength = 12 / 10 = 1,20 ATR.

Thiết lập đáp ứng ngưỡng tối thiểu 1,0.

Ngược lại, nếu EMA chỉ thay đổi 5 điểm với ATR bằng 10:

Trend Strength = 0,50 ATR.

Pullback Signal không đạt yêu cầu.

Điểm đáng chú ý là chỉ số này sử dụng độ lớn tuyệt đối của thay đổi EMA. Hướng giao dịch được đánh giá riêng bằng Long Trend Up hoặc Long Trend Down.

3. Nguyên lý hoạt động của CNPS 36 Neon Keltner Multi Engine

Chiến lược có ba cơ chế phát hiện tín hiệu, sau đó sử dụng chung hệ thống xét duyệt Entry và quản trị vị thế.

3.1. Giai đoạn tính toán chỉ báo

Đầu tiên, bot tính các thành phần:

  • Keltner Midline.
  • Inner và Outer Bands.
  • Deviation Bands.
  • Percent B.
  • EMA200 và EMA Slope.
  • WaveTrend WT1/WT2.
  • Dynamic WaveTrend Threshold.
  • Efficiency Ratio và ADX.
  • ATR14.
  • Breakout EMA20 và ATR14.

Không phải mọi chỉ báo đều tham gia vào mọi nhóm chiến lược.

Ví dụ, Band Breakout sử dụng một hệ thống EMA20 ± ATR riêng và không yêu cầu các bộ lọc WaveTrend hoặc Keltner Reversal.

3.2. Reversal Engine – Phát hiện tín hiệu đảo chiều

Với Long, bot theo dõi những cây nến có %B dưới Lower Level.

Trong giai đoạn này, chiến lược ghi nhận:

  • Low thấp nhất của Excursion.
  • Keltner Tier cao nhất.

Khi %B cắt lên qua ngưỡng Lower, bot ghi nhận Raw Reversal Buy.

Sau đó, chiến lược kiểm tra:

  • Tier hợp lệ.
  • EMA Slope tăng nếu Long Trend Filter bật.
  • WaveTrend Buy Confirmation.
  • Same Direction Cooldown.
  • Nến đóng cửa.

Với Short, quy trình được áp dụng theo hướng ngược lại.

Một điểm quan trọng là Tier được lấy từ trạng thái Excursion trước khi trạng thái được đặt lại khi %B quay về dải.

Vì vậy, bộ lọc sử dụng độ sâu của lần di chuyển trước đó, không phải chỉ đánh giá vị trí giá tại cây nến tín hiệu.

3.3. Pullback Engine – Phát hiện tín hiệu theo xu hướng

Với Long, bot yêu cầu:

  1. EMA dài hạn có độ dốc tăng.
  2. Giá đã tiếp cận vùng Pullback trong Lookback.
  3. Có điều kiện Fresh Touch liên quan đến Midline.
  4. Giá đóng cửa hiện tại nằm trên Midline.
  5. Nến hiện tại tăng.
  6. WT1 > WT2 nếu Pullback WT đang bật.
  7. Trend Strength đạt ngưỡng.
  8. Pullback Cooldown hợp lệ.
  9. Không có Reversal Long Signal cùng nến.

Với Short, quy tắc tương ứng được áp dụng theo hướng giảm.

Một điểm đáng chú ý là Pullback Signal không bắt buộc phải được kích hoạt ngay tại cây nến đầu tiên chạm Midline.

Bot sử dụng Lowest Low hoặc Highest High trong Lookback để kiểm tra việc giá đã từng tiếp cận vùng tham chiếu.

3.4. Band Breakout Engine – Phát hiện phá vỡ dải

Band Breakout sử dụng:

Upper Band = EMA20 + 2 ATR14.

Lower Band = EMA20 − 2 ATR14.

Với Long, bot yêu cầu:

Close hiện tại > Upper Band hiện tại.

Đồng thời:

Close nến trước ≤ Upper Band nến trước.

Khi sự kiện này xuất hiện, chiến lược lưu:

  • Hướng Breakout.
  • Chỉ số nến Breakout.
  • Stop Loss tham chiếu từ Wick hoặc Open của nến Breakout.

Đến cây nến kế tiếp, bot kiểm tra:

Open của nến xác nhận > Upper Band của nến Breakout.

Nếu điều kiện này hợp lệ, chiến lược tiếp tục xét Entry.

Short áp dụng logic tương ứng với Lower Band.

Một điểm quan trọng là Band Breakout không chờ Retest.

Bot chỉ yêu cầu cây nến tiếp theo mở cửa tiếp tục nằm ngoài biên dải trước đó.

3.5. Cơ chế lựa chọn tín hiệu

CNPS 36 chỉ sử dụng một Setup để tạo Entry tại mỗi thời điểm.

Mã nguồn tổ chức thứ tự lựa chọn:

Band Breakout → Pullback → Reversal.

Tuy nhiên, Reversal được ưu tiên so với Pullback khi cả hai cùng phát sinh tín hiệu theo cùng hướng, bởi Pullback có điều kiện loại trừ Reversal tương ứng.

Ví dụ, khi Reversal Long và điều kiện Pullback Long cùng xuất hiện, Pullback Long bị loại ở bước xác định tín hiệu.

Chiến lược sẽ sử dụng Reversal Long nếu tín hiệu đó được chọn.

Ngoài ra, Band Breakout là Signal Mode riêng, không được chạy đồng thời với Reversal + Pullback trong cấu hình lựa chọn hiện tại.

3.6. Tính Stop Loss và Source Target

Sau khi có tín hiệu, chiến lược xác định Stop Loss dự kiến.

Reversal Long:

Stop = Excursion Low − 0,5 ATR14.

Reversal Short:

Stop = Excursion High + 0,5 ATR14.

Pullback Long:

Stop = Lowest Low của Pullback Lookback − 0,5 ATR14.

Pullback Short:

Stop = Highest High của Pullback Lookback + 0,5 ATR14.

Breakout Long:

Stop = Low hoặc Open của nến Breakout đầu tiên.

Breakout Short:

Stop = High hoặc Open của nến Breakout đầu tiên.

Sau đó, bot tính khoảng Risk từ giá đóng cửa nến tín hiệu tới Stop.

Khoảng Risk phải hợp lệ và lớn hơn Minimum Tick.

Nếu người dùng thiết lập Maximum Structure Risk, khoảng Risk cũng không được vượt giới hạn đã đặt.

3.7. Kiểm tra Source Target

Trong chế độ Source H2 mặc định, Reversal và Pullback sử dụng mục tiêu Keltner Band.

Reversal Long → Upper Inner.

Reversal Short → Lower Inner.

Pullback Long → Upper Outer.

Pullback Short → Lower Outer.

Bot kiểm tra Source Target có nằm đúng phía có lợi nhuận so với giá đóng cửa tín hiệu hay không.

Nếu Target nằm sai phía, tín hiệu bị từ chối.

Nếu người dùng bật Minimum Source Target R, bot còn yêu cầu khoảng Reward/Risk dự kiến đạt ngưỡng.

Mặc định Minimum Source R bằng 0, tức không có yêu cầu R tối thiểu ngoài điều kiện Reward phải dương.

3.8. Kiểm tra điều kiện giao dịch chung

Trước khi phát sinh lệnh, bot yêu cầu:

  • Chiến lược đang Flat.
  • Đang trong thời gian giao dịch.
  • Nến đóng cửa trước Force Close.
  • Trade Direction cho phép Long hoặc Short.
  • Global Cooldown hợp lệ.
  • Chưa đạt Maximum Trades Per Day.
  • Nến đã đóng cửa xác nhận.
  • Structure Risk hợp lệ.
  • Source Target R hợp lệ nếu điều kiện này được áp dụng.

Khi toàn bộ điều kiện đạt, bot phát sinh Entry với khối lượng 3 hợp đồng.

3.9. Khởi tạo vị thế

Sau khi lệnh được khớp, bot ghi nhận:

  • Giá vào lệnh trung bình.
  • Initial Stop.
  • Initial Risk.
  • Active Target.
  • Loại Setup.
  • Chỉ số nến vào lệnh.
  • Trạng thái Break Even.

Bot có thể điều chỉnh Target theo giá khớp nếu người dùng sử dụng Structure RR hoặc Fixed Points.

Trong Source H2, mục tiêu được giữ theo Keltner Band đã xác định tại thời điểm tín hiệu.

Riêng Band Breakout, Active Target không được đặt vì chiến lược sử dụng Basis Exit hoặc Time Exit thay cho Take Profit cố định.

4. Điều kiện vào lệnh Long và Short của CNPS 36

4.1. Reversal Long – Giá quay lại từ vùng dưới Deviation Band

Điều kiện:

  1. Signal Mode cho phép Reversal.
  2. %B trước đó nằm dưới Lower Level.
  3. %B hiện tại cắt lên qua Lower Level.
  4. Keltner Excursion Tier được ghi nhận.
  5. Tier đáp ứng Reversal Tier Mode.
  6. EMA200 có độ dốc tăng nếu Long Trend Filter bật.
  7. WaveTrend Buy Confirmation hợp lệ.
  8. Reversal Buy Cooldown đã hoàn tất.
  9. Nến đã đóng cửa xác nhận.
  10. Stop Loss cấu trúc hợp lệ.
  11. Source Target nằm phía trên Close nếu dùng Source H2.
  12. R dự kiến đạt yêu cầu nếu bộ lọc Minimum Source RR bật.
  13. Điều kiện giao dịch chung hợp lệ.

Khi đáp ứng, bot có thể mở Long.

Ví dụ minh họa:

Giả sử VN30F1M giảm xuống dưới Deviation Lower, khiến %B bằng −0,15.

Trong giai đoạn này, Low đã chạm Lower Inner nhưng chưa chạm Lower Outer.

Bot ghi nhận:

Buy Tier = 1.

Sau đó, %B tăng từ −0,15 lên +0,10.

Sự kiện cắt lên qua 0 tạo Raw Reversal Buy.

Nếu EMA200 đang tăng, WaveTrend xác nhận và những bộ lọc khác hợp lệ, bot có thể tạo Long.

4.2. Reversal Short – Giá quay lại từ vùng trên Deviation Band

Với Short, chiến lược yêu cầu:

  1. Signal Mode cho phép Reversal.
  2. %B trước đó nằm trên Upper Level.
  3. %B hiện tại cắt xuống qua Upper Level.
  4. Keltner Excursion Tier hợp lệ.
  5. EMA200 có độ dốc giảm nếu Trend Filter bật.
  6. WaveTrend Sell Confirmation hợp lệ.
  7. Same Direction Cooldown hợp lệ.
  8. Stop Loss cấu trúc nằm phía trên Close.
  9. Source Target nằm dưới Close nếu sử dụng Source H2.
  10. Điều kiện giao dịch chung hợp lệ.

Ví dụ, khi %B giảm từ 1,20 xuống 0,90, chiến lược có thể phát hiện Raw Reversal Short.

Nếu Excursion Tier hợp lệ, EMA200 đang giảm và WaveTrend xác nhận, bot xem xét mở Short.

4.3. Pullback Long – Giá điều chỉnh rồi tiếp diễn xu hướng tăng

Pullback Long sử dụng quy trình khác Reversal.

Điều kiện gồm:

  1. Signal Mode cho phép Pullback.
  2. EMA200 hiện tại cao hơn EMA200 cách 50 nến nếu Trend Filter bật.
  3. Lowest Low trong 5 nến gần nhất chạm vùng Pullback.
  4. Điều kiện Fresh Buy Touch đạt yêu cầu.
  5. Close hiện tại nằm trên Midline.
  6. Nến hiện tại tăng.
  7. WT1 > WT2 nếu Pullback WT bật.
  8. Trend Strength tối thiểu 1 ATR.
  9. Pullback Buy Cooldown hợp lệ.
  10. Không có Reversal Long cùng hướng được xác nhận.
  11. Stop Loss hợp lệ.
  12. Source Target nằm phía trên Close trong Source H2.
  13. Điều kiện quản trị giao dịch chung hợp lệ.

Theo cấu hình mặc định:

Pullback Zone = Midline.

Pullback Lookback = 5.

Pullback Cooldown = 10 nến.

Minimum Trend Strength = 1 ATR.

Điểm quan trọng là Pullback Long không sử dụng điều kiện %B cắt lên 0 làm tín hiệu bắt buộc.

Bot tập trung vào việc giá quay lại vùng Keltner Midline và xác nhận tiếp diễn.

4.4. Pullback Short – Giá hồi lên rồi tiếp diễn xu hướng giảm

Điều kiện:

  • EMA200 có độ dốc giảm.
  • Highest High trong 5 nến gần nhất chạm vùng Pullback.
  • Fresh Sell Touch hợp lệ.
  • Close hiện tại nằm dưới Midline.
  • Nến hiện tại giảm.
  • WT1 < WT2 nếu Pullback WT bật.
  • Trend Strength đạt yêu cầu.
  • Pullback Cooldown hợp lệ.
  • Không có Reversal Short cùng hướng.
  • Stop Loss cấu trúc hợp lệ.
  • Điều kiện Entry chung hợp lệ.

Ví dụ, trong xu hướng giảm, giá hồi lên Midline rồi xuất hiện nến giảm đóng cửa phía dưới Midline.

Nếu WaveTrend đang có WT1 thấp hơn WT2 và EMA200 tiếp tục dốc xuống đủ mạnh, chiến lược có thể phát sinh Pullback Short.

4.5. Midline và Inner Band khác nhau thế nào?

CNPS 36 cho phép lựa chọn:

Pullback Touch Zone = Midline hoặc Inner Band.

Với Midline:

  • Long kiểm tra Lowest Low tiếp cận Midline.
  • Short kiểm tra Highest High tiếp cận Midline.

Với Inner Band:

  • Long sử dụng Lower Inner làm vùng Pullback.
  • Short sử dụng Upper Inner.

Tuy nhiên, có một chi tiết kỹ thuật đáng chú ý.

Mã nguồn vẫn sử dụng điều kiện Fresh Touch riêng liên quan đến Midline trong cả hai chế độ.

Với Long:

Low hiện tại ≤ Midline hoặc Close nến trước ≤ Midline nến trước.

Với Short:

High hiện tại ≥ Midline hoặc Close nến trước ≥ Midline nến trước.

Vì vậy, chuyển sang Inner Band không đồng nghĩa bot chỉ cần giá chạm Inner Band là lập tức tạo tín hiệu.

Các điều kiện Fresh Touch, đóng cửa đúng phía Midline, WaveTrend và Trend Strength vẫn được áp dụng.

4.6. Band Breakout Long – Phá Upper Band

Để giao dịch Breakout Long, người dùng cần chọn:

Signal Mode = Band Breakout.

Điều kiện gồm:

  1. Breakout EMA20 và ATR14 có dữ liệu hợp lệ.
  2. Close hiện tại vượt Upper Band.
  3. Close nến trước không vượt Upper Band tương ứng.
  4. Minimum Breakout Gap hợp lệ.
  5. Chiến lược lưu Pending Long Breakout.
  6. Nến tiếp theo mở cửa trên Upper Band của nến Breakout.
  7. Stop Loss tham chiếu nằm thấp hơn giá Open của nến xác nhận.
  8. Nến xác nhận đã đóng cửa.
  9. Khoảng Risk từ Close nến xác nhận đến Stop hợp lệ.
  10. Trade Direction cho phép Long.
  11. Điều kiện phiên, Cooldown và Maximum Trades hợp lệ.

Khi toàn bộ điều kiện đáp ứng, bot tạo Long.

Ví dụ minh họa:

Giả sử:

  • EMA20 = 1.900.
  • ATR14 = 5 điểm.
  • Upper Band = 1.910.

Một cây nến đóng cửa tại 1.912, trong khi nến trước chưa đóng cửa vượt Upper Band tương ứng.

Bot ghi nhận Breakout Long.

Nến kế tiếp mở cửa tại 1.913 và vẫn nằm trên Upper Band của nến Breakout.

Nếu Stop Loss tham chiếu hợp lệ và nến xác nhận đóng cửa, bot có thể gửi lệnh Long.

Điểm quan trọng là Entry được đặt tại nến xác nhận đóng cửa, không phải tại giá mở cửa của nến xác nhận.

4.7. Band Breakout Short – Phá Lower Band

Band Breakout Short sử dụng logic tương ứng:

  1. Close hiện tại dưới Lower Band.
  2. Close nến trước không nằm dưới Lower Band tương ứng.
  3. Minimum Breakout Gap hợp lệ.
  4. Enable Short Breakouts được bật.
  5. Bot ghi nhận Pending Short Breakout.
  6. Nến kế tiếp mở cửa dưới Lower Band của nến Breakout.
  7. Stop Loss tham chiếu nằm trên Open nến xác nhận.
  8. Nến xác nhận đã đóng cửa.
  9. Risk và các điều kiện giao dịch chung hợp lệ.

Lưu ý: Band Breakout Short mặc định đang tắt.

Vì vậy, khi chuyển sang Band Breakout nhưng giữ toàn bộ thông số mặc định, chiến lược chỉ cho phép nguồn tín hiệu Breakout Long.

Người dùng phải bật Enable Short Breakouts nếu muốn giao dịch hai chiều trong chế độ này.

4.8. Điểm khác biệt giữa ba nhóm tín hiệu

Tiêu chíReversalPullbackBand Breakout
Tín hiệu chính%B quay lại dảiGiá chạm vùng và xác nhận tiếp diễnPhá EMA20 ± ATR
Keltner TierCóKhôngKhông
EMA200 SlopeCó thể bậtCó thể bậtKhông dùng
WaveTrendFlexible/Auto/…WT1 so với WT2Không dùng
Giá xác nhậnNến %B CrossNến đóng đúng phía MidlineOpen nến kế tiếp vượt dải
Stop LossExcursion ExtremePullback ExtremeWick/Open nến Breakout
Source TargetInner BandOuter BandKhông có
Thoát đặc trưngSource H2/Structure RR/FixedSource H2/Structure RR/FixedEMA20 Basis/Time Exit

Ba nhóm chiến lược không có cùng điều kiện Entry và không nên được đánh giá như một hệ thống tín hiệu đồng nhất.

5. CNPS 36 quản trị rủi ro và thoát lệnh như thế nào?

5.1. Source H2 – Chế độ thoát mặc định

Theo cấu hình mặc định:

Core Exit Mode = Source H2.

Đây là phương pháp sử dụng Stop Loss theo cấu trúc và Take Profit tại một biên Keltner được xác định sẵn.

Với Reversal:

Long Target = Upper Inner.

Short Target = Lower Inner.

Với Pullback:

Long Target = Upper Outer.

Short Target = Lower Outer.

Điểm quan trọng là Source H2 không mặc định sử dụng Take Profit cố định 2R.

Mục tiêu được xác định từ các mức Keltner tại thời điểm phát sinh tín hiệu.

Do đó, tỷ lệ Reward/Risk dự kiến có thể khác nhau giữa các giao dịch.

5.2. Stop Loss theo cấu trúc

Với Reversal:

Long Stop = Reversal Swing Low − 0,5 ATR14.

Short Stop = Reversal Swing High + 0,5 ATR14.

Với Pullback:

Long Stop = Lowest Low(5) − 0,5 ATR14.

Short Stop = Highest High(5) + 0,5 ATR14.

Ví dụ, một Reversal Long có:

  • Entry dự kiến = 1.900.
  • Reversal Swing Low = 1.894.
  • ATR14 = 8.
  • Buffer = 0,5 ATR.

Khi đó:

Stop = 1.894 − 4 = 1.890.

Khoảng Risk dự kiến:

1.900 − 1.890 = 10 điểm.

Nếu Source Target là 1.915:

Reward = 15 điểm.

Source R = 15 / 10 = 1,5R.

Theo mặc định, Minimum Source R đang tắt nên một thiết lập có Reward dương vẫn có thể được chấp nhận mà không bắt buộc đạt mức 1,5R hay 2R.

5.3. Minimum Source Target R

CNPS 36 hỗ trợ:

Minimum Source Target R.

Mặc định:

0 = Off.

Khi đặt một giá trị lớn hơn 0, bot kiểm tra:

Source Reward / Structure Risk ≥ Minimum Source RR.

Ví dụ, nếu người dùng đặt Minimum Source RR = 1,5:

  • Một thiết lập có R = 1,2 bị loại.
  • Một thiết lập có R = 1,8 được chấp nhận.

Điểm quan trọng là bộ lọc này chỉ được áp dụng khi:

  • Setup không phải Breakout.
  • Core Exit Mode = Source H2.

Nếu chuyển sang Structure RR hoặc Fixed Points, Minimum Source Target R không được sử dụng để lọc Entry.

Tương tự, Band Breakout không sử dụng bộ lọc này.

5.4. Structure RR – Quản trị theo Reward/Risk

CNPS 36 hỗ trợ:

Core Exit Mode = Structure RR.

Trong chế độ này, chiến lược vẫn sử dụng Stop Loss theo cấu trúc giá.

Tuy nhiên, Take Profit được tính theo Initial Risk thực tế sau khi lệnh được khớp.

Mặc định:

Reward/Risk = 2,0.

Với Long:

TP = Entry + Initial Risk × 2.

Với Short:

TP = Entry − Initial Risk × 2.

Ví dụ:

  • Long Entry = 1.900.
  • Structure Stop = 1.895.
  • Initial Risk = 5 điểm.

Take Profit:

1.900 + 5 × 2 = 1.910.

Khác với Source H2, Structure RR không lấy Upper Inner hoặc Upper Outer làm mục tiêu cố định.

5.5. Fixed Points – Stop Loss và Take Profit cố định

CNPS 36 hỗ trợ:

Core Exit Mode = Fixed Points.

Mặc định:

Fixed Stop Loss = 5 điểm.

Fixed Take Profit = 15 điểm.

Với Long:

SL = Entry − 5.

TP = Entry + 15.

Với Short:

SL = Entry + 5.

TP = Entry − 15.

Tỷ lệ Reward/Risk danh nghĩa:

15 / 5 = 3R.

Một điểm quan trọng là Fixed Points không thay đổi cơ chế phát hiện tín hiệu Reversal hoặc Pullback.

Nó chỉ thay đổi cách Stop Loss và Take Profit được xác định sau khi một tín hiệu được chấp thuận.

Tuy nhiên, bộ lọc Risk cấu trúc trước Entry vẫn được kiểm tra.

5.6. Maximum Structure Risk

CNPS 36 có bộ lọc:

Maximum Structure Risk.

Mặc định bằng 0, tức đang tắt.

Nếu người dùng đặt ngưỡng 10 điểm, một tín hiệu có khoảng Risk dự kiến lớn hơn 10 điểm sẽ bị loại.

Điểm quan trọng là bộ lọc này được kiểm tra trong hệ thống Entry Approval chung.

Vì vậy, nó vẫn có thể từ chối Entry khi người dùng sử dụng Fixed Points.

Ví dụ, một tín hiệu Pullback có:

  • Structure Risk dự kiến = 12 điểm.
  • Maximum Structure Risk = 10 điểm.
  • Fixed Stop Loss = 5 điểm.

Tín hiệu vẫn bị loại bỏ trước Entry vì Risk cấu trúc vượt ngưỡng.

Do đó, cần phân biệt Risk Filter trước lệnh và Stop Loss thực tế của Exit Mode.

5.7. Band Breakout – Stop Loss riêng

Band Breakout không sử dụng ba Core Exit Mode giống Reversal và Pullback.

Thay vào đó, bot đặt Stop Loss theo cây nến Breakout ban đầu.

Có hai chế độ:

Wick: Sử dụng Low của nến Breakout đối với Long và High đối với Short.

Open: Sử dụng Open của nến Breakout.

Mặc định:

Breakout Stop = Wick.

Ví dụ, một Bullish Breakout có:

  • High = 1.915.
  • Low = 1.905.
  • Open = 1.908.
  • Close = 1.912.

Nếu dùng Wick:

Stop = 1.905.

Nếu dùng Open:

Stop = 1.908.

Stop được lưu từ cây nến Breakout ban đầu, không phải từ cây nến xác nhận kế tiếp.

5.8. Band Breakout – EMA20 Basis Exit

Đây là cơ chế thoát chính của nhóm Breakout.

Với Long:

Close < EMA20 Basis.

Với Short:

Close > EMA20 Basis.

Ngoài ra, nến xác nhận điều kiện thoát phải xuất hiện sau Active Entry Bar.

Ví dụ, một vị thế Breakout Long đang mở.

Giá tiếp tục vận động phía trên EMA20.

Chiến lược duy trì vị thế nếu Stop Loss chưa bị khớp và chưa xuất hiện các điều kiện thoát khác.

Khi một cây nến sau Entry đóng cửa dưới EMA20, bot có thể yêu cầu đóng Long.

Điểm quan trọng là Basis Exit không yêu cầu một sự kiện crossover riêng.

Chỉ cần giá đóng cửa nằm sai phía EMA20 và điều kiện thời gian nắm giữ được đáp ứng.

5.9. Band Breakout – Maximum Bars in Trade

CNPS 36 hỗ trợ giới hạn thời gian nắm giữ riêng cho Breakout.

Mặc định:

Maximum Bars In Breakout Trade = 200.

Khi số nến kể từ Active Entry Bar đạt hoặc vượt 200, chiến lược yêu cầu đóng vị thế.

Tuy nhiên, Force Close cuối phiên vẫn được áp dụng.

Vì vậy, nếu giao dịch chưa đạt 200 nến nhưng đến thời điểm đóng phiên, bot vẫn có thể yêu cầu đóng toàn bộ vị thế.

Maximum Bars không đảm bảo một giao dịch Breakout sẽ được giữ đủ 200 nến.

5.10. Break Even tùy chọn

CNPS 36 hỗ trợ Break Even.

Mặc định:

  • Use Break Even: Tắt.
  • Break Even Trigger: 1,0R.
  • Break Even Offset: 0,5 điểm.

Với Long:

Trigger = Entry + Initial Risk × 1R.

Sau khi High đạt ngưỡng:

New Stop = Max(Current Stop, Entry + 0,5).

Với Short:

Trigger = Entry − Initial Risk × 1R.

Sau khi Low đạt ngưỡng:

New Stop = Min(Current Stop, Entry − 0,5).

Break Even chỉ được kích hoạt một lần cho mỗi vị thế.

Điểm quan trọng là tính năng này có thể hoạt động với cả Reversal, Pullback và Breakout.

Tuy nhiên, việc dời Stop Loss không đảm bảo giá khớp thực tế sẽ đúng bằng mức được đặt, đặc biệt khi thị trường biến động nhanh.

5.11. Source H2 và Breakout không có cùng mục tiêu

Đặc điểmReversal/PullbackBand Breakout
Source H2Target Keltner BandKhông sử dụng
Structure RRCóKhông sử dụng
Fixed PointsCóKhông sử dụng
Stop LossTheo Excursion/PullbackTheo Wick/Open nến phá dải
Take Profit cố địnhTùy Exit ModeKhông có
Basis ExitKhôngCó
Time Exit 200 nếnKhôngCó
Break EvenTùy chọnTùy chọn
Force Close cuối phiênCóCó

Đây là một điểm quan trọng khi sử dụng CNPS 36.

Người dùng không nên mặc định rằng chuyển sang Fixed Points SL5/TP15 sẽ khiến Band Breakout sử dụng những mức thoát đó.

Theo source hiện tại, Band Breakout có cơ chế quản trị riêng.

5.12. Force Close cuối phiên

CNPS 36 sử dụng:

Entry Start = 09:00.

Last Entry = 14:30.

Force Close = 14:45.

Múi giờ:

Asia/Ho_Chi_Minh.

Khi cây nến bắt đầu trước 14:45 và có thời gian đóng đạt hoặc vượt 14:45, chiến lược yêu cầu đóng toàn bộ vị thế.

Bot sử dụng:

strategy.close_all(immediately=true)

Ngoài ra, các trạng thái Pending Breakout được xóa tại thời điểm Force Close.

Điểm cần lưu ý là Entry Window không tách riêng phiên sáng và chiều.

Chiến lược sử dụng khoảng thời gian liên tục từ 09:00 đến 14:30 theo dữ liệu nến có sẵn.

6. Hướng dẫn cài đặt và sử dụng CNPS 36 trên TradingView

Bước 1: Mở biểu đồ giao dịch

Truy cập TradingView và mở biểu đồ hợp đồng tương lai chỉ số VN30 từ nguồn dữ liệu phù hợp.

CNPS 36 sử dụng dữ liệu trực tiếp từ khung thời gian hiện tại của biểu đồ.

Chiến lược không khóa vào M1 hoặc M5.

Tuy nhiên, các tham số EMA Slope Distance, WaveTrend Lookback, Pullback Lookback, Cooldown và Maximum Bars đều được tính theo số nến.

Do đó, thay đổi khung thời gian có thể làm thay đổi đáng kể cách xác định tín hiệu và kết quả giao dịch.

Bước 2: Thêm chiến lược vào TradingView

Nếu sử dụng mã nguồn Pine Script:

  1. Mở Pine Editor trên TradingView.
  2. Tạo một Strategy mới.
  3. Dán toàn bộ mã nguồn CNPS36 NEON KELTNER MULTI ENGINE.
  4. Lưu mã nguồn.
  5. Chọn Add to chart.
  6. Kiểm tra các thông số Signal Mode.
  7. Bật các đường Keltner hoặc Breakout Band nếu muốn quan sát tín hiệu.
  8. Mở Strategy Tester để kiểm tra hiệu quả mô phỏng.

Bước 3: Cấu hình Signal Engine

Thông sốMặc định
Signal ModeReversal + Pullback
Trade DirectionBoth
Midline TypeEMA
Midline Length34
Kijun Length26
TR SmoothingEMA
Keltner TR Length88
Inner Band Multiplier1,5
Outer Band Multiplier3,5
Deviation Length34
Deviation Multiplier2,0
%B Upper Level1,0
%B Lower Level0,0
Reversal TierExclude Outer Band
Reversal Cooldown5 nến

Người dùng nên kiểm thử riêng Reversal và Pullback trước khi sử dụng chế độ kết hợp.

Điều này giúp đánh giá số lượng giao dịch và mức đóng góp của từng nhóm vào kết quả tổng thể.

Bước 4: Cấu hình Trend và WaveTrend

Thông sốMặc định
Use Long EMA Trend FilterBật
Long EMA Length200
EMA Slope Distance50
WT ConfirmationFlexible
WT Channel Length10
WT Average Length21
WT Signal Length4
WT Confirmation Lookback5
Dynamic WT ThresholdBật
Fixed WT Overbought+53
Fixed WT Oversold−53
Dynamic WT History200
WT Tail Percent10%
Dynamic Minimum Threshold20
Auto WT RegimeEfficiency Ratio
Efficiency Length20
Efficiency Trend Threshold0,30
ADX Length14
ADX Trend Threshold25

Một điểm cần lưu ý là những tham số Auto WT Regime chỉ quyết định chế độ WaveTrend hiệu lực khi WaveTrend Confirmation được đặt thành Auto.

Nếu đang sử dụng Flexible mặc định, bot không tự động chuyển từ Cross sang Extreme theo Efficiency Ratio hoặc ADX.

Bước 5: Cấu hình Pullback và Breakout

Pullback Settings

Thông sốMặc định
Pullback Touch ZoneMidline
Pullback Touch Lookback5
Use WT DirectionBật
Pullback Cooldown10
Minimum Trend Strength ATR1,0

Band Breakout Settings

Thông sốMặc định
Enable Short BreakoutsTắt
Breakout EMA20
Breakout ATR14
Breakout Band Multiplier2,0
Breakout StopWick
Minimum Bars Between Breakouts20
Maximum Bars in Breakout Trade200

Band Breakout sử dụng một Signal Mode riêng.

Khi chuyển sang chế độ này, người dùng cần kiểm tra Enable Short Breakouts nếu muốn giao dịch hai chiều.

Bước 6: Cấu hình Risk Management

Thông sốMặc định
Reversal/Pullback ExitSource H2
Structure Reward/Risk2,0
Structure Stop Buffer0,5 ATR
Maximum Structure Risk0 – Tắt
Minimum Source Target R0 – Tắt
Fixed Stop Loss5 điểm
Fixed Take Profit15 điểm
Use Break EvenTắt
Break Even Trigger1,0R
Break Even Offset0,5 điểm
Maximum Trades Per Day4
Global Cooldown After Exit0

Đặc biệt, Maximum Structure Risk vẫn là bộ lọc trước Entry dù người dùng sử dụng Fixed Points.

Ngoài ra, Source H2 không có Target theo R cố định.

Người dùng cần quan sát Source R thực tế để đánh giá khoảng lợi nhuận dự kiến của từng tín hiệu.

Bước 7: Đọc biểu đồ và bảng Diagnostics

CNPS 36 có các thành phần hiển thị:

Thành phầnHiển thị
Keltner MidlineĐường xám
Upper InnerĐường đỏ nhạt
Upper OuterĐường đỏ
Lower InnerĐường xanh lá nhạt
Lower OuterĐường xanh lá
Long EMAĐường cam
Breakout Upper/LowerĐường cam
Breakout EMA BasisĐường xanh dương
Long EntryTam giác xanh, chữ L
Short EntryTam giác đỏ, chữ S
Active Stop LossĐường đỏ
Active TargetĐường xanh lá

Theo mặc định:

  • Show Keltner Channel: Tắt.
  • Show Long EMA: Tắt.
  • Show Breakout Band: Tắt.
  • Show Signals: Tắt.
  • Show Active SL/TP: Bật.
  • Show Diagnostics: Tắt.

Vì vậy, khi mới thêm chiến lược vào biểu đồ, người dùng có thể không nhìn thấy các dải Keltner hoặc dấu Entry nếu chưa bật hiển thị.

Khi bật Diagnostics, bảng cung cấp:

  • Khung thời gian.
  • Signal Mode.
  • Trend.
  • Percent B.
  • WT1/WT2.
  • WT Mode đang có hiệu lực.
  • Efficiency Ratio.
  • ADX.
  • Trend Strength theo ATR.
  • Số Reversal Long/Short.
  • Số Pullback Long/Short.
  • Số Breakout Long/Short.
  • Selected Setup.
  • Prospective Risk.
  • Source R.
  • Active Setup.
  • Active Initial Risk.
  • Trades Today.
  • Core Exit Mode.
  • Position.

Đặc biệt, bảng giúp phân biệt số lượng tín hiệu kỹ thuật được xác nhận và số giao dịch thực sự phát sinh.

Bước 8: Đánh giá trong Strategy Tester

CNPS 36 được phát triển dưới dạng TradingView Strategy nên có thể kiểm thử lịch sử.

Các chỉ số quan trọng gồm:

  • Net Profit.
  • Max Drawdown.
  • Profit Factor.
  • Percent Profitable.
  • Total Trades.
  • Average Trade.

Để đánh giá hệ thống, người dùng có thể thực hiện:

Thử nghiệm 1: Reversal Only.

Thử nghiệm 2: Pullback Only.

Thử nghiệm 3: Reversal + Pullback.

Thử nghiệm 4: Band Breakout Long Only.

Thử nghiệm 5: Band Breakout Long + Short.

Thử nghiệm 6: Reversal với các chế độ Tier khác nhau.

Thử nghiệm 7: WaveTrend Flexible so với Cross và Extreme.

Thử nghiệm 8: WaveTrend Auto theo Efficiency Ratio và ADX.

Thử nghiệm 9: Pullback Midline so với Inner Band.

Thử nghiệm 10: Source H2 so với Structure RR.

Thử nghiệm 11: Source H2 so với Fixed Points.

Thử nghiệm 12: Bật Maximum Structure Risk và Minimum Source RR.

Thử nghiệm 13: Break Even bật và tắt.

Thử nghiệm 14: Band Breakout Stop Wick so với Open.

Theo mã nguồn mặc định:

  • Initial Capital: 100.000.000 VNĐ.
  • Khối lượng: 3 hợp đồng.
  • Commission: 10.000 VNĐ/hợp đồng/lần khớp.
  • Slippage: 3 ticks.
  • Pyramiding: 0.
  • Process Orders On Close: Bật.
  • Calculate On Order Fills: Bật.
  • Fill Orders On Standard OHLC: Bật.
  • Margin Long/Short: 0.

Những thông số này phục vụ mô phỏng và không phản ánh đầy đủ điều kiện ký quỹ hoặc giá khớp giao dịch thực tế.

7. Cách thiết lập cảnh báo tín hiệu giao dịch

CNPS 36 hỗ trợ cảnh báo thông qua các sự kiện khớp lệnh mô phỏng của TradingView.

Để thiết lập:

  1. Mở biểu đồ đã thêm CNPS36 NEON KELTNER MULTI ENGINE.
  2. Chọn Create Alert.
  3. Trong Condition, chọn chiến lược CNPS36.
  4. Chọn cảnh báo dựa trên Order Fills.
  5. Trong Message, sử dụng {{strategy.order.alert_message}}.
  6. Chọn phương thức nhận thông báo và lưu cảnh báo.

7.1. Cảnh báo Entry

Các thông điệp được phân loại theo nhóm tín hiệu:

Thông điệpÝ nghĩa
ENTRY_LONG_CNPS36_REVERSALMở Long Reversal
ENTRY_SHORT_CNPS36_REVERSALMở Short Reversal
ENTRY_LONG_CNPS36_PULLBACKMở Long Pullback
ENTRY_SHORT_CNPS36_PULLBACKMở Short Pullback
ENTRY_LONG_CNPS36_BREAKOUTMở Long Band Breakout
ENTRY_SHORT_CNPS36_BREAKOUTMở Short Band Breakout

Đây là một điểm nổi bật của CNPS 36.

Khác với những bot chỉ gửi một mã Entry chung, CNPS 36 phân biệt rõ nguồn tín hiệu trực tiếp trong Alert Message.

Nhờ đó, người dùng có thể thống kê số giao dịch của từng nhóm Reversal, Pullback và Breakout trong hệ thống xử lý tín hiệu bên ngoài.

7.2. Cảnh báo Stop Loss và Take Profit

Thông điệpÝ nghĩa
EXIT_LONG_TP_CNPS36Long đóng theo TP
EXIT_SHORT_TP_CNPS36Short đóng theo TP
EXIT_LONG_SL_CNPS36Long đóng theo SL
EXIT_SHORT_SL_CNPS36Short đóng theo SL
EXIT_LONG_BE_CNPS36Long đóng theo SL sau Break Even
EXIT_SHORT_BE_CNPS36Short đóng theo SL sau Break Even

Mã nguồn sử dụng strategy.exit() để đặt Protective Stop và Take Profit nếu có.

Khi Break Even được kích hoạt, thông điệp Stop Loss tương ứng chuyển sang nhóm BE.

Tuy nhiên, bot không phát thông điệp Order Fill riêng ngay tại thời điểm Stop Loss được dời.

7.3. Cảnh báo Basis Exit

Band Breakout có hai thông điệp riêng:

Thông điệpÝ nghĩa
BASIS_EXIT_LONG_CNPS36Đóng Breakout Long khi Close dưới EMA20
BASIS_EXIT_SHORT_CNPS36Đóng Breakout Short khi Close trên EMA20

Những thông điệp này chỉ áp dụng cho vị thế có Active Setup là BREAKOUT.

Reversal và Pullback không sử dụng Basis Exit.

7.4. Cảnh báo Time Exit và Session End

Thông điệpÝ nghĩa
BREAKOUT_TIME_EXIT_CNPS36Đóng Breakout khi vượt giới hạn số nến
SESSION_END_CNPS36Đóng toàn bộ vị thế cuối phiên

Maximum Bars in Breakout Trade mặc định bằng 200.

Khi đạt giới hạn, bot yêu cầu đóng vị thế.

Ngoài ra, khi đến Force Close, bot đóng toàn bộ vị thế bất kể nhóm Setup.

7.5. Lưu ý khi tích hợp Webhook

Các Alert Message của CNPS 36 đã phân biệt được hướng giao dịch và nhóm chiến lược.

Tuy nhiên, thông điệp mặc định chưa chứa đầy đủ:

  • Giá vào lệnh.
  • Giá Stop Loss.
  • Giá Take Profit.
  • Khối lượng thực tế đã khớp.
  • Khung thời gian.
  • Thời điểm phát cảnh báo.

Nếu tích hợp với hệ thống nhận tín hiệu hoặc giao dịch tự động, người dùng cần bổ sung các thông tin này bằng placeholder TradingView hoặc thay đổi mã nguồn nếu cần.

Ngoài ra, hệ thống cần phân biệt Basis Exit, Breakout Time Exit và Session End với Stop Loss/Take Profit.

Việc nhận cảnh báo từ TradingView không đồng nghĩa lệnh tương ứng đã được khớp thành công tại công ty chứng khoán.

Kết luận

CNPS 36 NEON KELTNER MULTI ENGINE là chiến lược giao dịch phái sinh kết hợp Keltner Channel, Deviation Band, WaveTrend và bộ lọc EMA200 để phát hiện tín hiệu theo nhiều trạng thái thị trường.

Khác với những bot chỉ sử dụng một phương pháp duy nhất, CNPS 36 hỗ trợ ba nhóm thiết lập gồm Reversal, Pullback và Band Breakout.

Trong đó, Reversal tìm kiếm cơ hội khi giá quay trở lại bên trong Deviation Band sau một giai đoạn di chuyển ra ngoài vùng biến động.

Pullback tập trung vào những nhịp điều chỉnh theo xu hướng dài hạn, kết hợp xác nhận giá tại Midline hoặc Inner Band, WaveTrend và độ mạnh EMA.

Band Breakout sử dụng dải EMA20 ± 2 ATR để tìm kiếm cơ hội giao dịch khi giá phá vỡ vùng biến động và cây nến tiếp theo mở cửa tiếp tục nằm ngoài Band.

Điểm nổi bật của chiến lược là khả năng tách biệt ba nhóm tín hiệu với những điều kiện xác nhận và phương pháp quản trị lệnh khác nhau, thay vì áp dụng một công thức Entry/Exit duy nhất.

Theo cấu hình mặc định, bot sử dụng Reversal + Pullback, WaveTrend Flexible, EMA200 Slope Filter, giới hạn tối đa 4 giao dịch mỗi ngày và chế độ Source H2.

Trong Source H2, Stop Loss được đặt theo cấu trúc giá có Buffer ATR, còn mục tiêu Take Profit dựa trên các biên Keltner.

Ngoài ra, người dùng có thể chuyển sang Structure RR với Take Profit 2R hoặc Fixed Points SL5/TP15 để so sánh hiệu quả quản trị vị thế.

Riêng Band Breakout áp dụng Stop Loss từ nến phá dải và đóng vị thế khi giá quay qua EMA20 Basis, chạm Stop Loss hoặc vượt giới hạn số nến nắm giữ.

Tuy nhiên, việc kết hợp nhiều cơ chế giao dịch không đảm bảo chiến lược sẽ phù hợp với mọi trạng thái thị trường.

Reversal có thể gặp rủi ro khi xu hướng tiếp tục mở rộng, Pullback có thể thất bại khi xu hướng suy yếu, còn Band Breakout có thể xuất hiện tín hiệu phá vỡ giả hoặc điểm vào lệnh không còn thuận lợi tại nến xác nhận.

Khi sử dụng CNPS 36, nhà đầu tư cần hiểu rõ sự khác biệt giữa ba Signal Mode, cơ chế Deviation %B, Keltner Tier, WaveTrend Confirmation, Stop Loss cấu trúc và cách Exit Mode ảnh hưởng đến mục tiêu giao dịch.

Người dùng nên kiểm thử riêng Reversal, Pullback và Band Breakout trong TradingView Strategy Tester, sau đó đánh giá tác động của các chế độ WaveTrend, Reversal Tier và Risk Management dưới nhiều điều kiện thị trường.

Theo dõi Phái Sinh Online để cập nhật thêm các hướng dẫn sử dụng bot giao dịch phái sinh, kiến thức phân tích kỹ thuật và chiến lược giao dịch trên TradingView.

Lưu ý: Nội dung mang tính chất hướng dẫn sử dụng và tham khảo kiến thức. Kết quả mô phỏng trong TradingView không đảm bảo lợi nhuận trong tương lai.

Thông tin trong bài chỉ mang tính tham khảo, không phải khuyến nghị mua bán. Giao dịch phái sinh có rủi ro cao do sử dụng đòn bẩy; nhà đầu tư tự chịu trách nhiệm với quyết định của mình.

Đinh Mạnh Đạt

Nhà nghiên cứu định lượng, chuyên sâu về dữ liệu Open Interest và quản trị vị thế.

Open Interest & Dòng tiền phái sinh
Theo dõi khối lượng mở, vị thế và dòng tiền hợp đồng tương lai.