
Strategi ini adalah strategi perdagangan robot BTC dengan stop loss bertingkat. Strategi ini melakukan buy entry dengan mencari titik terendah, kemudian mengatur stop loss bertingkat untuk melakukan stop loss bertingkat dan exit. Strategi ini cocok untuk melihat BTC.
Mencari waktu masuk: Sebuah sinyal beli dihasilkan ketika CC melewati sumbu 0 di bawah indikator, dan pada titik itu membeli lebih banyak order.
Set Stop Loss Point: Stop loss yang dikonversi menjadi harga dengan setting persentase stop loss input.
Setting multi-level stop: terbagi menjadi 4 titik keluar, dengan input set stop persentase dari masing-masing titik keluar, dikonversi menjadi harga untuk batch stop.
Pengendalian risiko: mengatur jumlah maksimum yang dapat dipegang, dengan persentase jumlah keluar dari setiap titik keluar yang ditetapkan oleh input, untuk penyebaran risiko.
Strategi ini memiliki keuntungan sebagai berikut:
Sinyal masuk lebih dapat diandalkan, carilah titik terendah untuk membeli, dan hindari membeli pada titik tertinggi.
Multi-level stop-loss dapat mengunci sebagian dari keuntungan, sementara mempertahankan sebagian dari keuntungan untuk terus beroperasi.
Pengaturan titik berhenti untuk pengendalian risiko, dapat mengendalikan kerugian dalam batas tertentu.
Dengan berlomba-lomba, risiko dapat terbagi untuk menghindari kerugian sekaligus.
Pengunduran diri dapat dikontrol.
Strategi ini juga memiliki risiko sebagai berikut:
Indikator CC tidak dapat menentukan titik terendah dengan pasti, sehingga kemungkinan kehilangan peluang untuk membeli.
Stop loss yang tidak tepat dapat menyebabkan stop loss yang tidak perlu.
Pengaturan pertandingan yang tidak tepat juga dapat menyebabkan kerugian keuntungan.
“Kalau ada gempa, lebih sulit untuk menghentikan gempa.
“Saya tidak tahu apa-apa, saya tidak tahu apa-apa, saya tidak tahu apa-apa, saya tidak tahu apa-apa, saya tidak tahu apa-apa”.
Ada beberapa hal yang dapat dioptimalkan:
Optimalkan sinyal masuk, tambahkan lebih banyak indikator atau penilaian pembelajaran mesin untuk menentukan kapan tepat untuk membeli.
Optimalkan strategi stop loss agar lebih elastis dan mampu menanggapi situasi dengan lebih baik.
Optimalkan strategi untuk beradaptasi lebih baik terhadap perubahan dan tren.
Strategi seperti trailing stop dapat membuat stop-loss lebih elastis.
Uji pengaturan parameter varietas yang berbeda untuk menemukan kombinasi parameter yang optimal.
Strategi ini secara keseluruhan adalah strategi perdagangan BTC yang didasarkan pada mencari sinyal beli titik terendah dan mengatur stop loss dan stop loss multi-level. Ini memiliki beberapa keuntungan, tetapi ada juga arah yang dapat dioptimalkan. Dengan pengoptimalan lebih lanjut, strategi dapat dibuat lebih baik dalam hal kontrol penarikan dan stop loss.
/*backtest
start: 2023-09-17 00:00:00
end: 2023-10-17 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
args: [["v_input_1",2]]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © RafaelZioni
// © theCrypster 2020
//@version=4
// strategy(title = "BTC bot", overlay = true, pyramiding=1,initial_capital = 10000, default_qty_type= strategy.percent_of_equity, default_qty_value = 100, calc_on_order_fills=false, slippage=0,commission_type=strategy.commission.percent,commission_value=0.075)
strat_dir_input = input(title="Strategy Direction", defval="long", options=["long", "short", "all"])
strat_dir_value = strat_dir_input == "long" ? strategy.direction.long : strat_dir_input == "short" ? strategy.direction.short : strategy.direction.all
strategy.risk.allow_entry_in(strat_dir_value)
//INPUTS
higherTF = input("W", type=input.resolution)
pc = security(syminfo.tickerid, higherTF, close[1], lookahead=true)
ph = security(syminfo.tickerid, higherTF, high[1], lookahead=true)
pl = security(syminfo.tickerid, higherTF, low[1], lookahead=true)
PP = 0.0,R1 = 0.0, R2 = 0.0, R3 = 0.0,S1 = 0.0, S2 = 0.0, S3 = 0.0
PP := (ph + pl + pc) / 3
R1 := PP + (PP - pl)
S1 := PP - (ph - PP)
R2 := PP + (ph - pl)
S2 := PP - (ph - pl)
factor=input(2)
R3 := ph + factor * (PP - pl)
S3 := pl - 2 * (ph - PP)
//
length=input(21)
//
p = close
vrsi = rsi(p, length)
pp=ema(vrsi,length)
d=(vrsi-pp)*5
cc=(vrsi+d+pp)/2
//
low1=crossover(cc,0)
sell=crossover(close[1],R3)
//
l = low1
s=sell
if l
strategy.entry("buy", strategy.long)
if s
strategy.entry("sell", strategy.short)
per(pcnt) =>
strategy.position_size != 0 ? round(pcnt / 100 * strategy.position_avg_price / syminfo.mintick) : float(na)
stoploss=input(title=" stop loss", defval=15, minval=0.01)
los = per(stoploss)
q1=input(title=" qty_percent1", defval=25, minval=1)
q2=input(title=" qty_percent2", defval=25, minval=1)
q3=input(title=" qty_percent3", defval=25, minval=1)
tp1=input(title=" Take profit1", defval=3, minval=0.01)
tp2=input(title=" Take profit2", defval=5, minval=0.01)
tp3=input(title=" Take profit3", defval=7, minval=0.01)
tp4=input(title=" Take profit4", defval=10, minval=0.01)
strategy.exit("x1", qty_percent = q1, profit = per(tp1), loss = los)
strategy.exit("x2", qty_percent = q2, profit = per(tp2), loss = los)
strategy.exit("x3", qty_percent = q3, profit = per(tp3), loss = los)
strategy.exit("x4", profit = per(tp4), loss = los)