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

Hướng Dẫn Sử Dụng Bot CNPS47-RAIL cho VN30F1M

Hướng dẫn bot CNPS 47 Ghost Rail V2 Re-Entry: Shadow Rail, lọc Trend Quality 20%, xác nhận Re-Entry, Stop Loss cấu trúc, TP 1,8R và Break Even.

CNPS 47 Ghost Rail Re-Entry
CNPS 47 Ghost Rail Re-Entry
Mục lục
Mục lục

Trong giao dịch chứng khoán phái sinh, một trong những khó khăn của phương pháp theo xu hướng là phân biệt giữa sự đảo chiều thực sự và những biến động ngắn hạn.

Đặc biệt trên khung thời gian nhỏ như M1, thị trường có thể liên tục xuất hiện những nhịp tăng giảm khiến các chỉ báo xu hướng đổi trạng thái nhiều lần.

Nếu chiến lược mở lệnh ngay khi một đường giá hoặc chỉ báo đảo chiều, nhà giao dịch có thể gặp tình trạng vào lệnh liên tục nhưng thị trường không hình thành được xu hướng đủ rõ ràng.

Hiện tượng này thường được gọi là Whipsaw – những tín hiệu đảo chiều liên tiếp trong trạng thái giá biến động giằng co.

Một phương pháp tiếp cận là kết hợp chỉ báo xu hướng thích ứng với bộ lọc chất lượng chuyển động giá, sau đó yêu cầu thêm một tín hiệu xác nhận trước khi giao dịch.

Thay vì mở Long ngay khi chỉ báo chuyển từ Bearish sang Bullish, hệ thống có thể ghi nhận trạng thái chờ và chỉ mở vị thế khi giá tiếp tục thể hiện lực mua.

Tương tự, một tín hiệu chuyển sang Bearish chỉ được giao dịch nếu xuất hiện nến xác nhận theo hướng giảm.

CNPS 47 GHOST RAIL V2 RE-ENTRY là chiến lược giao dịch chứng khoán phái sinh được phát triển bằng Pine Script v6 trên TradingView, kết hợp Adaptive Shadow Rail, Trend Cleanliness, Impulse, Volume Flow Bias và hệ thống Armed Setup – Re-Entry Confirmation.

Điểm đặc trưng của chiến lược nằm ở bộ máy Shadow Rail thích ứng.

Thay vì sử dụng một đường trung bình động cố định, Shadow Rail được xây dựng từ dữ liệu nến làm mượt, biên độ biến động, tốc độ thay đổi giá và thông tin khối lượng.

Các yếu tố này tham gia điều chỉnh vị trí và tốc độ vận động của đường Rail.

Khi Smoothed Close vượt qua Shadow Rail theo hướng đối lập, trạng thái xu hướng có thể chuyển từ Bullish sang Bearish hoặc ngược lại.

Tuy nhiên, phiên bản V2 không tự động mở vị thế ngay tại cây nến Rail Flip.

Chiến lược yêu cầu hai giai đoạn:

Giai đoạn 1 – Confirmed Rail Flip

Shadow Rail đảo trạng thái, Trend Quality đạt ngưỡng tối thiểu và bộ lọc xu hướng khung lớn hợp lệ nếu được bật.

Khi đó, bot tạo một Armed Setup.

Giai đoạn 2 – Re-Entry Confirmation

Trong tối đa 4 nến tiếp theo, bot tìm kiếm một cây nến xác nhận cùng hướng với Rail mới.

Với Long, nến phải tăng, thân nến đạt tối thiểu 30% tổng biên độ và Close vượt High nến trước.

Với Short, nến phải giảm, thân nến đạt ngưỡng và Close giảm xuống dưới Low nến trước.

Sau đó, chiến lược kiểm tra khoảng Stop Loss dự kiến, Cooldown và giới hạn số giao dịch trước khi gửi Entry.

Về quản trị rủi ro, CNPS 47 sử dụng Stop Loss theo cấu trúc, kết hợp cực trị Setup với vị trí Shadow Rail và ATR Buffer.

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

  • Risk dự kiến hợp lệ: 2,5–8 điểm.
  • Take Profit: 1,8R.
  • Break Even: Kích hoạt tại 1R.
  • Break Even Offset: 0,5 điểm.
  • Profit Rail Trail: Có thể bật từ 1,25R.
  • Tối đa 4 giao dịch/ngày.
  • Cooldown 3 nến sau Exit.
  • Khối lượng mặc định: 3 hợp đồng.

Ngoài ra, chiến lược mặc định có thể đóng vị thế nếu xuất hiện Raw Rail Flip theo hướng đối lập, kể cả khi tín hiệu Flip đó chưa đạt các bộ lọc chất lượng để tạo Armed Setup mới.

Vậy hệ thống Adaptive Shadow Rail được xây dựng như thế nào, Trend Quality 20% phản ánh điều gì, tại sao CNPS 47 cần chờ Re-Entry và các cơ chế quản trị rủi ro hoạt động ra sao?

1. CNPS 47 Ghost Rail V2 Re-Entry là gì?

CNPS 47 là chiến lược giao dịch theo hướng xu hướng được xác định bởi Shadow Rail, kết hợp kiểm tra chất lượng chuyển động giá và xác nhận hành vi giá trước Entry.

Hệ thống được tổ chức thành bốn thành phần chính.

1.1. Adaptive Shadow Rail – Bộ máy xác định xu hướng

Adaptive Shadow Rail sử dụng dữ liệu nến làm mượt thay vì chỉ sử dụng Close thông thường.

Các thành phần tính toán gồm:

  • Smoothed Open, High, Low, Close.
  • Smoothed Span.
  • Mean Span.
  • Trend Cleanliness.
  • Impulse.
  • Volume Flow Bias.
  • Adaptive Spread.
  • Rail Drive.
  • Shadow Rail State.

Từ những thành phần này, chiến lược xây dựng một đường Shadow Rail phía dưới hoặc phía trên giá, tùy trạng thái xu hướng.

Bullish State: Sử dụng Shadow Low Rail.

Bearish State: Sử dụng Shadow High Rail.

Khi Smoothed Close phá qua đường Rail tương ứng, hệ thống có thể chuyển trạng thái.

1.2. Trend Quality – Bộ lọc độ sạch xu hướng

CNPS 47 đánh giá chất lượng xu hướng bằng cách so sánh:

Khoảng dịch chuyển ròng của giá trong 10 nến

với:

Tổng quãng đường giá đã di chuyển qua từng nến trong cùng giai đoạn.

Công thức khái quát:

Trend Quality = Net Movement / Total Movement × 100%.

Theo mặc định:

Minimum Trend Quality = 20%.

Một cú Rail Flip chỉ được chấp nhận khi Trend Quality đạt ngưỡng và các điều kiện khác hợp lệ.

Đây là chỉ số phản ánh mức độ trực tiếp của chuyển động giá trong cửa sổ quan sát, không phải xác suất xu hướng sẽ tiếp diễn.

1.3. Armed Setup & Re-Entry

Sau khi Rail Flip được chấp nhận, CNPS 47 chưa mở vị thế ngay.

Thay vào đó, bot tạo trạng thái Armed.

Với Long:

Accepted Bullish Rail Flip → Long Armed Setup.

Với Short:

Accepted Bearish Rail Flip → Short Armed Setup.

Setup có thời hạn mặc định 4 nến.

Trong khoảng thời gian này, bot tìm kiếm tín hiệu xác nhận hướng giá mới thông qua:

  • Hướng nến.
  • Tỷ lệ thân nến.
  • Close phá High/Low nến trước.
  • Trend Quality tiếp tục đạt ngưỡng.
  • Trạng thái Shadow Rail vẫn phù hợp.

Nếu một cây nến đạt toàn bộ điều kiện và Risk hợp lệ, bot có thể mở vị thế.

1.4. Risk & Position Management

CNPS 47 sử dụng Stop Loss theo cấu trúc.

Với Long, Stop được xây dựng từ mức thấp hơn giữa Setup Low và Shadow Low, sau đó trừ ATR Buffer.

Với Short, Stop sử dụng mức cao hơn giữa Setup High và Shadow High, sau đó cộng ATR Buffer.

Bot kiểm tra khoảng Risk dự kiến từ Close của cây nến xác nhận đến Structural Stop.

Sau khi vị thế được mở, chiến lược tính Take Profit theo Actual Initial Risk.

Ngoài SL/TP, hệ thống còn có Break Even, Profit Rail Trail tùy chọn, Opposite Rail Flip Exit và Force Close cuối phiên.

1.5. Các thông số mặc định

NhómThông sốGiá trị mặc định
Shadow RailTrend Sensitivity Length7
Shadow RailRail Spread1,8
Shadow RailRail Drive92
QualityMinimum Trend Quality20%
QualityFlip Setup Lifetime4 nến
QualityMinimum Trigger Body Ratio0,30
QualityPrevious High/Low BreakBật
HTFHigher Timeframe FilterTắt
HTFHigher Timeframe15 phút
HTFEMA Length50
TradeDirectionBoth
TradePosition Size3 hợp đồng
TradeMaximum Trades Per Day4
TradeCooldown After Exit3 nến
ExitOpposite Raw Rail FlipBật
RiskATR Length14
RiskStructural Stop Buffer0,15 ATR
RiskMinimum Risk2,5 điểm
RiskMaximum Risk8 điểm
TargetTake Profit1,8R
Break EvenSử dụngBật
Break EvenTrigger1R
Break EvenOffset0,5 điểm
Profit TrailSử dụngTắt
Profit TrailTrigger1,25R
SessionBuổi sáng09:00–11:30
SessionBuổi chiều13:00–14:30
SessionForce Close14:45

Source Code CNPS 47: [Chèn liên kết mã nguồn tại đây]

Trải nghiệm trên TradingView: [Chèn liên kết TradingView tại đây]

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

2.1. Smoothed Candle – Nến làm mượt

CNPS 47 sử dụng một hệ thống tính toán OHLC làm mượt có cấu trúc tương tự Heikin Ashi.

