Chiến lược đảo ngược RSI nhanh


Ngày tạo: 2023-12-01 13:37:20 sửa đổi lần cuối: 2023-12-01 13:37:20
sao chép: 1 Số nhấp chuột: 645
1
tập trung vào
1619
Người theo dõi

Chiến lược đảo ngược RSI nhanh Đây là bài viết SEO tôi viết dựa trên mã và yêu cầu của bạn, bao gồm tên chiến lược, tổng quan, nguyên tắc chiến lược, phân tích lợi thế, phân tích rủi ro, hướng tối ưu hóa và tổng kết:

Tổng quan

Chiến lược này là một chiến lược giao dịch đảo ngược RSI nhanh, ý tưởng chính là đánh giá cơ hội đảo ngược ngắn hạn khi chỉ số RSI vượt quá mua bán. Nó sử dụng RSI 3 ngày làm chỉ số đánh giá mua bán quá mức và kết hợp với đường trung bình 30 ngày đánh giá tín hiệu phá vỡ để mở vị trí khi sự đảo ngược xảy ra.

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

Chiến lược này sử dụng hai chỉ số:

  1. Chỉ số RSI ngày 3 đánh giá quá mua quá bán.

  2. Đường trung bình 30 ngày đánh giá cường độ tín hiệu đảo ngược. Khi thực thể đường K đảo ngược lớn hơn một nửa đường trung bình 30 ngày, làm tín hiệu vào.

Các quy tắc giao dịch cụ thể:

Tín hiệu đa đầu: Chỉ số RSI nhỏ hơn mức thấp ([25 mặc định]) và thực thể đường K hiện tại lớn hơn một nửa đường trung bình 30 ngày, làm nhiều hơn.

Tín hiệu trống: Chỉ số RSI lớn hơn mức cao ((75 mặc định)), và thực thể đường K hiện tại lớn hơn một nửa đường trung bình 30 ngày, làm trống.

Tín hiệu dừng lỗ: Cụm RSI cao khi giữ nhiều đầu, hoặc Cụm RSI thấp khi giữ đầu trống, và thực thể đường K lớn hơn một nửa đường trung bình 30 ngày, ngang.

Phân tích lợi thế

Chiến lược này có những ưu điểm sau:

  1. Sử dụng chỉ số RSI ngắn hạn để đánh giá quá mua và quá bán, bạn có thể nhanh chóng nắm bắt cơ hội đảo ngược ngắn hạn.

  2. Kết hợp với bộ lọc đồng tuyến làm tăng độ tin cậy của tín hiệu, tránh bị mắc kẹt trong trường hợp rung động.

  3. Có thể kiểm soát được, nhưng không phải là quá lớn.

  4. Quy tắc kiểm soát vị trí rõ ràng, không mở vị trí thường xuyên.

Phân tích rủi ro

Chiến lược này cũng có những rủi ro sau:

  1. Rủi ro thất bại của sự đảo ngược.

  2. Rủi ro mất mát khi hoạt động ngược trong tình hình xu hướng.

  3. Điều kiện lọc cá nhân quá nghiêm ngặt, dễ bị bỏ lỡ cơ hội nhập cảnh.

  4. Các tham số có độ nhạy cao, các chu kỳ RSI và chu kỳ thực thể cần điều chỉnh.

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

Chiến lược này có thể được tối ưu hóa bằng cách:

  1. Tối ưu hóa các tham số RSI, tìm kiếm chu kỳ tốt nhất.

  2. Tối ưu hóa tham số đường trung bình để tìm chu kỳ lọc thực thể tối ưu.

  3. Thêm các chiến lược dừng lỗ, chẳng hạn như dừng di chuyển, dừng đường cong, để kiểm soát lỗ đơn.

  4. Thêm các quy tắc đánh giá xu hướng, tránh các hoạt động ngược.

Tóm tắt

Chiến lược này nói chung là một chiến lược RSI ngắn hạn, dựa trên sự đảo ngược, bằng cách đánh giá RSI nhanh chóng, đánh giá quá mua quá bán, và xác nhận sự đảo ngược bằng bộ lọc thực thể đường trung bình, có lợi thế rõ ràng về khả năng thu hồi, kiểm soát vị trí, phù hợp với hoạt động ngắn hạn, nhưng cần lưu ý đến rủi ro thất bại đảo ngược và hoạt động ngược, có thể được cải thiện từ các tham số tối ưu hóa, dừng lỗ và phán đoán xu hướng.

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

//@version=3
strategy(title = "Noro's Fast RSI Strategy v1.0", shorttitle = "Fast RSI str 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 5)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
limit = input(25, defval = 25, minval = 1, maxval = 100, title = "RSI limit")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

//Fast RSI
src = close
fastup = rma(max(change(src), 0), 3)
fastdown = rma(-min(change(src), 0), 3)
fastrsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown))
uplimit = 100 - limit
dnlimit = limit

//Body
body = abs(close - open)
emabody = ema(body, 30) / 2

//Signals
bar = close > open ? 1 : close < open ? -1 : 0
up = bar == -1 and fastrsi < dnlimit and body > emabody
dn = bar == 1 and fastrsi > uplimit and body > emabody
exit = ((strategy.position_size > 0 and fastrsi > dnlimit) or (strategy.position_size < 0 and fastrsi < uplimit)) and body > emabody

//Trading
if up
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 00, 00)))

if dn
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 00, 00)))
    
if time > timestamp(toyear, tomonth, today, 00, 00) or exit
    strategy.close_all()