Terobosan strategi harga tertinggi kemarin


Tanggal Pembuatan: 2023-11-06 10:49:57 Akhirnya memodifikasi: 2023-11-06 10:49:57
menyalin: 0 Jumlah klik: 709
1
fokus pada
1617
Pengikut

Terobosan strategi harga tertinggi kemarin

Ringkasan

Strategi harga tertinggi kemarin adalah strategi pelacakan tren, yang membuka posisi multi-head saat harga tertinggi kemarin dipecahkan, bahkan jika ada beberapa penembusan pada hari itu. Ini menggunakan pelacakan tren sebagai fitur utama, dan berlaku untuk situasi di mana pasar menunjukkan tren yang jelas dan tingkat fluktuasi yang tinggi.

Prinsip

Strategi ini memperkenalkan serangkaian indikator untuk mengidentifikasi kapan waktu masuk dan kapan waktu keluar.

  • Filter kurva ROC - Strategi dimulai ketika harga close out hari itu lebih tinggi atau lebih rendah dari harga close out hari sebelumnya dan melampaui batas yang ditetapkan. Indikator ini digunakan untuk menyaring pasar yang tidak konsisten dengan strategi.

  • Breakout Point - mencatat harga tertinggi, harga terendah, dan harga pembukaan pada hari tersebut. Ketika harga melewati harga tertinggi pada hari itu, itu adalah sinyal masuk.

  • Kondisi masuk dan keluar - Pasang stop loss dan stop loss rasio setelah masuk, dan dapat mengaktifkan tracking stop loss untuk mengunci keuntungan. Anda juga dapat memiliki stop loss bersyarat untuk EMA tertentu.

  • Konfigurasi yang dioptimalkan - Anda dapat mengatur rasio jarak sebelum masuk untuk menyesuaikan waktu masuk, menghindari false break. Anda dapat mengatur stop loss, stop stop, dan parameter dinamis untuk melacak stop loss.

Secara khusus, strategi ini menilai waktu masuk dengan mencatat harga tertinggi hari itu. Ketika harga melebihi harga tertinggi hari itu, masuklah ke dalam banyak mata uang. Setelah itu, atur stop loss dan stop loss, dan bukalah tracking stop loss. Anda juga dapat menghentikan stop loss ketika harga jatuh di bawah EMA tertentu.

Analisis Keunggulan

Strategi ini memiliki keuntungan sebagai berikut:

  • Di sini, Anda dapat mengamati tren dan mengambil keuntungan dari tren.

  • Strategi penembusan, sinyal masuk jelas.

  • Pertimbangkan harga tertinggi untuk hari itu dan hindari tiket masuk berturut-turut.

  • Pengaturan stop loss untuk membantu pengendalian risiko.

  • Tracking Stop Loss Setup, yang dapat mengunci keuntungan.

  • Anda dapat menyesuaikan waktu masuk dengan mengoptimalkan parameter, dan mengontrol risiko.

  • Ini adalah salah satu cara yang paling populer untuk mengaktifkan aplikasi ini.

  • Fitur multirumah dua arah.

Analisis risiko

Strategi ini juga memiliki risiko sebagai berikut:

  • Strategi penembusan yang mudah dikurung. Harga bisa langsung turun setelah masuk.

  • Ini hanya berlaku untuk tren dan tidak berlaku untuk getaran.

  • Hal ini perlu untuk menetapkan rasio stop loss yang masuk akal, terlalu longgar dapat meningkatkan kerugian.

  • Peraturan yang masuk akal diperlukan untuk mengatur rasio jarak masuk, yang terlalu radikal dapat meningkatkan kerugian.

  • Penembusan palsu dapat menyebabkan kerugian yang tidak perlu dan perlu disesuaikan dengan optimasi.

  • Perhatian harus diberikan pada apakah terobosan dalam volume transaksi dapat mendukung perkembangan selanjutnya.

  • Perhatikan koordinasi antara pengaturan parameter periode waktu yang berbeda.

Arah optimasi

Strategi ini dapat dioptimalkan dengan:

  • Menambahkan penilaian indikator teknis lainnya, seperti volume transaksi, indikator guncangan, dan lain-lain, untuk menghindari kebocoran dalam situasi guncangan.

  • Menambahkan indikator kesesuaian kurva, menilai kualitas tren, dan menghindari mengikuti tren palsu.

  • Optimasi dinamis untuk pengaturan interval masuk, menyesuaikan interval sesuai dengan fluktuasi pasar.

  • Optimalisasi pengaturan stop loss secara dinamis, mengikuti parameter penyesuaian pasar.

  • Parameter yang berbeda untuk berbagai varietas dengan siklus yang berbeda.

  • Menggunakan metode pembelajaran mesin TRAINING untuk menguji pengaruh berbagai parameter terhadap strategi.

  • Tambahkan Options untuk mengoptimalkan konfigurasi.

  • Studi tentang bagaimana menerapkan strategi ini dalam situasi gempa.

  • Strategi kombinasi yang diperluas untuk periode waktu dan varietas.

Meringkaskan

Strategi ini didasarkan pada ide pelacakan tren untuk menembus harga tertinggi kemarin, dan bekerja dengan baik dalam situasi tren. Namun, ada juga risiko yang ditanggung dan masalah pengoptimalan parameter. Strategi ini dapat dioptimalkan lebih lanjut dengan memperkenalkan lebih banyak indikator penilaian, pengaturan parameter pengoptimalan dinamis, dan memperluas strategi kombinasi. Secara keseluruhan, strategi ini cocok untuk melacak tren garis pendek, tetapi perlu memperhatikan pengendalian risiko dan pengoptimalan parameter.