Smoothed Close:

Smoothed Close = (Open + High + Low + Close) / 4.

Smoothed Open:

Nếu chưa có giá trị trước đó:

Smoothed Open = (Open + Close) / 2.

Từ các cây nến tiếp theo:

Smoothed Open = (Smoothed Open trước + Smoothed Close trước) / 2.

Smoothed High:

Max(High thực tế, Smoothed Open, Smoothed Close).

Smoothed Low:

Min(Low thực tế, Smoothed Open, Smoothed Close).

Các giá trị này giúp tạo một chuỗi dữ liệu tham chiếu khác với giá đóng cửa thông thường.

Điểm quan trọng là chiến lược không chuyển biểu đồ sang dữ liệu Heikin Ashi bắt buộc.

Bot tự tính các giá trị Smoothed Candle bên trong mã nguồn.

2.2. Vì sao CNPS 47 sử dụng Smoothed Candle?

Trên các khung thời gian nhỏ, Close có thể dao động mạnh giữa những cây nến liên tiếp.

Việc làm mượt dữ liệu nhằm giảm ảnh hưởng của một phần biến động ngắn hạn khi xác định trạng thái xu hướng.

Tuy nhiên, làm mượt không bảo đảm loại bỏ hoàn toàn tín hiệu nhiễu.

Một điểm cần phân biệt:

Shadow Rail Flip được xác định bằng Smoothed Close.

Trong khi đó:

Re-Entry Confirmation, Risk và Stop Loss sử dụng dữ liệu OHLC thông thường.

Vì vậy, việc quan sát Close trên biểu đồ không phải lúc nào cũng đủ để suy ra chính xác thời điểm Rail Flip.

2.3. Smoothed Span

CNPS 47 xây dựng một thước đo biên độ biến động từ Smoothed Candle.

Nếu không có Smoothed Close của nến trước:

Smoothed Span = Smoothed High − Smoothed Low.

Trong các nến tiếp theo, bot lấy giá trị lớn nhất giữa:

  • Smoothed High − Smoothed Low.
  • |Smoothed High − Smoothed Close trước|.
  • |Smoothed Low − Smoothed Close trước|.

Đây là công thức có cấu trúc tương tự True Range nhưng sử dụng dữ liệu nến làm mượt.

2.4. Mean Span

Sau khi xác định Smoothed Span, bot tính trung bình trên số nến Sensitivity.

Công thức:

Mean Span = SMA(Smoothed Span, Swing Bars).

Theo mặc định:

Swing Bars = 7.

Mean Span được sử dụng trong:

  • Tính Impulse.
  • Xây dựng Upper Reference.
  • Xây dựng Lower Reference.

Điều quan trọng là Mean Span không phải ATR14 dùng trong Risk Management.

Đây là hai thước đo biến động được sử dụng cho những vai trò khác nhau.

2.5. Trend Cleanliness là gì?

Trend Cleanliness phản ánh mức độ trực tiếp của đường giá trong một cửa sổ quan sát.

CNPS 47 cố định:

Quality Lookback = 10 nến.

Bot tính hai đại lượng.

Directional Movement:

Khoảng cách tuyệt đối giữa Smoothed Close hiện tại và Smoothed Close cách 10 nến.

Công thức:

Directional Movement = |Smoothed Close hiện tại − Smoothed Close[10]|.

Wandering Movement:

Tổng giá trị tuyệt đối của thay đổi Smoothed Close qua 10 nến.

Công thức:

Wandering Movement = Sum(|Smoothed Close thay đổi từng nến|, 10).

2.6. Công thức Trend Quality

Clean Ratio = Directional Movement / Wandering Movement.

Nếu Wandering Movement bằng 0, Clean Ratio được đặt bằng 0.

Sau đó:

Trend Quality % = Clean Ratio × 100%.

Ví dụ:

Trong 10 nến, Smoothed Close di chuyển tổng cộng 30 điểm nếu cộng tất cả biến động tăng giảm tuyệt đối.

Tuy nhiên, khoảng cách từ đầu đến cuối chỉ là 12 điểm.

Khi đó:

Trend Quality = 12/30 × 100 = 40%.

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

40% ≥ 20%.

Bộ lọc Trend Quality đạt yêu cầu.

2.7. Trend Quality thấp phản ánh điều gì?

Giả sử trong 10 nến, giá liên tục tăng giảm qua lại.

Tổng khoảng di chuyển:

40 điểm.

Khoảng dịch chuyển ròng:

4 điểm.

Trend Quality:

4/40 × 100 = 10%.

Giá đã di chuyển khá nhiều nhưng không tạo được mức dịch chuyển ròng tương xứng.

Đây là tình huống mà bộ lọc Trend Cleanliness có thể đánh giá là thiếu trực tiếp.

Với Minimum Trend Quality 20%, tín hiệu không vượt bộ lọc.

Tuy nhiên, chỉ số này không phân biệt độc lập hướng tăng và hướng giảm vì tử số sử dụng trị tuyệt đối.

Hướng giao dịch vẫn do Shadow Rail xác định.

2.8. Trend Quality 20% không phải xác suất thắng 20%

Chỉ số Trend Quality là tỷ lệ của hai đại lượng biến động giá.

Một giá trị bằng 70% không có nghĩa:

  • Giao dịch có xác suất thắng 70%.
  • Lực mua chiếm 70% thị trường.
  • Xu hướng có độ tin cậy 70%.
  • Giá chắc chắn sẽ tiếp diễn.

Nó chỉ phản ánh tỷ lệ dịch chuyển ròng trên tổng quãng đường di chuyển của Smoothed Close trong 10 nến.

Ngoài ra, cùng một giá trị Trend Quality có thể xuất hiện trong cả xu hướng tăng và xu hướng giảm.

2.9. Impulse

CNPS 47 sử dụng Impulse để đánh giá mức thay đổi của Smoothed Close theo đơn vị Mean Span.

Công thức:

Impulse = (Smoothed Close hiện tại − Smoothed Close trước) / Mean Span.

Nếu Mean Span không có dữ liệu hoặc bằng 0, Impulse được đặt bằng 0.

Ví dụ:

  • Smoothed Close tăng 3 điểm.
  • Mean Span = 5 điểm.

Impulse:

3/5 = 0,60.

Nếu Smoothed Close giảm 3 điểm:

Impulse = −0,60.

Độ lớn Impulse được sử dụng để điều chỉnh khoảng cách Rail.

2.10. Live Spread

CNPS 47 tính:

Live Spread = Rail Spread × (1 + 0,30 × |Impulse|).

Theo mặc định:

Rail Spread = 1,8.

Ví dụ, nếu Impulse = 0,60:

Live Spread = 1,8 × (1 + 0,30 × 0,60).

Live Spread = 2,124.

Khi độ lớn Impulse tăng, Live Spread cũng tăng theo công thức.

Điều này làm thay đổi khoảng cách của những mức Reference được sử dụng để xây dựng Shadow Rail.

Một điểm quan trọng là Live Spread dùng trị tuyệt đối của Impulse, nên độ lớn của chuyển động tăng và giảm đều có thể làm mở rộng Spread.

2.11. Volume Flow Bias

Ngoài dữ liệu giá, Shadow Rail sử dụng Volume Flow Bias.

Bot tính một giá trị Raw Flow từ vị trí tương đối của Smoothed Close so với Smoothed Open, nhân với Volume.

Công thức khái quát:

Raw Flow = (Smoothed Close − Smoothed Open) / Smoothed Range × Volume.

Trong đó:

Smoothed Range = Smoothed High − Smoothed Low.

Nếu Smoothed Range bằng 0, Raw Flow được đặt bằng 0.

Sau đó bot làm mượt:

Flow Smooth = EMA(Raw Flow, 14).

Volume Smooth = EMA(Volume, 14).

Volume Flow Bias được xác định bằng tỷ lệ Flow Smooth / Volume Smooth, giới hạn trong khoảng từ −1 đến +1.

2.12. Ý nghĩa của Flow Bias

Flow Bias dương khi đại lượng Flow Smooth mang giá trị dương tương đối so với Volume Smooth.

Flow Bias âm khi đại lượng Flow Smooth mang giá trị âm.

Ví dụ:

Flow Bias = +0,50.

Theo công thức của bot, giá trị này làm cho Spread Down lớn hơn Spread Up nếu các điều kiện khác không đổi.

Ngược lại:

Flow Bias = −0,50.

Spread Up lớn hơn Spread Down.

Cần lưu ý rằng Volume Flow Bias được suy luận từ vị trí của nến và tổng Volume.

Nó không phải Delta Volume thực tế từ dữ liệu Bid/Ask và cũng không xác định trực tiếp lượng mua chủ động, bán chủ động trong Order Flow.

2.13. Adaptive Spread Up/Down

CNPS 47 sử dụng Flow Bias để tính hai khoảng Spread.

Spread Down = Live Spread × Max(0,20; 1 + 0,20 × Flow Bias).

Spread Up = Live Spread × Max(0,20; 1 − 0,20 × Flow Bias).

Ví dụ:

  • Live Spread = 2.
  • Flow Bias = +0,50.

Spread Down:

2 × (1 + 0,20 × 0,50) = 2,20.

Spread Up:

2 × (1 − 0,20 × 0,50) = 1,80.

Như vậy, hệ thống không sử dụng một khoảng Spread hoàn toàn đối xứng trong mọi trạng thái.

2.14. Upper Reference và Lower Reference

Hai mức Reference được tính từ Smoothed Close và Mean Span.

Upper Reference = Smoothed Close + Mean Span × Spread Up.

Lower Reference = Smoothed Close − Mean Span × Spread Down.

Ví dụ:

  • Smoothed Close = 1,900.
  • Mean Span = 4.
  • Spread Up = 1,80.
  • Spread Down = 2,20.

Khi đó:

Upper Reference = 1,907.2.

Lower Reference = 1,891.2.

Hai Reference là cơ sở cập nhật vị trí Shadow Rail trong từng trạng thái xu hướng.

Tuy nhiên, chúng không phải trực tiếp là Stop Loss của mọi giao dịch.

