
Strategi ini adalah sistem perdagangan yang kompleks yang menggabungkan serangkaian indikator teknis, terutama menggunakan tiga indikator inti seperti awan pasar (Ichimoku Cloud), indeks tren rata-rata (ADX), dan harga rata-rata tertimbang volume transaksi (VWAP) untuk mengidentifikasi tren pasar, memverifikasi kekuatan momentum, dan mengkonfirmasi posisi harga. Strategi ini meningkatkan akurasi dan keandalan perdagangan melalui analisis multi-dimensi, terutama untuk perdagangan tren jangka menengah dan panjang.
Strategi ini menggunakan mekanisme verifikasi tiga tingkat:
Sinyal perdagangan menghasilkan kondisi: Sinyal beli: harga berada di atas pita A dan B + ADX>25 + harga di atas VWAP SELL SIGNAL: harga berada di bawah pita A dan B + ADX>25 + harga di bawah VWAP
Dalam pasar yang bergejolak, sinyal perdagangan yang sering terjadi dapat meningkatkan biaya transaksi. Solusi: Anda dapat menambahkan batas waktu minimum atau menambahkan filter pada indikator osilasi.
“Kami tidak bisa menghindarkan diri dari kemungkinan penurunan yang lebih besar ketika pasar bergerak dengan cepat”. Solusi: Siapkan posisi stop loss yang tepat, dan pertimbangkan untuk menyesuaikan stop loss secara dinamis menggunakan indikator ATR.
Penetapan kondisi ganda dapat menyebabkan kehilangan beberapa peluang perdagangan potensial. Solusi: Anda dapat menyesuaikan parameter secara dinamis sesuai dengan kondisi pasar yang berbeda, atau mengatur kombinasi parameter yang berbeda.
Strategi ini menggabungkan beberapa indikator teknis yang telah mapan dan dapat diandalkan untuk membangun sistem perdagangan yang lengkap. Sistem ini tidak hanya mencakup fungsi inti seperti identifikasi tren, konfirmasi momentum, dan verifikasi harga, tetapi juga menyediakan aturan perdagangan yang jelas dan mekanisme pengendalian risiko. Meskipun ada ruang untuk optimasi, secara keseluruhan ini adalah strategi perdagangan yang logis dan praktis.
/*backtest
start: 2025-02-12 00:00:00
end: 2025-02-15 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Binance","currency":"TRUMP_USDT"}]
*/
//@version=5
strategy("Ichimoku + ADX + VWAP Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// --- Ichimoku Cloud Parameters ---
conversionPeriods = 9
basePeriods = 26
laggingSpan2Periods = 52
displacement = 26
// --- Ichimoku Cloud Calculation ---
conversionLine = (ta.highest(high, conversionPeriods) + ta.lowest(low, conversionPeriods)) / 2
baseLine = (ta.highest(high, basePeriods) + ta.lowest(low, basePeriods)) / 2
leadingSpanA = (conversionLine + baseLine) / 2
leadingSpanB = (ta.highest(high, laggingSpan2Periods) + ta.lowest(low, laggingSpan2Periods)) / 2
// Plot Ichimoku Cloud
plot(conversionLine, color=color.blue, title="Conversion Line")
plot(baseLine, color=color.red, title="Base Line")
plot(leadingSpanA, color=color.green, title="Leading Span A", offset=displacement)
plot(leadingSpanB, color=color.orange, title="Leading Span B", offset=displacement)
fill(plot(leadingSpanA, offset=displacement), plot(leadingSpanB, offset=displacement),
color=leadingSpanA > leadingSpanB ? color.new(color.green, 90) : color.new(color.red, 90),
title="Ichimoku Cloud")
// --- ADX Calculation ---
adx_length = 14
upMove = high - high[1]
downMove = low[1] - low
plusDM = upMove > downMove and upMove > 0 ? upMove : 0
minusDM = downMove > upMove and downMove > 0 ? downMove : 0
tr = ta.tr(true)
smoothedPlusDM = ta.rma(plusDM, adx_length)
smoothedMinusDM = ta.rma(minusDM, adx_length)
smoothedTR = ta.rma(tr, adx_length)
plusDI = (smoothedPlusDM / smoothedTR) * 100
minusDI = (smoothedMinusDM / smoothedTR) * 100
dx = math.abs(plusDI - minusDI) / (plusDI + minusDI) * 100
adx = ta.rma(dx, adx_length)
// Plot ADX
adx_threshold = 25
hline(adx_threshold, "ADX Threshold", color=color.gray)
plot(adx, color=color.purple, title="ADX")
// --- VWAP Calculation ---
vwap_val = ta.vwap(close)
plot(vwap_val, color=color.blue, title="VWAP", linewidth=2)
// --- Buy and Sell Conditions ---
// Buy Condition:
// - Cena je nad oboma Leading Span A a B
// - ADX je nad prahovou hodnotou
// - Cena je nad VWAP
buyCondition = close > leadingSpanA and close > leadingSpanB and adx > adx_threshold and close > vwap_val
// Sell Condition:
// - Cena je pod oboma Leading Span A a B
// - ADX je nad prahovou hodnotou
// - Cena je pod VWAP
sellCondition = close < leadingSpanA and close < leadingSpanB and adx > adx_threshold and close < vwap_val
// Plot Buy/Sell Signals
plotshape(series=buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=sellCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")
// --- Execute Trades ---
if (buyCondition)
strategy.entry("Long", strategy.long)
if (sellCondition)
strategy.close("Long")