Chiến lược đột phá kênh và tùy chỉnh ChoCH dựa trên biểu đồ nến Vector


Ngày tạo: 2024-03-29 14:45:57 sửa đổi lần cuối: 2024-03-29 14:45:57
sao chép: 50 Số nhấp chuột: 759
1
tập trung vào
1617
Người theo dõi

Chiến lược đột phá kênh và tùy chỉnh ChoCH dựa trên biểu đồ nến Vector

Tổng quan

Chiến lược này kết hợp các khái niệm của Vector Candles với các mô hình truyền thống như Channel Breakout và Chocolate Sauce, nhằm mục đích nắm bắt các hành vi đột phá của thị trường. Chiến lược này xác nhận tín hiệu bằng cách so sánh giá bán với các điểm cao và thấp của một đường K trước đó và kết hợp với các biểu đồ vector tăng cường tổng hợp, đồng thời sử dụng một số đường K xác nhận để lọc tiếng ồn.

Nguyên tắc chiến lược

  1. Tính số lượng giao dịch trung bình của một số dòng K trong quá khứ và định nghĩa một biểu đồ vector với bốn màu khác nhau (màu đỏ, xanh lá cây, xanh dương và tím) dựa trên số lượng giao dịch tăng gấp đôi.
  2. Khi giá đóng cửa thấp hơn điểm thấp của đường K trước và được vẽ bằng vector màu đỏ, nó được nhận dạng là tín hiệu ChoCH màu đỏ; khi giá đóng cửa cao hơn điểm cao của đường K trước và được vẽ bằng vector màu xanh lá cây, nó được nhận dạng là tín hiệu BOS màu xanh lá cây.
  3. Trong một số lượng xác nhận K, nếu các vector filter màu đỏ xuất hiện nhiều lần đến ngưỡng thiết lập, tín hiệu ChoCH màu đỏ sẽ được xác nhận; nếu các vector filter màu xanh lá cây xuất hiện nhiều lần đến ngưỡng thiết lập, tín hiệu BOS màu xanh lá cây sẽ được xác nhận.
  4. Khi xác nhận tín hiệu ChoCH màu đỏ, hãy mở thêm và khi xác nhận tín hiệu BOS màu xanh lá cây, hãy đóng.

Lợi thế chiến lược

  1. Sự kết hợp của vector filter với các mô hình truyền thống như Channel Break và ChoCH đã làm tăng độ tin cậy của tín hiệu.
  2. Các hệ thống xác nhận K được giới thiệu, có hiệu quả trong việc lọc tiếng ồn và tín hiệu giả.
  3. Các tín hiệu được phân biệt bằng màu sắc của các phím vector để làm cho nó trực quan hơn và dễ dàng nhận biết.
  4. Các tham số có thể điều chỉnh, linh hoạt hơn, có thể được tối ưu hóa cho các môi trường thị trường khác nhau và phong cách giao dịch.

Rủi ro chiến lược

  1. Trong một thị trường bất ổn, việc phá vỡ và rút lui thường xuyên có thể dẫn đến nhiều tín hiệu giả và giao dịch thua lỗ.
  2. Thiết lập không đúng số lượng đường xác nhận K có thể gây ra sự chậm trễ hoặc nhập cảnh sớm.
  3. Nếu bạn chỉ dựa vào các chỉ số kỹ thuật và bỏ qua các yếu tố cơ bản, bạn có thể gặp phải những rủi ro bất ngờ.
  4. Chiến lược này không có lệnh dừng lỗ và có thể chịu tổn thất lớn nếu thị trường đảo ngược đột ngột.

