Chiến lược RSI2 đảo ngược tỷ lệ chiến thắng trong ngày kiểm tra ngược

RSI SMA
Ngày tạo: 2024-04-29 14:02:55 sửa đổi lần cuối: 2024-04-29 14:02:55
sao chép: 7 Số nhấp chuột: 1116
1
tập trung vào
1617
Người theo dõi

Chiến lược RSI2 đảo ngược tỷ lệ chiến thắng trong ngày kiểm tra ngược

Tổng quan

Chiến lược này dựa trên tín hiệu oversold của chỉ số RSI tương đối mạnh, mua ở mức thấp trong ngày, sau đó thiết lập dừng và dừng ở tỷ lệ phần trăm cố định, đo lại xác suất khi chiến lược chạm vào các điểm dừng và dừng. Ý tưởng chính là sử dụng cơ hội đảo ngược khi chỉ số RSI vượt quá, can thiệp vào mức thấp trong ngày và lấy lợi nhuận ngắn hạn từ sự đảo ngược. Đồng thời, sử dụng đường trung bình di chuyển để lọc xu hướng, chỉ khi giá cao hơn đường trung bình.

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

  1. Tính toán chỉ số RSI 2 chu kỳ và trung bình di chuyển đơn giản 200 chu kỳ
  2. Khi giá đóng cửa cao hơn đường trung bình và RSI nhỏ hơn ngưỡng bán tháo (bằng mặc định 10), hãy mua vào ngày giao dịch tiếp theo
  3. Ghi lại giá mua thấp nhất trong ngày như giá mua vào
  4. Giá dừng 6% và giá dừng 3% dựa trên giá vào
  5. Vào ngày giao dịch tiếp theo, nếu chạm vào giá dừng thì dừng giao dịch, nếu chạm vào giá dừng thì dừng giao dịch
  6. Tính số lần dừng và dừng lỗ, tính toán chiến lược tỷ lệ thắng trong chu kỳ đặt

Phân tích lợi thế

  1. Mua ở mức thấp trong ngày để thu được lợi nhuận đảo ngược sau khi RSI vượt mức trong ngày
  2. Cài đặt Stop Loss và Stop Percentage để kiểm soát rủi ro giao dịch một lần
  3. Sử dụng bộ lọc đường trung bình chu kỳ dài để giảm giao dịch ngược
  4. Dễ sử dụng, cài đặt tham số linh hoạt, phù hợp với các nhà giao dịch đường ngắn

Phân tích rủi ro

  1. RSI oversold không đảm bảo sự đảo ngược, thị trường sẽ tiếp tục giảm trong trường hợp cực đoan
  2. Tỷ lệ dừng lỗ cố định có thể không bao gồm chi phí giao dịch
  3. Điểm vào dựa trên giá thấp nhất trong ngày, hoạt động thực tế rất khó để mua chính xác ở điểm thấp nhất
  4. Thiếu xu hướng, chỉ dựa vào tín hiệu mua quá mức, có thể không có lợi nhuận cao

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

  1. Sử dụng Stop Loss thích ứng, điều chỉnh động theo các chỉ số như biến động giá
  2. Tham gia các chỉ số xác nhận xu hướng như MACD, DMI, v.v. để tránh giao dịch ngược
  3. Tối ưu hóa điểm vào, ví dụ như sử dụng quy tắc giao dịch biến đổi khoảng cách bãi biển
  4. Tăng quản lý vị trí, tăng tỷ lệ sử dụng vốn và lợi nhuận
  5. Kết hợp với các chỉ số ngắn hạn khác để tăng khả năng xác nhận tín hiệu, chẳng hạn như băng tần Brin, KDJ

Tóm tắt

Chiến lược RSI2 cố gắng nắm bắt cơ hội đảo ngược trong ngày sau khi chỉ số RSI bị vượt quá, kiểm soát rủi ro bằng cách thiết lập mức dừng dừng phần trăm cố định, đồng thời sử dụng đường trung bình chu kỳ để lọc tín hiệu nghịch cảnh. Ý tưởng chiến lược này đơn giản, phù hợp với các nhà giao dịch đầu cơ ngắn. Nhưng nó cũng có một số hạn chế, chẳng hạn như thiếu xu hướng, khó mua chính xác ở điểm thấp nhất, dừng dừng cố định cũng hạn chế không gian thu nhập chiến lược trong tương lai.

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

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © rajk1987

//@version=5
strategy("RSI2 strategy Raj", overlay=true, margin_long=100, margin_short=100)

rsi_len = input.int( 2, title = "RSI Length",     group = "Indicators")
rsi_os  = input.float(10, title = "RSI Oversold", group = "Indicators")
rsi_ob  = input.float(90, title = "RSI OverBrought",   group = "Indicators")
max_los = input.float(3,title = "Max Loss Percent", group = "Indicators")
tar_per = input.float(6,title = "Target Percent",group = "Indicators")

//Get the rsi value of the stock
rsi = ta.rsi(close, rsi_len)
sma = ta.sma(close,200)
var ent_dat = 0
var tar = 0.0
var los = 0.0
var bp = 0.0

if ((close > sma) and (rsi < rsi_os))
    strategy.entry("RSI2 Long Entry", strategy.long,1)
    ent_dat := time(timeframe = timeframe.period)

if(ent_dat == time(timeframe = timeframe.period))
    bp := low //high/2 + low/2
    tar := bp * (1 + (tar_per/100))
    los := bp * (1 - (max_los/100))

if (time(timeframe = timeframe.period) > ent_dat)
    strategy.exit("RSI2 Exit", "RSI2 Long Entry",qty = 1, limit = tar, stop = los, comment_profit = "P", comment_loss = "L")

//plot(rsi,"RSI")
//plot(bp,"BP")
//plot(tar,"TAR")
//plot(los,"LOS")