Các khán giả TV thân mến,
Đây là một kịch bản mà tôi đã tạo ra một chiến lược đơn giản bằng cách sử dụng chỉ báo dừng chande kroll được đánh giá thấp. Ngoài ra bạn có tùy chọn để lọc bằng cách sử dụng ADX để giảm thiểu nhận được rekt trong một thị trường hỗn loạn.
Chúc may mắn trong giao dịch!
backtest
//@version=5 strategy(title = "Chande Kroll Stop", overlay=true) p = input.int(10, minval=1) x = input.int(1, minval=1) q = input.int(9, minval=1) first_high_stop = ta.highest(high, p) - x * ta.atr(p) first_low_stop = ta.lowest(low, p) + x * ta.atr(p) stop_short = ta.highest(first_high_stop, q) stop_long = ta.lowest(first_low_stop, q) plot(stop_long, color=color.blue) plot(stop_short, color=color.orange) adxlen = input(14, title="ADX Smoothing") dilen = input(14, title="DI Length") ADX_sig = input.int(20, title="minimum ADX threshold for signal") dirmov(len) => up = ta.change(high) down = -ta.change(low) plusDM = na(up) ? na : (up > down and up > 0 ? up : 0) minusDM = na(down) ? na : (down > up and down > 0 ? down : 0) truerange = ta.rma(ta.tr, len) plus = fixnan(100 * ta.rma(plusDM, len) / truerange) minus = fixnan(100 * ta.rma(minusDM, len) / truerange) [plus, minus] adx(dilen, adxlen) => [plus, minus] = dirmov(dilen) sum = plus + minus adx = 100 * ta.rma(math.abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen) sig = adx(dilen, adxlen) if ta.crossunder(close, stop_long) and sig>ADX_sig strategy.entry("long", strategy.long) if ta.crossover(close, stop_short) and sig>ADX_sig strategy.entry("short", strategy.short)