Berinvestasilah dalam Strategi Mengikuti Tren Emas


Tanggal Pembuatan: 2023-10-31 15:09:22 Akhirnya memodifikasi: 2023-10-31 15:09:22
menyalin: 0 Jumlah klik: 658
1
fokus pada
1617
Pengikut

Berinvestasilah dalam Strategi Mengikuti Tren Emas

Ringkasan

Strategi ini menggunakan model rata-rata untuk menentukan arah tren pasar, dan secara berkala mengalokasikan lebih banyak posisi ketika tren bullish, untuk melacak tren naik pasar Golden Cross.

Prinsip Strategi

Strategi ini didasarkan pada prinsip-prinsip teknis berikut:

  1. Gunakan EMA rata-rata untuk menentukan arah tren pasar. Ketika EMA cepat melewati EMA lambat, pertimbangkan tren bullish dan bersiaplah untuk masuk ke arah yang berbeda.

  2. Bila MACD bergeser positif, berarti harga mulai melemah dan masuk ke dalam pasar.

  3. Pembatasan hanya bisa masuk sekali per bulan, untuk menghindari mengejar ketinggalan. Jumlah setiap kali masuk dapat tetap disetel.

  4. Anda dapat mengatur tanggal mulai dan akhir, membatasi periode pengembalian. Ketika pengembalian berakhir, strategi akan meratakan semua posisi.

Secara khusus, strategi ini pertama-tama menghitung garis EMA cepat dan EMA lambat, dan mendeteksi hubungan antara keduanya untuk menilai tren pasar. Pada saat yang sama menghitung indikator MACD untuk menilai titik masuk tertentu.

Keunggulan Strategis

Ini adalah strategi pelacakan tren yang sederhana dan langsung, dengan beberapa keuntungan:

  1. Menggunakan EMA rata-rata untuk menentukan arah tren besar sederhana dan praktis. EMA rata-rata memiliki efek smoothing pada perubahan harga, dapat secara efektif menyaring kebisingan pasar yang bergoyang.

  2. Indikator MACD dapat lebih akurat menentukan saat struktur saham yang lemah berubah, sehingga risiko masuk lebih kecil.

  3. Untuk menghindari terjadinya perburuan besar-besaran di pasar banteng, Anda harus membatasi perburuan kebocoran hanya satu kali per bulan.

  4. Anda dapat menyesuaikan jumlah uang yang masuk setiap bulan, dan Anda dapat menyesuaikan posisi Anda sesuai dengan strategi Anda.

  5. Anda dapat melakukan tes ulang untuk menilai efektivitas strategi melalui tanggal awal dan akhir.

  6. Ketika penghitungan kembali berakhir, Anda akan mengambil posisi kosong, sehingga Anda tidak akan merasa tersinggung karena masih memegang posisi saat simulasi trading keluar dari pasar.

Risiko dan Pengendalian

Strategi ini juga memiliki beberapa potensi risiko, yang meliputi:

  1. Metode yang mengandalkan garis rata untuk menilai tren mungkin kehilangan peluang dalam penyesuaian jangka pendek, atau tidak cukup cepat bereaksi ketika tren berbalik. Periode garis rata dapat dipersingkat sesuai atau menambahkan indikator penilaian lain untuk dioptimalkan.

  2. Hanya melakukan pengecoran satu kali per bulan mungkin akan melewatkan waktu masuk yang lebih baik. Anda dapat mempertimbangkan untuk melonggarkan frekuensi masuk atau mengejar kembali saat mencapai rekor baru.

  3. Ada beberapa risiko penyesuaian umpan balik. Perlu menambah ruang untuk penyesuaian parameter dan melakukan pengujian stabilitas lintas pasar dan lintas periode waktu.

  4. Ada risiko overbought dan overkill. Anda harus mengontrol jumlah modal masuk bulanan dengan tepat dan menghindari posisi yang terlalu besar.

Arah optimasi

