Chiến lược nhập xác nhận kép dựa trên MACD và RSI


Ngày tạo: 2024-02-18 16:24:06 sửa đổi lần cuối: 2024-02-18 16:24:06
sao chép: 0 Số nhấp chuột: 1158
1
tập trung vào
1617
Người theo dõi

Chiến lược nhập xác nhận kép dựa trên MACD và RSI

Tổng quan

Chiến lược này sử dụng sự kết hợp của chỉ số MACD và chỉ số RSI để thực hiện cơ chế nhập cảnh xác nhận kép, cân bằng giữa khả năng kiếm lợi nhuận và kiểm soát rủi ro, nhằm đạt được lợi nhuận ổn định trên đường dài trung bình.

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

Chiến lược này chủ yếu sử dụng chỉ số MACD để xác định xu hướng thị trường và thời gian vào thị trường. Đường MACD phá vỡ đường tín hiệu được coi là tín hiệu mua, và đường MACD phá vỡ đường tín hiệu bán. Ngoài ra, khu vực quá mua quá bán của chỉ số RSI được sử dụng để lọc phá vỡ giả.

Để đảm bảo độ tin cậy của tín hiệu giao dịch, chiến lược này cũng đưa ra phán đoán về khối lượng giao dịch. Chiến lược sẽ chỉ phát tín hiệu giao dịch khi khối lượng giao dịch lớn hơn khối lượng giao dịch trung bình 20 ngày. Điều này có thể tránh tín hiệu sai khi khối lượng giao dịch trên thị trường không đủ.

Cuối cùng, chiến lược cũng sử dụng hướng của thực thể K-line như một cách để theo dõi dừng và xác nhận. Khi hướng của thực thể K-line thay đổi, nó sẽ xóa vị trí hiện tại. Điều này có thể khóa lợi nhuận và ngăn chặn lợi nhuận quay trở lại.

Phân tích lợi thế

  • Sử dụng MACD để đánh giá xu hướng thị trường và thời gian nhập cảnh, bạn có thể tham gia vào giai đoạn bắt đầu của xu hướng, có nhiều cơ hội để kiếm lợi nhuận
  • Chỉ số RSI tránh tham gia vào khu vực quá mua quá bán để giảm tổn thất
  • Việc đánh giá số lượng giao dịch có thể giúp lọc các tín hiệu giả và tăng khả năng kiếm lợi nhuận.
  • Các thực thể K-Line có phương pháp theo dõi lỗ hổng hợp lý, có thể kiểm soát rủi ro tốt

Phân tích rủi ro

  • Chỉ số MACD bị tụt hậu, có thể bỏ lỡ sự đảo ngược xu hướng ngắn
  • Quy tắc số lượng giao hàng có thể bỏ lỡ xu hướng khởi động số lượng thấp
  • K-line Stop Loss có thể bị ảnh hưởng bởi các đợt đột phá ngắn hạn

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

  • Có thể xem xét thêm các chỉ số lọc, chẳng hạn như phán đoán vòng Brin, để nâng cao hơn nữa chất lượng tín hiệu
  • Có thể thử nghiệm thêm dừng quỹ đạo để khóa lợi nhuận đường dài
  • Có thể thử tối ưu hóa các tham số của MACD để tăng độ nhạy của chỉ số

Tóm tắt

Chiến lược này có thể được cải thiện hơn nữa bằng cách tối ưu hóa tham số và thêm các chỉ số kỹ thuật khác. Cần lưu ý rằng không nên theo đuổi sự phức tạp quá mức, giữ chiến lược đơn giản và ổn định là rất quan trọng.

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

//@version=5
strategy("Al-Sat Sinyali ve Teyidi", overlay=true)

// MACD (Hareketli Ortalama Yakınsaklık Sapma)
[macdLine, signalLine, _] = ta.macd(close, 5, 13, 5)

// RSI (Göreceli Güç Endeksi)
rsiValue = ta.rsi(close, 14)

// Hacim
volumeAverage = ta.sma(volume, 20)

// RSI ve MACD Filtreleri
rsiOverbought = rsiValue > 70
rsiOversold = rsiValue < 30
macdBuySignal = ta.crossover(macdLine, signalLine) and not rsiOverbought
macdSellSignal = ta.crossunder(macdLine, signalLine) and not rsiOversold

// Al-Sat Stratejisi
shouldBuy = ta.crossover(close, open) and not ta.crossover(close[1], open[1]) and macdBuySignal and volume > volumeAverage
shouldSell = ta.crossunder(close, open) and not ta.crossunder(close[1], open[1]) and macdSellSignal and volume > volumeAverage

strategy.entry("Buy", strategy.long, when=shouldBuy)
strategy.entry("Sell", strategy.short, when=shouldSell)

// Teyit için bir sonraki mumu bekleme
strategy.close("Buy", when=ta.crossover(close, open))
strategy.close("Sell", when=ta.crossunder(close, open))

// Görselleştirmeyi devre dışı bırakma
plot(na)

// Al-Sat Etiketleri
plotshape(series=shouldBuy, title="Al Sinyali", color=color.green, style=shape.triangleup, location=location.belowbar, size=size.small, text="Al")
plotshape(series=shouldSell, title="Sat Sinyali", color=color.red, style=shape.triangledown, location=location.abovebar, size=size.small, text="Sat")

// Varsayımsal bir sonraki mumun kapanış fiyatını hesapla
nextBarClose = close[1]
plot(nextBarClose, color=color.blue, linewidth=2, title="Tahmin Edilen Kapanış Fiyatı")