Hướng Dẫn Sử Dụng Bot CNPS37-ICHIMOKU cho VN30F1M
TradingviewHướng dẫn Bot CNPS 37 Ichimoku Itto Pullback: chấm điểm Ichimoku 5 thành phần, xác nhận Pullback Kijun, Stop Loss cấu trúc và Take Profit 2R.

Mục lục
Trong giao dịch chứng khoán phái sinh, việc xác định xu hướng không chỉ dựa vào giá đang tăng hay giảm, mà còn phụ thuộc vào sự đồng thuận giữa nhiều yếu tố kỹ thuật.
Đặc biệt, với hệ thống Ichimoku Kinko Hyo, nhà đầu tư có thể đánh giá trạng thái thị trường thông qua vị trí giá so với mây Kumo, quan hệ Tenkan–Kijun, xác nhận Chikou, cấu trúc mây tương lai và độ dốc của đường Kijun.
Tuy nhiên, việc kết hợp nhiều yếu tố Ichimoku cũng đặt ra một vấn đề: Khi nào thị trường thực sự có sự đồng thuận đủ mạnh để xem xét giao dịch?
Có những thời điểm giá đã vượt lên trên Kumo nhưng Tenkan vẫn nằm dưới Kijun. Ngược lại, thị trường có thể duy trì cấu trúc tăng nhưng độ dốc Kijun bắt đầu suy yếu. Nếu chỉ dựa vào một tín hiệu riêng lẻ, nhà giao dịch có thể chưa đánh giá đầy đủ trạng thái xu hướng.
Một phương pháp tiếp cận là chuyển các thành phần Ichimoku thành hệ thống điểm số, từ đó xác định mức độ đồng thuận giữa những tín hiệu tăng và giảm.
Tuy nhiên, ngay cả khi xu hướng được xác nhận, việc mở vị thế tại thời điểm giá đã di chuyển mạnh cũng có thể khiến nhà đầu tư phải chấp nhận khoảng Stop Loss lớn hoặc gặp phải nhịp điều chỉnh ngay sau khi vào lệnh.
CNPS 37 V2 ICHIMOKU ITTO PULLBACK là chiến lược giao dịch được phát triển bằng Pine Script v6 trên TradingView, kết hợp hệ thống Itto Score gồm 5 thành phần Ichimoku với phương pháp chờ giá Pullback về Kijun hoặc vùng Tenkan–Kijun trước khi xác nhận tín hiệu Long/Short.
Điểm nổi bật của phiên bản V2 nằm ở việc chiến lược không mở lệnh ngay khi Itto Score đạt trạng thái mạnh.
Thay vào đó, bot sử dụng quy trình:
Strong Score Cut → Armed Setup → Kijun Pullback → Ichimoku Confirmation → Candle Confirmation → Risk Validation → Entry.
Ví dụ, khi Itto Score tăng từ +3 lên +4, bot có thể ghi nhận một Strong Long Event.
Tuy nhiên, chiến lược chưa lập tức mở Long.
Thay vào đó, bot kích hoạt trạng thái Long Armed và chờ giá quay lại khu vực Kijun trong tối đa 15 nến.
Nếu tại một cây nến sau đó, giá kiểm tra vùng Kijun, đóng cửa trở lại phía trên đường này, Itto Score vẫn duy trì ít nhất +3 và những điều kiện xác nhận Ichimoku khác hợp lệ, chiến lược mới xem xét vào lệnh.
Về quản trị rủi ro, CNPS 37 sử dụng Stop Loss theo cấu trúc High/Low gần nhất kết hợp ATR Buffer, giới hạn khoảng rủi ro dự kiến từ 2,5 đến 7 điểm và đặt Take Profit theo tỷ lệ Reward/Risk 2R.
Ngoài ra, bot hỗ trợ Break Even tùy chọn, thoát vị thế khi Itto Score mất thiên hướng, giới hạn thời gian nắm giữ và đóng toàn bộ vị thế cuối phiên.
Vậy CNPS 37 hoạt động như thế nào, 5 thành phần Itto Score được tính ra sao, điều kiện nào xác nhận một nhịp Kijun Pullback và người dùng cần lưu ý gì khi sử dụng chiến lược?
1. CNPS 37 V2 Ichimoku Itto Pullback là gì?
CNPS 37 V2 Ichimoku Itto Pullback là chiến lược giao dịch được xây dựng trên TradingView, hướng đến việc hỗ trợ giao dịch hợp đồng tương lai chỉ số VN30 theo phương pháp Ichimoku Trend Following kết hợp Pullback Confirmation.
Chiến lược sử dụng ba thành phần chính.
1.1. Ichimoku Itto Score Engine
Đây là bộ máy xác định xu hướng của chiến lược.
Bot đánh giá 5 thành phần Ichimoku:
- Price vs Kumo.
- Tenkan vs Kijun.
- Chikou Confirmation.
- Future Kumo.
- Kijun Slope.
Mỗi thành phần có thể nhận một trong ba giá trị:
- +1: Tín hiệu Bullish.
- 0: Tín hiệu trung tính.
- −1: Tín hiệu Bearish.
Tổng điểm được gọi là Itto Score.
Itto Score = C1 + C2 + C3 + C4 + C5.
Điểm số nằm trong khoảng từ −5 đến +5.
Khi điểm số đạt +4 hoặc +5, đa số các thành phần Ichimoku đang đồng thuận theo hướng tăng.
Khi điểm số đạt −4 hoặc −5, đa số thành phần đồng thuận theo hướng giảm.
Tuy nhiên, Itto Score là thước đo sự đồng thuận tín hiệu, không phải xác suất thắng của một giao dịch.
1.2. Strong Score Cut và Armed Setup
CNPS 37 sử dụng Itto Score để xác định thời điểm xuất hiện một sự kiện xu hướng mạnh.
Theo cấu hình mặc định:
Strong Threshold = 4.
Với Long, bot yêu cầu Itto Score vừa tăng lên mức +4 hoặc cao hơn.
Với Short, bot yêu cầu Itto Score vừa giảm xuống mức −4 hoặc thấp hơn.
Tuy nhiên, Strong Score Cut không trực tiếp tạo lệnh.
Sự kiện này chỉ kích hoạt trạng thái chờ:
Long Armed hoặc Short Armed.
Sau đó, chiến lược tìm kiếm một nhịp Pullback phù hợp.
1.3. Pullback Confirmation
Sau khi Armed Setup xuất hiện, bot chờ giá kiểm tra vùng Kijun hoặc Tenkan–Kijun.
Theo cấu hình mặc định:
Pullback Zone = Kijun.
Pullback Tolerance = 0,15 ATR14.
Tại cây nến xác nhận, bot yêu cầu:
- Giá giao với vùng Pullback.
- Close nằm đúng phía Kijun.
- Itto Score duy trì tối thiểu +3 hoặc tối đa −3.
- Vị trí giá so với Kumo phù hợp.
- Tenkan và Kijun đồng thuận.
- Cây nến có hướng phù hợp.
- Thân nến đạt ít nhất 35% biên độ.
- Khoảng Stop Loss cấu trúc hợp lệ.
Nếu các điều kiện được đáp ứng, chiến lược tiếp tục kiểm tra phiên giao dịch, Cooldown và số lần Entry trong ngày.
1.4. Khác biệt giữa phiên bản V1 và V2
Theo phần mô tả kiến trúc trong mã nguồn, hai phiên bản có phương pháp vào lệnh khác nhau.
Phiên bản V1:
Strong Score Cut → Entry trực tiếp → Exit On Chop.
Phiên bản V2:
Strong Score Cut → Armed Setup → Pullback → Confirmation → Entry.
Điểm thay đổi quan trọng nằm ở việc V2 bổ sung trạng thái chờ Pullback, thay vì giao dịch trực tiếp tại Strong Event.
Ngoài ra, V2 không sử dụng Automatic Chop Exit như phương pháp thoát mặc định của V1.
Thay vào đó, chiến lược sử dụng Stop Loss cấu trúc, Take Profit 2R và những cơ chế thoát tùy chọn khác.
1.5. Các thông số mặc định
| Nhóm | Thông số | Giá trị |
|---|---|---|
| Ichimoku | Preset | 5-Day Week |
| Ichimoku | Tenkan | 7 |
| Ichimoku | Kijun | 22 |
| Ichimoku | Span B | 44 |
| Ichimoku | Displacement | 22 |
| Ichimoku | Kijun Slope Lookback | 5 |
| Setup | Strong Threshold | 4 |
| Setup | Chop Score Band | 1 |
| Setup | Maximum Arm Life | 15 nến |
| Pullback | Pullback Zone | Kijun |
| Pullback | ATR Tolerance | 0,15 |
| Pullback | Confirmation Score | 3 |
| Pullback | Minimum Body Ratio | 0,35 |
| Pullback | Outside Kumo | Bật |
| Pullback | Tenkan/Kijun Alignment | Bật |
| Pullback | Chikou Alignment | Tắt |
| Pullback | Full Sanyaku | Tắt |
| Risk | Stop Lookback | 5 nến |
| Risk | Stop Buffer | 0,10 ATR |
| Risk | Minimum Risk | 2,5 điểm |
| Risk | Maximum Risk | 7 điểm |
| Risk | Take Profit | 2R |
| Control | Maximum Trades Per Day | 2 |
| Control | Cooldown | 8 nến |
| Exit | Maximum Bars In Trade | 90 |
| Exit | Score Failure | Tắt |
| Exit | Break Even | Tắt |
| Position | Khối lượng | 3 hợp đồng |
Source Code CNPS 37: CNPS37
2. Những khái niệm kỹ thuật được sử dụng trong CNPS 37
2.1. Ichimoku Kinko Hyo
Ichimoku Kinko Hyo là hệ thống phân tích kỹ thuật được xây dựng từ các đường cân bằng giá và vùng mây.
Những thành phần cơ bản gồm:
- Tenkan-sen.
- Kijun-sen.
- Senkou Span A.
- Senkou Span B.
- Chikou Span.
Các thành phần này phản ánh nhiều khía cạnh khác nhau của thị trường, từ cân bằng giá ngắn hạn đến vị trí giá so với cấu trúc xu hướng.
Trong CNPS 37, các yếu tố Ichimoku được chuyển thành điểm số để xác định tín hiệu tổng hợp.
2.2. Ba cấu hình Ichimoku Preset
CNPS 37 hỗ trợ ba bộ thông số:
| Preset | Tenkan | Kijun | Span B | Displacement |
|---|---|---|---|---|
| Classic | 9 | 26 | 52 | 26 |
| 5-Day Week | 7 | 22 | 44 | 22 |
| Crypto | 20 | 60 | 120 | 30 |
Mặc định, chiến lược sử dụng 5-Day Week.
Tên Preset này đại diện cho bộ thông số Ichimoku, không phải bộ lọc tự động chỉ giao dịch trong năm ngày làm việc.
Khi thay đổi Preset, toàn bộ các thành phần Ichimoku liên quan cũng thay đổi, bao gồm Kumo, Chikou Comparison, Itto Score và vùng Pullback.
2.3. Tenkan-sen
Tenkan là đường cân bằng ngắn hạn, được tính từ giá cao nhất và thấp nhất trong một chu kỳ.
Công thức:
Tenkan = (Highest High + Lowest Low) / 2.
Theo cấu hình mặc định:
Tenkan Length = 7.
Trong CNPS 37, Tenkan đóng hai vai trò.
Thứ nhất, quan hệ giữa Tenkan và Kijun là một thành phần của Itto Score.
Thứ hai, Tenkan được sử dụng để xây dựng vùng Pullback mở rộng khi người dùng lựa chọn chế độ Tenkan-Kijun Zone.
2.4. Kijun-sen
Kijun được tính tương tự Tenkan nhưng sử dụng chu kỳ dài hơn.
Công thức:
Kijun = (Highest High 22 + Lowest Low 22) / 2.
Kijun là một trong những thành phần quan trọng nhất của CNPS 37.
Chiến lược sử dụng Kijun để:
- Đánh giá Tenkan/Kijun Alignment.
- Tính Kijun Slope.
- Xác định vùng Pullback.
- Kiểm tra điều kiện Reclaim.
- Hỗ trợ nhận diện xu hướng thông qua Itto Score.
Đặc biệt, dù người dùng lựa chọn Kijun hay Tenkan-Kijun Zone, bot vẫn yêu cầu giá đóng cửa đúng phía Kijun tại thời điểm xác nhận Entry.
2.5. Kumo – Mây Ichimoku
Kumo được hình thành từ Senkou Span A và Senkou Span B.
Senkou Span A:
(Tenkan + Kijun) / 2.
Senkou Span B:
(Highest High + Lowest Low) / 2 trong chu kỳ Span B.
Trong CNPS 37, giá trị Kumo dùng để đánh giá tín hiệu được lấy từ những giá trị Senkou Span quá khứ theo độ dịch chuyển của Ichimoku.
Với Preset mặc định:
Displacement = 22.
Do đó:
Kumo A = Senkou Span A của 21 nến trước.
Kumo B = Senkou Span B của 21 nến trước.
Hai biên được xác định:
Kumo Top = Max(Kumo A, Kumo B).
Kumo Bottom = Min(Kumo A, Kumo B).
Nếu Close nằm trên Kumo Top, bot xem giá ở phía Bullish.
Nếu Close nằm dưới Kumo Bottom, bot xem giá ở phía Bearish.
Nếu Close nằm trong Kumo, thành phần Price/Kumo mang trạng thái trung tính.
2.6. Itto Score – Thành phần thứ nhất: Price vs Kumo
Đây là thành phần đánh giá vị trí giá so với mây Ichimoku.
Điều kiện:
+1: Close > Kumo Top.
−1: Close < Kumo Bottom.
0: Giá nằm trong mây hoặc không đáp ứng điều kiện tăng/giảm.
Ví dụ:
- Close = 1.905.
- Kumo Top = 1.900.
- Kumo Bottom = 1.890.
Thành phần Price/Kumo nhận +1.
Nếu Close giảm xuống 1.895, nằm trong Kumo, thành phần này nhận 0.
2.7. Thành phần thứ hai: Tenkan vs Kijun
Điều kiện:
+1: Tenkan > Kijun.
−1: Tenkan < Kijun.
0: Tenkan = Kijun.
Ví dụ:
- Tenkan = 1.902.
- Kijun = 1.898.
Thành phần nhận +1.
Khi Tenkan thấp hơn Kijun, thành phần nhận −1.
Mã nguồn không yêu cầu một sự kiện giao cắt Tenkan/Kijun mới tại thời điểm đánh giá.
Chiến lược sử dụng trạng thái tương quan của hai đường.
2.8. Thành phần thứ ba: Chikou Confirmation
Trong CNPS 37, thành phần Chikou được tính bằng việc so sánh giá đóng cửa hiện tại với High và Low của một cây nến quá khứ.
Với Displacement mặc định 22:
Chikou Reference = 21 nến trước.
Điều kiện:
+1: Close hiện tại > High của 21 nến trước.
−1: Close hiện tại < Low của 21 nến trước.
0: Không đáp ứng hai điều kiện trên.
Ví dụ:
- Close hiện tại = 1.905.
- High của 21 nến trước = 1.900.
Chikou Component nhận +1.
Điểm đáng chú ý là bot không chỉ so sánh Close hiện tại với Close quá khứ.
Mã nguồn sử dụng High/Low để xác định thành phần Chikou.
2.9. Thành phần thứ tư: Future Kumo
Future Kumo được đánh giá từ Senkou Span A Raw và Senkou Span B Raw tại thời điểm hiện tại.
Điều kiện:
+1: Senkou A Raw > Senkou B Raw.
−1: Senkou A Raw < Senkou B Raw.
0: Hai đường bằng nhau.
Đây là thành phần đánh giá cấu trúc mây tương lai theo cách tính của Ichimoku.
Một điểm quan trọng là bot sử dụng các giá trị Raw tại thời điểm hiện tại, không sử dụng Kumo đã dịch lùi để tính thành phần này.
2.10. Thành phần thứ năm: Kijun Slope
CNPS 37 sử dụng độ dốc Kijun làm thành phần cuối cùng.
Mặc định:
Kijun Slope Lookback = 5.
Điều kiện:
+1: Kijun hiện tại > Kijun của 5 nến trước.
−1: Kijun hiện tại < Kijun của 5 nến trước.
0: Kijun không thay đổi.
Ví dụ:
- Kijun hiện tại = 1.900.
- Kijun cách 5 nến = 1.897.
Thành phần Kijun Slope nhận +1.
Điểm cần lưu ý là bot chỉ so sánh giá trị Kijun tại hai thời điểm.
Không có yêu cầu Kijun phải tăng hoặc giảm liên tục trên từng cây nến trong khoảng Lookback.
2.11. Cách tổng hợp Itto Score
Năm thành phần được cộng lại:
Itto Score = Price/Kumo + Tenkan/Kijun + Chikou + Future Kumo + Kijun Slope.
Ví dụ:
| Thành phần | Điểm |
|---|---|
| Price/Kumo | +1 |
| Tenkan/Kijun | +1 |
| Chikou | +1 |
| Future Kumo | +1 |
| Kijun Slope | 0 |
| Tổng Itto Score | +4 |
Khi Itto Score đạt +4, bốn thành phần đang xác nhận hướng tăng và một thành phần trung tính.
Tương tự, điểm −4 cho thấy sự đồng thuận theo hướng giảm.
Tuy nhiên, cần phân biệt điểm số cao với sự kiện Strong Score Cut.
Nếu Itto Score đã duy trì +4 từ nến trước, chiến lược không tự động tạo Strong Long Event mới trên cây nến hiện tại.
2.12. Sanyaku State
CNPS 37 có một biến riêng gọi là Sanyaku.
Biến này sử dụng ba thành phần:
- Price vs Kumo.
- Tenkan vs Kijun.
- Chikou.
Sanyaku Bullish: Cả ba thành phần đều +1.
Sanyaku Bearish: Cả ba thành phần đều −1.
Nếu không có sự đồng thuận đầy đủ, Sanyaku nhận giá trị 0.
Mặc định:
Require Full 3/3 Sanyaku = Tắt.
Vì vậy, người dùng có thể giao dịch mà không bắt buộc ba thành phần cùng đồng thuận, miễn tổng Score và những bộ lọc đang bật đều hợp lệ.
2.13. Source Chop State
CNPS 37 sử dụng một trạng thái gọi là No Cut để ngăn tạo Strong Event trong một số điều kiện thị trường.
Một cây nến được xem là No Cut nếu:
- Itto Score chưa có dữ liệu hợp lệ.
- Giá đóng cửa nằm trong Kumo.
- Hoặc trị tuyệt đối của Itto Score không vượt Chop Score Band.
Mặc định:
Chop Score Band = 1.
Công thức:
No Cut = Score không hợp lệ hoặc Inside Kumo hoặc |Score| ≤ 1.
Điều quan trọng là No Cut được sử dụng trong quá trình phát hiện Strong Score Cut.
Trong phiên bản V2, No Cut không tự động trở thành điều kiện đóng vị thế.
3. Nguyên lý hoạt động của CNPS 37 V2 Ichimoku Itto Pullback
CNPS 37 sử dụng quy trình gồm nhiều giai đoạn, từ chấm điểm Ichimoku đến xác nhận một điểm vào lệnh có khoảng rủi ro phù hợp.
Bước 1: Tính các thành phần Ichimoku
Đầu tiên, chiến lược tính:
- Tenkan.
- Kijun.
- Senkou Span A/B.
- Kumo Top/Bottom.
- Chikou Comparison.
- Kijun Slope.
Các thành phần này được cập nhật theo dữ liệu của khung thời gian biểu đồ.
Bước 2: Tổng hợp Itto Score
Bot chuyển từng thành phần thành +1, 0 hoặc −1.
Sau đó, chiến lược cộng năm thành phần để tính Itto Score.
Điểm số chỉ được sử dụng khi dữ liệu lịch sử cần thiết đã sẵn sàng.
Bước 3: Phát hiện Strong Score Cut
Theo cấu hình mặc định:
Strong Long Cut:
- Itto Score hiện tại ≥ +4.
- Itto Score nến trước < +4.
- Không thuộc No Cut.
- Nến đã đóng cửa xác nhận.
Strong Short Cut:
- Itto Score hiện tại ≤ −4.
- Itto Score nến trước > −4.
- Không thuộc No Cut.
- Nến đã đóng cửa xác nhận.
Điểm đặc biệt là chiến lược sử dụng sự kiện vượt ngưỡng, không phải trạng thái Score cao được duy trì liên tục.
Bước 4: Kích hoạt Armed Setup
Khi Strong Long Cut xuất hiện, bot kích hoạt:
Long Armed = True.
Đồng thời, Short Armed được hủy.
Khi Strong Short Cut xuất hiện, quy trình được thực hiện theo hướng ngược lại.
Mã nguồn chỉ duy trì một hướng Armed Setup tại một thời điểm.
Armed Setup chưa phải lệnh giao dịch.
Bước 5: Theo dõi thời hạn Armed
Mặc định:
Maximum Arm Life = 15 nến.
Nếu số nến kể từ Strong Event lớn hơn 15, Armed Setup bị hủy.
Ví dụ, Strong Long xuất hiện tại cây nến số 100.
Các cây nến từ 101 đến 115 vẫn nằm trong thời hạn xác nhận.
Từ cây nến 116, thiết lập hết hiệu lực.
Điểm quan trọng là bot không cho phép Entry trên chính nến Strong Cut ban đầu.
Cây nến xác nhận phải xuất hiện sau nến tạo Armed.
Bước 6: Kiểm tra điều kiện vô hiệu hóa
Long Armed bị hủy khi:
- Hết Arm Life.
- Có Strong Short Cut mới.
- Itto Score giảm về 0 hoặc âm.
- Sang ngày giao dịch mới.
- Đến Force Close.
- Long Entry được chấp thuận.
Với Short, điều kiện tương ứng là Itto Score tăng lên 0 hoặc dương.
Điểm đáng chú ý là Armed Setup không tự động bị hủy chỉ vì giá quay vào Kumo.
Điều này cho phép bot theo dõi một nhịp điều chỉnh trong khi xu hướng theo Score chưa hoàn toàn mất thiên hướng.
Tuy nhiên, tại nến xác nhận Entry, giá vẫn phải nằm đúng phía Kumo nếu bộ lọc này đang bật.
Bước 7: Chờ giá kiểm tra vùng Pullback
Theo cấu hình mặc định:
Pullback Zone = Kijun.
ATR Length = 14.
Tolerance = 0,15 ATR.
Bot kiểm tra biên độ của cây nến hiện tại có giao với vùng quanh Kijun hay không.
Khi chuyển sang Tenkan-Kijun Zone, bot sử dụng vùng giữa hai đường và mở rộng thêm dung sai ATR.
Bước 8: Xác nhận giá đóng cửa đúng phía Kijun
Với Long:
Close > Kijun.
Với Short:
Close < Kijun.
Đây là điều kiện bắt buộc trong cả hai chế độ Pullback Zone.
Việc giá chỉ chạm vùng nhưng đóng cửa sai phía Kijun không đủ để tạo Entry.
Bước 9: Kiểm tra Itto Score tại thời điểm xác nhận
Mặc định:
Minimum Confirmation Score = 3.
Với Long:
Itto Score ≥ +3.
Với Short:
Itto Score ≤ −3.
Đây là ngưỡng thấp hơn Strong Threshold ±4.
Điều này cho phép bot chấp nhận một số trường hợp Score suy giảm nhẹ trong quá trình Pullback nhưng chưa mất thiên hướng xu hướng.
Bước 10: Kiểm tra Ichimoku Alignment
Theo cấu hình mặc định, bot yêu cầu:
Long:
- Giá đóng cửa trên Kumo.
- Tenkan nằm trên Kijun.
Short:
- Giá đóng cửa dưới Kumo.
- Tenkan nằm dưới Kijun.
Chikou Alignment và Full Sanyaku là các bộ lọc tùy chọn.
Bước 11: Kiểm tra Candle Quality
Bot kiểm tra hướng và độ lớn thân nến.
Với Long, nến phải tăng nếu Directional Candle được bật.
Với Short, nến phải giảm.
Đồng thời:
Body Ratio ≥ 0,35.
Nếu Previous High/Low Break được bật, giá đóng cửa còn phải phá cực trị nến liền trước theo hướng giao dịch.
Bước 12: Kiểm tra Structural Risk
Bot tính Stop Loss từ Highest High hoặc Lowest Low trong 5 nến gần nhất kết hợp ATR Buffer.
Khoảng Risk dự kiến phải nằm trong:
2,5–7 điểm.
Nếu Risk nhỏ hơn 2,5 hoặc lớn hơn 7, tín hiệu bị từ chối.
Bước 13: Kiểm tra điều kiện giao dịch chung
Trước khi tạo lệnh, bot kiểm tra:
- Đang không có vị thế.
- Hướng giao dịch được cho phép.
- Thời gian Entry hợp lệ.
- Nến đóng cửa trước Force Close.
- Cooldown đã kết thúc.
- Chưa đạt giới hạn 2 Entry trong ngày.
- Nến đã xác nhận đóng cửa.
Khi tất cả điều kiện đạt yêu cầu, tín hiệu trở thành Final Entry.
4. Điều kiện vào lệnh Long và Short của CNPS 37
4.1. Điều kiện Long
Một giao dịch Long phải trải qua hai giai đoạn.
Giai đoạn A – Kích hoạt Strong Long Armed
Điều kiện gồm:
- Itto Score hiện tại đạt ít nhất +4.
- Itto Score nến trước thấp hơn +4.
- Giá không nằm trong trạng thái No Cut.
- Nến đã đóng cửa xác nhận.
- Dữ liệu Ichimoku hợp lệ.
Sau đó, bot ghi nhận Long Armed.
Giai đoạn B – Xác nhận Pullback Long
Bot yêu cầu:
- Long Armed còn hiệu lực.
- Nến hiện tại xuất hiện sau nến Strong Long.
- Setup chưa vượt 15 nến.
- Score vẫn dương.
- Giá giao với vùng Pullback.
- Close > Kijun.
- Itto Score ≥ +3.
- Close nằm trên Kumo nếu bộ lọc bật.
- Tenkan > Kijun nếu bộ lọc bật.
- Chikou Alignment hợp lệ nếu được yêu cầu.
- Sanyaku Bullish nếu Full Sanyaku bật.
- Nến tăng nếu Directional Candle bật.
- Body Ratio ≥ 35%.
- Close > High nến trước nếu Previous Break bật.
- Structural Risk trong khoảng 2,5–7 điểm.
- Không có vị thế đang mở.
- Thời gian giao dịch hợp lệ.
- Cooldown và số lệnh trong ngày hợp lệ.
Khi toàn bộ điều kiện được đáp ứng, bot mở Long 3 hợp đồng.
4.2. Ví dụ Long minh họa
Giả sử Itto Score có diễn biến:
| Nến | Itto Score |
|---|---|
| A | +2 |
| B | +3 |
| C | +4 |
Ở nến C, bot có thể ghi nhận Strong Long Cut.
Sau đó, chiến lược chờ giá quay về khu vực Kijun.
Giả sử nến xác nhận có:
- Kijun = 1.898.
- Close = 1.900.
- Open = 1.897.
- High = 1.901.
- Low = 1.895.
- ATR14 = 10.
- Itto Score = +3.
Body Ratio:
|1.900 − 1.897| / (1.901 − 1.895) = 0,50.
Nến đáp ứng ngưỡng 0,35.
Dung sai Pullback:
0,15 × 10 = 1,5 điểm.
Vùng kiểm tra quanh Kijun:
1.896,5–1.899,5.
Vì nến có biên độ High–Low từ 1.895 đến 1.901, vùng giá đã giao với Kijun Pullback Zone.
Giả sử Lowest Low 5 nến gần nhất bằng 1.895.
Stop Buffer:
0,10 × 10 = 1 điểm.
Stop Loss dự kiến:
1.895 − 1 = 1.894.
Prospective Risk:
1.900 − 1.894 = 6 điểm.
Vì 6 nằm trong khoảng 2,5–7 điểm, Risk Filter được đáp ứng.
Nếu các điều kiện Kumo, Tenkan/Kijun và thời gian giao dịch cũng hợp lệ, bot có thể tạo Long.
Nếu lệnh khớp tại 1.900:
- Entry: 1.900.
- SL: 1.894.
- Risk: 6 điểm.
- TP 2R: 1.912.
Đây là ví dụ minh họa, không phải tín hiệu giao dịch thực tế.
4.3. Điều kiện Short
Short sử dụng quy trình tương ứng theo hướng ngược lại.
Giai đoạn A – Strong Short Armed
- Itto Score hiện tại ≤ −4.
- Itto Score nến trước > −4.
- Không thuộc No Cut.
- Nến đã đóng cửa.
Giai đoạn B – Pullback Short
Bot yêu cầu:
- Short Armed còn hiệu lực.
- Nến hiện tại xuất hiện sau Strong Short.
- Setup chưa hết hạn 15 nến.
- Score vẫn âm.
- Giá chạm vùng Pullback.
- Close < Kijun.
- Itto Score ≤ −3.
- Close dưới Kumo nếu được yêu cầu.
- Tenkan < Kijun nếu bộ lọc bật.
- Chikou Alignment phù hợp nếu bật.
- Sanyaku Bearish nếu bật.
- Nến giảm nếu Directional Candle bật.
- Body Ratio ≥ 35%.
- Close < Low nến trước nếu Previous Break bật.
- Structural Risk từ 2,5 đến 7 điểm.
- Điều kiện giao dịch chung hợp lệ.
Khi toàn bộ điều kiện đạt, chiến lược tạo Short.
4.4. Ví dụ Short minh họa
Giả sử Itto Score giảm từ −3 xuống −4 và kích hoạt Short Armed.
Sau đó, giá hồi lên vùng Kijun và xuất hiện nến giảm xác nhận.
Dữ liệu:
- Kijun = 1.902.
- Close = 1.900.
- Score = −3.
- Tenkan < Kijun.
- Close dưới Kumo.
- ATR14 = 10.
- Highest High 5 nến = 1.905.
Stop Buffer:
0,10 × 10 = 1 điểm.
Stop Loss dự kiến:
1.905 + 1 = 1.906.
Risk:
1.906 − 1.900 = 6 điểm.
Nếu những điều kiện khác đều hợp lệ, chiến lược có thể mở Short.
Với Entry 1.900:
- Stop Loss: 1.906.
- Take Profit 2R: 1.888.
4.5. Strong Score và Confirmation Score khác nhau thế nào?
CNPS 37 sử dụng hai ngưỡng điểm số riêng biệt.
| Tiêu chí | Long | Short |
|---|---|---|
| Strong Arm | Score ≥ +4 | Score ≤ −4 |
| Entry Confirmation | Score ≥ +3 | Score ≤ −3 |
| Hủy Armed do mất hướng | Score ≤ 0 | Score ≥ 0 |
Ví dụ, bot tạo Long Armed khi Score đạt +4.
Sau đó, trong quá trình giá Pullback về Kijun, Score giảm còn +3.
Chiến lược vẫn có thể mở Long nếu các điều kiện khác hợp lệ.
Điều này giúp phân biệt sự kiện phát hiện xu hướng mạnh và mức đồng thuận tối thiểu tại điểm vào lệnh.
4.6. Kijun Pullback và Tenkan-Kijun Zone
CNPS 37 có hai lựa chọn:
Kijun: Giá phải giao với vùng quanh Kijun, có dung sai ATR.
Tenkan-Kijun Zone: Giá phải giao với vùng giữa Tenkan và Kijun, mở rộng thêm dung sai ATR.
Trong chế độ Kijun:
Zone Upper = Kijun + Tolerance.
Zone Lower = Kijun − Tolerance.
Trong chế độ Tenkan-Kijun:
Zone Upper = Max(Tenkan, Kijun) + Tolerance.
Zone Lower = Min(Tenkan, Kijun) − Tolerance.
Tuy nhiên, ở cả hai chế độ:
Long vẫn cần Close > Kijun.
Short vẫn cần Close < Kijun.
Việc mở rộng vùng Touch không làm mất điều kiện Reclaim Kijun.
4.7. Pullback Touch và Entry có thể cùng một nến
Đây là đặc điểm quan trọng.
CNPS 37 không yêu cầu giá phải chạm Kijun ở một cây nến, sau đó chờ thêm cây nến khác để xác nhận.
Nếu cây nến hiện tại vừa:
- Giao với vùng Pullback.
- Đóng cửa đúng phía Kijun.
- Đạt Confirmation Score.
- Có Candle Quality hợp lệ.
- Đáp ứng Risk và những điều kiện khác.
Bot có thể tạo Entry ngay khi cây nến đó đóng cửa.
Điều kiện bắt buộc về trình tự là nến Entry phải xuất hiện sau nến Strong Arm.
4.8. Pullback không được ghi nhớ bằng một biến riêng
Khác với một số chiến lược Pullback có trạng thái pullbackSeen, CNPS 37 đánh giá Pullback Touch trên chính cây nến đang xét.
Điều này có nghĩa một lần chạm Kijun trước đó không tự động được lưu làm điều kiện đủ cho Entry ở nến sau.
Nếu ở cây nến sau, giá không còn giao với vùng Pullback, điều kiện Touch có thể không đạt.
Vì vậy, bot yêu cầu sự kết hợp đồng thời giữa việc kiểm tra vùng giá và tín hiệu xác nhận tại nến đang được đánh giá.
4.9. Một Armed Setup chỉ tạo một Entry được chấp thuận
Khi Final Long hoặc Final Short Signal xuất hiện, chiến lược:
- Gửi lệnh tương ứng.
- Tăng bộ đếm Trades Today.
- Hủy Armed Setup theo hướng đó.
Vì vậy, cùng một Armed Setup không tiếp tục tạo nhiều lệnh sau khi đã có một Final Entry được chấp thuận.
Nếu muốn có giao dịch mới sau đó, bot cần một sự kiện Strong Cut mới và vượt qua các điều kiện giao dịch.
5. CNPS 37 quản trị rủi ro và thoát lệnh như thế nào?
5.1. Stop Loss theo cấu trúc giá
Theo mặc định:
Stop Structure Lookback = 5 nến.
Stop Buffer = 0,10 ATR14.
Với Long:
Prospective Stop = Lowest Low(5) − 0,10 ATR.
Với Short:
Prospective Stop = Highest High(5) + 0,10 ATR.
Bot sử dụng High/Low của 5 cây nến gần nhất, bao gồm cả cây nến đang xác nhận tín hiệu.
Stop Loss không được tính từ toàn bộ giai đoạn Armed nếu quá trình Pullback kéo dài hơn 5 nến.
5.2. Risk Filter từ 2,5 đến 7 điểm
Trước khi tạo lệnh, bot tính:
Long Risk = Close − Prospective Long Stop.
Short Risk = Prospective Short Stop − Close.
Sau đó, chiến lược yêu cầu:
2,5 ≤ Risk ≤ 7 điểm.
Ví dụ:
- Risk = 2 điểm: Bị từ chối.
- Risk = 4 điểm: Được chấp nhận.
- Risk = 9 điểm: Bị từ chối.
Đây là bộ lọc giúp bot giới hạn khoảng Stop Loss dự kiến.
Tuy nhiên, chiến lược không tự động điều chỉnh số lượng hợp đồng tương ứng với khoảng Risk.
Khối lượng mặc định vẫn là 3 hợp đồng.
5.3. Giữ nguyên mức giá Stop Loss sau khi khớp
Một đặc điểm quan trọng của CNPS 37 là bot lưu giá Stop Loss cấu trúc trước khi gửi lệnh.
Ví dụ:
- Close tín hiệu = 1.900.
- Prospective Stop = 1.894.
- Prospective Risk = 6 điểm.
Nếu lệnh Long được khớp tại 1.901, Stop Loss vẫn được giữ tại 1.894.
Risk thực tế:
1.901 − 1.894 = 7 điểm.
Điều này khác với phương pháp lưu một khoảng Risk cố định rồi đặt lại Stop Loss cách Entry đúng khoảng đó.
CNPS 37 ưu tiên giữ mức giá cấu trúc đã được xác định.
Vì vậy, sau khi khớp lệnh, Risk thực tế có thể thay đổi theo giá khớp.
5.4. Risk Filter không được kiểm tra lại sau khớp
Theo mã nguồn, khoảng Risk 2,5–7 điểm được kiểm tra trước Entry.
Sau khi khớp, bot tính lại Initial Risk từ giá vào lệnh trung bình và Stop đã lưu.
Nếu giá khớp lệch khỏi Close của nến tín hiệu, Risk thực tế có thể vượt 7 điểm mà không có bước từ chối lệnh mới tại thời điểm này.
Ví dụ:
- Risk dự kiến = 6,5 điểm.
- Giá khớp Long cao hơn Close tín hiệu 1 điểm.
Risk thực tế có thể tăng lên 7,5 điểm.
Đây là điểm cần đặc biệt lưu ý khi kiểm thử và triển khai hệ thống giao dịch tự động.
5.5. Stop Loss dự phòng
Khi vị thế được xác lập, bot kiểm tra Stop Loss đã lưu có hợp lệ hay không.
Nếu Long Stop không tồn tại hoặc nằm từ Entry trở lên, chiến lược sử dụng:
Fallback Long Stop = Entry − Minimum Risk Points.
Với Short, nếu Stop không tồn tại hoặc nằm từ Entry trở xuống:
Fallback Short Stop = Entry + Minimum Risk Points.
Theo mặc định:
Minimum Risk Points = 2,5.
Đây là cơ chế dự phòng cho mức Stop không hợp lệ, không phải cơ chế tự động giới hạn mọi giao dịch về Risk tối đa 7 điểm.
5.6. Take Profit mặc định 2R
CNPS 37 sử dụng:
Take Profit R = 2,0.
Với Long:
TP = Entry + Initial Risk × 2.
Với Short:
TP = Entry − Initial Risk × 2.
Ví dụ:
- Entry Long = 1.900.
- SL = 1.896.
- Initial Risk = 4 điểm.
Take Profit:
1.900 + 4 × 2 = 1.908.
Tỷ lệ Reward/Risk danh nghĩa là 2R.
Tuy nhiên, vị thế có thể bị đóng trước khi đạt TP bởi Stop Loss, Time Exit, Score Failure Exit nếu bật hoặc Force Close.
5.7. Break Even
CNPS 37 hỗ trợ Break Even, mặc định đang tắt.
Thông số:
Break Even Trigger = 1,25R.
Break Even Offset = 0,5 điểm.
Với Long:
Trigger = Entry + Initial Risk × 1,25.
Khi High đạt ngưỡng:
New Stop = Max(Current Stop, Entry + 0,5).
Với Short:
Trigger = Entry − Initial Risk × 1,25.
Khi Low đạt ngưỡng:
New Stop = Min(Current Stop, Entry − 0,5).
Ví dụ:
- Entry Long = 1.900.
- Initial Risk = 4 điểm.
Ngưỡng kích hoạt:
1.900 + 4 × 1,25 = 1.905.
Khi giá đạt 1.905, bot có thể nâng Stop Loss lên 1.900,5.
Điểm quan trọng là Break Even sử dụng High/Low để kiểm tra ngưỡng, không yêu cầu giá đóng cửa vượt ngưỡng.
Break Even được kích hoạt tối đa một lần cho mỗi vị thế.
5.8. Score Failure Exit
CNPS 37 có tùy chọn:
Exit If Score Loses Direction.
Mặc định: Tắt.
Nếu bật, bot theo dõi Itto Score khi đang giữ vị thế.
Với Long:
Itto Score ≤ Score Failure Level.
Với Short:
Itto Score ≥ −Score Failure Level.
Score Failure Level mặc định bằng 0.
Do đó:
- Long có thể đóng khi Score ≤ 0.
- Short có thể đóng khi Score ≥ 0.
Điều kiện yêu cầu nến đã đóng cửa và xuất hiện sau nến ghi nhận Entry.
Đây là cơ chế thoát khi Score mất thiên hướng, không phải Exit On Chop tự động của V1.
5.9. Time Exit
CNPS 37 sử dụng:
Maximum Bars In Trade = 90.
Giá trị này mặc định được bật.
Nếu số nến kể từ Active Entry Bar đạt hoặc vượt 90, bot yêu cầu đóng vị thế.
Ví dụ, trên M1, đây là 90 nến một phút có dữ liệu.
Trên M5, đây là 90 nến năm phút.
Tuy nhiên, Force Close cuối phiên vẫn có thể đóng vị thế trước khi đạt giới hạn.
Ngoài ra, nếu người dùng đặt Maximum Bars In Trade bằng 0, chức năng Time Exit bị tắt.
5.10. Force Close cuối phiên
Mặc định:
Force Close = 14:45.
Khi một cây nến bắt đầu trước 14:45 và kết thúc tại hoặc sau mốc này, chiến lược kích hoạt điều kiện đóng phiên.
Nếu có vị thế, bot sử dụng:
strategy.close_all(immediately=true)
để yêu cầu đóng toàn bộ.
Đồng thời, Armed Setup đang chờ được hủy.
5.11. Tổng hợp các phương pháp thoát lệnh
| Phương pháp | Mặc định | Cơ chế |
|---|---|---|
| Structural Stop Loss | Bật | High/Low 5 nến + ATR Buffer |
| Take Profit | Bật | 2R |
| Break Even | Tắt | Kích hoạt tại 1,25R |
| Score Failure Exit | Tắt | Score mất thiên hướng |
| Time Exit | Bật | 90 nến |
| Force Close | Bật | 14:45 |
CNPS 37 không có Trailing Stop độc lập.
Stop Loss ban đầu giữ mức cấu trúc đã lưu, trừ trường hợp Break Even được kích hoạt.
6. Hướng dẫn cài đặt và sử dụng CNPS 37 trên TradingView
Bước 1: Mở biểu đồ giao dịch
Truy cập TradingView và lựa chọn biểu đồ hợp đồng tương lai chỉ số VN30 từ nguồn dữ liệu phù hợp.
Chiến lược sử dụng dữ liệu thuộc khung thời gian biểu đồ đang mở.
Vì vậy, các tham số như:
- Kijun Slope Lookback.
- Arm Life.
- Stop Lookback.
- Cooldown.
- Maximum Bars In Trade.
đều được tính theo số nến.
Thay đổi khung thời gian sẽ làm thay đổi khoảng quan sát thực tế của những điều kiện này.
Bước 2: Thêm mã nguồn vào Pine Editor
Nếu sử dụng mã nguồn:
- Mở Pine Editor.
- Tạo một Strategy mới.
- Dán mã nguồn CNPS37 V2 ICHIMOKU ITTO PULLBACK.
- Kiểm tra và lưu.
- Chọn Add to chart.
- Xác nhận Strategy được thêm thành công.
- Mở Strategy Tester để đánh giá giao dịch mô phỏng.
Lưu ý: Nếu sử dụng bản mã nguồn cũ, cần xóa ký tự s thừa sau lệnh table.cell(diagnostics, 1, 19, positionText) ở cuối file. Đây là lỗi cú pháp đã được xác định trong bản source trước khi sửa.
Bước 3: Cấu hình Ichimoku
| Thông số | Mặc định |
|---|---|
| Ichimoku Preset | 5-Day Week |
| Tenkan | 7 |
| Kijun | 22 |
| Span B | 44 |
| Displacement | 22 |
| Kijun Slope Lookback | 5 |
Người dùng có thể kiểm thử Classic hoặc Crypto Preset để đánh giá sự thay đổi về số lượng Strong Cut và thời điểm Pullback Confirmation.
Tuy nhiên, khi thay đổi Preset, cần hiểu rằng không chỉ vùng Pullback thay đổi mà toàn bộ hệ thống chấm điểm cũng được tính lại.
Bước 4: Cấu hình Strong Score và Armed Setup
| Thông số | Mặc định |
|---|---|
| Strong Arm Threshold | 4 |
| Source Chop Score Band | 1 |
| Maximum Bars To Wait For Pullback | 15 |
Strong Threshold càng cao thì chiến lược càng yêu cầu sự đồng thuận của nhiều thành phần Ichimoku.
Tuy nhiên, việc tăng Strong Threshold từ 4 lên 5 không đảm bảo những giao dịch còn lại sẽ hiệu quả hơn.
Người dùng nên đánh giá riêng số lượng Strong Cut, số thiết lập xác nhận Pullback và số Entry thực tế.
Bước 5: Cấu hình Pullback Confirmation
| Thông số | Mặc định |
|---|---|
| Pullback Zone | Kijun |
| Pullback Tolerance ATR | 0,15 |
| Minimum Confirmation Score | 3 |
| Require Bull/Bear Candle | Bật |
| Minimum Body Ratio | 0,35 |
| Require Previous High/Low Break | Tắt |
| Require Price Outside Kumo | Bật |
| Require Tenkan/Kijun Alignment | Bật |
| Require Chikou Alignment | Tắt |
| Require Full Sanyaku | Tắt |
Đây là nhóm thông số quan trọng nhất đối với thời điểm Entry.
Một phương pháp kiểm thử là giữ nguyên Strong Threshold và lần lượt thay đổi:
- Pullback Zone.
- ATR Tolerance.
- Confirmation Score.
- Candle Body Ratio.
- Các bộ lọc Kumo, Chikou và Sanyaku.
Cách này giúp đánh giá mức đóng góp của từng điều kiện.
Bước 6: Cấu hình Risk Management
| Thông số | Mặc định |
|---|---|
| ATR Length | 14 |
| Stop Structure Lookback | 5 |
| Stop Buffer ATR | 0,10 |
| Minimum Risk Points | 2,5 |
| Maximum Risk Points | 7 |
| Take Profit R | 2,0 |
| Use Break Even | Tắt |
| Break Even Trigger | 1,25R |
| Break Even Offset | 0,5 |
| Exit If Score Loses Direction | Tắt |
| Score Failure Level | 0 |
| Maximum Bars In Trade | 90 |
Một điểm quan trọng là Minimum/Maximum Risk được kiểm tra từ giá đóng cửa tín hiệu.
Mức Risk thực tế sau khi lệnh khớp có thể khác.
Bước 7: Cấu hình Session và Trade Control
| Thông số | Mặc định |
|---|---|
| Timezone | Asia/Ho_Chi_Minh |
| Morning Start | 09:05 |
| Morning End | 11:20 |
| Afternoon Start | 13:05 |
| Last Entry | 14:20 |
| Force Close | 14:45 |
| Maximum Trades Per Day | 2 |
| Cooldown Bars After Exit | 8 |
| Trade Direction | Both |
Bot sử dụng thời gian mở nến để xác định cửa sổ Entry.
Ngoài ra, thời gian đóng nến phải trước Force Close.
Vì vậy, cần kiểm tra ranh giới nến khi sử dụng các khung thời gian khác nhau.
Bước 8: Đọc tín hiệu và Diagnostics
CNPS 37 hỗ trợ các thành phần hiển thị:
| Thành phần | Mô tả |
|---|---|
| Kijun | Đường màu cam |
| Tenkan | Đường màu xanh |
| Kumo | Vùng mây xanh/đỏ |
| Long Arm | Dấu tròn xanh, nhãn A |
| Short Arm | Dấu tròn đỏ, nhãn A |
| Long Entry | Tam giác xanh, nhãn L |
| Short Entry | Tam giác đỏ, nhãn S |
| Active Stop Loss | Đường đỏ |
| Active Take Profit | Đường xanh lá |
Theo mặc định:
- Show Kijun: Bật.
- Show Tenkan: Tắt.
- Show Kumo: Tắt.
- Show Arm Markers: Tắt.
- Show Entry Markers: Tắt.
- Show Active SL/TP: Bật.
- Show Diagnostics: Tắt.
Khi bật Diagnostics, bot hiển thị:
- Preset.
- Itto Score.
- Armed State.
- Price/Kumo Component.
- Tenkan/Kijun Component.
- Chikou Component.
- Future Kumo Component.
- Kijun Slope Component.
- Sanyaku.
- Candle Body Ratio.
- Prospective Long Risk.
- Prospective Short Risk.
- Strong Arm Counts.
- Raw Setup Counts.
- Final Entry Counts.
- Active Initial Risk.
- Target R.
- Trades Today.
- Position.
Đặc biệt, Diagnostics giúp phân biệt ba cấp độ tín hiệu:
Strong Arm: Tín hiệu xu hướng đủ mạnh để bắt đầu chờ Pullback.
Raw Setup: Điều kiện Pullback và xác nhận kỹ thuật được đáp ứng.
Final Entry: Raw Setup vượt thêm bộ lọc Risk và điều kiện giao dịch chung.
Một điểm lưu ý là bộ đếm Arm, Raw Setup và Entry mang tính tích lũy trong quá trình chạy chiến lược.
Chúng không tự động được đặt lại mỗi ngày giống Trades Today.
Bước 9: Đánh giá trong Strategy Tester
CNPS 37 được xây dựng dưới dạng TradingView Strategy nên hỗ trợ kiểm thử lịch sử.
Những chỉ số quan trọng gồm:
- Net Profit.
- Maximum Drawdown.
- Profit Factor.
- Percent Profitable.
- Total Trades.
- Average Trade.
Đối với CNPS 37, nên kiểm thử riêng:
Thử nghiệm 1: Strong Threshold 4 so với 5.
Thử nghiệm 2: Pullback Kijun so với Tenkan-Kijun Zone.
Thử nghiệm 3: Confirmation Score 3 so với 4.
Thử nghiệm 4: Pullback Tolerance 0,15 ATR so với các mức khác.
Thử nghiệm 5: Bật Require Chikou Alignment.
Thử nghiệm 6: Bật Full Sanyaku.
Thử nghiệm 7: Thay đổi Body Ratio 0,35.
Thử nghiệm 8: Thay đổi Maximum Arm Life.
Thử nghiệm 9: So sánh Structural Stop Lookback.
Thử nghiệm 10: Bật Break Even tại 1,25R.
Thử nghiệm 11: Bật Score Failure Exit.
Thử nghiệm 12: Thay đổi Maximum Bars In Trade.
Theo mã nguồn:
- 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.
Các thông số này phục vụ mô phỏng, không phản ánh đầy đủ yêu cầu ký quỹ hoặc cơ chế khớp lệnh thực tế của hợp đồng tương lai.
7. Cách thiết lập cảnh báo tín hiệu giao dịch
CNPS 37 hỗ trợ cảnh báo thông qua Order Fill Events trong TradingView.
Để thiết lập:
- Mở biểu đồ có chiến lược CNPS37 V2 ICHIMOKU ITTO PULLBACK.
- Chọn Create Alert.
- Trong Condition, chọn CNPS37.
- Chọn cảnh báo dựa trên Order Fills.
- Trong Message, nhập
{{strategy.order.alert_message}}. - Chọn phương thức nhận cảnh báo và lưu.
7.1. Các mã cảnh báo Entry
| Thông điệp | Ý nghĩa |
|---|---|
| ENTRY_LONG_CNPS37_V2 | Mở Long |
| ENTRY_SHORT_CNPS37_V2 | Mở Short |
Các thông điệp này chỉ gắn với Final Entry được chấp thuận.
Strong Score Cut hoặc Armed Setup không tạo Order Fill Alert riêng vì chưa có lệnh giao dịch.
7.2. Cảnh báo Stop Loss và Take Profit
| Thông điệp | Ý nghĩa |
|---|---|
| EXIT_LONG_TP_CNPS37_V2 | Đóng Long theo Take Profit |
| EXIT_LONG_SL_CNPS37_V2 | Đóng Long theo Stop Loss |
| EXIT_SHORT_TP_CNPS37_V2 | Đóng Short theo Take Profit |
| EXIT_SHORT_SL_CNPS37_V2 | Đóng Short theo Stop Loss |
Theo mặc định, Disable SL/TP Alerts đang tắt.
Vì vậy, các thông điệp SL/TP được phép phát ra khi lệnh thoát tương ứng khớp.
7.3. Cảnh báo Break Even
| Thông điệp | Ý nghĩa |
|---|---|
| EXIT_LONG_BE_CNPS37_V2 | Long đóng theo Stop Loss sau Break Even |
| EXIT_SHORT_BE_CNPS37_V2 | Short đóng theo Stop Loss sau Break Even |
Khi Break Even được kích hoạt, bot thay đổi thông điệp Stop Loss sang nhóm BE.
Tuy nhiên, đây không phải cảnh báo tại thời điểm Stop Loss vừa được dời.
Thông điệp được sử dụng khi lệnh Stop Loss tương ứng thực sự khớp.
7.4. Cảnh báo Score Failure Exit
| Thông điệp | Ý nghĩa |
|---|---|
| SCORE_FAILURE_LONG_CNPS37_V2 | Đóng Long khi Itto Score mất thiên hướng |
| SCORE_FAILURE_SHORT_CNPS37_V2 | Đóng Short khi Itto Score mất thiên hướng |
Hai cảnh báo này chỉ xuất hiện khi người dùng bật Score Failure Exit và điều kiện được đáp ứng.
7.5. Cảnh báo Time Exit và Session End
| Thông điệp | Ý nghĩa |
|---|---|
| TIME_EXIT_CNPS37_V2 | Đóng vị thế theo giới hạn số nến |
| SESSION_END_CNPS37_V2 | Đóng toàn bộ vị thế cuối phiên |
Time Exit mặc định sử dụng ngưỡng 90 nến.
Session End sử dụng Force Close 14:45.
7.6. Những lưu ý khi tích hợp Webhook
Các mã Alert hiện tại giúp hệ thống bên ngoài nhận diện:
- Mở Long hoặc Short.
- Đóng theo Stop Loss.
- Đóng theo Take Profit.
- Đóng theo Break Even.
- Đóng khi Score mất thiên hướng.
- Đóng theo Time Exit.
- Đóng cuối phiên.
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 giao dịch.
Nếu muốn tích hợp với hệ thống giao dịch tự động, cần bổ sung các dữ liệu phù hợp thông qua TradingView Placeholder hoặc điều chỉnh mã nguồn.
Ngoài ra, hệ thống nhận tín hiệu phải phân biệt rõ sự kiện đóng vị thế và sự kiện mở vị thế.
Việc TradingView phát Order Fill Alert không đồng nghĩa lệnh đã được thực thi thành công tại công ty chứng khoán.
Kết luận
CNPS 37 V2 ICHIMOKU ITTO PULLBACK là chiến lược giao dịch phái sinh sử dụng hệ thống chấm điểm Ichimoku 5 thành phần kết hợp phương pháp xác nhận Pullback về Kijun hoặc vùng Tenkan–Kijun.
Điểm nổi bật của chiến lược nằm ở việc tách biệt sự kiện xác nhận xu hướng mạnh và thời điểm mở vị thế.
Thay vì giao dịch ngay khi Itto Score vượt ngưỡng ±4, bot kích hoạt Armed Setup và chờ tối đa 15 nến để thị trường hình thành một nhịp Pullback phù hợp.
Sau đó, chiến lược yêu cầu giá đóng cửa trở lại đúng phía Kijun, Itto Score tiếp tục duy trì mức xác nhận ±3 và các điều kiện Ichimoku, Candle Quality, Risk Management đồng thời đáp ứng yêu cầu.
Với cấu hình mặc định, CNPS 37 sử dụng Preset 5-Day Week, Strong Threshold 4, Pullback Kijun với dung sai 0,15 ATR, Structural Stop Loss theo High/Low 5 nến và Take Profit 2R.
Bot giới hạn khoảng Risk dự kiến từ 2,5 đến 7 điểm, tối đa 2 giao dịch mỗi ngày và Cooldown 8 nến sau thoát vị thế.
Ngoài ra, chiến lược hỗ trợ Break Even, Score Failure Exit, Time Exit và Force Close cuối phiên.
Tuy nhiên, việc chờ Pullback không đảm bảo chiến lược có tỷ lệ thắng cao hơn so với giao dịch trực tiếp tại Strong Score Cut. Một số cơ hội có thể bị bỏ lỡ nếu thị trường tiếp tục vận động mạnh mà không quay về Kijun.
Ngược lại, trong những giai đoạn xu hướng suy yếu, giá vẫn có thể Pullback về Kijun rồi tiếp tục đi ngược hướng kỳ vọng, khiến giao dịch bị Stop Loss.
Vì vậy, khi sử dụng CNPS 37, điều quan trọng là hiểu rõ cách Itto Score được tính, sự khác biệt giữa Strong Arm và Confirmed Entry, điều kiện Kijun Pullback, vai trò của Sanyaku và cách chiến lược xác định Stop Loss theo cấu trúc.
Người dùng nên kiểm thử riêng từng Ichimoku Preset, Pullback Zone và Confirmation Score trong TradingView Strategy Tester, đồng thời đánh giá tác động của Break Even, Time Exit và các ngưỡng Risk trên nhiều giai đoạn thị trường.
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 phân tích kỹ thuật và phương pháp 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ả giao dịch mô phỏng 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.