2.15. Rail Drive

CNPS 47 sử dụng tham số:

Rail Drive = 92.

Rail Drive tham gia tính Step Damping, tức hệ số điều chỉnh tốc độ cập nhật Shadow Rail.

Công thức trong source:

Step Damping = Max(0,01; (100 − Rail Drive) × (1 − 0,5 × (2 × Clean Ratio − 1))).

Sau đó:

Slow Damping = 0,60 × Step Damping.

Fast Damping = 0,40 × Step Damping.

Ví dụ:

  • Rail Drive = 92.
  • Clean Ratio = 0,50.

Khi đó:

Step Damping = 8.

Slow Damping = 4,8.

Fast Damping = 3,2.

Những hệ số này điều chỉnh mức độ Shadow Rail thay đổi khi Reference tăng hoặc giảm.

Rail Drive càng cao có thể khiến Step Damping giảm theo công thức, làm thay đổi độ nhạy cập nhật Rail.

Tuy nhiên, kết quả cuối cùng còn phụ thuộc vào Trend Cleanliness và các điều kiện cập nhật riêng của từng trạng thái.

2.16. Bullish Shadow Rail

Khi Trend Side = Bullish, hệ thống sử dụng Shadow Low.

Bot duy trì một mức Shadow Peak, đại diện cho Lower Reference cao nhất được ghi nhận trong trạng thái tương ứng.

Nếu Lower Reference tạo mức cao mới cho Shadow Peak, Shadow Low được điều chỉnh theo mức tăng của Peak.

Trong những tình huống khác, Shadow Low được điều chỉnh dựa trên thay đổi Lower Reference và các hệ số Damping.

Nếu:

Smoothed Close < Shadow Low.

Bot chuyển Trend Side sang Bearish.

Tại thời điểm đó, Shadow High được khởi tạo từ Upper Reference.

2.17. Bearish Shadow Rail

Khi Trend Side = Bearish, hệ thống sử dụng Shadow High.

Bot lưu Shadow Trough, đại diện cho Upper Reference thấp nhất đã ghi nhận.

Shadow High được cập nhật theo biến động Upper Reference và các hệ số Damping.

Nếu:

Smoothed Close > Shadow High.

Bot chuyển trạng thái sang Bullish.

Sau đó, Shadow Low được khởi tạo từ Lower Reference.

2.18. Rail Flip

Rail Flip là sự kiện Trend Side thay đổi giữa hai trạng thái.

Raw Turn Up:

Trend Side hiện tại = Bullish.

Trend Side nến trước = Bearish.

Raw Turn Down:

Trend Side hiện tại = Bearish.

Trend Side nến trước = Bullish.

Đây là các tín hiệu đảo chiều thô được tạo trực tiếp từ Shadow Rail Engine.

Một Raw Flip chưa đồng nghĩa bot sẽ mở giao dịch hoặc tạo Armed Setup.

2.19. Quality-Accepted Flip

CNPS 47 tiếp tục kiểm tra Raw Flip bằng bộ lọc chất lượng.

Accepted Turn Up yêu cầu:

  • Raw Turn Up xuất hiện.
  • Trend Quality ≥ 20%.
  • HTF Long Filter hợp lệ.
  • Nến đã đóng cửa.

Accepted Turn Down yêu cầu:

  • Raw Turn Down xuất hiện.
  • Trend Quality ≥ 20%.
  • HTF Short Filter hợp lệ.
  • Nến đã đóng cửa.

Chỉ Accepted Flip mới được sử dụng để tạo Armed Setup.

Nếu một Raw Flip không đạt Trend Quality hoặc HTF Filter, nó không tạo Armed Setup.

Tuy nhiên, Trend Side vẫn có thể đã chuyển trạng thái vì bộ máy Rail được cập nhật trước bộ lọc chất lượng.

2.20. Higher Timeframe EMA Filter

CNPS 47 có bộ lọc EMA khung thời gian cao hơn.

Mặc định:

Use HTF Filter = False.

Các thông số mặc định:

  • Higher Timeframe: 15 phút.
  • HTF EMA Length: 50.

Khi bật, Long yêu cầu Close của nến HTF đã đóng lớn hơn EMA50 HTF tại cùng nến đã đóng.

Short yêu cầu điều kiện ngược lại.

Mã nguồn sử dụng dữ liệu [1] trong request.security() để tham chiếu cây nến của khung được yêu cầu đã hoàn tất.

2.21. HTF Filter không được kiểm tra lại tại Re-Entry

Đây là một điểm quan trọng.

HTF Filter được sử dụng khi xác nhận Rail Flip.

Khi đã tạo Armed Setup, điều kiện Raw Re-Entry không gọi lại trực tiếp htfLongOK hoặc htfShortOK.

Điều đó có nghĩa một Setup đã được Armed trong bối cảnh HTF phù hợp có thể tiếp tục được xét theo các điều kiện Re-Entry dù trạng thái HTF thay đổi sau đó.

Tuy nhiên, Setup vẫn phải duy trì đúng Trend Side, đủ Trend Quality và chưa hết thời hạn.

2.22. Armed Setup là gì?

Armed Setup là trạng thái chờ giao dịch được tạo từ Accepted Rail Flip.

Long Armed lưu:

  • Long Setup Bar.
  • Long Setup Low.

Short Armed lưu:

  • Short Setup Bar.
  • Short Setup High.

Các biến này giúp chiến lược biết:

  • Setup được tạo từ nến nào.
  • Setup còn hiệu lực bao lâu.
  • Cực trị giá nào được sử dụng để tính Structural Stop.

Theo mặc định:

Setup Lifetime = 4 nến.

2.23. Armed Setup không phải lệnh Entry

Khi một Rail Flip được chấp nhận, bot chỉ lưu trạng thái Setup nếu:

  • Đang Flat.
  • Nằm trong Entry Session.

Một lệnh Long hoặc Short chưa được gửi tại bước này.

Bot cần chờ ít nhất một cây nến tiếp theo.

Việc tách Rail Flip và Entry là một trong những khác biệt quan trọng của CNPS 47 V2.

2.24. Setup Lifetime

Nếu Long Armed được tạo tại Bar 100 và Lifetime bằng 4:

  • Bar 100: Chỉ tạo Armed.
  • Bar 101: Có thể xét Re-Entry.
  • Bar 102: Có thể xét Re-Entry.
  • Bar 103: Có thể xét Re-Entry.
  • Bar 104: Có thể xét Re-Entry.
  • Bar 105: Setup hết hạn.

Ngoài thời hạn số nến, Setup còn bị hủy nếu Trend Side không còn phù hợp hoặc một cây nến được xử lý nằm ngoài Entry Session.

2.25. Cập nhật Setup High/Low

Khi Long Armed đang Active:

Long Setup Low = Min(Long Setup Low trước, Low hiện tại).

Khi Short Armed đang Active:

Short Setup High = Max(Short Setup High trước, High hiện tại).

Ví dụ:

Long Armed được tạo với Low = 1,900.

Nến tiếp theo có Low = 1,898.

Bot cập nhật:

Long Setup Low = 1,898.

Nếu nến sau có Low = 1,899, Long Setup Low vẫn bằng 1,898.

Cực trị Setup được sử dụng khi tính Structural Stop.

Điểm quan trọng là cực trị của chính nến Trigger cũng có thể tham gia tính Stop vì Setup được cập nhật trước bước Risk Validation.

3. Nguyên lý hoạt động của CNPS 47 Ghost Rail V2 Re-Entry

Quy trình tổng quát:

Smoothed Candle → Adaptive Shadow Rail → Raw Rail Flip → Trend Quality → Accepted Flip → Armed Setup → Re-Entry Confirmation → Structural Risk → Entry → Position Management.

Bước 1: Xây dựng Smoothed Candle

Bot tính Smoothed Open, High, Low, Close từ dữ liệu OHLC hiện tại.

Những giá trị này tạo nền tảng cho Shadow Rail Engine.

Bước 2: Tính Smoothed Span

Chiến lược xác định biên độ biến động bằng công thức True Range-like dựa trên Smoothed Candle.

Bước 3: Tính Mean Span

Smoothed Span được làm trung bình trên 7 nến theo cấu hình mặc định.

Mean Span được dùng để chuẩn hóa Impulse và xác định khoảng cách Rail Reference.

Bước 4: Tính Trend Cleanliness

Bot tính khoảng dịch chuyển ròng của Smoothed Close trong 10 nến.

Sau đó so sánh với tổng biến động tuyệt đối trong cùng cửa sổ.

Kết quả được chuyển thành Trend Quality %.

Bước 5: Tính Impulse

Impulse phản ánh thay đổi của Smoothed Close so với Mean Span.

Giá trị tuyệt đối Impulse càng lớn thì Live Spread càng được mở rộng theo công thức.

Bước 6: Tính Volume Flow Bias

Bot xây dựng một đại lượng dòng khối lượng từ Smoothed Candle và Volume.

Sau khi làm mượt bằng EMA14 và chuẩn hóa, Flow Bias được giới hạn trong khoảng −1 đến +1.

Bước 7: Tính Adaptive Spread

Live Spread được điều chỉnh theo Impulse.

Sau đó, Flow Bias được sử dụng để tạo Spread Up và Spread Down.

Hai khoảng này có thể khác nhau.

Bước 8: Tính Upper/Lower Reference

Bot xây dựng Upper Reference và Lower Reference quanh Smoothed Close dựa trên Mean Span và Adaptive Spread.

Bước 9: Cập nhật Shadow Rail

Chiến lược sử dụng Trend Side hiện tại để quyết định cập nhật Shadow Low hay Shadow High.

Các mức Rail được thay đổi theo Reference, Shadow Peak/Trough và Damping.

Bước 10: Phát hiện Raw Flip

Khi Smoothed Close phá qua Shadow Rail theo hướng đối lập, Trend Side được chuyển trạng thái.

Nếu chuyển từ Bearish sang Bullish, Raw Turn Up xuất hiện.

