Strategi dagangan berasaskan selang


Tarikh penciptaan: 2024-02-23 15:09:48 Akhirnya diubah suai: 2024-02-23 15:09:48
Salin: 0 Bilangan klik: 581
1
fokus pada
1617
Pengikut

Strategi dagangan berasaskan selang

Gambaran keseluruhan

Strategi perdagangan selang adalah strategi pengesanan trend berdasarkan purata bergerak. Strategi ini menggunakan purata bergerak indeks selama 30 hari untuk mengenal pasti trend harga, masuk ke dalam pasaran apabila harga menembusi purata, dan keluar dari pasaran apabila harga kembali ke bawah purata. Strategi ini sesuai untuk perdagangan dalam bingkai waktu 30 minit hingga hari.

Prinsip Strategi

Strategi ini digunakan untuk menilai isyarat masuk dan keluar berdasarkan hubungan harga dengan purata bergerak indeks 30 hari. Secara khusus:

  1. Mengira purata bergerak 30 hari EMA sebagai kriteria untuk menilai trend.
  2. Apabila harga naik dan melepasi EMA, buat isyarat dan masuk ke dalam lapangan.
  3. Apabila harga turun dan menembusi EMA, keluarkan isyarat tandas dan keluar dari pasaran.

Dengan cara ini, peluang perdagangan trend dapat dikunci melalui penembusan pada trend harga CAPTURE.

Analisis kelebihan

Strategi ini mempunyai beberapa kelebihan:

  1. Strategi logiknya mudah dan jelas, mudah difahami, dan kos operasinya rendah.
  2. Menggunakan EMA untuk menghapuskan bunyi harga dan mengunci trend utama.
  3. Pilih EMA 30 hari, jangka masa yang sesuai, untuk mengenal pasti trend garis panjang dan peluang garis pendek.
  4. Parameter yang boleh disesuaikan untuk menyesuaikan diri dengan pelbagai jenis dan keadaan pasaran.

Analisis risiko dan penyelesaian

Strategi ini mempunyai beberapa risiko:

  1. Risiko whipsaw: harga bergoyang menembusi EMA dan kemudian berundur dengan cepat, menyebabkan kerugian. Siklus EMA boleh diperpanjang dengan sewajarnya.
  2. Risiko trend reversal: Apabila trend garis tengah berbalik, kerugian yang besar mungkin terkumpul. Anda boleh menetapkan strategi berhenti kerugian untuk mengurangkan kerugian.
  3. Risiko pilihan parameter: Siklus EMA tidak betul dan tidak dapat mengesan trend dengan berkesan. Anda boleh menggunakan kombinasi EMA atau EMA yang sesuai.

Arah pengoptimuman strategi

Strategi ini boleh dioptimumkan dalam beberapa aspek:

  1. Meningkatkan EMA yang menyesuaikan diri: menyesuaikan parameter EMA secara automatik mengikut turun naik pasaran dan ciri-ciri varieti, meningkatkan ketahanan.
  2. Menambah sistem EMA berbilang: menggabungkan penggunaan EMA jangka pendek dan panjang, sambil menjejaki trend garis panjang pendek.
  3. Peningkatan mekanisme penangguhan kerugian: menubuhkan penangguhan bergerak atau penangguhan kerugian, mengurangkan kerugian tunggal.
  4. Gabungan dengan penunjuk lain: penunjuk kuantiti integrasi, penunjuk kadar turun naik, dan lain-lain. Isyarat penapis, meningkatkan kecekapan strategi.
  5. Pengoptimuman parameter: Menggunakan kaedah pembelajaran mesin dan lain-lain untuk mencari kombinasi parameter yang optimum.

ringkaskan

Strategi perdagangan selang adalah strategi kuantitatif yang mudah dan praktikal untuk mengesan trend dengan menangkap harga yang menembusi EMA. Strategi ini boleh disesuaikan dan dioptimumkan secara fleksibel, sesuai untuk memegang posisi panjang dan menengah, dan juga boleh diperdagangkan dengan garis pendek. Secara keseluruhan, risiko strategi ini dapat dikawal dan dapat memperoleh keuntungan yang stabil jika parameter ditetapkan dengan betul.

Kod sumber strategi
/*backtest
start: 2024-01-23 00:00:00
end: 2024-02-22 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Spaced Out Trading Strategy", overlay=true)

// Define strategy parameters
emaPeriod = input(30, title="EMA Period")  // Longer EMA period for more spaced-out trades
stopLossPct = input(2.0, title="Stop Loss Percentage")  // Stop loss percentage
takeProfitPct = input(3.0, title="Take Profit Percentage")  // Take profit percentage

// Calculate EMA
emaValue = ta.ema(close, emaPeriod)

// Define entry and exit conditions
enterLong = ta.crossover(close, emaValue)
exitLong = ta.crossunder(close, emaValue)

// Place orders
contractsQty = 5  // Number of contracts to buy
var float lastTradePrice = na  // Track the last trade price
if enterLong and strategy.position_size == 0
    strategy.entry("Buy Call", strategy.long, qty = contractsQty)
    lastTradePrice := close
else if exitLong and strategy.position_size > 0
    strategy.close("Buy Call")
    lastTradePrice := na

// Calculate stop loss and take profit
stopLossPrice = lastTradePrice * (1 - stopLossPct / 100)
takeProfitPrice = lastTradePrice * (1 + takeProfitPct / 100)
strategy.exit("Sell Call", "Buy Call", stop = stopLossPrice, limit = takeProfitPrice)