Strategi Jangka Panjang Penembusan Callback

Penulis:ChaoZhang, Tarikh: 2024-02-22 15:41:53
Tag:

img

Ringkasan

Idea utama strategi ini adalah untuk membuka kedudukan panjang selepas corak lilin tertentu muncul, iaitu membuka kedudukan panjang di bar bar berikutnya yang dibuka selepas jurang ke bawah (colorbar) diikuti dengan pullback ke bar bar sebelumnya.

Logika Strategi

Syarat khusus untuk strategi ini ialah: bar sebelumnya mempunyai rendah yang lebih rendah dan tinggi yang lebih tinggi berbanding dua bar sebelumnya, yang menunjukkan jurang ke bawah; dan bar bar semasa kurang daripada atau sama dengan bar bar sebelumnya, menandakan penurunan telah berlaku.

Selepas membuka kedudukan panjang, stop loss ditetapkan pada tahap rendah pulback, yang merupakan tahap rendah bar sebelumnya, dan mengambil keuntungan ditetapkan pada lebih daripada 2% di atas harga masuk.

Analisis Kelebihan

Kelebihan terbesar strategi ini adalah merebut peluang rebound kebarangkalian tinggi selepas corak candlestick tertentu. jurang ke bawah diikuti oleh pullback mewakili corak teknikal yang sangat kuat yang menunjukkan tekanan penjualan mungkin telah habis pada tahap ini dan kemungkinan besar akan berlaku. Oleh itu, strategi ini lebih sesuai untuk perdagangan jangka pendek.

Analisis Risiko

Risiko utama adalah penurunan yang berterusan selepas penarikan berakhir. Oleh kerana kita mengambil kedudukan panjang di sekitar titik terendah penarikan, kerugian yang ketara mungkin timbul jika tidak dapat memotong kerugian tepat pada masanya. Juga, jika julat penarikan kecil, stop loss yang ditetapkan terlalu ketat boleh menyebabkan berhenti. Oleh itu strategi ini lebih disukai untuk perdagangan jangka pendek, yang memerlukan perhatian pasaran yang dekat dan stop loss tepat pada masanya.

Arah pengoptimuman

Indikator teknikal lain boleh dimasukkan untuk meningkatkan ketepatan isyarat dan kestabilan strategi, seperti memasuki persilangan emas MACD, atau memeriksa harga biasa berada pada tahap sokongan sebelum masuk.

Ringkasan

Ringkasnya, ini adalah strategi jangka pendek jangka pendek. Ia menangkap peluang pemulihan selepas corak jurang penurunan yang kuat diikuti dengan penarikan balik. Tetapi ia juga membawa risiko kerugian besar jika gagal memotong kerugian pada waktunya. Pemantauan pasaran yang kerap diperlukan untuk hasil yang baik. Penambahbaikan lanjut boleh dibuat melalui penapisan isyarat dengan lebih banyak penunjuk dan pengoptimuman parameter.


/*backtest
start: 2024-01-22 00:00:00
end: 2024-02-21 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//  Created by Leon Ross
//study(title="OutsideDownOpenLower", shorttitle="ODOL", overlay=true)
strategy(title = "Outside", shorttitle = "OB", overlay = true )
  

//Window of time
//start     = timestamp(2018, 01, 01, 00, 00)  // backtest start window
//finish    = timestamp(2018, 12, 31, 23, 59)        // backtest finish window
//window()  => time >= start and time <= finish ? true : false // create function "within window of time"  

//Conditions
outsideBar = low < low[1] and high > high[1] and close < open
allConditions = outsideBar
  
//Stop and Take Profit as percentages
//inpTakeProfit   = input(2, title='Take Profit %', type=float)/100
//takeProfitValue = strategy.position_avg_price * (1 + inpTakeProfit)
//useTakeProfit   = inpTakeProfit  > 0 ?  takeProfitValue : na
//inpStopLoss     = input(1, title='Stop Loss %', type=float)/100
//stopLossValue = strategy.position_avg_price * (1 - inpStopLoss)
//useStopLoss     = inpStopLoss    > 0 ?  stopLossValue   : na
//entry = strategy.position_avg_price



//Stop as last bars low and profit as percentage
entry = strategy.position_avg_price
inpTakeProfit   = input(2.0, title='Take Profit %', type=float)/100
takeProfitValue = strategy.position_avg_price * (1 + inpTakeProfit)
useTakeProfit   = inpTakeProfit  > 0 ?  takeProfitValue : na
inpStopLoss     = valuewhen(allConditions, low, 0)
stopLossValue = inpStopLoss
useStopLoss     = inpStopLoss    > 0 ?  stopLossValue   : na
    



//Plots
bgcolor(allConditions ==1 ? aqua : na, transp=70)
plot(entry, color=blue, style=linebr, linewidth=2)
plot(useStopLoss, color=red, style=linebr, linewidth=2)
plot(useTakeProfit, color=green, style=linebr, linewidth=2)


//Entires
strategy.entry(id = "Long", long = true, when = allConditions) // use function or simple condition to decide when to get in

//Exits
//if (barssince(allConditions) == 2)
    //strategy.close("Long")
//else
strategy.exit("Exit Long", from_entry = "Long", stop = useStopLoss)







Lebih lanjut