Nếu chuyển từ Bullish sang Bearish, Raw Turn Down xuất hiện.

Bước 11: Kiểm tra Trend Quality

Bot yêu cầu:

Trend Quality ≥ 20%.

Nếu dưới ngưỡng, Raw Flip không được chấp nhận để tạo Setup mới.

Bước 12: Kiểm tra HTF Filter

Nếu bộ lọc HTF được bật, hướng Flip phải đồng thuận với EMA50 khung thời gian được chọn.

Nếu HTF Filter tắt, điều kiện này tự động được bỏ qua.

Bước 13: Xác nhận Accepted Flip

Bot yêu cầu Raw Flip, Trend Quality và HTF phù hợp, đồng thời nến đã đóng.

Khi đó, Accepted Turn Up hoặc Accepted Turn Down được xác nhận.

Bước 14: Kiểm tra điều kiện Armed

Bot chỉ tạo Armed khi:

  • Accepted Flip hợp lệ.
  • Đang Flat.
  • Nằm trong Entry Session.

Một Flip xuất hiện khi đang có vị thế không trực tiếp tạo Setup mới tại bước Armed thông thường.

Bước 15: Lưu Armed Setup

Với Long:

  • Long Setup Bar = Current Bar.
  • Long Setup Low = Low hiện tại.

Với Short:

  • Short Setup Bar = Current Bar.
  • Short Setup High = High hiện tại.

Khi tạo Long Armed, bot xóa Short Armed nếu đang tồn tại, và ngược lại.

Bước 16: Chờ nến tiếp theo

Chiến lược không cho phép Entry trên chính cây nến tạo Armed.

Điều kiện Setup Active yêu cầu:

Current Bar Index > Setup Bar Index.

Bước 17: Kiểm tra Lifetime và Trend Side

Long Setup Active khi:

  • Chưa vượt 4 nến.
  • Trend Side vẫn Bullish.
  • Nằm trong Entry Session.

Short Setup yêu cầu Trend Side Bearish.

Bước 18: Cập nhật cực trị Setup

Khi Setup Active, bot tiếp tục lưu Low thấp nhất cho Long hoặc High cao nhất cho Short.

Bước 19: Kiểm tra Trigger Candle

Long cần:

Close > Open.

Body Ratio ≥ 0,30.

Short cần:

Close < Open.

Body Ratio ≥ 0,30.

Bước 20: Kiểm tra Previous High/Low Break

Theo mặc định:

Long: Close > High[1].

Short: Close < Low[1].

Nếu tắt Require Previous High/Low Break, điều kiện này được bỏ qua.

Bước 21: Kiểm tra lại Trend Quality

Khi tạo Raw Re-Entry, CNPS 47 tiếp tục yêu cầu:

Trend Quality ≥ 20%.

Điều này có nghĩa đạt Trend Quality ở cây nến Flip chưa đủ.

Tại nến Trigger, chất lượng xu hướng vẫn phải đạt ngưỡng.

Bước 22: Tạo Raw Re-Entry

Raw Long được xác nhận khi:

  • Flat.
  • Long được phép.
  • Long Setup Active.
  • Nến tăng đạt Body Ratio.
  • Close phá High nến trước nếu yêu cầu.
  • Trend Quality đạt ngưỡng.
  • Nến đã đóng cửa.

Raw Short sử dụng logic đối xứng.

Bước 23: Xác định Structural Stop

Bot kết hợp cực trị Setup với Shadow Rail và ATR Buffer.

Với Long:

Candidate Stop = Min(Setup Low, Shadow Low) − 0,15 ATR.

Với Short:

Candidate Stop = Max(Setup High, Shadow High) + 0,15 ATR.

Nếu giá trị Rail tương ứng không có dữ liệu, bot dùng cực trị Setup và ATR Buffer.

Bước 24: Tính Risk dự kiến

Long:

Candidate Risk = Close − Candidate Stop.

Short:

Candidate Risk = Candidate Stop − Close.

Bước 25: Kiểm tra Risk Filter

Mặc định:

2,5 ≤ Candidate Risk ≤ 8 điểm.

Nếu khoảng Risk nhỏ hơn 2,5 hoặc lớn hơn 8, Final Entry không được chấp thuận.

Bước 26: Kiểm tra Trade Control

Bot yêu cầu:

  • Flat.
  • Entry Session hợp lệ.
  • Cooldown hợp lệ.
  • Trades Today chưa đạt 4.

Bước 27: Gửi Final Entry

Khi toàn bộ điều kiện đạt, bot gửi:

Long Entry hoặc Short Entry.

Khối lượng mặc định là 3 hợp đồng.

Đồng thời, bot lưu Pending Structural Stop và tăng Trades Today.

Các Armed Setup được xóa sau khi Entry được gửi.

Bước 28: Khởi tạo Position Management

Sau khi bot nhận diện vị thế mới, chiến lược lấy giá khớp trung bình.

Stop được đặt theo Pending Structural Stop đã lưu.

Actual Initial Risk được tính từ giá khớp đến mức Stop.

Take Profit được xây dựng theo Actual Initial Risk × 1,8.

Bước 29: Theo dõi Maximum Profit R

Bot sử dụng High hoặc Low thuận lợi của nến để cập nhật Maximum Profit R.

Giá trị này phục vụ Break Even và Profit Rail Trail.

Bước 30: Break Even tại 1R

Khi Maximum Profit R đạt ít nhất 1:

  • Long Stop có thể nâng lên Entry + 0,5 điểm.
  • Short Stop có thể hạ xuống Entry − 0,5 điểm.

Bước 31: Profit Rail Trail tùy chọn

Nếu được bật và Maximum Profit R đạt ít nhất 1,25R, bot có thể sử dụng Shadow Low hoặc Shadow High để điều chỉnh Stop theo hướng bảo vệ.

Bước 32: Opposite Raw Flip Exit

Nếu đang Long và xuất hiện Raw Turn Down, bot có thể đóng Long.

Nếu đang Short và xuất hiện Raw Turn Up, bot có thể đóng Short.

Cơ chế này mặc định bật và không yêu cầu Opposite Flip vượt qua Trend Quality.

Bước 33: Force Close cuối phiên

Khi cây nến đi qua thời điểm 14:45, chiến lược yêu cầu đóng toàn bộ vị thế.

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

4.1. Long – Bullish Rail Flip Re-Entry

Long được hình thành qua hai giai đoạn.

Giai đoạn A: Long Armed

  1. Shadow Rail chuyển từ Bearish sang Bullish.
  2. Raw Turn Up hợp lệ.
  3. Trend Quality ≥ 20%.
  4. HTF Long Filter hợp lệ nếu bật.
  5. Nến xác nhận đóng cửa.
  6. Chiến lược đang Flat.
  7. Nằm trong Entry Session.

Khi toàn bộ điều kiện đạt, bot ghi nhận Long Armed Setup.

Giai đoạn B: Long Re-Entry

  1. Long Armed đã tồn tại.
  2. Nến hiện tại xuất hiện sau nến tạo Armed.
  3. Setup chưa vượt 4 nến.
  4. Trend Side vẫn Bullish.
  5. Đang trong Entry Session.
  6. Close > Open.
  7. Body Ratio ≥ 0,30.
  8. Close > High nến trước.
  9. Trend Quality ≥ 20%.
  10. Nến đã đóng cửa.
  11. Risk dự kiến từ 2,5 đến 8 điểm.
  12. Trade Direction cho phép Long.
  13. Đang Flat.
  14. Cooldown hợp lệ.
  15. Trades Today dưới 4.

Nếu các điều kiện đạt, bot gửi Long Entry.

4.2. Ví dụ Long minh họa

Giả sử CNPS 47 xuất hiện Accepted Turn Up tại Bar 100.

Khi đó:

  • Trend Side chuyển sang Bullish.
  • Trend Quality = 42%.
  • Long Armed được tạo.
  • Low của nến Armed = 1,895.

Tại Bar 101, giả sử:

  • Open = 1,895.5.
  • High = 1,900.
  • Low = 1,895.
  • Close = 1,899.
  • High nến trước = 1,898.
  • Shadow Low = 1,893.5.
  • ATR14 = 4.
  • Trend Quality = 35%.

Kiểm tra Trigger Candle:

Close 1,899 > Open 1,895.5.

Body Ratio:

(1,899 − 1,895.5)/(1,900 − 1,895) = 0,70.

Ngưỡng tối thiểu:

0,30.

Nến đạt yêu cầu.

Previous High Break:

1,899 > 1,898.

Trend Quality:

35% ≥ 20%.

Setup vẫn nằm trong Lifetime và Trend Side vẫn Bullish.

Structural Stop:

Min(1,895; 1,893.5) − 0,15 × 4.

Stop = 1,893.5 − 0,6 = 1,892.9.

Risk dự kiến:

1,899 − 1,892.9 = 6,1 điểm.

Khoảng Risk hợp lệ vì:

2,5 ≤ 6,1 ≤ 8.

Giả sử Session, Trade Limit và Cooldown đều đạt, bot có thể tạo Final Long.

Nếu Long khớp tại 1,899:

  • Entry = 1,899.
  • Stop Loss = 1,892.9.
  • Actual Initial Risk = 6,1 điểm.

Take Profit 1,8R:

1,899 + 6,1 × 1,8 = 1,909.98.

Break Even Trigger 1R:

1,905.1.

Break Even Stop:

1,899.5.

Nếu bật Profit Rail Trail, ngưỡng kích hoạt 1,25R tương ứng mức thuận lợi 7,625 điểm.

Đây chỉ là ví dụ minh họa công thức, không phải tín hiệu thực tế của VN30F1M.

4.3. Short – Bearish Rail Flip Re-Entry

Short cũng gồm hai giai đoạn.

Giai đoạn A: Short Armed

  1. Shadow Rail chuyển từ Bullish sang Bearish.
  2. Raw Turn Down hợp lệ.
  3. Trend Quality ≥ 20%.
  4. HTF Short Filter hợp lệ nếu bật.
  5. Nến đã đóng cửa.
  6. Đang Flat.
  7. Entry Session hợp lệ.

