Strategi Leverage Perpindahan Purata Pergerakan Eksponen

MATIC EMA MA
Tarikh penciptaan: 2024-04-30 16:26:37 Akhirnya diubah suai: 2024-04-30 16:26:37
Salin: 0 Bilangan klik: 534
1
fokus pada
1617
Pengikut

Strategi Leverage Perpindahan Purata Pergerakan Eksponen

Gambaran keseluruhan

Strategi ini menggunakan persilangan dua indeks bergerak rata-rata ((EMA) pada hari ke-20 dan ke-55 untuk menilai isyarat perdagangan. Apabila EMA jangka pendek melalui EMA jangka panjang, isyarat beli dikeluarkan, sebaliknya isyarat jual dikeluarkan. Strategi ini juga memperkenalkan perdagangan leverage, meningkatkan keuntungan melalui leverage, dan juga meningkatkan risiko.

Prinsip Strategi

  1. EMA ((atau MA) }} dikira pada hari ke-20 dan ke-55.
  2. Untuk menentukan sama ada EMA jangka pendek akan memakai EMA jangka panjang, jika ya, setkan pembolehubah readyToEnter ke true, yang bermaksud siap untuk masuk.
  3. Jika readyToEnter adalah true, dan harga menyentuh EMA jangka pendek, maka pembelian dijalankan dan readyToEnter diset semula kepada false.
  4. Jika EMA jangka pendek di bawah EMA jangka panjang, maka ia akan ditutup.
  5. Saiz kedudukan berdasarkan parameter leverage.
  6. Strategi hanya dijalankan dalam jangka masa yang ditetapkan oleh pengguna.

Kelebihan Strategik

  1. Garis rata-rata adalah kaedah trend yang mudah digunakan dan sesuai untuk kebanyakan pasaran.
  2. Ia boleh meningkatkan keuntungan dengan memperkenalkan perdagangan leverage.
  3. Tambah sekatan syarat untuk mengurangkan risiko isyarat palsu.
  4. Terdapat dua pilihan EMA dan MA untuk menyesuaikan diri dengan pilihan pengguna yang berbeza.
  5. Kodnya jelas dan mudah difahami dan diubah suai.

Risiko Strategik

  1. Leverage trading meningkatkan risiko, yang boleh menyebabkan kerugian yang besar jika salah pertimbangan.
  2. Terdapat ketidakseimbangan di persimpangan rata-rata, dan mungkin terlepas peluang terbaik untuk masuk.
  3. Hanya berlaku untuk pasaran yang jelas trend, jika pasaran bergolak, ia mungkin sering berdagang, menyebabkan bayaran yang tinggi.

Arah pengoptimuman strategi

  1. Anda boleh cuba mengoptimumkan kitaran garis rata untuk mencari parameter yang paling sesuai untuk pasaran semasa.
  2. Indeks lain seperti RSI, MACD dan lain-lain boleh diperkenalkan untuk menilai trend dan meningkatkan kadar kemenangan.
  3. Anda boleh menetapkan hentian dan hentian untuk mengawal risiko perdagangan tunggal.
  4. Leverage boleh disesuaikan mengikut pergerakan kadar turun naik pasaran, meningkatkan leverage pada masa turun naik, mengurangkan leverage pada masa turun naik.
  5. Algoritma pembelajaran mesin boleh diperkenalkan untuk menyesuaikan parameter pengoptimuman.

ringkaskan

Strategi ini meningkatkan keuntungan dengan menggabungkan persilangan rata-rata dan perdagangan leverage, sambil memahami trend pasaran. Tetapi leverage juga membawa risiko yang tinggi, dan perlu digunakan dengan berhati-hati. Di samping itu, strategi ini mempunyai ruang untuk pengoptimuman, yang dapat meningkatkan prestasi strategi dengan memperkenalkan lebih banyak petunjuk, parameter penyesuaian dinamik, dan sebagainya.

Kod sumber strategi
/*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"}]
*/

//@version=5
strategy("EMA Crossover Strategy with Leverage, Conditional Entry, and MA Option", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// Inputs for backtesting period
startDate = input(defval=timestamp("2023-01-01"), title="Start Date")
endDate = input(defval=timestamp("2024-04-028"), title="End Date")

// Input for leverage multiplier
leverage = input.float(3.0, title="Leverage Multiplier", minval=1.0, maxval=10.0, step=0.1)

// Input for choosing between EMA and MA
useEMA = input.bool(true, title="Use EMA (true) or MA (false)?")

// Input source and lengths for MAs
src = close
ema1_length = input.int(20, title='EMA/MA-1 Length')
ema2_length = input.int(55, title='EMA/MA-2 Length')

// Calculate the MAs based on user selection
pema1 = useEMA ? ta.ema(src, ema1_length) : ta.sma(src, ema1_length)
pema2 = useEMA ? ta.ema(src, ema2_length) : ta.sma(src, ema2_length)

// Tracking the crossover condition for strategy entry
crossedAbove = ta.crossover(pema1, pema2)

// Define a variable to track if a valid entry condition has been met
var bool readyToEnter = false

// Check for MA crossover and update readyToEnter
if (crossedAbove)
    readyToEnter := true

// Entry condition: Enter when price touches MA-1 after the crossover // and (low <= pema1 and high >= pema1)
entryCondition = readyToEnter

// Reset readyToEnter after entry
if (entryCondition)
    readyToEnter := false

// Exit condition: Price crosses under MA-1
exitCondition = ta.crossunder(pema1, pema2)

// Check if the current bar's time is within the specified period
inBacktestPeriod = true

// Execute trade logic only within the specified date range and apply leverage to position sizing
if (inBacktestPeriod)
    if (entryCondition)
        strategy.entry("Long", strategy.long, qty=strategy.equity * leverage / close)
    if (exitCondition)
        strategy.close("Long")


// Plotting the MAs for visual reference
ema1_color = pema1 > pema2 ? color.red : color.green
ema2_color = pema1 > pema2 ? color.red : color.green
plot(pema1, color=ema1_color, style=plot.style_line, linewidth=1, title='EMA/MA-1')
plot(pema2, color=ema2_color, style=plot.style_line, linewidth=1, title='EMA/MA-2')