Sumber dimuat naik... memuat...

Fisher Turnaround EMA Multi-Take Profit dan Strategi Multi-Stop

Penulis:ChaoZhang, Tarikh: 2024-01-05 15:40:28
Tag:

img

Ringkasan

Strategi EMA Multi-Take Profit dan Multi-Stop Fisher Turn menggabungkan penunjuk EMA dan isyarat Turn Fisher tersuai untuk melaksanakan perdagangan penjejakan trend. Ia menjana isyarat beli apabila EMA tempoh pendek melintasi di atas EMA tempoh panjang dan isyarat Turn Fisher lebih besar daripada 0. Strategi ini menetapkan dua tahap mengambil keuntungan dan satu stop loss dinamik untuk mengunci keuntungan dan mengawal risiko. mengambil keuntungan pertama adalah 2xATR, 3xATR kedua, dan kehilangan berhenti adalah 1xATR. Selepas mengambil keuntungan pertama dicetuskan, kehilangan berhenti akan bergerak ke harga kemasukan. Ini sesuai untuk strategi bursa GDAX untuk mencari peluang perdagangan trend yang berpotensi.

Logika Strategi

Strategi ini terutamanya berdasarkan dua penunjuk teknikal:

  1. EMA: Purata Bergerak Eksponensial. Strategi ini menggunakan 12 dan 26 EMA tempoh.
  2. Isyarat pusingan Fisher yang disesuaikan. Isyarat ini dikira berdasarkan perbezaan antara paras tertinggi dan terendah dalam tempoh tertentu.

Isyarat beli dihasilkan apabila EMA tempoh pendek melintasi di atas EMA tempoh panjang. Di samping itu, garisan isyarat Fisher Turn juga mesti lebih besar daripada 0, yang menunjukkan trend menaik semasa.

Peraturan mengambil keuntungan dan hentian kerugian adalah seperti berikut:

  1. Pertama ambil keuntungan pada 2xATR
  2. Kedua mengambil keuntungan pada 3xATR
  3. Stop loss pada 1xATR
  4. Selepas mengambil keuntungan pertama dicetuskan, stop loss akan bergerak ke harga kemasukan.

Strategi ini boleh dioptimumkan dengan menyesuaikan parameter seperti tempoh EMA, tempoh isyarat Fisher Turn, dan tempoh ATR.

Kelebihan

Dengan menggabungkan penunjuk pengesanan trend dan penunjuk pengurusan risiko, strategi ini mempunyai kelebihan berikut:

  1. Menggunakan EMA untuk menangkap arah trend
  2. Penapis isyarat putaran Fisher yang disesuaikan
  3. Multiple mengambil tahap keuntungan untuk mengunci keuntungan
  4. Pengecualian yang berkaitan dengan risiko
  5. Parameter yang boleh diselaraskan menyesuaikan diri dengan persekitaran pasaran yang berbeza

Risiko

Terdapat juga beberapa risiko untuk strategi ini:

  1. Pengubahsuaian trend mencetuskan stop loss
  2. Tetapan parameter yang tidak betul menyebabkan masuk terlalu agresif atau keluar lebih awal
  3. Isyarat berpusing Fisher yang disesuaikan mungkin gagal dalam persekitaran pasaran tertentu

Risiko ini boleh dikurangkan melalui pengoptimuman parameter, menggabungkan penunjuk lain, campur tangan manual dll.

Arahan pengoptimuman

Strategi ini boleh dioptimumkan dalam aspek berikut:

  1. Mengoptimumkan parameter tempoh EMA untuk menyesuaikan lebih banyak persekitaran pasaran
  2. Tambah penunjuk trend lain untuk mengesahkan isyarat beli
  3. Memasukkan penapis pasaran keseluruhan untuk mengelakkan persekitaran yang tidak pasti
  4. Mengoptimumkan parameter isyarat putaran Fisher atau cuba penunjuk tersuai lain
  5. Tambah lebih banyak mengambil tahap keuntungan untuk mengunci lebih banyak keuntungan
  6. Mengintegrasikan fungsi Stop Loss Trailing automatik

Dengan menguji tetapan parameter yang berbeza dan kombinasi penunjuk, prestasi strategi dapat terus ditingkatkan.

Kesimpulan

Strategi EMA Multi-Take Profit dan Multi-Stop Fisher Turnaround mengintegrasikan kekuatan penjejakan trend dan pengurusan risiko. Dengan potensi yang besar untuk pengesahan dan pengoptimuman jangka panjang, ia adalah strategi yang menjanjikan. Masih ada ruang yang cukup untuk mengoptimumkan parameter dan menggabungkan penunjuk untuk mencapai prestasi yang lebih mantap dalam perdagangan langsung.


/*backtest
start: 2022-12-29 00:00:00
end: 2024-01-04 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/
// © Eliebf13
//@version=4
strategy("GDAX EMA & Blackflag FTS Strategy with Multiple Take Profits and Dynamic Stop Loss", overlay=true)

// Input parameters for Blackflag FTS
fts_length = input(14, title="Blackflag FTS Length")
atr_length = input(14, title="ATR Length")

// GDAX EMA calculation
short = ema(close, 12)
long = ema(close, 26)

// Calculate Blackflag FTS signal line manually
up = 0.0
down = 0.0
for i = 0 to fts_length - 1
    up := up + (high[i] - low[i])
    down := down + (high[i] - low[i])

fts_value = down == 0 ? 100 : 100 - (100 / (1 + (up / down)))

// Buy condition: GDAX EMA crossover and Blackflag FTS signal above zero
buy_condition = crossover(short, long) and fts_value > 0

// ATR calculation
atr_value = atr(atr_length)

// Calculate Stop Loss and Take Profit levels
stop_loss_level = close - atr_value
take_profit_level1 = close + 2 * atr_value
take_profit_level2 = close + 3 * atr_value

// Sell condition: GDAX EMA crossunder or Blackflag FTS signal below zero
sell_condition = crossunder(short, long) or fts_value < 0

// Strategy orders with Multiple Take Profits and Dynamic Stop Loss
strategy.entry("Buy", strategy.long, when = buy_condition)

// Calculate position size for 50% closure at each take profit level
position_size = strategy.position_size
target_position_size1 = position_size * 0.5
target_position_size2 = position_size * 1

strategy.exit("Take Profit 1", from_entry="Buy", loss=close, profit=take_profit_level1, qty=target_position_size1)
strategy.exit("Take Profit 2/Move Stop Loss", from_entry="Buy", loss=close, profit=take_profit_level2, qty=target_position_size2)

// Plot GDAX EMA lines
plot(short, color=#6f92ce, linewidth=2, title="Ema 12")
plot(long, color=#e08937, linewidth=2, title="Ema 26")

// Plot Blackflag FTS signal
plot(fts_value, color=color.blue, title="Blackflag FTS Signal")

// Plot buy and sell signals on the chart
plotshape(series=buy_condition, location=location.belowbar, color=color.green, style=shape.triangleup, title="Buy Signal")
plotshape(series=sell_condition, location=location.abovebar, color=color.red, style=shape.triangledown, title="Sell Signal")

Lebih lanjut