Strategi ini adalah strategi tingkat tinggi/rendah yang cocok untuk pasar cryptocurrency. Ini mengintegrasikan MACD, PSAR, ATR, Elliott Wave dan beberapa indikator lainnya untuk perdagangan pada jangka waktu yang lebih tinggi seperti 1 jam, 4 jam atau 1 hari. Keuntungan dari strategi ini terletak pada rasio imbalan risiko tinggi dengan faktor keuntungan rata-rata berkisar dari 1,5 hingga 2,5.
Sinyal perdagangan dari strategi ini berasal dari tingkat harga tinggi / rendah dan penilaian komposit dari beberapa indikator.
Pertimbangkan apakah ada kisaran tingkat tinggi/rendah yang dibentuk oleh puncak tinggi atau terendah yang berturut-turut pada grafik harga.
Periksa tingkat histogram MACD.
Periksa indikator PSAR untuk arah tren.
Periksa arah tren berdasarkan ATR dan MA.
Konfirmasi arah tren dengan indikator Elliott Wave.
Jika semua 5 kondisi menunjuk ke arah yang sama, sinyal panjang atau pendek dihasilkan.
Rasio risiko dan imbalan tinggi sampai 1:30.
Faktor keuntungan rata-rata tinggi, biasanya antara 1,5-2.5.
Kombinasi dari beberapa indikator membantu menyaring kebocoran palsu secara efektif.
Tingkat kemenangan yang relatif rendah sekitar 10%-20%.
Potensi penarikan dan risiko whipsaw ada.
Kinerja indikator dapat dipengaruhi oleh rezim pasar.
Membutuhkan ketahanan psikologis yang layak.
Langkah-langkah yang sesuai:
Meningkatkan modal untuk menyeimbangkan tingkat kemenangan.
Tetapkan stop loss yang ketat untuk setiap perdagangan.
Sesuaikan parameter berdasarkan pasar yang berbeda.
Memperkuat psikologi dan kontrol ukuran posisi.
Parameter pengujian berdasarkan berbagai crypto dan pasar.
Tambahkan stop loss dan ambil keuntungan untuk mengoptimalkan manajemen uang.
Meningkatkan tingkat kemenangan dengan metode pembelajaran mesin.
Tambahkan filter sentimen sosial untuk sinyal perdagangan.
Pertimbangkan konfirmasi di beberapa kerangka waktu.
Kesimpulannya, ini adalah strategi perdagangan cryptocurrency berisiko tinggi dengan pengembalian tinggi yang agresif. Keuntungannya terletak pada rasio imbalan risiko dan faktor keuntungan yang tinggi. Risiko utama berasal dari tingkat kemenangan yang relatif rendah yang membutuhkan psikologi yang kuat. Arah optimasi masa depan bisa menjadi penyesuaian parameter, manajemen uang, meningkatkan tingkat kemenangan dan sebagainya. Secara keseluruhan strategi ini memiliki nilai praktis bagi pedagang cryptocurrency yang mencari keuntungan tinggi.
/*backtest start: 2023-12-21 00:00:00 end: 2023-12-28 00:00:00 period: 45m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © SoftKill21 //@version=4 strategy("Crypto strategy high/low", overlay=true) fast_length = input(title="Fast Length", type=input.integer, defval=12) slow_length = input(title="Slow Length", type=input.integer, defval=26) src = input(title="Source", type=input.source, defval=close) signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 9) sma_source = input(title="Simple MA(Oscillator)", type=input.bool, defval=true) sma_signal = input(title="Simple MA(Signal Line)", type=input.bool, defval=false) //sar start = input(0.02) increment = input(0.02) maximum = input(0.2) var bool uptrend = na var float EP = na var float SAR = na var float AF = start var float nextBarSAR = na if bar_index > 0 firstTrendBar = false SAR := nextBarSAR if bar_index == 1 float prevSAR = na float prevEP = na lowPrev = low[1] highPrev = high[1] closeCur = close closePrev = close[1] if closeCur > closePrev uptrend := true EP := high prevSAR := lowPrev prevEP := high else uptrend := false EP := low prevSAR := highPrev prevEP := low firstTrendBar := true SAR := prevSAR + start * (prevEP - prevSAR) if uptrend if SAR > low firstTrendBar := true uptrend := false SAR := max(EP, high) EP := low AF := start else if SAR < high firstTrendBar := true uptrend := true SAR := min(EP, low) EP := high AF := start if not firstTrendBar if uptrend if high > EP EP := high AF := min(AF + increment, maximum) else if low < EP EP := low AF := min(AF + increment, maximum) if uptrend SAR := min(SAR, low[1]) if bar_index > 1 SAR := min(SAR, low[2]) else SAR := max(SAR, high[1]) if bar_index > 1 SAR := max(SAR, high[2]) nextBarSAR := SAR + AF * (EP - SAR) // Calculating fast_ma = sma_source ? sma(src, fast_length) : ema(src, fast_length) slow_ma = sma_source ? sma(src, slow_length) : ema(src, slow_length) macd = fast_ma - slow_ma signal = sma_signal ? sma(macd, signal_length) : ema(macd, signal_length) hist = macd - signal CCI = input(20) ATR = input(5) Multiplier=input(1,title='ATR Multiplier') original=input(true,title='original coloring') thisCCI = cci(close, CCI) lastCCI = nz(thisCCI[1]) bufferDn= high + Multiplier * sma(tr,ATR) bufferUp= low - Multiplier * sma(tr,ATR) if (thisCCI >= 0 and lastCCI < 0) bufferUp := bufferDn[1] if (thisCCI <= 0 and lastCCI > 0) bufferDn := bufferUp[1] if (thisCCI >= 0) if (bufferUp < bufferUp[1]) bufferUp := bufferUp[1] else if (thisCCI <= 0) if (bufferDn > bufferDn[1]) bufferDn := bufferDn[1] x=0.0 x:=thisCCI >= 0 ?bufferUp:thisCCI <= 0 ?bufferDn:x[1] swap=0.0 swap:=x>x[1]?1:x<x[1]?-1:swap[1] swap2=swap==1?color.lime:color.red swap3=thisCCI >=0 ?color.lime:color.red swap4=original?swap3:swap2 //elliot wave srce = input(close, title="source") sma1length = input(5) sma2length = input(35) UsePercent = input(title="Show Dif as percent of current Candle", type=input.bool, defval=true) smadif=iff(UsePercent,(sma(srce, sma1length) - sma(srce, sma2length)) / srce * 100, sma(srce, sma1length) - sma(srce, sma2length)) col=smadif <= 0 ? color.red : color.green longC = high > high[1] and high[1] > high[2] and close[2] > high[3] and hist > 0 and uptrend and smadif < 0 and swap4==color.lime //longC = high > high[1] and high[1] > high[2] and high[2] > high[3] and high[3] > high[4] and close[4] > high[5] shortC = low < low[1] and low[1] < low[2] and close[2] < low[3] and hist < 0 and not uptrend and smadif > 0 and swap4==color.red //shortC = low < low[1] and low[1] < low[2] and low[2] < low[3] and low[3] < low[4] and close[4] < low[5] tp=input(0.15, title="tp") sl=input(0.005, title="sl") strategy.entry("long",1,when=longC) strategy.entry("short",0,when=shortC) strategy.exit("x_long", "long" ,loss = close * sl / syminfo.mintick, profit = close * tp / syminfo.mintick , alert_message = "closelong") //strategy.entry("short",0, when= loss = close * sl / syminfo.mintick) strategy.exit("x_short", "short" , loss = close * sl / syminfo.mintick, profit = close * tp / syminfo.mintick,alert_message = "closeshort") //strategy.entry("long",1, when = loss = close * sl / syminfo.mintick) //strategy.close("long",when= hist < 0) //strategy.close("short", when= hist > 0)