Strategi perdagangan kuantitatif kloning adalah strategi perdagangan short line yang didasarkan pada hubungan kuantitas dan harga dalam sehari. Strategi ini memanfaatkan informasi arah positif dan negatif dari perdagangan saham dalam sehari, yang dikombinasikan dengan sinyal konfirmasi kuantitatif, untuk melakukan operasi short line dengan risiko rendah.
Strategi ini menghasilkan Renko block dengan menghitung harga buka, tutup, tertinggi, dan terendah saham setiap hari, dikombinasikan dengan indikator ATR.
Secara khusus, strategi pertama menghitung harga bukaan Renko o2 dan harga tutup c2 . Jika o2 < c2, maka garis lurus, jika o2 > c2, maka garis lurus. Ketika garis lurus bertukar menjadi garis lurus, sinyal jual dihasilkan, dan ketika garis lurus bertukar menjadi garis lurus, sinyal beli dihasilkan.
Untuk menyaring terobosan palsu, strategi ini juga menghitung jumlah siklus garis positif dan negatif sebelumnya, dan sinyal lebih dapat diandalkan jika jumlah siklus garis positif lebih banyak. Selain itu, strategi ini juga mengatur logika stop loss setelah membeli dan menjual.
Dengan menggunakan Renko bricks, kita bisa menyaring kebisingan pasar dan sinyal trading menjadi lebih jelas.
Hubungan energi kuantitatif, menghindari risiko terobosan palsu.
Model DAPM sederhana dan efektif, cocok untuk operasi garis pendek dalam sehari.
Parameter ATR dapat disesuaikan untuk menyesuaikan frekuensi transaksi.
Strategi Stop Loss yang dapat disesuaikan untuk mengoptimalkan manajemen risiko.
Namun, masih ada risiko terjadinya penembusan palsu yang tidak jelas.
Renko parameter yang tidak tepat dapat kehilangan tren atau meningkatkan frekuensi perdagangan.
Stop loss yang terlalu kecil dapat menyebabkan kerugian kecil yang terbalik.
Dapat dipertimbangkan untuk memfilter sinyal dengan indikator teknis lainnya.
Anda dapat mempertimbangkan untuk menambahkan Stop Loss Mobile atau Stop Loss Tracking.
Optimasi tes dapat dilakukan untuk parameter varietas yang berbeda.
Anda dapat mempertimbangkan kombinasi periode waktu yang berbeda untuk melakukan perdagangan multi-frame waktu.
Strategi ini secara keseluruhan adalah strategi perdagangan short line yang sangat praktis. Ini menggunakan hubungan kuantitas-harga untuk penyaringan yang efisien, yang dapat menangkap titik-titik penting di mana harga short line naik dan turun. Namun, perlu juga memperhatikan pengaturan parameter yang masuk akal, manajemen risiko yang tepat, dan strategi stop loss yang dapat meningkatkan stabilitas dan profitabilitas strategi. Dengan pengujian yang terus dioptimalkan, strategi ini dapat menjadi alat yang kuat yang diperlukan oleh pedagang short line dalam sehari.
/*backtest
start: 2022-09-26 00:00:00
end: 2023-09-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
// This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License https://creativecommons.org/licenses/by-sa/4.0/
// © dman103
strategy(title="Renko Strategy V2", shorttitle="Renko Strategy V2", overlay=true,precision=3, commission_value=0.025, default_qty_type=strategy.cash, default_qty_value=10000, initial_capital=10000)
// Version 2.0 of my previous renko strategy using Renko calculations, this time without Tilson T3 and without using security with Renko to remove repaints!
// Seems to work nicely on cryptocurrencies on higher time frames.
//== Description ==
// Strategy gets Renko values and uses renko close and open to trigger signals.
// Base on these results the strategy triggers a long and short orders, where green is uptrending and red is downtrending.
// This Renko version is based on ATR, you can Set ATR (in settings) to adjust it.
// == Notes ==
// Supports alerts.
// Supports backtesting time ranges.
// Shorts are disabled by default (can be enabled in settings).
// Link to previous Renko strategy V1: https://www.tradingview.com/script/KeWBWLGT-Renko-Strategy-T3-V1/
//
// Stay tuned for version V3 in the future as i have an in progress prototype, Follow to get updated: https://www.tradingview.com/u/dman103/#published-scripts
// === INPUT BACKTEST RANGE ===
useDate = input(true, title='---------------- Trade Range ----------------', type=input.bool)
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear = input(defval = 2017, title = "From Year", minval = 2000)
ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear = input(defval = 2099, title = "To Year", minval = 2010)
start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window
window() => time >= start and time <= finish ? true : false // create
settings = input(true, title='---------------- Settings ----------------', type=input.bool)
allow_short = input(false,title="Allow Short")
atr_len = input(10,"ATR Length")
atr = atr(atr_len)
// Thanks to renko snippet calculations from @RafaelZioni https://www.tradingview.com/script/2vKhpfVH-Renko-XZ/
Renko1() =>
p1 = 0.0
p1 := close > nz(p1[1]) + atr ? nz(p1[1]) + atr : close < nz(p1[1]) - atr ? nz(p1[1]) - atr : nz(p1[1])
p1
Renko2() =>
p2 = 0.0
Br_1 = Renko1()
p2 := Renko1() != Renko1()[1] ? Br_1[1] : nz(p2[1])
p2
Renko3() =>
p3 = 0.0
p3 := open > nz(p3[1]) + atr ? nz(p3[1]) + atr : open < nz(p3[1]) - atr ? nz(p3[1]) - atr : nz(p3[1])
p3
Renko4() =>
open_v = 0.0
Br_2 = Renko3()
open_v := Renko3() != Renko3()[1] ? Br_2[1] : nz(open_v[1])
open_v
o2 = Renko4()
c2 = Renko1()
l2 =low
h2 = high
//=== Plotting ===
crossPlot= 0.0
if (o2 < c2)
crossPlot :=o2
else
crossPlot := o2
// Used to make sure that even if o2 and c2 are equal, the result (short or long) will be based on previous trend.
bars_since_up=barssince(o2 < c2)
bars_since_down=barssince(o2 > c2)
go_long= (bars_since_up<bars_since_down) and o2<c2
go_short = (bars_since_up>bars_since_down) and o2>c2
plotColor = go_long and o2<c2 ? color.green : go_short and o2>c2? color.red : color.white
plot(crossPlot, color = plotColor, style = plot.style_circles, linewidth = 2,join=true)
changeCond = plotColor != plotColor[1]
//=== Buy/Sell ===
closeStatus = strategy.openprofit > 0 ? "win" : "lose"
long_entry = plotColor == color.green and window() and changeCond
long_exit_entry = plotColor == color.red //or (allow_alternative_sl and close < low_result )
short_entry = plotColor == color.red and window() and changeCond
short_exit_entry = plotColor == color.green // or (allow_alternative_sl and close > high_result )
strategy.entry("long", true, when = long_entry)
strategy.close("long",when=long_exit_entry,comment=closeStatus)
if (allow_short)
strategy.entry("short",false, when = short_entry)
strategy.close("short",when=short_exit_entry,comment=closeStatus)
//=== Alerts ===
alertcondition(go_long and changeCond , title='Renko Buy Signal', message='Renko Revered to Buy Signal')
alertcondition(go_short and changeCond , title='Renko Sell Signal', message='Renko Revered to Sell Signal')