Sumber daya yang dimuat... Pemuatan...

Tren Multi-Indikator Mengikuti Strategi

Penulis:ChaoZhang, Tanggal: 2024-04-28 14:25:12
Tag:MACDMARSIATR

img

Gambaran umum

Strategi yang diberi nama Jancok Strategycs v3 adalah strategi multi-indikator trend berikut berdasarkan Moving Averages (MA), Moving Average Convergence Divergence (MACD), Relative Strength Index (RSI), dan Average True Range (ATR).

Prinsip Strategi

Strategi ini menggunakan empat indikator berikut untuk menentukan tren pasar:

  1. Moving Averages (MA): Menghitung jangka pendek (9 periode) dan jangka panjang (21-periode) moving averages. Ketika MA jangka pendek melintasi di atas MA jangka panjang, itu menunjukkan tren naik; ketika MA jangka pendek melintasi di bawah MA jangka panjang, itu menunjukkan tren menurun.
  2. Moving Average Convergence Divergence (MACD): Menghitung garis MACD dan garis sinyal. Ketika garis MACD melintasi di atas garis sinyal, itu menunjukkan tren naik; ketika garis MACD melintasi di bawah garis sinyal, itu menunjukkan tren turun.
  3. Relative Strength Index (RSI): Menghitung RSI 14 periode. Ketika RSI di atas 70, itu menunjukkan bahwa pasar mungkin terlalu banyak dibeli; ketika RSI di bawah 30, itu menunjukkan bahwa pasar mungkin terlalu banyak dijual.
  4. Average True Range (ATR): Menghitung ATR 14 periode untuk mengukur volatilitas pasar dan menetapkan titik stop loss dan take profit.

Logika perdagangan strategi adalah sebagai berikut:

  • Ketika MA jangka pendek melintasi di atas MA jangka panjang, garis MACD melintasi di atas garis sinyal, volume perdagangan lebih besar dari rata-rata bergeraknya, dan volatilitas berada di bawah ambang batas, masukkan posisi panjang.
  • Ketika MA jangka pendek melintasi di bawah MA jangka panjang, garis MACD melintasi di bawah garis sinyal, volume perdagangan lebih besar dari rata-rata bergeraknya, dan volatilitas di bawah ambang batas, masukkan posisi pendek.
  • Stop-loss dan take-profit point diatur secara dinamis berdasarkan ATR, dengan stop-loss point 2 kali ATR dan take-profit point 4 kali ATR.
  • Sebuah stop trailing opsional berdasarkan ATR dapat digunakan, dengan titik stop trailing 2,5 kali ATR.

Keuntungan Strategi

  1. Kombinasi multi-indikator untuk penentuan tren, meningkatkan akurasi identifikasi tren.
  2. Stop-loss dan take-profit dinamis, menyesuaikan secara adaptif berdasarkan volatilitas pasar, mengendalikan risiko dengan lebih baik dan mengoptimalkan pengembalian.
  3. Pengenalan filter volume dan volatilitas untuk menghindari perdagangan selama periode likuiditas rendah dan volatilitas tinggi, mengurangi sinyal palsu.
  4. Opsional trailing berhenti untuk mempertahankan lebih banyak keuntungan ketika tren bertahan.

Risiko Strategi

  1. Sinyal palsu dapat dihasilkan selama konsolidasi pasar atau pembalikan tren, yang menyebabkan kerugian.
  2. Pengaturan parameter memiliki dampak yang signifikan pada kinerja strategi dan perlu dioptimalkan untuk pasar dan aset yang berbeda.
  3. Optimalisasi parameter yang berlebihan dapat menyebabkan overfit dan kinerja yang buruk dalam perdagangan yang sebenarnya.
  4. Strategi dapat menimbulkan kerugian yang signifikan selama fluktuasi pasar yang tidak normal atau peristiwa angsa hitam.