Strategi penargetan ini dapat diperluas dan dioptimalkan dalam beberapa hal:

  1. Menambahkan Stop Loss EXIT Logic, yang secara aktif menghentikan kerugian ketika pasar mengalami penurunan yang jelas.

  2. Pada saat MACD smile rule dibuat, ada tambahan pembelian untuk mendapatkan eksposur yang lebih lengkap.

  3. Untuk menilai apakah tren masih kuat, perbandingan antara kenaikan tertinggi bulan ini dengan kenaikan tertinggi bulan sebelumnya harus diperhitungkan.

  4. Tambahkan logika kontrol posisi. Jumlah uang yang masuk setiap bulan dapat dikontrol secara proporsional, bukan nilai tetap.

  5. Evaluasi efek dari berbagai kombinasi garis rata dan parameter MACD pada efek strategi. Mencari kombinasi parameter yang optimal.

  6. Tambahkan trailing stop untuk menelusuri stop loss. Mulailah menelusuri dengan amplitudo tertentu setelah harga mencapai level tertinggi baru, sehingga keuntungan dapat terus berjalan.

Meringkaskan

Strategi ini secara keseluruhan berfungsi sebagai strategi pelacakan tren sederhana, dengan gagasan inti yang jelas, mudah diimplementasikan, dan cocok untuk digunakan untuk menguji efektivitas pelacakan tren linier dan kombinasi investasi tetap. Dapat dipelajari sebagai salah satu strategi masuk perdagangan kuantitatif. Namun, perlu diperhatikan untuk mengendalikan ukuran posisi di real time dan terus mengoptimalkan strategi agar dapat disesuaikan dengan lingkungan pasar yang lebih kompleks.

Kode Sumber Strategi
/*backtest
start: 2023-01-01 00:00:00
end: 2023-10-30 00:00:00
period: 1d
basePeriod: 1h
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/
// © runescapeyttanic

//@version=4
// strategy("Buy and Hold entry finder Strategy",pyramiding=10000, overlay=true,initial_capital=0,default_qty_type=strategy.cash,default_qty_value=1000,currency = currency.EUR,commission_type=strategy.commission.cash_per_order,commission_value=0)

//INPUTS##################################################################################################################

maxEmaDistance = input(title="Maximum EMA Distance", type=input.float, step=0.01, defval=50000)
emalength = input(title="EMA Length", type=input.integer,defval=200)

// Make input options that configure backtest date range
startDate = input(title="Start Date", type=input.integer,
     defval=1, minval=1, maxval=31)
startMonth = input(title="Start Month", type=input.integer,
     defval=1, minval=1, maxval=12)
startYear = input(title="Start Year", type=input.integer,
     defval=2020, minval=1800, maxval=2100)

endDate = input(title="End Date", type=input.integer,
     defval=12, minval=1, maxval=31)
endMonth = input(title="End Month", type=input.integer,
     defval=02, minval=1, maxval=12)
endYear = input(title="End Year", type=input.integer,
     defval=2021, minval=1800, maxval=2100)

endDate1=endDate-1
//starttag
//startmonat
//MACD########################################################################################################################

fast_length=12
slow_length=26
src=close
col_macd=#0094ff
fast_ma = ema(src, fast_length)
slow_ma = ema(src, slow_length)
macd = fast_ma - slow_ma

//EMA Distance CALC########################################################################################################

ma1 =ema(close,emalength)
distFromMean = close - ma1

inDateRange = true

longCondition = (distFromMean<=maxEmaDistance and distFromMean>=distFromMean[1] and macd<=0 and inDateRange)
longnow=false

if(longCondition and strategy.position_size == 0)
    strategy.entry("My Long Entry Id", strategy.long)
    longnow:=true

if(longCondition and strategy.position_size > 0)
    longnow:=true
    

if(longCondition and strategy.position_size > 0 and month>valuewhen(longnow, month ,1) or longCondition and strategy.position_size > 0 and year>valuewhen(longnow, year ,1) and inDateRange)
    strategy.entry("My Long Entry Id", strategy.long)

plotchar(minute, "Minuten", "", location = location.top)

plotchar(hour, "Stunden", "", location = location.top)    

plotchar(dayofmonth, "Tage", "", location = location.top)

plotchar(month, "Monat", "", location = location.top)

plotchar(year, "Jahr", "", location = location.top)

plotchar(strategy.position_size, "Positionen", "", location = location.top)

plotchar(longCondition, "Long Condition", "", location = location.top)

if true
    strategy.close_all()

//#########################################################################################################################

plotArrow = if (distFromMean<=maxEmaDistance and distFromMean>=distFromMean[1] and macd<=0)
    1
else
    0
    
plotarrow(series=plotArrow)