Strategi Perdagangan Purata Pergerakan Breakout Mingguan


Tarikh penciptaan: 2024-01-18 11:47:25 Akhirnya diubah suai: 2024-01-18 11:47:25
Salin: 0 Bilangan klik: 602
1
fokus pada
1617
Pengikut

Strategi Perdagangan Purata Pergerakan Breakout Mingguan

Gambaran keseluruhan

Strategi ini berpusat pada harga penutupan mingguan Bitcoin dan purata bergerak sederhana selama 8 minggu. Apabila harga penutupan mingguan melewati garis 8 minggu, buat lebih banyak; apabila harga penutupan mingguan melewati garis 8 minggu, kosong.

Prinsip Strategi

Strategi ini menganalisis pergerakan mingguan bitcoin dan purata bergerak sederhana 8 minggu untuk menentukan apakah pasaran sedang dalam trend naik atau turun. Apabila harga penutupan mingguan melangkaui 8 mingguan, menunjukkan pasaran memasuki saluran naik dan membuat keuntungan yang lebih besar; Apabila harga penutupan mingguan melangkaui 8 mingguan, menunjukkan bahawa Bitcoin memasuki saluran turun, dan harus menghentikan kerugian yang berlaku sebelum itu.

Secara khusus, strategi ini menetapkan syarat-syarat penilaian berikut:

buy_condition= crossover(btc,ma)#周线收盘价上穿8周线,做多 
sell_condition= crossunder(btc,ma)#周线收盘价下穿8周线,平仓

Apabila syarat beli tercapai, strategi akan masuk untuk melakukan lebih banyak; apabila syarat kedudukan kosong tercapai, strategi akan memilih untuk berhenti atau berhenti kehilangan.

Di samping itu, strategi ini juga menetapkan peratusan stop loss:

loss_ratio=input(defval=1,title="LOSS RATIO", group="STRATEGY") 
reward_ratio=input(defval=3,title="REWARD RATIO", group="STRATEGY")

Di antaranya, kadar henti rugi adalah default 1, kadar henti rugi adalah default 3. Ini bermakna apabila isyarat kedudukan rata datang, jika keuntungan semasa, ia akan berhenti dengan 3 kali ganda keuntungan; jika kerugian semasa, ia akan berhenti dengan 1 kali ganda kerugian.

Analisis kelebihan

Strategi ini mempunyai kelebihan berikut:

  1. Pengendalian perimeter, penarikan balik kecil, sesuai untuk memegang garis panjang
  2. 8 Guncangan penapis saluran mingguan, mengenal pasti trend utama
  3. Tetapkan Stop Loss Stop dan Kawal Risiko

Analisis risiko

Strategi ini mempunyai beberapa risiko:

  1. Operasi garis lingkar, tidak dapat menyesuaikan kedudukan untuk keadaan jangka pendek
  2. Isyarat pecah mungkin menunjukkan isyarat yang salah
  3. Tetapan stop loss mungkin tidak berfungsi apabila pasaran tidak normal

Kaedah pencegahan:

  1. Boleh digabungkan dengan petunjuk jangka pendek lain untuk mengenal pasti peluang penyesuaian jangka pendek
  2. Menambah syarat penapisan untuk mengelakkan isyarat yang salah
  3. Menyesuaikan Stop Loss Stop Loss Ratio mengikut keadaan pasaran untuk mengurangkan kerugian

Arah pengoptimuman

Strategi ini boleh dioptimumkan dalam beberapa aspek:

  1. Menambah syarat penapisan lain untuk memastikan keberkesanan isyarat penembusan
  2. Tetapan optimum untuk nisbah stop-loss
  3. Gabungan jangka masa pendek dengan pelbagai jangka masa
  4. Mengoptimumkan parameter secara automatik menggunakan algoritma pembelajaran mesin

ringkaskan

Strategi ini secara keseluruhannya lebih mudah dan langsung, untuk menilai trend pasaran melalui garis pusingan yang menembusi rata-rata; pada masa yang sama, ia menetapkan stop loss untuk mengawal risiko. Ia boleh digunakan sebagai rujukan untuk memegang bitcoin dalam talian panjang. Tetapi strategi ini juga mempunyai kawasan buta tertentu, yang kemudiannya dapat diperbaiki dari segi meningkatkan keberkesanan isyarat, mengoptimumkan tetapan parameter, mewujudkan penggabungan bingkai masa berbilang.

Kod sumber strategi
/*backtest
start: 2024-01-10 00:00:00
end: 2024-01-17 00:00:00
period: 3m
basePeriod: 1m
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/
// © taberandwords
//developer: taberandwords
//author: taberandwords
//@version=4

strategy("WEEKLY BTC TRADING SCRYPT","WBTS",overlay=false,default_qty_type=strategy.fixed)

source=input(defval=close,title="source",group="STRATEGY")

btc=security('BTCUSDT','1W', source)
ma=sma(btc,8)

buy_condition= crossover(btc,ma) 
sell_condition= crossunder(btc,ma)

ma_color=input(defval=#FF3232,title="COLOR",group="MA")
ma_linewidth=input(defval=2,title="LINE WIDTH",group="MA")
graphic_color=input(defval=#6666FF,title="COLOR",group="GRAPHIC")
graphic_linewidth=input(defval=2,title="LINE WIDTH",group="GRAPHIC")

start_date=input(defval=2020,title="YEAR",group="STRATEGY EXECUTION YEAR")

loss_ratio=input(defval=1,title="LOSS RATIO", group="STRATEGY")
reward_ratio=input(defval=3,title="REWARD RATIO", group="STRATEGY")

if(year>=start_date)
    strategy.entry('BUY',long=true,when=buy_condition,alert_message='Price came to buying value!')

    if(strategy.long)
        alert('BTC buy order trigerred!',alert.freq_once_per_bar)
    strategy.exit(id="SELL",loss=loss_ratio,profit=reward_ratio,when=sell_condition,alert_message='Price came to position closing value!')
    if(sell_condition)
        alert('BTC sell order trigerred!',alert.freq_once_per_bar)
plot(series=source,title="WEEKLY CLOSE",color=graphic_color,linewidth=graphic_linewidth)
plot(ma,title="SMA8 WEEKLY",color=ma_color,linewidth=ma_linewidth)
plot(strategy.equity,display=0)