
Idea utama strategi ini adalah untuk membuka lebih banyak kedudukan selepas munculnya bentuk garis K tertentu, iaitu masuk lebih banyak ketika garis K seterusnya dibuka apabila terdapat garis yang melompat ke bawah dan titik rendah K seterusnya disambung semula.
Syarat-syarat tertentu untuk keputusan strategi ini adalah: garis K terdahulu adalah titik terendah yang lebih rendah dan titik tertinggi yang lebih tinggi daripada dua garis K terdahulu, iaitu melompat ke bawah; dan garis K semasa adalah lebih rendah daripada atau sama dengan garis K terdahulu. Apabila kedua-dua syarat ini dipenuhi pada masa yang sama, buat lebih banyak masuk ketika garis K seterusnya dibuka.
Setel stop loss sebagai titik rendah pengembalian, iaitu harga terendah pada garis K sebelumnya, dan setel stop loss sebagai lebih dari 2% daripada harga pembukaan kedudukan. Apabila harga menyentuh stop loss atau harga stop loss, kemudian tutup kedudukan.
Kelebihan utama strategi ini adalah dengan mengambil peluang untuk memantul yang mungkin berlaku dalam jangka masa pendek. Ini adalah bentuk teknik yang sangat kuat apabila terdapat garis K yang melompat ke bawah dan kemudian berlaku penyesuaian, yang menunjukkan bahawa kekuatan hulu udara mungkin habis pada tahap ini, dan terdapat kemungkinan besar untuk memantul. Oleh itu, ini adalah strategi yang lebih sesuai untuk operasi garis pendek.
Risiko utama strategi ini adalah kemungkinan harga terus menurun selepas pengetuaan berakhir. Oleh kerana kita melakukan banyak perkara di sekitar titik rendah pengetuaan, jika tidak dapat menghentikan kerugian tepat pada masanya, kita mungkin menghadapi kerugian yang lebih besar. Selain itu, jika pengetuaan lebih kecil, titik berhenti yang lebih dekat, ia mungkin akan disekat. Oleh itu, strategi ini lebih sesuai untuk operasi garis pendek, yang memerlukan perhatian yang ketat terhadap pergerakan harga, dan menghentikan kerugian tepat pada masanya.
Anda boleh mempertimbangkan untuk menentukan masa masuk dengan menggunakan indikator lain, seperti masuk semula apabila MACD berlaku, atau anda boleh mengira harga tipikal untuk melihat sama ada ia berada di kedudukan sokongan, yang boleh menapis beberapa isyarat palsu dan meningkatkan kestabilan strategi. Selain itu, anda boleh mengkaji prestasi strategi dalam pelbagai jenis dan tempoh masa yang berbeza untuk mencari kombinasi parameter terbaik.
Strategi ini secara keseluruhannya adalah tipikal strategi penyesuaian penyesuaian garis pendek yang dilakukan oleh banyak strategi. Ia menangkap peluang rebound yang disediakan oleh bentuk yang kuat seperti melompat dan melakukan penyesuaian. Tetapi ia juga menghadapi risiko kerugian yang lebih besar kerana tidak dapat menghentikan kerugian tepat pada masanya, jadi sesuai untuk operasi garis pendek yang sering memantau pasaran.
/*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)