Chiến lược đảo ngược mô hình bóng đôi


Ngày tạo: 2023-11-07 17:00:52 sửa đổi lần cuối: 2023-11-07 17:00:52
sao chép: 1 Số nhấp chuột: 664
1
tập trung vào
1617
Người theo dõi

Chiến lược đảo ngược mô hình bóng đôi

Tổng quan

Chiến lược đảo ngược hình dạng hai bóng là một chiến lược giao dịch đường ngắn dựa trên hình dạng đường K. Chiến lược này được đánh giá bằng cách xác định cơ hội đảo ngược có thể xảy ra bằng cách xác định hình dạng đường K đặc biệt mà không có hai đường K liên tiếp. Ưu điểm của chiến lược là đơn giản và dễ thực hiện, nhưng đồng thời cũng có một số rủi ro cần lưu ý.

Nguyên tắc

Lý luận cốt lõi của chiến lược này là nhận diện hình dạng nếp nhọn hai bóng. Cụ thể, chiến lược sẽ đánh giá xem liệu dòng K hiện tại có đáp ứng điều kiện giá mở bán bằng giá thấp nhất và giá đóng bán bằng giá cao nhất hay không, tức là không có đường nếp nhọn dưới và đường nếp nhọn trên, loại K này được gọi là đường nếp nhọn bóng. Nếu dòng K trước cũng đáp ứng điều kiện này, thì sẽ được coi là có hai đường nếp nhọn liên tiếp, tức là hình dạng nếp nhọn hai bóng.

Theo lý thuyết phân tích kỹ thuật, hình dạng hai bóng này thường báo hiệu xu hướng hiện tại sắp đảo ngược. Bởi vì cả hai đường K liên tiếp đều dao động trong một phạm vi rất hẹp, cho thấy sức mạnh của cả hai bên mua và bán đang dần cân bằng, báo hiệu khả năng đảo ngược.

Sau khi đánh giá hình dạng hai bóng, chiến lược sẽ vào lệnh thầu hoặc tháo lỗ theo giá đóng cửa khi mở lệnh K tiếp theo.

Ưu điểm

  • Các chiến lược được đưa ra rõ ràng, dễ hiểu, hình thức đơn giản và dễ thực hiện.

  • Dùng hình dạng đảo ngược hai bóng cổ điển, có một số cơ sở phân tích kỹ thuật.

  • Tỷ lệ giao dịch thấp giúp giảm chi phí giao dịch và rủi ro.

  • Có thể dễ dàng thêm chức năng phản hồi, tối ưu hóa tham số.

Rủi ro

  • Giao dịch hình dạng phụ thuộc vào xác suất thống kê đồ họa lịch sử, không thể hoàn toàn tránh được sự tách biệt.

  • Mặc dù bóng đôi cho thấy sự đảo ngược, nhưng sự đảo ngược không nhất thiết xảy ra hoặc duy trì.

  • Thiết lập một khoảng dừng cố định sẽ khó đối phó với tình huống hoạt động nhanh chóng.

  • Chỉ cần nhìn vào một hoặc hai thông tin K-line có thể dễ dàng dẫn đến sự tham gia quá mạnh mẽ.

Tối ưu hóa tư duy

  • Có thể kết hợp các chỉ số xu hướng để tránh hoạt động ngược.

  • Bạn có thể vào Wait for Confirm để chờ tín hiệu xác nhận quay ngược.

  • Ngừng lỗ có thể được thiết lập theo ATR động, chứ không phải là số ngày cố định.

  • Máy học có thể được sử dụng để xác định hình dạng bóng đôi nào đáng tin cậy hơn.

Tóm tắt

Chiến lược đảo ngược hai bóng sử dụng lý thuyết giao dịch hình dạng cổ điển, ý tưởng đơn giản và trực quan, phù hợp với người mới học và có thể làm một trong những mô-đun của robot. Tuy nhiên, vẫn cần chú ý đến kiểm soát rủi ro, có thể được cải thiện bằng cách tối ưu hóa thời gian và cách dừng. Nhìn chung, ưu và nhược điểm của chiến lược này khá rõ ràng và có thể được tham khảo.

Mã nguồn chiến lược
/*backtest
start: 2023-10-30 00:00:00
end: 2023-11-06 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("No Shadow Candles", overlay=true)

//set inputs
bars_until_close_trade = input(1,"Bars Until Close", minval = 1)
backtest_option = input(true,"Backtest on Twice alert?", bool)

//set conditions
up = close > close[1] and low >= open and high <= close
down = close < close[1] and low >= close and high <= open

up2 = (close > close[1] and low >= open and high <= close) and (close[1] > close[2] and low[1] >= open[1] and high[1] <= close[1])
down2 = (close < close[1] and low >= close and high <= open) and (close[1] < close[2] and low[1] >= close[1] and high[1] <= open[1])

close_trade = barssince(up or down) == bars_until_close_trade
close_trade2 = barssince(up2 or down2) == bars_until_close_trade

//plot indicators
plotshape(up,"Up Marker", shape.triangleup, location.belowbar, color = olive, size = size.tiny, transp = 50)
plotshape(down,"Down Marker", shape.triangledown, location.abovebar, color = orange, size = size.tiny, transp = 50)
plotshape(up2,"Up Twice Marker", shape.triangleup, location.belowbar, color = white, size = size.small)
plotshape(down2,"Down Twice Marker", shape.triangledown, location.abovebar, color = white, size = size.small)
plotshape(close_trade,"Close Trigger", shape.circle, location.belowbar, color = fuchsia, size = size.tiny, transp = 50)
plotshape(close_trade2,"Close Trigger2 (After Twice Alert)", shape.circle, location.belowbar, color = red, size = size.small)

//Strategy Testing


// Component Code Start
// Example usage:
// if testPeriod()
//   strategy.entry("LE", strategy.long)
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(01, "Backtest Start Month")
testStartDay = input(2, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(2019, "Backtest Stop Year")
testStopMonth = input(7, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)

// A switch to control background coloring of the test period
testPeriodBackground = input(title="Color Background?", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FF00 : na
bgcolor(testPeriodBackgroundColor, transp=97)

testPeriod() => true
// Component Code Stop

//Entry and Close settings
if testPeriod() and backtest_option == true
    strategy.entry("up2", true, when = up2, limit = close)
    strategy.close("up2", when = close_trade)

if testPeriod() and backtest_option == false
    strategy.entry("up", true,  when = up, limit = close)
    strategy.close("up", when = close_trade)