
Chiến lược này sử dụng các chỉ số RSI, MACD và đường hai đồng bằng để theo dõi xu hướng và định vị hiệu quả của sự chênh lệch tiêu chuẩn. Chiến lược sử dụng chỉ số RSI để đánh giá hiện tượng quá mua quá bán, MACD để đánh giá giá mua mua bán, đường hai đồng bằng lọc một số cơ hội giao dịch ồn ào và kiếm lợi nhuận trong xu hướng.
Tính toán biến động trong chu kỳ
RSI được tính dựa trên sự thay đổi từ tăng xuống
Đưa ra phán đoán mua bán quá mức
Tính toán đường nhanh, đường chậm, đường tín hiệu
Có thể mua và bán qua các đường dây nhanh chóng
Hiển thị điểm chéo
Tính toán đường nhanh, đường chậm
Hãy cân nhắc giao dịch chỉ khi đi đường dây nhanh.
Thực hiện theo dõi xu hướng lọc tiếng ồn
Bộ lọc đa điều kiện RSI, MACD và đường hai chiều
Cải thiện tính ổn định của chiến lược
Giao diện đa chỉ số, chính xác hơn trong chiến lược
Theo dõi xu hướng, lọc tiếng ồn, tăng sự ổn định
Chỉ số RSI đánh giá giá quá mua quá bán, giúp nắm bắt các điểm biến động
MACD phân tích chéo, đơn giản và hiệu quả trong việc đánh giá mua và bán
Bộ lọc hai dòng, loại bỏ hầu hết các cơ hội giao dịch theo hướng phi chính thống
Dễ hiểu, ít tham số, thích hợp cho người mới học để cải thiện học tập
Giao diện đa chỉ số, dễ dẫn đến chiến lược tối ưu hóa
Phương pháp này đã làm mất đi một số cơ hội và hy sinh quá nhiều sự linh hoạt.
Các tham số RSI và MACD cần được lựa chọn cẩn thận
Cần chú ý đến điểm dừng lỗ của các loại giao dịch, kiểm soát rủi ro
Sử dụng lâu dài cần điều chỉnh các tham số để phù hợp với thị trường
Điều chỉnh tham số RSI để phù hợp với các đặc điểm khác nhau
Điều chỉnh chu kỳ đường hai chiều để tối ưu hóa hiệu quả theo dõi xu hướng
Tham gia chiến lược dừng lỗ để kiểm soát tổn thất đơn lẻ
Kết hợp với nhiều chỉ số hơn, điều kiện phong phú hơn
Các tham số phát triển theo mô hình thích nghi, tự động điều chỉnh tham số
Chiến lược này sử dụng nhiều chỉ số như RSI, MACD và đường hai chiều, để đánh giá và theo dõi xu hướng, lọc nhiều lớp cho cơ hội, là một chiến lược đa chỉ số rất phù hợp cho người mới học và cải thiện. Ưu điểm của chiến lược này là đơn giản, hiệu quả, dễ hiểu thích ứng, có thể đạt được lợi nhuận ổn định tốt bằng cách điều chỉnh tham số.
/*backtest
start: 2023-09-22 00:00:00
end: 2023-10-22 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
// strategy(title="RSI MACD", precision = 6, pyramiding = 1, default_qty_type = strategy.percent_of_equity, default_qty_value = 99, commission_type = strategy.commission.percent, commission_value = 0.25, initial_capital = 1000)
// Component Code Start
// Example usage:
// if testPeriod()
// strategy.entry("LE", strategy.long)
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(01, "Backtest Start Month")
testStartDay = input(2, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)
testStopYear = input(2019, "Backtest Stop Year")
testStopMonth = input(7, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)
// A switch to control background coloring of the test period
testPeriodBackground = input(title="Color Background?", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FF00 : na
bgcolor(testPeriodBackgroundColor, transp=97)
testPeriod() => true
// Component Code Stop
//standard rsi template
src = ohlc4, len = input(14, minval=1, title="Length")
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
plot(rsi, color=#87ff1a)
band1 = hline(80)
band = hline(50)
band0 = hline(20)
fill(band1, band0, color=purple, transp=90)
//macd
fast_length = input(title="Fast Length", defval=9)
slow_length = input(title="Slow Length", defval=72)
signal_length = input(title="Signal Length", defval=9)
fast_ma = sma(rsi, fast_length)
slow_ma = sma(rsi, slow_length)
shortma = sma(ohlc4, fast_length)
longma = sma(ohlc4, slow_length)
controlmainput = input(title = "Control MA", defval = 234)
controlma = sma(ohlc4, controlmainput)
macdx = fast_ma - slow_ma
signalx = sma(macdx, signal_length)
hist = macdx - signalx
ma_hist = shortma - controlma
macd = macdx + 50
signal = signalx + 50
plot(macd,"macd", color = fuchsia)
plot(hist,"hist", style = histogram, color = fuchsia)
//plot(ma_hist,"ma hist", style = histogram, color = orange)
plot(signal,"signal", color = white)
//input
control_buy_toggle = input(true, "Buy on crossover control MA?", type = bool)
buy_on_control = control_buy_toggle == true? true : false
//conditions
buy = buy_on_control == true? ma_hist > 0 and shortma > longma and crossover(macd,signal) or crossover(shortma, controlma) : ma_hist > 0 and shortma > longma and crossover(macd,signal)
sell = ma_hist > 0 and shortma > longma and crossunder(macd,signal)
stop = crossunder(shortma, longma) or crossunder(shortma, controlma)
plotshape(buy,"buy", shape.triangleup, location.bottom, green, size = size.tiny)
plotshape(sell,"sell", shape.triangledown, location.bottom, red, size = size.tiny)
plotshape(stop,"stop",shape.circle,location.bottom, white, size = size.tiny)
if testPeriod()
strategy.entry("buy", true, when = buy, limit = close)
strategy.close("buy", when = sell)
strategy.close("buy", when = stop)