Chiến lược đa khung thời gian trung bình RSI Fisher RSI đảo ngược


Ngày tạo: 2023-11-21 14:45:28 sửa đổi lần cuối: 2023-11-21 14:45:28
sao chép: 1 Số nhấp chuột: 758
1
tập trung vào
1617
Người theo dõi

Chiến lược đa khung thời gian trung bình RSI Fisher RSI đảo ngược

Tổng quan

Phương pháp đa khung thời gian của Phạm vi trung bình thực của Fisher RSI ngược lại là một chiến lược giao dịch định lượng để tìm ra các điểm biến động có thể xảy ra trên thị trường bằng cách tính toán các chỉ số RSI được điều chỉnh ngược trên các khung thời gian cao hơn.

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

Chiến lược này đầu tiên tính toán chỉ số RSI nói chung với tham số RSI_pm đại diện cho thời gian tính toán của RSI… … … … … … … … … …*input)-1)/(exp(2*input) + 1) ◦ Chỉ số RSI đã điều chỉnh được truyền đến biến IF_RSI。

Để lọc ra quá nhiều tiếng ồn, các chiến lược được sử dụng trong IF._RSI được tính trên cơ sở RSI_Ps là trung bình di chuyển theo chu kỳ, được lấy từ chỉ số cuối cùng được sử dụng để đánh giá điểm mua và bán wma_RSI. Chỉ số này được lập lại trong phạm vi 0-100

Cuối cùng, chiến lược vẽ chỉ số này trên một khung thời gian cao hơn và đặt đường giảm giá 0.8 và -0.8. Khi đường chỉ số vượt qua mức 0.8 từ dưới lên sẽ tạo ra tín hiệu mua; Khi đường chỉ số giảm xuống mức -0.8 từ trên xuống sẽ tạo ra tín hiệu bán.

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

Chiến lược này xử lý chuyển động RSI bằng cách làm mịn kép, có thể lọc hiệu quả tiếng ồn quá mức và khóa tín hiệu đảo ngược rõ ràng hơn. Việc làm mịn kép được áp dụng cho chỉ số RSI nguyên bản và chỉ số RSI sau khi điều chỉnh giá trị tuyệt đối. Phương pháp này có thể tăng cường tính chất quay trở lại trung bình của chỉ số và tạo ra tín hiệu giao dịch đáng tin cậy hơn.

Ngoài ra, chiến lược này sử dụng phương pháp phân tích nhiều khung thời gian để xác định đột phá của chỉ số trên một khung thời gian cấp cao hơn, có thể khóa cơ hội đảo ngược trên đường dài và tránh bị nhiễu bởi quá nhiều tiếng ồn thị trường ngắn hạn.

Rủi ro chiến lược

Chiến lược này dựa vào chỉ số đường trung bình để xác định điểm mua và bán, có một số điểm chậm trễ. Trong thị trường bò dài hạn, không gian lên sau khi chỉ số được điều chỉnh có thể bị hạn chế, không thể nắm bắt đầy đủ cơ hội xu hướng.

Mặt khác, việc điều chỉnh chỉ số cũng có thể bỏ lỡ cơ hội hồi phục sau khi điều chỉnh đường ngắn. Nếu không tối ưu hóa các tham số chỉ số một cách thích hợp, có thể phải đối mặt với một số rủi ro chiến lược.

Tối ưu hóa chiến lược

Bạn có thể cố gắng điều chỉnh các tham số chỉ số để phù hợp hơn với môi trường thị trường. Ví dụ: bạn có thể thử nghiệm các chu kỳ tính toán RSI khác nhau, tham số chu kỳ trơn tru, tìm kiếm sự kết hợp tham số tốt nhất.

Bạn cũng có thể xem xét kết hợp với các chỉ số phụ khác để xác minh tín hiệu và tăng sự ổn định của chiến lược. Ví dụ, bạn có thể thêm các chỉ số khối lượng giao dịch, đường Brinh để đánh giá tín hiệu xu hướng mạnh mẽ.

Tóm tắt

Chiến lược đa khung thời gian đối ngược Fischer RSI trung bình phạm vi thực, với tư duy tổng thể khá vững chắc, nhưng vẫn cần được tối ưu hóa để phù hợp với các tình huống thị trường rộng hơn. Đáng được thử nghiệm và cải tiến thêm để trở thành một chiến lược giao dịch định lượng đáng tin cậy.

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

//@version=4
strategy(title = "Inverse Fisher RSI-MTF2", shorttitle="INRSIM2",overlay=true)
//Inputs
RSI_pm = input(5, title="RSI Main Period",minval=2)
RSI_ps = input(1, title="RSI Smooth Period",minval=0)

//Functions
IF(input)=>(exp(2*input)-1)/(exp(2*input)+1)

//RSI Calculation
raw_RSI=0.1*(rsi(close,RSI_pm)-50)
wma_RSI=wma(raw_RSI,RSI_ps)*100
IF_RSI = IF(wma_RSI)

resCustom = input(title="Timeframe", defval="1440" )
v=request.security(syminfo.tickerid, resCustom,IF_RSI)
a=v>0.8
b=v<-0.8

z=0.8
buy = crossover(v,z)
sell=crossunder(v,b)
 
plotshape(sell, title="sell", style=shape.triangledown,location=location.abovebar, color=red, transp=0, size=size.small)
plotshape(buy,  title="buy", style=shape.triangleup,location=location.belowbar, color=green, transp=0, size=size.small)


//Strategy
golong =  crossover(v,z)
goshort =  crossunder(v,b)

strategy.entry("Buy",strategy.long,when = golong)
strategy.entry("Sell",strategy.short,when = goshort)