Strategi rata-rata bergerak dengan target keuntungan dinamis

Penulis:ChaoZhang, Tanggal: 2023-09-18 21:46:47
Tag:

Gambaran umum

Strategi ini mengidentifikasi tren menggunakan rata-rata bergerak, mengambil keuntungan pada kelipatan ATR tetap, dan secara dinamis ukuran posisi berdasarkan ATR.

Prinsip-prinsip

Strategi ini menggunakan Rata-rata Gerak Sederhana dengan panjang N untuk menentukan arah tren.

Setelah masuk, target keuntungan ditetapkan pada kelipatan ATR tetap dari harga masuk, misalnya Target keuntungan = Harga masuk + ATR * Faktor untuk long. Profit diambil ketika harga mencapai target keuntungan.

Strategi juga ukuran posisi kebalikan dari ATR, yang mewakili volatilitas pasar.

Keuntungan

  1. MA mengidentifikasi tren, memungkinkan tren mengikuti.

  2. ATR keuntungan mengambil keuntungan dari tren sambil menghindari pembalikan.

  3. Dimensi posisi dinamis mengelola risiko sesuai dengan volatilitas pasar.

  4. Faktor keuntungan yang dapat disesuaikan dan parameter ukuran.

  5. Stop loss dapat lebih membatasi risiko.

Risiko dan Pengurangan

  1. MA lag dapat menyebabkan keterlambatan masuk.

  2. Fluktuasi ATR dapat mengakibatkan target keuntungan terlalu kecil atau terlalu besar.

  3. Volatilitas yang berlebihan menyebabkan posisi terlalu kecil membatasi keuntungan.

  4. Kurangnya stop loss berisiko kehilangan yang tidak terkendali.

  5. Pemilihan simbol yang buruk, misalnya aset volatilitas rendah, dapat menyebabkan kinerja yang buruk.

Peluang Peningkatan

  1. Uji kombinasi parameter yang berbeda untuk pengaturan yang optimal.

  2. Meningkatkan logika entri dengan menambahkan indikator lain sebagai filter.

  3. Penelitian mengambil keuntungan dinamis dan stop loss untuk fleksibilitas.

  4. Mengelola posisi berdasarkan indikator volatilitas.

  5. Tambahkan mekanisme re-entry untuk memperpanjang masa penyimpanan.

Ringkasan

Strategi ini mengidentifikasi tren dengan moving average, mengambil keuntungan pada kelipatan ATR dan ukuran posisi oleh ATR. Ini memiliki beberapa tren berikut kapasitas dan risiko dapat disesuaikan melalui parameter. Tapi pilihan parameter dan masalah target keuntungan ada. Perbaikan lebih lanjut dapat dilakukan melalui optimasi, stop loss untuk membuat strategi lebih kuat.


/*backtest
start: 2023-09-10 00:00:00
end: 2023-09-17 00:00:00
period: 5m
basePeriod: 1m
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/
// © dongyun

//@version=4
strategy("利润目标止损的移动平均线", overlay=true)

period = input(80,'')
ptper = input(252,'')
ptfactor = input(12,'')
sizeper = input(20, '')

trend = 0.0
signal = 0
size = 1.0
investment = 100000
atrange = 0.0
ptrange = 0.0
stoph = 0.0
stopl = 0.0


if sizeper != 0
	atrange := atr(sizeper)

if atrange == 0 or sizeper == 0 
	size := 1
else
	size := investment/atrange * 0.1

trend := sma(close,period)


if signal != 1 and nz(trend[1]) < nz(trend[2]) and trend > nz(trend[1])
	strategy.entry('long',strategy.long, comment='open_long')
	signal := 1
else
    signal := nz(signal[1])
    
if signal != -1 and nz(trend[1]) > nz(trend[2]) and trend < nz(trend[1])
	strategy.entry('short',strategy.short, comment='open_short')
	signal := -1
else
    if signal == 0
        signal := nz(signal[1])

ptrange := atr(ptper)

if strategy.position_size > 0
	strategy.exit("exit_long", "long", qty = strategy.position_size, limit = close + ptfactor*ptrange , comment='trail_long') 
else
	if strategy.position_size < 0
		strategy.exit("exit_short", "short", qty = abs(strategy.position_size), limit = close - ptfactor*ptrange, comment='trail_short')


Lebih banyak