Giai đoạn B: Short Re-Entry

  1. Short Armed tồn tại.
  2. Nến hiện tại xuất hiện sau nến Armed.
  3. Setup còn trong 4 nến.
  4. Trend Side vẫn Bearish.
  5. Nến giảm.
  6. Body Ratio ≥ 0,30.
  7. Close < Low nến trước.
  8. Trend Quality vẫn ≥ 20%.
  9. Risk dự kiến 2,5–8 điểm.
  10. Trade Direction cho phép Short.
  11. Cooldown, Trade Limit và Session hợp lệ.

4.4. Ví dụ Short minh họa

Giả sử Accepted Turn Down xuất hiện tại Bar 110.

Bot lưu:

Short Setup High = 1,906.

Ở Bar 111:

  • Open = 1,905.
  • High = 1,906.
  • Low = 1,901.
  • Close = 1,901.5.
  • Low nến trước = 1,902.
  • Shadow High = 1,907.
  • ATR14 = 4.
  • Trend Quality = 48%.

Body Ratio:

(1,905 − 1,901.5)/(1,906 − 1,901) = 0,70.

Previous Low Break:

1,901.5 < 1,902.

Trend Quality đạt yêu cầu.

Structural Stop:

Max(1,906; 1,907) + 0,15 × 4.

Stop = 1,907.6.

Risk dự kiến:

1,907.6 − 1,901.5 = 6,1 điểm.

Risk hợp lệ.

Nếu lệnh Short được khớp tại 1,901.5:

Actual Risk = 6,1 điểm.

Take Profit:

1,901.5 − 6,1 × 1,8 = 1,890.52.

Break Even Trigger 1R:

1,895.4.

Break Even Stop:

1,901.0.

Các mức giá cần được quy đổi về bước giá hợp lệ của sản phẩm khi sử dụng thực tế.

4.5. Re-Entry không yêu cầu giá Retest Shadow Rail

Mặc dù chiến lược có tên Re-Entry, mã nguồn không bắt buộc một nhịp Retest trở lại Shadow Rail sau khi Flip.

Bot chỉ yêu cầu:

  • Accepted Flip đã tạo Armed.
  • Một cây nến xác nhận xuất hiện trong Lifetime.
  • Cây nến đúng hướng.
  • Close phá High/Low trước.
  • Trend Quality và Risk hợp lệ.

Vì vậy, không nên mô tả CNPS 47 là chiến lược bắt buộc giá quay lại chạm Rail rồi mới vào lệnh.

4.6. Re-Entry không yêu cầu EMA hoặc RSI

Khác với những hệ thống Trend Pullback sử dụng EMA34/89 và RSI7, CNPS 47 không có điều kiện EMA hoặc RSI bắt buộc trong bộ máy Re-Entry mặc định.

Những yếu tố quyết định gồm:

Shadow Rail State + Trend Quality + Candle Body + Previous High/Low Break.

EMA50 chỉ xuất hiện trong HTF Filter tùy chọn tại bước Accepted Flip.

4.7. Previous Break có thể được tắt

Theo mặc định:

Require Previous High/Low Break = True.

Khi bật:

  • Long yêu cầu Close > High[1].
  • Short yêu cầu Close < Low[1].

Nếu tắt, bot không cần điều kiện này.

Tuy nhiên, Trigger vẫn phải đáp ứng hướng nến, Body Ratio, Trend Quality và các bộ lọc còn lại.

4.8. Accepted Flip không nhất thiết tạo Armed

Một Accepted Flip có thể xuất hiện khi bot đang giữ vị thế.

Trong trường hợp đó, điều kiện Flat không đạt nên Armed Setup mới không được tạo bởi nhánh thông thường.

Tương tự, nếu Accepted Flip xuất hiện ngoài Entry Session, chiến lược không ghi nhận Armed mới.

Vì Accepted Flip chỉ xuất hiện trên nến Rail chuyển trạng thái, bot không tự động tạo lại cùng Setup ở những nến sau chỉ vì xu hướng tiếp tục tồn tại.

4.9. Raw Trigger có thể bị từ chối bởi Risk

Giả sử Long Armed còn hiệu lực.

Nến tiếp theo có:

  • Nến tăng hợp lệ.
  • Close vượt High trước.
  • Trend Quality đạt yêu cầu.

Tuy nhiên:

Candidate Long Risk = 9,5 điểm.

Vì Maximum Risk mặc định là 8 điểm, bot không gửi Entry.

Điểm đáng chú ý là Setup không bị xóa chỉ vì Raw Trigger thất bại ở bước Risk Filter.

Nếu Setup còn hiệu lực, một cây nến tiếp theo vẫn có thể được xét.

4.10. Không tự động đảo chiều vị thế

CNPS 47 không sử dụng một nhánh Entry nhằm đảo trực tiếp từ Long sang Short khi đang có vị thế.

Final Entry yêu cầu Flat.

Nếu đang Long và Shadow Rail chuyển Bearish, bot có thể đóng Long qua Opposite Raw Flip Exit.

Tuy nhiên, điều này không đồng nghĩa chiến lược bắt buộc mở Short ngay sau khi đóng.

Short Entry mới vẫn cần có Armed Setup và Re-Entry Confirmation hợp lệ.

4.11. Mỗi Accepted Flip là một cơ hội tạo Setup

CNPS 47 chỉ tạo Armed trên cây nến Accepted Flip.

Nếu Flip bị bộ lọc Trend Quality từ chối, bot không tiếp tục chờ để xác nhận lại chính Flip đó ở một nến sau.

Để có Accepted Flip mới, thông thường Shadow Rail cần trải qua một lần chuyển trạng thái mới.

Đây là điểm khác với hệ thống lưu Raw Flip chưa đạt chất lượng rồi chờ xác nhận bổ sung.

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

5.1. Structural Stop Loss

CNPS 47 không sử dụng Stop Loss cố định 5 điểm.

Thay vào đó, Stop được xây dựng theo cấu trúc của Setup và Shadow Rail.

Với Long:

Stop = Min(Setup Low, Shadow Low) − ATR14 × 0,15.

Với Short:

Stop = Max(Setup High, Shadow High) + ATR14 × 0,15.

Đây là cơ chế kết hợp hai tham chiếu:

  • Cực trị giá đã hình thành trong quá trình Armed.
  • Vị trí Adaptive Shadow Rail tại thời điểm tính Stop.

5.2. Shadow Rail có thể làm Stop rộng hơn

Ví dụ Long:

  • Setup Low = 1,900.
  • Shadow Low = 1,898.
  • ATR14 = 4.

Stop:

Min(1,900; 1,898) − 0,6 = 1,897.4.

Nếu chỉ sử dụng Setup Low:

Stop = 1,899.4.

Như vậy, việc kết hợp Shadow Rail khiến mức Stop thấp hơn trong ví dụ này.

Điều này có thể tăng khoảng Risk dự kiến và khiến một tín hiệu bị loại bởi Maximum Risk Filter.

5.3. ATR Buffer

Theo mặc định:

Structural Stop Buffer = 0,15 ATR.

Ví dụ, ATR14 = 6 điểm.

Buffer:

6 × 0,15 = 0,9 điểm.

Với Long, Buffer được trừ khỏi mức cấu trúc thấp hơn.

Với Short, Buffer được cộng vào mức cấu trúc cao hơn.

ATR Buffer giúp đặt mức Stop ngoài cấu trúc tham chiếu theo một khoảng liên quan đến biến động, nhưng không đảm bảo tránh được các lần giá quét Stop.

5.4. Risk Filter 2,5–8 điểm

CNPS 47 yêu cầu Risk dự kiến:

Minimum Risk = 2,5 điểm.

Maximum Risk = 8 điểm.

Ví dụ:

Risk dự kiếnKết quả
2 điểmTừ chối
2,5 điểmChấp nhận
5 điểmChấp nhận
8 điểmChấp nhận
9 điểmTừ chối

Risk được tính từ Close của nến Trigger đến Candidate Structural Stop.

5.5. Risk Filter không điều chỉnh Stop cho phù hợp ngưỡng

Một điểm quan trọng là Minimum Risk và Maximum Risk chỉ được sử dụng để kiểm tra.

Nếu Candidate Risk bằng 10 điểm và Maximum Risk bằng 8 điểm, bot không tự động kéo Stop lại gần để còn 8 điểm.

Tín hiệu bị từ chối.

Tương tự, nếu Risk chỉ bằng 2 điểm, bot không tự động nới Stop để đạt 2,5 điểm.

Đây là sự khác biệt với những chiến lược có cơ chế tự động ép khoảng Stop về giới hạn cho phép.

5.6. Actual Risk sau khớp

Khi Final Entry được gửi, bot lưu Candidate Structural Stop.

Sau khi nhận diện vị thế mới, chiến lược lấy:

Active Entry Price = Strategy Position Average Price.

Long:

Actual Risk = Active Entry − Structural Stop.

Short:

Actual Risk = Structural Stop − Active Entry.

Điều này có nghĩa mức Stop được giữ theo giá cấu trúc, còn khoảng Risk thực tế được tính lại từ giá khớp.

5.7. Actual Risk có thể khác Risk dự kiến

Ví dụ:

  • Close Long tín hiệu = 1,900.
  • Structural Stop = 1,894.
  • Risk dự kiến = 6 điểm.

Nếu giá khớp thực tế bằng 1,901:

Actual Risk = 1,901 − 1,894 = 7 điểm.

Nếu giá khớp tại 1,903:

Actual Risk = 9 điểm.

Trong tình huống thứ hai, Actual Risk vượt giới hạn 8 điểm dù Candidate Risk trước Entry đã đạt.

Mã nguồn không có bước kiểm tra lại Maximum Risk để điều chỉnh hoặc hủy vị thế sau khớp.

5.8. Take Profit 1,8R

Theo mặc định:

Take Profit R = 1,8.

Target được tính từ Actual Initial Risk.

Với Long:

TP = Entry + Actual Risk × 1,8.

Với Short:

