Strategi Dagangan Pendek dalam Trend Turun

Penulis:ChaoZhang, Tarikh: 2023-11-07 17:06:59
Tag:

img

Ringkasan

Strategi ini mengambil kesempatan daripada trend penurunan dengan membina kedudukan pendek secara beransur-ansur berdasarkan purata bergerak dan penunjuk RSI.

Logika Strategi

Apabila harga penutupan di bawah purata bergerak mudah 100 hari dan RSI lebih besar daripada 30, pergi pendek. Kemudian tetapkan stop loss di atas harga kemasukan sebanyak 3% dan ambil keuntungan di bawah harga kemasukan sebanyak 2%. Stop loss yang lebih luas membolehkan lebih banyak turun naik untuk mengelakkan berhenti yang tidak perlu. Posisi penutupan apabila harga melebihi stop loss atau jatuh di bawah mengambil keuntungan.

Pada platform Coinrule, tetapkan beberapa pesanan jual berturut-turut untuk membina kedudukan secara beransur-ansur. Apabila downtrend berterusan, meningkatkan saiz kedudukan. Menetapkan selang masa antara pesanan juga membantu mengawal saiz kedudukan keseluruhan.

Setiap perdagangan disambungkan dengan perintah stop loss dan mengambil keuntungan. Peratusan dioptimumkan untuk syiling mid-cap. Anda boleh menyesuaikan berdasarkan syiling tertentu.

Stop loss pada 3% di atas harga kemasukan Ambil keuntungan pada 2% di bawah harga kemasukan Stop loss yang sedikit lebih besar boleh menampung lebih banyak turun naik.

Analisis Kelebihan

  • MA menilai arah trend dengan baik, menangkap downtrend pada waktunya
  • RSI penapis mengelakkan buta pergi pendek
  • Pengendalian pembinaan kedudukan secara beransur-ansur dengan risiko maksimum dengan nisbah risiko-balasan yang lebih baik
  • Hentikan kerugian dan ambil keuntungan memastikan ketahanan untuk setiap perdagangan

Analisis Risiko

  • Pembalikan tajam V boleh membawa kepada kerugian besar
  • Perlu memantau harga dengan teliti untuk menyesuaikan stop loss dan mengambil keuntungan
  • Leverage perlu munasabah untuk mengawal saiz kedudukan
  • Strategi berhenti dalam pasaran bergelombang mengelakkan kerugian yang tidak perlu

Arahan pengoptimuman

  • Ujian MA dengan parameter yang berbeza
  • Uji gabungan RSI dengan parameter yang berbeza
  • Sesuaikan stop loss dan mengambil nisbah keuntungan untuk mengoptimumkan risiko-balasan
  • Uji selang masa yang berbeza antara perintah untuk mengawal saiz kedudukan

Ringkasan

Strategi ini berkesan menangkap trend penurunan berdasarkan MA dan RSI. Pembinaan kedudukan secara beransur-ansur mengawal risiko manakala menghentikan kerugian dan mengambil keuntungan memastikan ketahanan. Mengoptimumkan lagi nisbah risiko-balasan dengan menyesuaikan parameter berhenti kerugian / mengambil keuntungan. Terdapat ruang untuk penambahbaikan pada parameter dan kawalan risiko. Tetapi secara keseluruhan strategi pendek jangka pendek yang kukuh.


/*backtest
start: 2022-10-31 00:00:00
end: 2023-11-06 00:00:00
period: 1d
basePeriod: 1h
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/
// © Coinrule

//@version=4
strategy(shorttitle='Short In Downtrend',title='Short In Downtrend Below MA100', overlay=true, initial_capital = 1000, process_orders_on_close=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100)

//Backtest dates
fromMonth = input(defval = 1,    title = "From Month",      type = input.integer, minval = 1, maxval = 12)
fromDay   = input(defval = 10,    title = "From Day",        type = input.integer, minval = 1, maxval = 31)
fromYear  = input(defval = 2019, title = "From Year",       type = input.integer, minval = 1970)
thruMonth = input(defval = 1,    title = "Thru Month",      type = input.integer, minval = 1, maxval = 12)
thruDay   = input(defval = 1,    title = "Thru Day",        type = input.integer, minval = 1, maxval = 31)
thruYear  = input(defval = 2112, title = "Thru Year",       type = input.integer, minval = 1970)

showDate  = input(defval = true, title = "Show Date Range", type = input.bool)

start     = timestamp(fromYear, fromMonth, fromDay, 00, 00)        // backtest start window
finish    = timestamp(thruYear, thruMonth, thruDay, 23, 59)        // backtest finish window
window()  => true       // create function "within window of time"

//MA inputs and calculations
inSignal=input(50, title='MASignal')

MA= sma(close, inSignal)

// RSI inputs and calculations
lengthRSI = input(14, title = 'RSI period', minval=1)
RSI = rsi(close, lengthRSI)


//Entry 
strategy.entry(id="short", long = false, when = close < MA and RSI > 30)

//Exit
shortStopPrice  = strategy.position_avg_price * (1 + 0.03)
shortTakeProfit = strategy.position_avg_price * (1 - 0.02)

strategy.close("short", when = close > shortStopPrice or close < shortTakeProfit and window())


plot(MA, color=color.purple, linewidth=2)


Lebih lanjut