Strategi Pembebasan Momentum

Penulis:ChaoZhang, Tarikh: 2024-02-29 14:04:50
Tag:

img

Ringkasan

Idea utama di sebalik strategi ini adalah untuk memutuskan bila untuk membeli dan menjual cryptocurrency berdasarkan penunjuk momentum harga. Ia cuba menangkap trend ketika pembalikan harga berlaku dan mendapat keuntungan dari momentum pergerakan harga.

Logika Strategi

Strategi ini menggunakan dua metrik untuk menentukan isyarat kemasukan dan keluar. Yang pertama adalah harga itu sendiri ia memeriksa harga tertinggi dan terendah selama 10 candlestick yang lalu. Yang kedua adalah penunjuk momentum berdasarkan harga - nilai %K.

Secara khusus, apabila harga jatuh di bawah 98% daripada harga tertinggi selama 10 candlesticks yang lalu (batas beli), strategi mencetuskan isyarat beli. Ini bermakna penembusan ke bawah telah berlaku. Begitu juga apabila harga meningkat di atas 102% daripada harga terendah selama 10 candlesticks yang lalu (batas jual), strategi mencetuskan isyarat jual, yang bermaksud penembusan ke atas telah berlaku.

Dengan cara ini strategi boleh menangkap titik pembalikan apabila trend baru terbentuk dalam pergerakan harga. Dengan menyesuaikan ambang beli / jual, kepekaan strategi terhadap isyarat pecah dapat diselaraskan.

Analisis Kelebihan

Kelebihan terbesar strategi ini adalah bahawa ia mempertimbangkan kedua-dua tahap harga dan faktor momentum. Bergantung pada penunjuk momentum membolehkan penangkapan yang lebih boleh dipercayai pembalikan trend sebenar dan bukannya disesatkan oleh pecah palsu. Kelebihan khusus adalah:

  1. Menyaring bunyi menggunakan metrik momentum untuk mengenal pasti isyarat sebenar
  2. Hasil backtest yang sangat baik dengan pengambilan maksimum yang agak kecil
  3. Frekuensi boleh dikawal melalui parameter yang boleh diselaraskan
  4. Risiko boleh diuruskan dengan berkesan dengan memasukkan stop loss

Analisis Risiko

Beberapa risiko yang perlu diperhatikan dengan strategi ini:

  1. Keruntuhan pasaran yang membawa kepada keruntuhan kilat yang tidak dapat dihentikan
  2. Kesan yuran dagangan dan slippage
  3. Kesalahan konfigurasi parameter yang mengakibatkan perdagangan berlebihan atau peluang yang hilang

Pengurangan:

  1. Menggunakan model pelbagai faktor untuk mengelakkan kegagalan satu penunjuk
  2. Menggabungkan stop loss untuk mengehadkan kerugian maksimum
  3. Mengoptimumkan parameter untuk menjadikan strategi lebih kukuh

Peluang Peningkatan

Pengoptimuman lanjut untuk strategi:

  1. Tambah lebih banyak penapis seperti jumlah, Bollinger Bands dan lain-lain.
  2. Dinamis menyesuaikan parameter berdasarkan pembelajaran mesin
  3. Menggabungkan analisis asas untuk menyesuaikan strategi di sekitar peristiwa utama
  4. Mengoptimumkan penggunaan modal melalui leverage untuk meningkatkan pulangan

Ringkasan

Secara keseluruhan strategi momentum breakout ini sangat sesuai untuk menangkap peluang perdagangan jangka pendek dalam mata wang kripto. Ia secara berkesan memanfaatkan ciri momentum pembalikan harga untuk keuntungan sambil mengawal risiko. Penyempurnaan berterusan kepada parameter dan model dapat menjadikan strategi lebih mantap untuk pulangan yang konsisten.


/*backtest
start: 2023-02-22 00:00:00
end: 2024-02-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © nyxover

//@version=5
strategy("Stratégie d'achat bas/vendre haut", shorttitle="Achat/Vente")

// Paramètres d'entrée
crypto = input("BTC", "Crypto-monnaie")
capital = input(1.0, "Capital de départ")
buy_threshold = input(0.02, "Seuil d'achat")
sell_threshold = input(0.02, "Seuil de vente")
fee_rate = input(0.01, "Taux de frais")

// Balances
var float initial_balance = na
var float current_balance = na

// Fonction pour calculer les frais
calculate_fees(amount) =>
    amount * fee_rate

// Fonction pour acheter
should_buy() =>
    close < ta.highest(close, 10) * (1 - buy_threshold)

// Fonction pour vendre
should_sell() =>
    close > ta.lowest(close, 10) * (1 + sell_threshold)

// Logique de la stratégie
if barstate.isfirst
    initial_balance := capital
    current_balance := capital

if should_buy()
    amount_to_buy = current_balance / close
    fees = calculate_fees(amount_to_buy)
    current_balance := current_balance - amount_to_buy - fees
    strategy.entry("Achat", strategy.long)

if should_sell()
    amount_to_sell = current_balance
    fees = calculate_fees(amount_to_sell)
    current_balance := current_balance - amount_to_sell - fees
    strategy.close("Achat")

// Affichage des informations
plot(initial_balance, color=color.green, title="Capital de départ")
plot(current_balance, color=color.blue, title="Capital actuel")



Lebih lanjut