Arah Optimasi Strategi

  1. Memperkenalkan lebih banyak indikator, seperti Bollinger Bands, Stochastic Oscillator, dll, untuk lebih meningkatkan akurasi identifikasi tren.
  2. Mengoptimalkan pemilihan parameter menggunakan metode seperti algoritma genetik atau pencarian grid untuk menemukan kombinasi parameter yang optimal.
  3. Menetapkan parameter dan aturan yang berbeda untuk pasar dan aset yang berbeda untuk meningkatkan kemampuan adaptasi strategi.
  4. Menggabungkan ukuran posisi, menyesuaikan ukuran posisi secara dinamis berdasarkan kekuatan tren dan risiko akun.
  5. Menetapkan batas maksimum penarikan, menangguhkan perdagangan atau mengurangi ukuran posisi ketika akun mencapai batas maksimum penarikan, untuk mengendalikan risiko.

Ringkasan

Jancok Strategycs v3 adalah strategi trend following berdasarkan kombinasi beberapa indikator, menggunakan Moving Averages, MACD, RSI, dan ATR untuk menentukan tren pasar, dan menggunakan teknik manajemen risiko seperti stop-loss dan take-profit dinamis, dan trailing stop untuk mengontrol risiko dan mengoptimalkan pengembalian. Keuntungan strategi ini terletak pada akurasi tinggi identifikasi tren, manajemen risiko yang fleksibel, dan kemampuan beradaptasi yang kuat. Namun, juga membawa risiko tertentu, seperti sinyal palsu, sensitivitas terhadap pengaturan parameter, dan peristiwa angsa hitam.


/*backtest
start: 2024-03-01 00:00:00
end: 2024-03-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Scriptâ„¢ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © financialAccou42381

//@version=5
strategy("Jancok Strategycs v3", overlay=true, initial_capital=100, currency="USD")

// Inputs
short_ma_length = input.int(9, title="Short MA Length", minval=1)
long_ma_length = input.int(21, title="Long MA Length", minval=1)
atr_multiplier_for_sl = input.float(2, title="ATR Multiplier for Stop Loss", minval=1.0)
atr_multiplier_for_tp = input.float(4, title="ATR Multiplier for Take Profit", minval=1.0)
volume_ma_length = input.int(20, title="Volume MA Length", minval=1)
volatility_threshold = input.float(1.5, title="Volatility Threshold", minval=0.1, step=0.1)
use_trailing_stop = input.bool(false, title="Use Trailing Stop")
trailing_stop_atr_multiplier = input.float(2.5, title="Trailing Stop ATR Multiplier", minval=1.0)

// Calculating indicators
short_ma = ta.sma(close, short_ma_length)
long_ma = ta.sma(close, long_ma_length)
[macdLine, signalLine, _] = ta.macd(close, 12, 26, 9)
atr = ta.atr(14)
volume_ma = ta.sma(volume, volume_ma_length)
volatility = atr / close

// Plotting indicators
plot(short_ma, color=color.red)
plot(long_ma, color=color.blue)

// Defining entry conditions with added indicators and filters
long_condition = ta.crossover(short_ma, long_ma) and (macdLine > signalLine) and (volume > volume_ma) and (volatility < volatility_threshold)
short_condition = ta.crossunder(short_ma, long_ma) and (macdLine < signalLine) and (volume > volume_ma) and (volatility < volatility_threshold)

// Entering trades with dynamic stop loss and take profit based on ATR
if (long_condition)
    strategy.entry("Long", strategy.long)
    if use_trailing_stop
        strategy.exit("Exit Long", "Long", trail_points=atr * trailing_stop_atr_multiplier, trail_offset=atr * 0.5)
    else
        strategy.exit("Exit Long", "Long", loss=atr * atr_multiplier_for_sl, profit=atr * atr_multiplier_for_tp)

if (short_condition)
    strategy.entry("Short", strategy.short)
    if use_trailing_stop
        strategy.exit("Exit Short", "Short", trail_points=atr * trailing_stop_atr_multiplier, trail_offset=atr * 0.5)
    else
        strategy.exit("Exit Short", "Short", loss=atr * atr_multiplier_for_sl, profit=atr * atr_multiplier_for_tp)

Berkaitan

Lebih banyak