Kode Sumber Strategi
/*backtest
start: 2023-10-06 00:00:00
end: 2023-11-05 00:00:00
period: 1h
basePeriod: 15m
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/
// Author: © tumiza 999 
// © TheSocialCryptoClub

//@version=5

strategy("Yesterday's High v.17.07", overlay=true, pyramiding = 1,
         initial_capital=10000, 
         default_qty_type=strategy.percent_of_equity, default_qty_value=10,
         slippage=1, backtest_fill_limits_assumption=1, use_bar_magnifier=true,
         commission_type=strategy.commission.percent, commission_value=0.075
         )

// -----------------------------------------------------------------------------
// ROC Filter
// -----------------------------------------------------------------------------

// f_security function by LucF for PineCoders available here: https://www.tradingview.com/script/cyPWY96u-How-to-avoid-repainting-when-using-security-PineCoders-FAQ/
f_security(_sym, _res, _src, _rep) => request.security(_sym, _res, _src[not _rep and barstate.isrealtime ? 1 : 0])[_rep or barstate.isrealtime ? 0 : 1]
high_daily = f_security(syminfo.tickerid, "D", high, false)

roc_enable = input.bool(false, "", group="ROC Filter from CloseD", inline="roc")
roc_threshold = input.float(1, "Treshold", step=0.5, group="ROC Filter from CloseD", inline="roc")

closed = f_security(syminfo.tickerid,"1D",close, false)
roc_filter= roc_enable ? (close-closed)/closed*100  > roc_threshold  : true


// -----------------------------------------------------------------------------
// Trigger Point 
// -----------------------------------------------------------------------------

open_session = ta.change(time('D'))
price_session = ta.valuewhen(open_session, open, 0)
tf_session = timeframe.multiplier <= 60

bgcolor(open_session and tf_session ?color.new(color.blue,80):na, title = "Session")

first_bar = 0
if open_session
    first_bar := bar_index

var max_today = 0.0
var min_today = 0.0
var high_daily1 = 0.0
var low_daily1 = 0.0
var today_open = 0.0

if first_bar
    high_daily1 := max_today
    low_daily1 := min_today
    today_open := open
    max_today := high
    min_today := low


if high >= max_today
    max_today := high

if low < min_today
    min_today := low


same_day  = today_open == today_open[1]

plot( timeframe.multiplier <= 240 and same_day ? high_daily1 : na, color= color.yellow , style=plot.style_linebr, linewidth=1, title='High line')
plot( timeframe.multiplier <= 240 and same_day ? low_daily1 : na, color= #E8000D , style=plot.style_linebr, linewidth=1, title='Low line')

// -----------------------------------------------------------------------------
// Strategy settings 
// -----------------------------------------------------------------------------

Gap = input.float(1,"Gap%", step=0.5, tooltip="Gap di entrata su entry_price -n anticipa entrata, con +n posticipa entrata", group = "Entry")
Gap2 = (high_daily1 * Gap)/100

sl  = input.float(3, "Stop-loss", step= 0.5,  group = "Entry")
tp  = input.float(9, "Take-profit", step= 0.5, group = "Entry")
stop_loss_price = strategy.position_avg_price * (1-sl/100)
take_price = strategy.position_avg_price * (1+tp/100)

sl_trl = input.float(2, "Trailing-stop", step = 0.5, tooltip = "Attiva trailing stop dopo che ha raggiunto...",group = "Trailing Stop Settings")//group = "Trailing Stop Settings")
Atrl= input.float(1, "Offset Trailing", step=0.5,tooltip = "Distanza dal prezzo", group = "Trailing Stop Settings")
stop_trl_price_cond = sl_trl * high/syminfo.mintick/100
stop_trl_price_offset_cond = Atrl * high/syminfo.mintick/100

stop_tick = sl * high/syminfo.mintick/100
profit_tick = tp * high/syminfo.mintick/100

mess_buy = "buy"
mess_sell = "sell"

// -----------------------------------------------------------------------------
// Entry - Exit - Close
// -----------------------------------------------------------------------------

if close < high_daily1 and roc_filter
    strategy.entry("Entry", strategy.long, stop = high_daily1 + (Gap2), alert_message = mess_buy)

ts_n  = input.bool(true, "Trailing-stop", tooltip = "Attiva o disattiva trailing-stop", group = "Trailing Stop Settings")
close_ema = input.bool(false, "Close EMA", tooltip = "Attiva o disattiva chiusura su EMA", group = "Trailing Stop Settings")
len1 = input.int(10, "EMA length", step=1, group = "Trailing Stop Settings")
ma1 = ta.ema(close, len1)

plot(ma1, title='EMA', color=color.new(color.yellow, 0))

if ts_n == true
    strategy.exit("Trailing-Stop","Entry",loss= stop_tick, stop= stop_loss_price, limit= take_price, trail_points = stop_trl_price_cond, trail_offset = stop_trl_price_offset_cond, comment_loss="Stop-Loss!!",comment_profit ="CASH!!", comment_trailing = "TRL-Stop!!", alert_message = mess_sell)
else
    strategy.exit("TP-SL", "Entry",loss= stop_tick, stop=stop_loss_price, limit= take_price, comment_loss= "Stop-loss!!!", comment_profit = "CASH!!", alert_message = mess_sell)

if close_ema == true and ta.crossunder(close,ma1)
    strategy.close("Entry",comment = "Close" , alert_message = mess_sell)