TP = Entry − Actual Risk × 1,8.

Ví dụ:

  • Entry Long = 1,900.
  • Stop = 1,895.
  • Actual Risk = 5 điểm.

Take Profit:

1,900 + 5 × 1,8 = 1,909.

Đây là khoảng lợi nhuận danh nghĩa trước phí và trượt giá.

5.9. Take Profit không tự động dịch chuyển theo Rail

Mặc dù Shadow Rail liên tục thay đổi, Take Profit của CNPS 47 được xác định khi khởi tạo vị thế.

Target không được cập nhật lại theo vị trí Rail mới mỗi nến.

Trong khi đó, nếu bật Profit Rail Trail, Stop Loss có thể được điều chỉnh theo Rail.

Vì vậy, cần phân biệt:

TP = Mức mục tiêu theo R cố định từ Entry.

Rail Trail = Cơ chế điều chỉnh Stop tùy chọn.

5.10. Break Even tại 1R

CNPS 47 mặc định bật:

Use Break Even = True.

Thông số:

Break Even Trigger = 1R.

Break Even Offset = 0,5 điểm.

Với Long:

Khi Maximum Profit R đạt ít nhất 1:

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

Với Short:

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

5.11. Ví dụ Break Even

Giả sử:

  • Long Entry = 1,900.
  • Stop ban đầu = 1,895.
  • Initial Risk = 5 điểm.

Khi High đạt:

1,905.

Giá đã di chuyển thuận lợi 1R theo cách tính của bot.

Stop có thể được nâng lên:

1,900.5.

Nếu giá quay đầu và lệnh Stop mới được khớp tại mức đó, kết quả danh nghĩa là +0,5 điểm mỗi hợp đồng trước chi phí.

Tuy nhiên, Break Even không đảm bảo lợi nhuận ròng sau phí và Slippage.

5.12. Maximum Profit R

CNPS 47 lưu mức lợi nhuận thuận lợi lớn nhất theo đơn vị R.

Long:

Profit R = (High − Entry) / Actual Initial Risk.

Short:

Profit R = (Entry − Low) / Actual Initial Risk.

Sau đó:

Maximum Profit R = Max(Maximum Profit R trước, Profit R hiện tại).

Giá trị này không giảm khi thị trường điều chỉnh.

Ví dụ, một giao dịch từng đạt 1,4R nhưng sau đó chỉ còn mức thuận lợi 0,8R, Maximum Profit R vẫn giữ 1,4R.

5.13. Profit Rail Trail

CNPS 47 có tùy chọn:

Use Rail Trail After Profit.

Mặc định:

Tắt.

Nếu bật, bot chỉ sử dụng Rail Trail sau khi Maximum Profit R đạt ngưỡng.

Theo mặc định:

Start Rail Trail At = 1,25R.

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

  • Đang Long.
  • Profit Rail Trail bật.
  • Maximum Profit R ≥ 1,25R.
  • Trend Side vẫn Bullish.
  • Shadow Low có dữ liệu.

Khi đó:

Active Stop = Max(Active Stop trước, Shadow Low).

5.14. Profit Rail Trail với Short

Với Short:

  • Đang Short.
  • Profit Rail Trail bật.
  • Maximum Profit R ≥ 1,25R.
  • Trend Side vẫn Bearish.
  • Shadow High có dữ liệu.

Công thức:

Active Stop = Min(Active Stop trước, Shadow High).

Như vậy, Rail Trail chỉ được sử dụng khi hướng vị thế vẫn đồng thuận với trạng thái Shadow Rail.

5.15. Rail Trail không phải ATR Trailing cố định

Trong CNPS 47, Profit Rail Trail không sử dụng công thức:

Close − ATR × 2,5

hoặc:

High − ATR × 1,5.

Thay vào đó, bot dùng trực tiếp mức Shadow Low hoặc Shadow High đang được tính bởi Adaptive Rail Engine.

Vì vị trí Shadow Rail chịu ảnh hưởng của Smoothed Candle, Mean Span, Impulse, Flow Bias và Rail Drive, khoảng cách Trailing có thể thay đổi theo nhiều yếu tố.

5.16. Break Even và Profit Rail Trail có thể cùng hoạt động

Theo mặc định:

  • Break Even bắt đầu từ 1R.
  • Profit Rail Trail, nếu bật, bắt đầu từ 1,25R.

Giả sử một vị thế Long đã được dời Stop lên Entry + 0,5 tại 1R.

Khi giao dịch đạt 1,25R, nếu Shadow Low nằm cao hơn Active Stop, bot có thể tiếp tục nâng Stop.

Nếu Shadow Low thấp hơn Active Stop, Stop không bị hạ xuống.

Với Short, nguyên tắc tương ứng được áp dụng theo hướng ngược lại.

5.17. Rail Trail không tự động thay thế Take Profit

Ngay cả khi bật Profit Rail Trail, CNPS 47 vẫn giữ Take Profit 1,8R.

Nếu giá đạt 1,8R và lệnh TP được khớp, vị thế có thể đóng trước khi Rail Trail có cơ hội quản trị phần xu hướng dài hơn.

Vì vậy, bật Rail Trail không biến CNPS 47 thành một chiến lược không giới hạn lợi nhuận.

Mã nguồn hiện tại cũng không có tùy chọn riêng để tắt Take Profit hoàn toàn.

5.18. Opposite Raw Rail Flip Exit

Đây là cơ chế quan trọng của CNPS 47.

Mặc định:

Exit On Opposite Rail Flip = True.

Khi đang Long:

Nếu xuất hiện Raw Turn Down trên nến đã xác nhận, bot yêu cầu đóng Long.

Khi đang Short:

Nếu xuất hiện Raw Turn Up, bot yêu cầu đóng Short.

Điểm quan trọng là Opposite Exit sử dụng Raw Flip, không phải Accepted Flip.

5.19. Opposite Flip không cần đạt Trend Quality

Ví dụ:

  • Bot đang Long.
  • Shadow Rail chuyển từ Bullish sang Bearish.
  • Trend Quality chỉ đạt 12%.
  • Minimum Trend Quality = 20%.

Raw Turn Down đã xuất hiện.

Accepted Turn Down không hợp lệ vì chất lượng xu hướng thấp.

Tuy nhiên, nếu Exit On Opposite Rail Flip đang bật, bot vẫn có thể yêu cầu đóng Long.

Điều này có nghĩa bộ lọc chất lượng tín hiệu để vào lệnh và điều kiện thoát lệnh theo Rail không hoàn toàn giống nhau.

5.20. Opposite Exit không tự động mở vị thế ngược

Khi đang Long và xuất hiện Raw Turn Down, bot có thể đóng Long.

Tuy nhiên, hệ thống không tự động gửi Short Entry trong cùng nhánh xử lý đó.

Một Short mới cần trải qua cơ chế Armed Setup và Re-Entry Confirmation.

Vì vậy, CNPS 47 không phải chiến lược đảo Long/Short liên tục bằng một lệnh Reverse trực tiếp.

5.21. Có thể tắt Opposite Flip Exit

Nếu người dùng tắt:

Exit On Opposite Rail Flip = False.

Bot không còn sử dụng Raw Rail Flip đối lập để yêu cầu đóng vị thế.

Khi đó, các cơ chế chính còn lại gồm:

  • Stop Loss.
  • Take Profit.
  • Break Even.
  • Profit Rail Trail nếu bật.
  • Force Close.

Việc tắt Opposite Exit có thể làm thay đổi đáng kể thời gian giữ vị thế và kết quả giao dịch.

5.22. Cooldown sau Exit

CNPS 47 mặc định:

Cooldown Bars After Exit = 3.

Điều kiện:

Current Bar Index − Last Exit Bar > 3.

Ví dụ:

  • Exit được ghi nhận tại Bar 100.
  • Bar 101: Chưa đạt.
  • Bar 102: Chưa đạt.
  • Bar 103: Chưa đạt.
  • Bar 104: Đạt.

Điểm quan trọng là Cooldown được kiểm tra tại bước Final Entry.

Nó không trực tiếp ngăn việc một Accepted Rail Flip tạo Armed Setup khi chiến lược đang Flat.

Do đó, Setup có thể được Armed trong thời gian Cooldown, nhưng Entry chỉ được gửi khi bộ lọc đã hết hiệu lực.

5.23. Maximum Trades Per Day

Theo mặc định:

Maximum Trades Per Day = 4.

Khi Final Entry hợp lệ và lệnh được gửi, Trades Today tăng thêm một.

Khi số lệnh đã gửi đạt 4, những Final Entries tiếp theo bị từ chối cho đến ngày giao dịch mới.

Lưu ý rằng Raw Rail Flips và Accepted Flips không làm tăng Trades Today.

Chỉ Final Entries mới được tính vào bộ đếm này.

5.24. Force Close cuối phiên

CNPS 47 mặc định đóng vị thế cuối phiên lúc:

14:45.

Bot xác định cây nến có:

  • Thời gian mở trước 14:45.
  • Thời gian đóng tại hoặc sau 14:45.

Nếu đang có vị thế, chiến lược yêu cầu:

strategy.close_all(immediately=true)

Vì vậy, một vị thế chưa chạm SL/TP vẫn có thể được đóng cuối phiên.

5.25. Tổng hợp cơ chế quản trị vị thế

Cơ chếMặc địnhVai trò
Structural StopBậtSetup Extreme kết hợp Rail
ATR Buffer0,15 ATRĐặt Stop ngoài cấu trúc
Risk Filter2,5–8 điểmLọc Entry trước khớp
Take Profit1,8RMục tiêu lợi nhuận
Break EvenBậtDời Stop tại 1R
BE Offset0,5 điểmMức Stop sau BE
Profit Rail TrailTắtTrailing theo Shadow Rail
Rail Trail Trigger1,25RNgưỡng bắt đầu
Opposite Raw Flip ExitBậtThoát khi Rail đảo hướng
Maximum Trades/Day4Giới hạn tần suất
Cooldown3 nếnKhoảng nghỉ sau Exit
Force Close14:45Đóng cuối phiên

