Chiến lược đảo ngược mở hàng ngày

Tác giả:ChaoZhang, Ngày: 2024-01-26 14:35:22
Tags:

img

Tổng quan

Chiến lược đảo ngược mở hàng ngày là một chiến lược đảo ngược trung bình trong ngày dựa trên kích thước cơ thể thực của nến trước để xác định cơ hội đảo ngược trong nến hiện tại. Nó sẽ kích hoạt tín hiệu giao dịch dài hoặc ngắn nếu có một khoảng cách đáng kể giữa giá mở của nến hiện tại và giá đóng của nến trước, miễn là kích thước cơ thể thực vượt quá ngưỡng được đặt trong các thông số.

Các tài sản giao dịch tốt nhất cho chiến lược này là biểu đồ hàng ngày GBP và AUD, nhưng các tài sản và khung thời gian khác cũng có thể được thử nghiệm. Các thông số bao gồm ngày bắt đầu và kết thúc, kích thước thực của nến trước, dừng lỗ (trong pips) và lấy lợi nhuận (trong pips).

Chiến lược logic

Lý thuyết cốt lõi đằng sau Chiến lược đảo ngược mở hàng ngày là nắm bắt các kịch bản mua quá mức và bán quá mức ngắn hạn. Giá có xu hướng quay trở lại và điều chỉnh sau các biến động quá mức trên thị trường. Chiến lược này nhằm mục đích tận dụng xu hướng đảo ngược trung bình như vậy cho lợi nhuận.

Cụ thể, chiến lược kiểm tra xem có khoảng cách đáng kể giữa giá mở của nến hiện tại và giá đóng của nến trước đó không. Nếu kích thước thực tế của nến trước vượt quá ngưỡng được đặt trong các tham số, và nến hiện tại hiển thị khoảng cách mở, các tín hiệu dài hoặc ngắn sẽ được kích hoạt.

Một khi được nhập vào một vị trí, mức dừng lỗ và lấy lợi nhuận được thiết lập.

Phân tích lợi thế

Chiến lược đảo ngược mở hàng ngày có những lợi thế chính sau:

  1. Thu thập sự đảo ngược thị trường ngắn hạn, lợi nhuận cao hơn

    Nó tận dụng tối đa các sự đảo ngược giá ngắn hạn, mở các vị trí sau các kịch bản mua quá mức / bán quá mức để có cơ hội tăng cao hơn.

  2. Rủi ro có thể kiểm soát, dừng lỗ hiệu quả để hạn chế lỗ

    Cơ chế dừng lỗ có thể hạn chế hiệu quả các lỗ giao dịch một khi chúng đạt được giá trị tối đa được đặt trước.

  3. Tính linh hoạt trên các tài sản

    Nó áp dụng cho các cặp ngoại hối khác nhau, đặc biệt là các cặp biến động như GBP và AUD. Các tham số cũng có thể được điều chỉnh để tối ưu hóa tính linh hoạt.

  4. Sự đơn giản, phù hợp với giao dịch trong ngày

    Với tần suất giao dịch cao và khung thời gian ngắn, nó có các quy tắc đơn giản và rõ ràng phù hợp với giao dịch trong ngày hoặc trong ngày rất tốt.

Phân tích rủi ro

Ngoài ra còn có một số rủi ro vốn có trong Chiến lược đảo ngược mở hàng ngày:

  1. Sự tiếp tục của xu hướng có nguy cơ mất mát

    Xu hướng một chiều kéo dài làm tăng cơ hội đảo ngược thất bại và do đó mất mát.

  2. Chi phí giao dịch cao hơn

    Số lượng giao dịch tăng lên có thể ăn lợi nhuận do chi phí giao dịch cao hơn.

  3. Parameter tối ưu hóa cần thiết

    Các thông số như kích thước cơ thể thực của nến trước đó, mức dừng lỗ và mức lợi nhuận đòi hỏi phải tối ưu hóa đủ để có kết quả tốt nhất.

  4. Cần theo dõi chặt chẽ

    Thời gian nắm giữ ngắn đòi hỏi phải theo dõi chặt chẽ các thị trường để nhập vào kịp thời và dừng lỗ.

