Sumber dimuat naik... memuat...

Trend Multi-Indikator Mengikut Strategi

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

img

Ringkasan

Strategi yang dinamakan Jancok Strategycs v3 adalah strategi trend berikut pelbagai penunjuk berdasarkan Moving Averages (MA), Moving Average Convergence Divergence (MACD), Relative Strength Index (RSI), dan Average True Range (ATR).

Prinsip Strategi

Strategi ini menggunakan empat penunjuk berikut untuk menentukan trend pasaran:

  1. Moving Averages (MA): Mengira purata bergerak jangka pendek (9-periode) dan jangka panjang (21-periode). Apabila MA jangka pendek melintasi di atas MA jangka panjang, ia menunjukkan aliran menaik; apabila MA jangka pendek melintasi di bawah MA jangka panjang, ia menunjukkan aliran menurun.
  2. Divergensi Convergensi Purata Bergerak (MACD): Mengira garis MACD dan garis isyarat. Apabila garis MACD melintasi di atas garis isyarat, ia menunjukkan aliran menaik; apabila garis MACD melintasi di bawah garis isyarat, ia menunjukkan aliran menurun.
  3. Indeks Kekuatan Relatif (RSI): Mengira RSI 14 tempoh. Apabila RSI di atas 70, ia menunjukkan bahawa pasaran mungkin terlalu banyak dibeli; apabila RSI di bawah 30, ia menunjukkan bahawa pasaran mungkin terlalu banyak dijual.
  4. Jangkauan Benar Purata (ATR): Mengira ATR 14 tempoh untuk mengukur turun naik pasaran dan menetapkan titik stop-loss dan mengambil keuntungan.

Logik perdagangan strategi adalah seperti berikut:

  • Apabila MA jangka pendek melintasi di atas MA jangka panjang, garis MACD melintasi di atas garis isyarat, jumlah dagangan lebih besar daripada purata bergeraknya, dan turun naik berada di bawah ambang, masukkan kedudukan panjang.
  • Apabila MA jangka pendek melintasi di bawah MA jangka panjang, garis MACD melintasi di bawah garis isyarat, jumlah dagangan lebih besar daripada purata bergeraknya, dan turun naik di bawah ambang, masukkan kedudukan pendek.
  • Titik stop-loss dan take-profit ditetapkan secara dinamik berdasarkan ATR, dengan titik stop-loss adalah 2 kali ATR dan titik take-profit adalah 4 kali ATR.
  • Hentian pengangkut pilihan berdasarkan ATR boleh digunakan, dengan titik hentian pengangkut adalah 2.5 kali ATR.

Kelebihan Strategi

  1. Gabungan pelbagai penunjuk untuk penentuan trend, meningkatkan ketepatan pengenalan trend.
  2. Stop-loss dan mengambil keuntungan yang dinamik, menyesuaikan diri berdasarkan turun naik pasaran, mengawal risiko dengan lebih baik dan mengoptimumkan pulangan.
  3. Pengenalan penapis jumlah dan turun naik untuk mengelakkan dagangan semasa tempoh kecairan rendah dan turun naik tinggi, mengurangkan isyarat palsu.
  4. Hentian pilihan untuk mengekalkan lebih banyak keuntungan apabila trend berterusan.

Risiko Strategi

  1. Isyarat palsu boleh dihasilkan semasa penyatuan pasaran atau pembalikan trend, yang membawa kepada kerugian.
  2. Tetapan parameter mempunyai kesan yang signifikan terhadap prestasi strategi dan perlu dioptimumkan untuk pasaran dan aset yang berbeza.
  3. Pengoptimuman parameter yang berlebihan boleh membawa kepada pemasangan berlebihan dan prestasi yang buruk dalam perdagangan sebenar.
  4. Strategi ini boleh menimbulkan kerugian yang ketara semasa turun naik pasaran yang tidak normal atau peristiwa angsa hitam.

Arahan Pengoptimuman Strategi

  1. Memperkenalkan lebih banyak penunjuk, seperti Bollinger Bands, Stochastic Oscillator, dan lain-lain, untuk meningkatkan lebih lanjut ketepatan pengenalan trend.
  2. Mengoptimumkan pemilihan parameter menggunakan kaedah seperti algoritma genetik atau carian grid untuk mencari kombinasi parameter yang optimum.
  3. Menetapkan parameter dan peraturan yang berbeza untuk pasaran dan aset yang berbeza untuk meningkatkan kesesuaian strategi.
  4. Menggabungkan saiz kedudukan, menyesuaikan saiz kedudukan secara dinamik berdasarkan kekuatan trend dan risiko akaun.
  5. Tetapkan had pengeluaran maksimum, menangguhkan perdagangan atau mengurangkan saiz kedudukan apabila akaun mencapai pengeluaran maksimum, untuk mengawal risiko.

Ringkasan

Jancok Strategycs v3 adalah strategi trend berikut berdasarkan gabungan pelbagai penunjuk, menggunakan Moving Averages, MACD, RSI, dan ATR untuk menentukan trend pasaran, dan menggunakan teknik pengurusan risiko seperti stop-loss dinamik dan mengambil keuntungan, dan trailing stop untuk mengawal risiko dan mengoptimumkan pulangan. Keuntungan strategi terletak pada ketepatan tinggi pengenalan trend, pengurusan risiko yang fleksibel, dan daya sesuaikan yang kuat. Walau bagaimanapun, ia juga membawa risiko tertentu, seperti isyarat palsu, kepekaan terhadap tetapan parameter, dan peristiwa angsa hitam. Pada masa akan datang, prestasi dan kestabilan strategi dapat ditingkatkan lagi dengan memperkenalkan lebih banyak penunjuk, mengoptimumkan pemilihan parameter, menggabungkan saiz kedudukan, dan menetapkan had pengeluaran maksimum.


/*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 lanjut