6. Hướng dẫn cài đặt và sử dụng CNPS 47 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 47 được định hướng nghiên cứu những biến động ngắn hạn, đặc biệt trong bối cảnh tín hiệu đảo chiều trên M1 có thể xuất hiện liên tục.

Tuy nhiên, mã nguồn không khóa cứng chiến lược vào M1.

Người dùng có thể kiểm thử trên khung thời gian khác, nhưng kết quả Shadow Rail, Trend Quality và Re-Entry sẽ thay đổi theo dữ liệu của từng khung.

Bước 2: Thêm mã nguồn vào Pine Editor

  1. Mở TradingView.
  2. Chọn Pine Editor.
  3. Tạo một Strategy mới.
  4. Dán mã nguồn CNPS47 GHOST RAIL V2 RE-ENTRY.
  5. Lưu chiến lược.
  6. Chọn Add to chart.
  7. Kiểm tra Shadow Rail.
  8. Mở Strategy Tester để đánh giá giao dịch.

Tên Strategy:

CNPS47 GHOST RAIL V2 RE-ENTRY

Short Title:

CNPS47 GCSR V2

Phiên bản:

//@version=6

Bước 3: Cấu hình Shadow Rail

Thông sốMặc định
Trend Sensitivity Length7
Rail Spread1,8
Rail Drive92

Trend Sensitivity Length quyết định chu kỳ trung bình Smoothed Span.

Rail Spread ảnh hưởng khoảng cách Reference.

Rail Drive tham gia điều chỉnh Step Damping và tốc độ thay đổi Shadow Rail.

Các thông số có quan hệ với nhau, vì vậy không nên đánh giá từng tham số chỉ dựa vào số lượng tín hiệu.

Nên kiểm tra đồng thời độ trễ Flip, số lần đảo trạng thái và hiệu quả giao dịch sau khi có xác nhận Re-Entry.

Bước 4: Cấu hình Signal Quality

Thông sốMặc định
Minimum Trend Quality20%
Flip Setup Lifetime4 nến
Minimum Trigger Body/Range0,30
Require Previous High/Low BreakBật

Đây là nhóm tham số quyết định khả năng Raw Flip trở thành giao dịch.

Minimum Trend Quality ảnh hưởng cả Accepted Flip và Raw Re-Entry.

Setup Lifetime quyết định thời hạn chờ sau Rail Flip.

Body Ratio và Previous Break xác định chất lượng cây nến xác nhận.

Bước 5: Cấu hình HTF Filter

Thông sốMặc định
Use HTF FilterTắt
Higher Timeframe15 phút
HTF EMA Length50

Nếu bật, bot chỉ tạo Accepted Flip theo hướng đồng thuận với EMA50 của khung được yêu cầu.

Lưu ý rằng mã nguồn tự kiểm tra khung được chọn có lớn hơn khung biểu đồ hay không.

Nếu khung HTF được chọn không lớn hơn Chart Timeframe, bot sử dụng Chart Timeframe thay thế.

Vì vậy, nếu đang giao dịch trên M30 mà chọn HTF15, bộ lọc sẽ không thực sự lấy EMA từ khung lớn hơn.

Bước 6: Cấu hình Trade Direction

Thông sốMặc định
Trade DirectionBoth
Position Size3 hợp đồng

Có ba lựa chọn:

Long: Chỉ cho phép Long Entry.

Short: Chỉ cho phép Short Entry.

Both: Cho phép cả hai hướng.

Trade Direction tác động đến Raw Re-Entry Trigger.

Nó không ngăn Shadow Rail Engine tiếp tục tính các lần Flip theo cả hai hướng.

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

Thông sốMặc định
ATR Length14
Structural Stop Buffer0,15 ATR
Minimum Accepted Risk2,5 điểm
Maximum Accepted Risk8 điểm
Take Profit R1,8

Đây là nhóm thông số cần kiểm thử kỹ.

Nếu tăng Buffer, Structural Stop có thể nằm xa giá tín hiệu hơn và khiến nhiều Setup vượt Maximum Risk.

Nếu giảm Buffer, Stop có thể gần hơn nhưng cũng có thể nhạy hơn với những lần kiểm tra lại vùng cấu trúc.

Vì Position Size không tự động thay đổi theo Risk, những Setup có Stop rộng hơn đồng nghĩa rủi ro danh nghĩa cao hơn.

Bước 8: Cấu hình Break Even

Thông sốMặc định
Use Break EvenBật
Trigger1R
Offset0,5 điểm

Khi bật, bot dời Stop qua Entry một khoảng 0,5 điểm sau khi Maximum Profit R đạt 1R.

Điều kiện sử dụng High/Low thuận lợi để xác định Trigger.

Bước 9: Cấu hình Profit Rail Trail

Thông sốMặc định
Use Rail Trail After ProfitTắt
Start Rail Trail At1,25R

Nếu bật, Shadow Rail tham gia điều chỉnh Active Stop khi giao dịch đã đạt ngưỡng.

Người dùng nên so sánh:

  • Chỉ Structural SL + TP1,8R.
  • Structural SL + Break Even.
  • Structural SL + Break Even + Rail Trail.

Đặc biệt, cần theo dõi ảnh hưởng đến Average Win, Profit Factor và Maximum Drawdown.

Bước 10: Cấu hình Opposite Flip Exit

Thông sốMặc định
Exit On Opposite Rail FlipBật

Khi bật, Raw Rail Flip đối lập có thể đóng vị thế.

Điểm cần lưu ý là bộ lọc Trend Quality không ngăn Raw Opposite Flip tạo tín hiệu Exit.

Do đó, nếu muốn chỉ thoát khi có một Accepted Flip chất lượng cao, cần sửa logic mã nguồn chứ không chỉ tăng Minimum Trend Quality.

Bước 11: Cấu hình Trade Frequency

Thông sốMặc định
Maximum Trades Per Day4
Cooldown After Exit3 nến

Maximum Trades Per Day giới hạn số Entry được gửi.

Cooldown được áp dụng sau khi vị thế đóng.

Nguồn tín hiệu và Armed Setup vẫn có thể được tính trước khi đạt điều kiện Cooldown cho Final Entry.

Bước 12: Cấu hình Session

Thông sốMặc định
TimezoneAsia/Ho_Chi_Minh
Morning Entry Session09:00–11:30
Afternoon Entry Session13:00–14:30
Force Close14:45

Chiến lược có hai cửa sổ Entry riêng cho buổi sáng và buổi chiều.

Đây là điểm khác với những bot sử dụng một khoảng thời gian Entry liên tục.

Cần lưu ý rằng mã nguồn không có điều kiện riêng bắt buộc thời gian đóng của nến Entry phải trước Last Entry.

Việc một cây nến có được xét thuộc Session hay không phụ thuộc vào hàm time() và khung thời gian biểu đồ.

Bước 13: Hiển thị trên biểu đồ

CNPS 47 hỗ trợ:

Thành phầnMặc định
Shadow RailBật
Raw Rail Flip MarkersTắt
Armed Setup MarkersTắt
Entry MarkersTắt
Active Stop LossBật
Active Take ProfitBật
DiagnosticsTắt

Khi Trend Side Bullish, Shadow Low Rail được hiển thị màu xanh.

Khi Trend Side Bearish, Shadow High Rail được hiển thị màu đỏ.

Raw Flip được đánh dấu bằng ký tự F.

Armed Setup sử dụng nhãn ARM.

Final Entry được hiển thị bằng LONG hoặc SHORT nếu bật Show Entry Signals.

Một điểm cần chú ý là Armed Marker được vẽ khi biến Setup Bar còn tồn tại, nên nhãn ARM có thể xuất hiện trên nhiều nến đang chờ, không chỉ cây nến Armed đầu tiên.

Bước 14: Sử dụng Diagnostics

CNPS 47 có bảng Diagnostics gồm 2 cột và 17 hàng.

Các thông tin:

  • Chart Timeframe.
  • Rail Trend.
  • Trend Quality.
  • Impulse.
  • Volume Flow Bias.
  • Setup State.
  • Candle Body Ratio.
  • Raw Up/Down Count.
  • Accepted Up/Down Count.
  • Long/Short Entry Count.
  • Trades Today.
  • Cooldown State.
  • Active Initial Risk.
  • Maximum Profit R.
  • Break Even State.
  • Active Stop.
  • Position.

Ví dụ:

Rail Trend: BULL.

Quality: 38%.

Setup: LONG ARMED.

Body Ratio: 0,52.

Cooldown: READY.

Bảng này giúp quan sát từng cấp độ tín hiệu.

Tuy nhiên, số Raw Flips, Accepted Flips và Entries không nhất thiết bằng nhau.

Bước 15: Kiểm thử trong Strategy Tester

CNPS 47 được xây dựng dưới dạng TradingView Strategy nên có thể đánh giá giao dịch mô phỏng.

Các chỉ số nên theo dõi:

  • Net Profit.
  • Maximum Drawdown.
  • Profit Factor.
  • Total Trades.
  • Win Rate.
  • Average Trade.
  • Average Win.
  • Average Loss.
  • Average Bars In Trade.

Những thử nghiệm nên thực hiện:

Thử nghiệm 1: Shadow Rail mặc định 7 / 1,8 / 92.

Thử nghiệm 2: Thay đổi Trend Sensitivity Length.

Thử nghiệm 3: Thay đổi Rail Spread.

Thử nghiệm 4: Thay đổi Rail Drive.

Thử nghiệm 5: Trend Quality 20% so với 30% hoặc 40%.

Thử nghiệm 6: Setup Lifetime 4 so với 2 hoặc 6 nến.

Thử nghiệm 7: Body Ratio 0,30 so với 0,40.

Thử nghiệm 8: Bật/tắt Previous High/Low Break.

Thử nghiệm 9: Bật HTF EMA50 trên M15.

Thử nghiệm 10: Thay đổi ATR Structural Stop Buffer.

Thử nghiệm 11: Risk Filter 2,5–8 điểm so với ngưỡng khác.

Thử nghiệm 12: Take Profit 1,8R so với 2R.

