Chiến lược giao dịch nội ngày qua kênh RSI và EMA

Tác giả:ChaoZhang, Ngày: 2023-12-27 16:57:09
Tags:

img

Tổng quan

Chiến lược này kết hợp chỉ số sức mạnh tương đối (RSI) và kênh trung bình chuyển động biểu số 5 ngày (EMA) để thực hiện giao dịch ngắn hạn trong ngày. Nó đi dài khi giá vượt qua đường ray trên của kênh EMA và RSI tăng từ mức thấp nhất, và đi ngắn khi giá vượt qua đường ray dưới của kênh EMA và RSI giảm từ mức cao nhất. Chiến lược nhằm mục đích mua thấp và bán cao để khóa lợi nhuận.

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

  1. Sử dụng giá cao nhất và thấp nhất của EMA 5 ngày để vẽ kênh giá. EMA có thể phản ứng nhanh hơn với sự thay đổi giá và phạm vi kênh phù hợp hơn với sự biến động thị trường hiện tại.

  2. Chỉ số RSI có thể phát hiện các điều kiện mua quá mức và bán quá mức.

  3. Điều kiện mua: Giá phá vỡ đường ray trên và chỉ số RSI tăng từ dưới 30 lên trên 70, cho thấy giá cổ phiếu đã đạt được hỗ trợ và thị trường đã tiếp tục xu hướng tăng, cung cấp một tín hiệu dài.

  4. Điều kiện bán: Giá phá vỡ đường ray dưới và chỉ số RSI giảm từ trên 70 xuống dưới 30, cho thấy giá cổ phiếu đã bị một cú đánh nặng, thị trường đã trở nên giảm, cho một tín hiệu ngắn.

  5. Chiến lược lấy lợi nhuận: Sau khi mua, lấy 50% lợi nhuận đầu tiên ở tỷ lệ rủi ro-lợi nhuận 1: 1, và phần còn lại ở tỷ lệ 1: 2; sau khi bán ngắn, lấy 50% lợi nhuận đầu tiên ở tỷ lệ rủi ro-lợi nhuận 1: 1, và phần còn lại ở tỷ lệ 1: 2.

Phân tích lợi thế

  1. Sử dụng kênh EMA để thu hút hỗ trợ và kháng cự năng động. Nó có thể phản ứng nhanh chóng với sự thay đổi giá và cải thiện tỷ lệ chiến thắng thương mại.

  2. Chỉ số RSI ngăn chặn giao dịch mù nếu không có tín hiệu rõ ràng, có thể làm giảm các giao dịch không cần thiết và rút tiền.

  3. Tỷ lệ rủi ro-lợi nhuận là rõ ràng.

  4. Chiến lược đơn giản và rõ ràng, dễ hiểu và thực hiện, phù hợp với giao dịch ngắn hạn trong ngày.

Phân tích rủi ro

  1. Các hoạt động trong ngày đòi hỏi giám sát thị trường thường xuyên hơn, tiêu tốn nhiều thời gian và năng lượng hơn.

  2. Rủi ro thất bại dừng lỗ. Giá có thể bị mất hoặc hình thành một sự đảo ngược hình chữ V, làm cho dừng không có ích.

  3. Cần phải chọn cổ phiếu có thanh khoản tốt và biến động cao.

  4. Không gian giới hạn cho tối ưu hóa tham số. Các chu kỳ cho RSI và ngày cho EMA ngắn, làm cho hiệu ứng tối ưu hóa tối thiểu.

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

  1. Có thể thử thêm các chỉ số khác vào các tín hiệu lọc, chẳng hạn như thêm MACD để xác nhận dài / ngắn.

  2. Có thể tự động tối ưu hóa các thông số RSI và EMA dựa trên các kỹ thuật học máy.

  3. Có thể kết hợp với các hệ thống trung bình động để xác định hướng xu hướng thị trường trong khung thời gian cao hơn, tránh giao dịch ngược xu hướng.

  4. Có thể điều chỉnh năng động tỷ lệ lợi nhuận và thay đổi mức lợi nhuận theo biến động thị trường.

Tóm lại

Chiến lược này tích hợp kênh EMA và chỉ số RSI vào một khuôn khổ có hệ thống có thể đánh giá rõ thời gian vào và ra, nhận ra giao dịch ngắn hạn trong ngày. Chiến lược lấy lợi nhuận động có thể khóa lợi nhuận hợp lý. Ưu điểm của chiến lược này là nó đơn giản và dễ hiểu và thực hiện, nhưng các hoạt động trong ngày khá mệt mỏi. Cần chọn các sản phẩm phù hợp và giao dịch cẩn thận. Có thể cải thiện hơn nữa thông qua sự kết hợp nhiều chỉ số, tối ưu hóa tham số, tối ưu hóa lợi nhuận, v.v.


/*backtest
start: 2023-11-26 00:00:00
end: 2023-12-26 00:00:00
period: 1h
basePeriod: 15m
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/
// © moondevonyt

//@version=5
strategy("RSI and EMA Channel Daily Strategy", overlay=true)

// Indicators
ema_high = ta.ema(high, 5)
ema_low = ta.ema(low, 5)
rsi = ta.rsi(close, 6)

// Plot RSI and EMA
plot(ema_high, color=color.blue, title="EMA High")
plot(ema_low, color=color.red, title="EMA Low")
plot(rsi, color=color.orange, title="RSI")

// Buy Condition
buy_condition = close > ema_high and ta.crossover(rsi, 70)

// Sell Condition
sell_condition = close < ema_low and ta.crossunder(rsi, 30)

// Execute Buy with Take Profit Levels
if buy_condition
    strategy.entry("Buy", strategy.long)
    strategy.exit("Take Profit 1", "Buy", limit=close + (close - low[1]))
    strategy.exit("Take Profit 2", "Buy", limit=close + 2 * (close - low[1]))

// Execute Sell with Take Profit Levels
if sell_condition
    strategy.entry("Sell", strategy.short)
    strategy.exit("Take Profit 1", "Sell", limit=close - (high[1] - close))
    strategy.exit("Take Profit 2", "Sell", limit=close - 2 * (high[1] - close))

Thêm nữa