Sumber dimuat naik... memuat...

Strategi silang purata bergerak pintar dengan sistem pengurusan keuntungan / kerugian dinamik

Penulis:ChaoZhang, Tarikh: 2025-01-10 15:39:12
Tag:MASMATPSL

 Intelligent Moving Average Crossover Strategy with Dynamic Profit/Loss Management System

Ringkasan

Strategi ini adalah sistem dagangan pintar berdasarkan isyarat crossover purata bergerak, digabungkan dengan mekanisme pengurusan keuntungan / kerugian dinamik. Strategi teras menggunakan silang purata bergerak mudah (SMA) 7-period dan 40-period untuk menjana isyarat dagangan, sambil mengintegrasikan sistem kawalan stop-loss dan mengambil keuntungan berasaskan peratusan untuk pengurusan risiko yang tepat.

Prinsip Strategi

Strategi ini beroperasi berdasarkan mekanisme teras berikut: 1. Generasi Isyarat: Isyarat perdagangan dihasilkan dengan memerhatikan persilangan antara purata bergerak jangka pendek (7 hari) dan jangka panjang (40 hari). Isyarat beli dihasilkan apabila MA jangka pendek melintasi di atas MA jangka panjang, dan isyarat jual apabila melintasi di bawah. 2. Pengurusan Kedudukan: Sistem ini menggunakan mekanisme kedudukan tunggal, menghalang pelbagai entri semasa kedudukan terbuka untuk memastikan penggunaan modal yang berkesan. 3. Kawalan Risiko: Mengintegrasikan sistem stop-loss / take-profit dinamik berdasarkan harga kemasukan. Stop-loss ditetapkan pada 1% di bawah harga kemasukan, dan mengambil keuntungan pada 2% di atas, yang membolehkan pengurusan risiko yang berjumlah bagi setiap perdagangan.

Kelebihan Strategi

  1. Kebolehpercayaan isyarat: Mencatatkan perubahan trend harga dengan berkesan dengan menggabungkan purata bergerak cepat dan perlahan.
  2. Pengurusan Risiko Komprehensif: Menggabungkan mekanisme stop-loss / mengambil keuntungan dinamik untuk kawalan risiko yang tepat untuk setiap perdagangan.
  3. Fleksibiliti Parameter: Semua parameter utama boleh diselaraskan melalui antara muka, termasuk tempoh MA dan peratusan keuntungan / kerugian.
  4. Pemandangan: Menunjukkan dengan jelas purata bergerak dan tahap keuntungan / kerugian pada carta untuk pemantauan masa nyata.

Risiko Strategi

  1. MA Lag: Purata bergerak secara semula jadi penunjuk yang ketinggalan, berpotensi menyebabkan kelewatan di pasaran yang tidak menentu.
  2. Risiko pasaran sampingan: Boleh menghasilkan isyarat palsu yang kerap di pasaran yang terhad.
  3. Risiko Stop-Loss Tetap: Stop tetap berasaskan peratusan mungkin kurang fleksibel di bawah keadaan pasaran tertentu.

Arahan Pengoptimuman Strategi

  1. Penapisan Isyarat: Cadangkan menggabungkan penapisan trend, seperti ADX, untuk mengenal pasti kekuatan trend.
  2. Hentikan dinamik: Pertimbangkan untuk menghubungkan tahap stop-loss dengan turun naik pasaran untuk pengurusan risiko yang lebih bijak.
  3. Pengukuran Posisi: Memperkenalkan sistem pengukuran kedudukan dinamik berdasarkan turun naik.
  4. Kebolehsesuaian pasaran: Tambah modul pengiktirafan keadaan pasaran untuk tetapan parameter yang berbeza di bawah pelbagai keadaan pasaran.

Ringkasan

Strategi ini menangkap trend pasaran melalui persilangan purata bergerak sambil melaksanakan pengurusan risiko melalui kawalan keuntungan / kerugian dinamik, menunjukkan kepraktisan yang kuat. Walaupun terdapat risiko kelewatan yang melekat, arah pengoptimuman yang dicadangkan dapat meningkatkan kestabilan dan keuntungan strategi. Konfigurasi tinggi strategi menjadikannya sesuai untuk penyempurnaan dan penyesuaian lanjut.


/*backtest
start: 2024-12-10 00:00:00
end: 2025-01-08 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/

//@version=5
strategy("Cruzamento de Médias Móveis (Configuração Interativa)", overlay=true)

// Permite que o usuário defina os períodos das médias móveis na interface
periodo_ma7 = input.int(7, title="Período da Média Móvel 7", minval=1)
periodo_ma40 = input.int(40, title="Período da Média Móvel 40", minval=1)

// Definindo as médias móveis com os períodos configuráveis
ma7 = ta.sma(close, periodo_ma7)
ma40 = ta.sma(close, periodo_ma40)

// Parâmetros de stop loss e take profit
stop_loss_pct = input.float(1, title="Stop Loss (%)", minval=0.1) / 100
take_profit_pct = input.float(2, title="Take Profit (%)", minval=0.1) / 100

// Condições para compra e venda
compra = ta.crossover(ma7, ma40)
venda = ta.crossunder(ma7, ma40)

// Impede novas entradas enquanto já houver uma posição aberta
if (compra and strategy.position_size == 0)
    strategy.entry("Compra", strategy.long)

// Cálculo do preço de stop loss e take profit
stop_loss_price = strategy.position_avg_price * (1 - stop_loss_pct)
take_profit_price = strategy.position_avg_price * (1 + take_profit_pct)

// Estratégia de saída com stop loss e take profit
strategy.exit("Saída", from_entry="Compra", stop=stop_loss_price, limit=take_profit_price)

// Sinal de venda (fechamento da posição)
if (venda)
    strategy.close("Compra")

// Plotando as médias móveis no gráfico
plot(ma7, color=color.blue, title="Média Móvel 7")
plot(ma40, color=color.red, title="Média Móvel 40")

// Plotando o Stop Loss e Take Profit no gráfico
plot(stop_loss_price, color=color.red, style=plot.style_line, linewidth=2, title="Stop Loss")
plot(take_profit_price, color=color.green, style=plot.style_line, linewidth=2, title="Take Profit")


Berkaitan

Lebih lanjut