Thử nghiệm 13: Bật/tắt Break Even.

Thử nghiệm 14: Bật Profit Rail Trail từ 1,25R.

Thử nghiệm 15: Bật/tắt Opposite Raw Rail Flip Exit.

Thử nghiệm 16: Thay đổi Maximum Trades Per Day.

Thử nghiệm 17: Thay đổi Cooldown After Exit.

Thử nghiệm 18: So sánh kết quả trên M1 và M5.

Theo mã nguồn:

  • Initial Capital: 100.000.000 VNĐ.
  • Position Size mặc định: 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.

Các thông số này phục vụ mô phỏng trên TradingView.

Chúng không phản ánh đầy đủ yêu cầu ký quỹ, thanh khoản hoặc chất lượng khớp lệnh trong 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 47 hỗ trợ cảnh báo qua Order Fill Events trong TradingView.

Để thiết lập:

  1. Mở biểu đồ có CNPS47 GHOST RAIL V2 RE-ENTRY.
  2. Chọn Create Alert.
  3. Trong Condition, lựa chọn chiến lược CNPS47.
  4. Sử dụng Order Fill Alerts.
  5. Trong Message, nhập {{strategy.order.alert_message}}.
  6. Chọn phương thức nhận thông báo và lưu.

7.1. Cảnh báo Long Entry

Thông điệp:

ENTRY_LONG_CNPS47_V2

Được gắn vào lệnh Long sau khi Final Long Signal được xác nhận.

Một Accepted Turn Up hoặc Long Armed đơn thuần chưa đủ để tạo Order Fill Alert.

7.2. Cảnh báo Short Entry

Thông điệp:

ENTRY_SHORT_CNPS47_V2

Được sử dụng khi chiến lược mở Short sau khi hoàn tất điều kiện Re-Entry.

7.3. Cảnh báo Stop Loss

Thông điệpÝ nghĩa
EXIT_LONG_SL_CNPS47_V2Long đóng theo Stop
EXIT_SHORT_SL_CNPS47_V2Short đóng theo Stop

Đây là thông điệp được sử dụng khi Break Even Activated chưa bật.

7.4. Cảnh báo Take Profit

Thông điệpÝ nghĩa
EXIT_LONG_TP_CNPS47_V2Long đóng theo TP
EXIT_SHORT_TP_CNPS47_V2Short đóng theo TP

Take Profit mặc định là 1,8R.

Các cảnh báo được sử dụng khi lệnh TP tương ứng được khớp trong mô phỏng.

7.5. Cảnh báo Break Even

Thông điệpÝ nghĩa
EXIT_LONG_BE_CNPS47_V2Long đóng qua Stop sau khi Break Even bật
EXIT_SHORT_BE_CNPS47_V2Short đóng qua Stop sau khi Break Even bật

Điểm cần chú ý là thông điệp BE được lựa chọn theo biến Break Even Activated.

Nó không phản ánh độc lập việc Rail Trail có đang hoạt động hay không.

7.6. Cảnh báo Profit Rail Trail

CNPS 47 không có một mã cảnh báo riêng tên Rail Trail Exit.

Nếu Break Even đã bật và sau đó Rail Trail tiếp tục nâng Stop, giao dịch đóng theo Stop có thể sử dụng mã BE.

Nếu Break Even tắt nhưng Rail Trail bật, thông điệp Stop có thể vẫn mang mã SL.

Vì vậy, nếu muốn nhận biết chính xác lý do thoát lệnh do Profit Rail Trail, cần bổ sung logic Alert riêng.

7.7. Cảnh báo Opposite Rail Flip

Thông điệpÝ nghĩa
RAIL_FLIP_EXIT_LONG_CNPS47_V2Đóng Long do Raw Turn Down
RAIL_FLIP_EXIT_SHORT_CNPS47_V2Đóng Short do Raw Turn Up

Đây là hai mã cảnh báo quan trọng của CNPS 47.

Theo mặc định, Opposite Rail Flip Exit đang bật.

Tín hiệu thoát này không yêu cầu Opposite Flip đạt bộ lọc Trend Quality.

7.8. Cảnh báo Force Close

Thông điệp:

SESSION_END_CNPS47_V2

Được gắn với lệnh đóng toàn bộ cuối phiên.

Mốc Force Close mặc định:

14:45.

7.9. Disable Exit Alerts

CNPS 47 có tùy chọn:

Disable Exit Alerts.

Theo mặc định:

False.

Khi bật, bot vô hiệu hóa cảnh báo được tạo từ các lệnh strategy.exit().

Tuy nhiên, tùy chọn này không trực tiếp vô hiệu hóa:

  • Entry Alerts.
  • Opposite Rail Flip Close Alerts.
  • Force Close Alerts.

Do đó, cần phân biệt cảnh báo Protective Exit và những lệnh đóng vị thế qua strategy.close() hoặc strategy.close_all().

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

Các thông điệp CNPS 47 giúp hệ thống nhận tín hiệu phân biệt:

  • Long Entry.
  • Short Entry.
  • Stop Loss.
  • Take Profit.
  • Break Even Exit.
  • Opposite Rail Flip Exit.
  • Force Close.

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

  • Trend Side.
  • Trend Quality %.
  • Impulse.
  • Volume Flow Bias.
  • Giá Shadow Rail.
  • Setup Bar.
  • Setup High/Low.
  • Candidate Structural Stop.
  • Giá Entry thực tế.
  • Actual Initial Risk.
  • Take Profit.
  • Maximum Profit R.
  • Break Even State.
  • Rail Trail State.
  • Khối lượng khớp.
  • Timeframe và thời điểm giao dịch.

Nếu muốn tích hợp với hệ thống tự động, cần bổ sung dữ liệu phù hợp thông qua Placeholder của TradingView hoặc thay đổi mã nguồn.

Đặc biệt, nên phân biệt sự kiện Raw Flip, Accepted Flip, Armed Setup và Final Entry.

Đây là bốn trạng thái khác nhau của CNPS 47.

Một Order Fill Alert từ TradingView không đồng nghĩa lệnh thực tế đã được khớp tại công ty chứng khoán.

Kết luận

CNPS 47 GHOST RAIL V2 RE-ENTRY là chiến lược giao dịch chứng khoán phái sinh kết hợp Adaptive Shadow Rail với hệ thống Trend Quality và Re-Entry Confirmation nhằm tìm kiếm cơ hội sau khi trạng thái xu hướng thay đổi.

Điểm nổi bật của phiên bản V2 là không mở lệnh ngay khi Shadow Rail đảo chiều, mà sử dụng Rail Flip làm điều kiện kích hoạt Armed Setup và chờ tín hiệu tiếp diễn trên các cây nến kế tiếp.

Shadow Rail được xây dựng từ Smoothed Candle, Mean Span, Impulse, Volume Flow Bias và cơ chế Rail Drive thích ứng.

Những yếu tố này tham gia điều chỉnh vị trí và tốc độ thay đổi của Shadow Rail, tạo cơ sở xác định trạng thái Bullish hoặc Bearish.

Sau khi Raw Flip xuất hiện, chiến lược yêu cầu Trend Quality đạt tối thiểu 20%, đồng thời kiểm tra HTF EMA50 nếu người dùng bật bộ lọc này.

Một Accepted Flip hợp lệ có thể tạo Armed Setup với thời hạn mặc định 4 nến.

Trong thời gian chờ, bot tìm cây nến xác nhận có thân tối thiểu 30% biên độ và Close phá High/Low nến trước theo hướng giao dịch.

Với Long, nến Trigger phải tăng và Shadow Rail tiếp tục ở trạng thái Bullish.

Với Short, nến Trigger phải giảm và Shadow Rail tiếp tục ở trạng thái Bearish.

Sau đó, chiến lược tính Structural Stop từ cực trị Setup kết hợp vị trí Shadow Rail, cộng thêm ATR Buffer 0,15.

Chỉ những giao dịch có Risk dự kiến từ 2,5 đến 8 điểm mới được chấp thuận.

Về quản trị vị thế, CNPS 47 sử dụng Take Profit 1,8R, Break Even tại 1R và Profit Rail Trail tùy chọn từ 1,25R.

Ngoài ra, bot mặc định cho phép đóng vị thế khi xuất hiện Raw Rail Flip đối lập và thực hiện Force Close cuối phiên 14:45.

Tuy nhiên, cần lưu ý rằng Trend Quality không đại diện cho xác suất thắng của tín hiệu, còn Volume Flow Bias không phải dữ liệu Order Flow trực tiếp.

Đặc biệt, một Raw Rail Flip có thể không đạt chất lượng để mở Setup nhưng vẫn đủ điều kiện đóng vị thế đang giữ nếu Opposite Flip Exit được bật.

Đây là một trong những khác biệt quan trọng giữa bộ máy Entry và bộ máy Exit của CNPS 47.

Ngoài ra, Stop Loss được giữ theo mức cấu trúc, trong khi Risk Filter chỉ đánh giá khoảng rủi ro trước Entry. Nếu giá khớp khác Close của nến tín hiệu, Actual Risk có thể thay đổi.

Vì vậy, khi sử dụng CNPS 47, điều quan trọng là hiểu rõ cách Shadow Rail được tính, ý nghĩa của Trend Quality, cơ chế Accepted Flip, Armed Setup, Re-Entry Confirmation và phương pháp quản trị Structural Stop.

Người dùng nên kiểm thử riêng Shadow Rail Parameters, Quality Threshold, Setup Lifetime và các cơ chế Exit, đồng thời đánh giá hiệu quả trên nhiều trạng thái thị trường trong TradingView Strategy Tester.

Theo dõi Phái Sinh Online để cập nhật thêm hướng dẫn sử dụng bot giao dịch phái sinh, kiến thức xu hướng, phân tích kỹ thuật và các chiến lược quản trị vị thế 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ả giao dịch mô phỏng không bảo đảm 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ế.

Bản tin phái sinh mỗi phiên
Nhận bản tin mỗi phiên + Dự báo Nhịp đập phái sinh