Ini adalah artikel yang dioptimumkan untuk SEO mengenai Strategi Stop Loss Take Profit Channel Keltner:
Strategi Keltner Channel Stop Loss Take Profit mengoptimumkan keputusan perdagangan berdasarkan analisis Saluran Keltner dengan menggabungkan peraturan stop loss dan mengambil keuntungan.
Mengira pertengahan, atas dan bawah jalur Saluran Keltner.
Pertimbangkan peluang panjang apabila harga menyentuh barisan atas, dan peluang pendek apabila menyentuh barisan bawah.
Masukkan perdagangan panjang pada penembusan band atas, dan masukkan perdagangan pendek pada penembusan band bawah.
Tetapkan sasaran mengambil keuntungan pada peratusan tertentu di atas harga masuk, dan sasaran stop loss pada peratusan tertentu di bawah harga masuk.
Kelebihan strategi ini adalah memperkenalkan peraturan stop loss dan mengambil keuntungan untuk memotong kerugian pada waktunya apabila trend tidak berjalan dengan baik, dan mengambil keuntungan sebelum gelombang berakhir.
Parameter boleh dioptimumkan untuk aset yang berbeza untuk mencapai keseimbangan risiko-balasan yang terbaik.
Saluran Keltner menentukan arah trend
Hentikan kerugian dan ambil keuntungan mengoptimumkan ganjaran
Masuk dan keluar yang licin menghalang pemutusan palsu
Parameter fleksibel untuk penyesuaian
Boleh digabungkan dengan penunjuk lain
Stop loss dan mengambil keuntungan nisbah perlu menaikkan
Beberapa risiko stop loss masih kekal
Saluran boleh pecah dengan kehilangan
Stop loss kecil menyebabkan hentian kerap
Strategi Keltner Channel Stop Loss Take Profit mengoptimumkan perdagangan saluran tradisional dengan mengawal risiko sambil mengikuti trend. Hasil strategi yang sangat baik dapat dicapai melalui pengujian belakang yang luas dan penyesuaian parameter. Strategi ini bernilai penyelidikan mendalam dan ujian langsung untuk meningkatkan kestabilan secara beransur-ansur.
/*backtest start: 2023-08-15 00:00:00 end: 2023-08-23 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title="Optimized Keltner Channels Strategy for BTC", overlay=true) length = input(9, minval=1) mult = input(1.0, "Multiplier") src = input(close, title="Source") exp = input(true, "Use Exponential MA") BandsStyle = input("Average True Range", options = ["Average True Range", "True Range", "Range"], title="Bands Style") atrlength = input(18, "ATR Length") sl = input(defval=22, minval=0, title="Stop Loss (%)") tp = input(defval=21, minval=0, title="Take Profit (%)") esma(source, length)=> s = sma(source, length) e = ema(source, length) exp ? e : s ma = esma(src, length) rangema = BandsStyle == "True Range" ? rma(tr(true), length) : BandsStyle == "Average True Range" ? atr(atrlength) : rma(high - low, length) upper = ma + rangema * mult lower = ma - rangema * mult c = color.blue u = plot(upper, color=color.green, title="Upper") plot(ma, color=#0094FF, title="Basis") l = plot(lower, color=color.red, title="Lower") fill(u, l, color=#0094FF, transp=95, title="Background") crossUpper = crossover(src, upper) crossLower = crossunder(src, lower) bprice = 0.0 bprice := crossUpper ? close+syminfo.mintick : nz(bprice[1]) sprice = 0.0 sprice := crossLower ? close-syminfo.mintick : nz(sprice[1]) crossBcond = false crossBcond := crossUpper ? true : na(crossBcond[1]) ? false : crossBcond[1] crossScond = false crossScond := crossLower ? true : na(crossScond[1]) ? false : crossScond[1] cancelBcond = crossBcond and (src < ma or high >= bprice ) cancelScond = crossScond and (src > ma or low <= sprice ) if (cancelBcond) strategy.cancel("KltChLE") if (crossUpper) strategy.entry("KltChLE", strategy.long, stop=bprice, comment="Long") if (cancelScond) strategy.cancel("KltChSE") if (crossLower) strategy.entry("KltChSE", strategy.short, stop=sprice, comment="Short") strategy.exit("long exit", "KltChLE", profit = close * tp * 0.01 / syminfo.mintick, loss = close * sl * 0.01 / syminfo.mintick) strategy.exit("Short exit", "KltChSE", profit = close * tp * 0.01 / syminfo.mintick, loss = close * sl * 0.01 / syminfo.mintick) plot(bprice, color=color.green) plot(sprice, color=color.red)