Chiến lược giao dịch gọi lại đột phá

Tác giả:ChaoZhang, Ngày: 2024-02-28 18:01:56
Tags:

img

Tổng quan

Chiến lược giao dịch quay trở lại đột phá thực hiện giao dịch quay trở lại đột phá dưới các xu hướng cụ thể bằng cách tính toán chỉ số sức mạnh tuyệt đối và chỉ số MACD của giá. Nó thuộc về các chiến lược giao dịch ngắn hạn. Chiến lược này tích hợp nhiều chỉ số để đánh giá xu hướng chính, xu hướng trung hạn và xu hướng ngắn hạn. Nó tiến hành các giao dịch theo dõi xu hướng thông qua các tín hiệu xác nhận phù hợp với xu hướng và bổ sung cho chỉ số.

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

Chiến lược này chủ yếu dựa trên chỉ số sức mạnh tuyệt đối và chỉ số MACD của giá để thực hiện giao dịch gọi lại đột phá. Đầu tiên, nó tính toán các EMA giá 9 giai đoạn, 21 giai đoạn và 50 giai đoạn để đánh giá hướng xu hướng chính; sau đó nó tính toán chỉ số sức mạnh tuyệt đối của giá để phản ánh sức mạnh của các điều chỉnh ngắn hạn; cuối cùng nó tính toán chỉ số MACD để đánh giá hướng xu hướng ngắn hạn. Nó mua khi xu hướng chính tăng và có điều chỉnh ngắn hạn; nó bán khi xu hướng chính giảm và có sự phục hồi ngắn hạn.

Cụ thể, xu hướng tăng lớn của biến thể đòi hỏi EMA 9 ngày phải cao hơn EMA 21 ngày và EMA 21 ngày phải cao hơn EMA 50 ngày. Các tiêu chí để đánh giá điều chỉnh ngắn hạn là sự khác biệt của chỉ số sức mạnh tuyệt đối nhỏ hơn 0 và MACDDIFF nhỏ hơn 0.

Phân tích lợi thế

Chiến lược có những lợi thế sau:

  1. Kết hợp các xu hướng chính và điều chỉnh ngắn hạn để tránh sự đột phá sai
  2. Độ tin cậy cao hơn với sự kết hợp của nhiều chỉ số
  3. Chỉ số sức mạnh tuyệt đối phản ánh sức mạnh của các điều chỉnh để đánh giá chất lượng gọi lại
  4. MACD có thể đánh giá xu hướng ngắn hạn và khu vực mua quá mức / bán quá mức

Phân tích rủi ro

Chiến lược này cũng có một số rủi ro:

  1. Việc đánh giá sai về các xu hướng chính có thể dẫn đến thất bại thương mại
  2. Phương pháp đánh giá sai về thời gian và sức mạnh gọi lại có thể dẫn đến gọi lại không hợp lệ
  3. Sự khác biệt của các chỉ số trong điều kiện thị trường cực đoan, dẫn đến các tín hiệu sai

Để đáp ứng các rủi ro trên, các phương pháp như tối ưu hóa các tham số, đánh giá các chỉ số của các chu kỳ khác nhau, điều chỉnh các quy tắc vị trí để kiểm soát tổn thất đơn lẻ, kết hợp nhiều chỉ số để lọc tín hiệu và cải thiện độ chính xác có thể được sử dụng để cải thiện chiến lược.

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

Chiến lược có thể được tối ưu hóa trong các khía cạnh sau:

  1. Kiểm tra nhiều kết hợp chỉ số hơn để tìm các chiến lược giao dịch phù hợp hơn
  2. Tối ưu hóa các thông số chỉ số để cải thiện độ nhạy của chỉ số
  3. Điều chỉnh các phương pháp dừng lỗ để giảm lỗ đơn tối đa
  4. Tăng điều kiện lọc để phát ra tín hiệu trong các khu vực hiệu quả hơn
  5. Kết hợp nhiều chỉ số khung thời gian hơn để cải thiện tính chính xác của phán đoán

Tóm lại

Tóm lại, chiến lược giao dịch quay trở lại đột phá thường là một chiến lược giao dịch ngắn hạn tương đối ổn định. Nó kết hợp các đánh giá xu hướng nhiều khung thời gian để tránh các giao dịch sai trong các thị trường dao động. Đồng thời, việc sử dụng kết hợp các chỉ số cũng cải thiện độ chính xác của các đánh giá. Thông qua kiểm tra và tối ưu hóa tiếp theo, chiến lược này có thể trở thành một chiến lược ổn định đáng để giữ trong dài hạn.


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5 
strategy("Divergence Scalper [30MIN]", overlay=true , commission_value=0.04 ) 
message_long_entry = input("long entry message") 
message_long_exit = input("long exit message") 
message_short_entry = input("short entry message") 
message_short_exit = input("short exit message") 
//3x ema 
out9 = ta.ema(close,9) 
out21 = ta.ema(close,21) 
out50 = ta.ema(close,50) 
//abs 
absolute_str_formula( ) => 
    top=0.0 
    bottom=0.0 
    if(close>close[1]) 
        top:= nz(top[1])+(close/close[1]) 
    else 
        top:=nz(top[1]) 
    if(close<=close[1]) 
        bottom:= nz(bottom[1])+(close[1]/close) 
    else 
        bottom:=nz(bottom[1]) 
    if (top+bottom/2>=0) 
        1-1/(1+(top/2)/(bottom/2)) 
abs_partial=absolute_str_formula() 
abs_final = abs_partial - ta.sma(abs_partial,50) 
//macd 
fast_length = input(title="Fast Length", defval=23) 
slow_length = input(title="Slow Length", defval=11) 
src = input(title="Source", defval=open) 
signal_length = input.int(title="Signal Smoothing", minval = 1, maxval = 50, defval = 6) 
sma_source = input.string(title="Oscillator MA Type", defval="EMA", options=["SMA", "EMA"]) 
sma_signal = input.string(title="Signal Line MA Type", defval="SMA", options=["SMA", "EMA"]) 
// Calculating 
fast_ma = sma_source == "SMA" ? ta.sma(src, fast_length) : ta.ema(src, fast_length) 
slow_ma = sma_source == "SMA" ? ta.sma(src, slow_length) : ta.ema(src, slow_length) 
macd = fast_ma - slow_ma 
signal = sma_signal == "SMA" ? ta.sma(macd, signal_length) : ta.ema(macd, signal_length) 
hist = macd - signal 
long= abs_final > 0 and hist <0 and out9<out21 and out21<out50 
short = abs_final <0 and hist >0 and out9>out21 and out21>out50 
long_exit = abs_final <0 and hist >0 and out9>out21 and out21>out50 
short_exit = abs_final > 0 and hist <0 and out9<out21 and out21<out50 
strategy.entry("long", strategy.long, when = long and barstate.isconfirmed, alert_message = message_long_entry) 
strategy.entry("short", strategy.short, when = short and barstate.isconfirmed, alert_message = message_short_entry) 
strategy.close("long", when = long_exit and barstate.isconfirmed, alert_message = message_long_exit) 
strategy.close("short", when = short_exit and barstate.isconfirmed, alert_message = message_short_exit) 


Thêm nữa