Hướng tối ưu hóa chiến lược

  1. Tiếp theo, đưa ra các chỉ số xác nhận xu hướng, chẳng hạn như đường trung bình di chuyển, để xác nhận hướng xu hướng sau khi có tín hiệu đột phá và cải thiện chất lượng tín hiệu.
  2. Đối với thị trường chấn động, bạn có thể xem xét việc giới thiệu các chiến lược giao dịch phạm vi, chẳng hạn như đặt các điều kiện kích hoạt làm nhiều và làm rỗng bên trong kênh.
  3. Tối ưu hóa số lượng dây K xác nhận, tìm điểm cân bằng phù hợp, có thể lọc tiếng ồn hiệu quả nhưng không bị tụt hậu quá nhiều.
  4. Thiết lập các quy tắc dừng và dừng hợp lý, kiểm soát rủi ro giao dịch đơn lẻ và thu hồi tổng thể.
  5. Kết hợp với các chỉ số kỹ thuật khác hoặc chỉ số cảm xúc thị trường, cung cấp cơ sở quyết định giao dịch nhiều hơn.

Tóm tắt

Chiến lược này kết hợp một cách sáng tạo các đồ thị vector với các mô hình phá vỡ kênh và ChoCH cổ điển, cải thiện độ tin cậy và nhận dạng tín hiệu thông qua phân biệt màu sắc và xác nhận K-line. Ưu điểm của chiến lược là quy tắc rõ ràng, tín hiệu trực quan, đồng thời có một số không gian linh hoạt và có thể tối ưu hóa. Tuy nhiên, chiến lược cũng có một số hạn chế và rủi ro, chẳng hạn như hoạt động kém trong thị trường xung đột, thiếu hiểu biết về xu hướng thị trường và thiếu quản lý dừng lỗ.

Mã nguồn chiến lược
/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-29 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Custom ChoCH and BOS Strategy with Vector Candles", overlay=true)

// Input Parameters
length = input(10, title="Lookback Length for Volume")
volMultiplier = input(2.0, title="Volume Multiplier for Vector Candles")
confirmationCandles = input(3, title="Confirmation Candles")

// Calculate the average volume of the last 'length' candles
avgVol = sma(volume, length)

// Vector Candle Definitions
vectorCandleRed = (close < open) and (volume > avgVol * volMultiplier) ? 1.0 : 0.0
vectorCandleGreen = (close > open) and (volume > avgVol * volMultiplier) ? 1.0 : 0.0
vectorCandleBlue = (close < open) and (volume > avgVol * 1.5) ? 1.0 : 0.0 // 150% volume for blue
vectorCandlePurple = (close > open) and (volume > avgVol * 1.5) ? 1.0 : 0.0 // 150% volume for purple

// Detecting BOS and ChoCH
isRedChoCH = vectorCandleRed > 0 and (close < low[1]) // Red ChoCH
isGreenBOS = vectorCandleGreen > 0 and (close > high[1]) // Green BOS

// Confirmation Logic
redChoCHConfirmed = (sum(vectorCandleRed, confirmationCandles) >= 2) ? 1.0 : 0.0
greenBOSConfirmed = (sum(vectorCandleGreen, confirmationCandles) >= 2) ? 1.0 : 0.0

// Entry Conditions
buyCondition = redChoCHConfirmed > 0
sellCondition = greenBOSConfirmed > 0

// Strategy Execution
if (buyCondition)
    strategy.entry("Buy", strategy.long)
if (sellCondition)
    strategy.close("Buy")

// Plotting Vector Candles and Signals
plotshape(series=isRedChoCH, title="Red ChoCH Signal", location=location.belowbar, color=color.red, style=shape.circle, text="Red ChoCH")
plotshape(series=isGreenBOS, title="Green BOS Signal", location=location.abovebar, color=color.green, style=shape.circle, text="Green BOS")

// Plotting Vector Candles for Visualization
plotchar(vectorCandleRed > 0, title="Vector Candle Red", location=location.belowbar, color=color.red, char='R', text="Red")
plotchar(vectorCandleGreen > 0, title="Vector Candle Green", location=location.abovebar, color=color.green, char='G', text="Green")
plotchar(vectorCandleBlue > 0, title="Vector Candle Blue", location=location.belowbar, color=color.blue, char='B', text="Blue")
plotchar(vectorCandlePurple > 0, title="Vector Candle Purple", location=location.abovebar, color=color.purple, char='P', text="Purple")