Hướng dẫn tối ưu hóa

Chiến lược đảo ngược mở hàng ngày có thể được tối ưu hóa trong các khía cạnh sau:

  1. Tối ưu hóa các tham số cho kết hợp tốt nhất

    Chạy backtests và demo giao dịch để xác định tối ưu trước đó nến kích thước cơ thể thực sự, dừng mức lỗ, lấy mức lợi nhuận cho hiệu quả cao hơn.

  2. Kết hợp phân tích khung thời gian đa

    Thiết lập hướng xu hướng tổng thể trong khung thời gian cao hơn để tránh giao dịch ngược xu hướng. Tối ưu hóa mức nhập và xuất cụ thể trong khung thời gian thấp hơn.

  3. Cải thiện các cơ chế dừng lỗ

    Sử dụng các chỉ số biến động để cải thiện chiến lược dừng lỗ để bảo vệ tốt hơn trong thị trường biến động, hoặc lệnh dừng kéo dài v.v.

  4. Thêm bộ lọc

    Thêm các bộ lọc như khối lượng, biến động để đảm bảo tín hiệu đảo ngược đủ đáng tin cậy để giao dịch.

  5. Cải thiện kích thước vị trí

    Tối ưu hóa kích thước giao dịch và phân bổ để ngăn chặn vị trí quá lớn dẫn đến tổn thất lớn. Thử nghiệm với các bước vào và thoát dần để giảm rủi ro.

Kết luận

Đổi ngược mở hàng ngày là một chiến lược đảo ngược trung bình ngắn hạn điển hình nắm bắt các kịch bản mua quá mức và bán quá mức cho giao dịch ngược. Nó có lợi thế của rủi ro và tính đơn giản có thể kiểm soát được. Nhưng rủi ro tiếp tục xu hướng và tần suất giao dịch cao nên được lưu ý. Những cải tiến hơn nữa có thể được thực hiện thông qua tối ưu hóa tham số, tăng cường dừng lỗ, thêm các bộ lọc và kích thước vị trí để tăng sự ổn định và lợi nhuận của nó. Nó phù hợp với các nhà đầu tư thích giao dịch trong ngày.


/*backtest
start: 2023-01-19 00:00:00
end: 2024-01-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// @version=4
strategy("Daily Open Strategy", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, initial_capital = 10000)

PrevRange = input(0.0100, type=input.float, title="Previous Candle Range")
TP = input(200, title="Take Profit in pips")
SL = input(1000, title="Stop Loss in pips")

startDate = input(title="Start Date", type=input.integer,
     defval=1, minval=1, maxval=31)
startMonth = input(title="Start Month", type=input.integer,
     defval=1, minval=1, maxval=12)
startYear = input(title="Start Year", type=input.integer,
     defval=2015, minval=1800, maxval=2100)

endDate = input(title="End Date", type=input.integer,
     defval=31, minval=1, maxval=31)
endMonth = input(title="End Month", type=input.integer,
     defval=12, minval=1, maxval=12)
endYear = input(title="End Year", type=input.integer,
     defval=2020, minval=1800, maxval=2100)


isLong = strategy.position_size > 0
isShort = strategy.position_size < 0

longTrigger = (open-close) > PrevRange and close<open 
shortTrigger = (close-open) > PrevRange and close>open

inDateRange = true


strategy.entry(id = "Long", long = true, when = (longTrigger and not isShort and inDateRange))
strategy.exit("Exit Long", "Long", loss=SL, profit=TP) 

strategy.entry(id = "Short", long = false, when = (shortTrigger and not isLong and inDateRange))
strategy.exit("Exit Short", "Short", loss=SL, profit=TP)


Thêm nữa