Chiến lược giao dịch MACD với RSI


Ngày tạo: 2023-09-21 20:48:50 sửa đổi lần cuối: 2023-09-21 20:48:50
sao chép: 0 Số nhấp chuột: 852
1
tập trung vào
1617
Người theo dõi

Tổng quan

Chiến lược này sử dụng chỉ số MACD để đánh giá xu hướng của chỉ số RSI để tạo ra tín hiệu giao dịch. Đây là loại chiến lược sử dụng các chỉ số để lọc.

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

Chiến lược này được đánh giá dựa trên hai yếu tố:

  1. Chỉ số RSI Tính toán giá trị RSI 14 chu kỳ thông thường

  2. MACD của RSI Tính MACD của chỉ số RSI được tính toán, theo mặc định là đường nhanh 12 chu kỳ, đường chậm 26 chu kỳ, đường tín hiệu 9 chu kỳ.

Mua khi trụ MACD của RSI được điều chỉnh bằng cách chuyển đổi âm, tức là MACD nhanh và dây chuyền chậm được đánh giá là xu hướng đa đầu.

Bán khi MACD của RSI được xác định là một xu hướng không đầu khi nó chuyển sang âm dương, tức là MACD đường chết nhanh chậm.

Ở đây MACD sử dụng đường trung bình di chuyển trơn để đánh giá xu hướng dài hạn của RSI, tạo ra tín hiệu giao dịch chính xác hơn.

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

  • Sử dụng MACD để xác định xu hướng RSI để cải thiện độ chính xác của tín hiệu
  • RSI là chỉ số chính, MACD là chỉ số phán đoán phụ
  • Chỉ số MACD đã làm mịn đường trung bình di chuyển, cho thấy ổn định
  • Các chỉ số kết hợp xác nhận lẫn nhau để tránh đợt tăng giá trở lại
  • Kết hợp các thông số tối ưu hóa, có thể thích ứng linh hoạt với sự thay đổi của thị trường

Rủi ro chiến lược

  • RSI và MACD có thể bị chậm và tín hiệu không chính xác
  • Nếu tham số MACD không đúng thì sẽ có nhiều tín hiệu sai
  • Nhận thức được sự kiện đột ngột chỉ dựa trên các chỉ số
  • Phương pháp ngăn chặn thiệt hại có thể được cải thiện hơn nữa
  • Cần tối ưu hóa các tham số thử nghiệm cho các giống khác nhau

Các biện pháp sau đây có thể làm giảm nguy cơ:

  • Tối ưu hóa RSI và MACD
  • Tham gia các chỉ số khác hoặc xác nhận quy tắc giao dịch
  • Cần phải giảm bớt tiêu chuẩn dừng lỗ để giảm bớt các trận đấu sớm.
  • Cân nhắc gia nhập cơ chế tái nhập học
  • Điều chỉnh quản lý vị trí để tránh tổn thất đơn lẻ quá lớn

Hướng tối ưu hóa

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

  1. Kiểm tra RSI và MACD

  2. Thêm điều kiện xác nhận thứ hai khi MACD phát ra

Ví dụ như tính đến hình dạng K-line, khối lượng giao dịch hoặc vị trí của Brin.

  1. Tối ưu hóa chiến lược dừng lỗ, thay vì theo dõi lỗ

  2. Tham gia cơ chế tái nhập học

Sau khi dừng lỗ, nếu xu hướng tiếp tục, vị trí có thể được xây dựng lại

  1. Điều chỉnh vị trí theo biến động của thị trường

Giảm vị trí khi biến động cao, tăng vị trí khi biến động thấp

Tóm tắt

Chiến lược này có thể làm tăng hiệu quả độ chính xác và ổn định của tín hiệu bằng cách kết hợp hai chỉ số RSI và MACD để xác nhận định hướng xu hướng. Tuy nhiên, vẫn cần tối ưu hóa các tham số và hỗ trợ bằng các chỉ số kỹ thuật hoặc quy tắc giao dịch khác để xác nhận thêm, giảm khả năng bị ảnh hưởng bởi sự kiện bất ngờ. Đồng thời, hãy tập trung vào cải tiến tối ưu hóa chiến lược dừng lỗ, và quản lý tiền của vị trí điều chỉnh động. Chỉ cần học tập và tối ưu hóa liên tục mới có thể thích ứng với sự thay đổi của thị trường và thu được lợi nhuận ổn định liên tục.

Mã nguồn chiến lược
/*backtest
start: 2022-09-14 00:00:00
end: 2023-09-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3

strategy(title = "MACD of RSI", overlay = false)

//////////////////////// RSI ///////////////////////////

src = close, len = input(14, minval=1, title="Length")
up = sma(max(change(src), 0), len)
down = sma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))


//////////////////////// RSI   //////////////////////////

//////////////// MACD  ////////////////////////////

sourcemacd = rsi 

fastLength = input(12, minval=1), slowLength=input(26,minval=1)
signalLength=input(9,minval=1)


fastMA = ema(sourcemacd, fastLength)
slowMA = ema(sourcemacd, slowLength)

macd = fastMA - slowMA
signal = ema(macd, signalLength)
delta=macd-signal

swap1 = delta>0?green:red

plot(delta,color=swap1,style=columns,title='Histo',histbase=0,transp=20)
p1 = plot(macd,color=blue,title='MACD Line')
p2 = plot(signal,color=red,title='Signal')
fill(p1, p2, color=blue)
hline(0)




/////////////////////////MACD  //////////////////////////


// Conditions



longCond = na
sellCond = na
longCond :=  crossover(delta,0)
sellCond :=  crossunder(delta,0)




monthfrom =input(6)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)



if (  longCond  ) 
    strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND", comment="BUY")
    
else
    strategy.cancel(id="BUY")


if ( sellCond   ) 

    strategy.close("BUY")