Strategi Dagangan Hari Jangka Pendek Purata Pergerakan Berganda


Tarikh penciptaan: 2024-02-27 16:36:31 Akhirnya diubah suai: 2024-02-27 16:36:31
Salin: 2 Bilangan klik: 724
1
fokus pada
1617
Pengikut

Strategi Dagangan Hari Jangka Pendek Purata Pergerakan Berganda

Gambaran keseluruhan

Ini adalah strategi perdagangan dalam hari yang mudah berdasarkan garis rata-rata ganda. Ia menggunakan garis rata-rata bergerak sederhana dengan dua kitaran yang berbeza, untuk membeli atau menjual ketika garis rata-rata bersilang.

Prinsip Strategi

Strategi ini menggunakan dua garis rata-rata bergerak sederhana pada hari ke-10 dan ke-40. Apabila garis rata-rata jangka pendek melintasi garis rata-rata jangka panjang, buat lebih banyak; Apabila garis rata-rata jangka pendek melintasi garis rata-rata jangka panjang, buat kosong. Apabila isyarat berubah, gunakan tangan ganda untuk melonggarkan kedudukan dan kemudian membuka kedudukan secara terbalik.

Strategi ini terutamanya menggunakan ciri-ciri garis purata jangka pendek yang dapat menangkap perubahan harga lebih cepat. Apabila garis purata jangka pendek di atas garis purata jangka panjang, menunjukkan harga jangka pendek mula naik, lebih banyak dapat menangkap trend ini; apabila garis purata jangka pendek di bawah garis purata jangka pendek, menunjukkan harga jangka pendek mula turun, dapat menangkap trend ini.

Kelebihan Strategik

  1. Strategi ini mudah difahami dan dilaksanakan.
  2. Menggunakan prinsip dua garis sejajar silang, ia dapat menangkap trend harga jangka pendek dengan berkesan.
  3. Berdagang pada waktu siang dapat mengelakkan risiko bermalam.
  4. Dengan menggunakan reka bentuk reverse double handed, anda dapat meningkatkan ruang keuntungan.

Analisis risiko

  1. Sebagai strategi jangka pendek, mudah terpengaruh oleh bunyi pasaran, dan isyarat yang salah muncul.
  2. Reka bentuk nombor tangan berganda boleh meningkatkan kerugian.
  3. Reka bentuk kedudukan kosong wajib pada hari ini boleh menyebabkan perdagangan yang tidak boleh memegang garis panjang.

Penyelesaian untuk menghadapi risiko:

  1. Mengoptimumkan parameter garis purata, mengurangkan kadar isyarat salah.
  2. Gabungan dengan penapis isyarat lain.
  3. Mengoptimumkan parameter bilangan dua kali ganda.
  4. Mempermudahkan masa dagangan dalam sehari.

Arah pengoptimuman strategi

  1. Optimumkan parameter garis rata. Anda boleh menguji lebih banyak kombinasi untuk mencari parameter terbaik.

  2. Menambah penapis untuk petunjuk teknikal lain. Sebagai contoh, tambahan pengesahan petunjuk MACD dapat mengurangkan kadar isyarat salah.

  3. Mengoptimumkan kelipatan terbalik untuk membuka kedudukan. Uji saiz kelipatan yang berbeza untuk mencari parameter yang optimum.

  4. Uji masa dagangan yang berlainan dalam satu hari.

ringkaskan

Strategi ini adalah strategi yang berkesan untuk perdagangan dalam talian pendek. Terdapat ruang untuk pengoptimuman lebih lanjut, dengan menyesuaikan parameter dan menambahkan penapis petunjuk teknikal lain, untuk mendapatkan kesan strategi yang lebih baik.

Kod sumber strategi
/*backtest
start: 2024-02-19 00:00:00
end: 2024-02-26 00:00:00
period: 1m
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/
// © Pritesh-StocksDeveloper

//@version=4
strategy("Moving Average - Intraday", shorttitle = "MA - Intraday", 
     overlay=true, calc_on_every_tick = true)

// Used for intraday handling
// Session value should be from market start to the time you want to square-off 
// your intraday strategy
var i_marketSession = input(title="Market session", type=input.session, 
     defval="0915-1455", confirm=true)

// Short & Long moving avg. period
var int i_shortPeriod = input(title = "Short MA Period", type = input.integer, 
     defval = 10, minval = 2, maxval = 20, confirm=true)
var int i_longPeriod = input(title = "Long MA Period", type = input.integer, 
     defval = 40, minval = 3, maxval = 120, confirm=true)

// A function to check whether the bar is in intraday session
barInSession(sess) => time(timeframe.period, sess) != 0

// Calculate moving averages
shortAvg = sma(close, i_shortPeriod)
longAvg = sma(close, i_longPeriod)

// Plot moving averages
plot(series = shortAvg, color = color.red, title = "Short MA", 
     linewidth = 2)
plot(series = longAvg, color = color.blue, title = "Long MA", 
     linewidth = 2)

// Long/short condition
longCondition = crossover(shortAvg, longAvg)
shortCondition = crossunder(shortAvg, longAvg)

// See if intraday session is active
bool intradaySession = barInSession(i_marketSession)

// Trade only if intraday session is active

// Long position
strategy.entry(id = "Long", long = strategy.long, 
     when = longCondition and intradaySession)

// Short position
strategy.entry(id = "Short", long = strategy.short, 
     when = shortCondition and intradaySession)

// Square-off position (when session is over and position is open)
squareOff = (not intradaySession) and (strategy.position_size != 0)
strategy.close_all(when = squareOff, comment = "Square-off")