Sumber daya yang dimuat... Pemuatan...

Ichimoku masuk strategi

Penulis:ChaoZhang, Tanggal: 2024-01-31 15:23:21
Tag:

img

Gambaran umum

Ichimoku Entries adalah strategi kuantitatif yang mengidentifikasi arah tren menggunakan grafik awan Ichimoku, dan menghasilkan sinyal perdagangan dalam kombinasi dengan Bollinger Bands dan indikator RSI. Strategi ini terutama menentukan apakah pasar saat ini berada dalam tren naik atau turun berdasarkan salib emas atau salib kematian dari Garis Tenkan dan Garis Kijun, dan dengan demikian menghasilkan sinyal masuk untuk posisi panjang dan pendek.

Logika Strategi

Inti dari strategi ini terletak pada dua garis penting dari grafik awan Ichimoku - Garis Tenkan dan Garis Kijun. Garis Tenkan adalah rata-rata tertinggi tertinggi dan terendah terendah selama 9 hari terakhir, mewakili tren jangka pendek. Garis Kijun adalah rata-rata tertinggi tertinggi dan terendah terendah selama 26 hari terakhir, mewakili tren jangka menengah hingga jangka panjang. Ketika Garis Tenkan melintasi di atas Garis Kijun, itu menandakan entri untuk pergi panjang. Ketika Garis Tenkan jatuh di bawah Garis Kijun, itu menandakan entri untuk pergi pendek. Ini menilai arah tren saat ini.

Selain awan Ichimoku, strategi ini juga melihat Bollinger Bands dan indikator RSI untuk menghasilkan sinyal perdagangan. Hal ini dianggap sebagai tanda aktivitas harga abnormal ketika harga penutupan menembus Bollinger Bands atas atau bawah.

Pada logika keluar, strategi memeriksa apakah breakout Bollinger Bands berhasil dan jika Trade Proximity Oscillator melintasi sumbu 0, untuk memutuskan untuk mengunci keuntungan atau menghentikan kerugian.

Analisis Keuntungan

Keuntungan terbesar dari strategi ini adalah bahwa ia menggabungkan penentuan tren dan fluktuasi harga yang abnormal untuk memastikan arah perdagangan. Awan Ichimoku dengan jelas mengungkapkan tren, sementara Bollinger Bands menangkap anomali. RSI secara efektif menyaring breakout palsu. Penggunaan beberapa indikator terkoordinasi membuat sinyal perdagangan lebih dapat diandalkan. Selain itu, logika stop loss dan take profit membantu mengunci keuntungan dan menghindari kerugian besar.

Analisis Risiko

Meskipun memiliki keunggulan untuk mengidentifikasi tren dan anomali, strategi masih menimbulkan beberapa risiko. Karena berdagang bersama dengan tren, banyak sinyal palsu dapat muncul di pasar yang bervariasi. Pengaturan parameter yang tidak tepat juga dapat memperburuk kinerja strategi. Optimasi bertahap dianjurkan untuk menguji kombinasi parameter yang berbeda dan menemukan nilai optimal.

Arahan Optimasi

Strategi ini dapat ditingkatkan dalam aspek berikut:

  1. Uji kombinasi parameter yang berbeda, seperti periode Bollinger, periode RSI, dll.
  2. Memperkenalkan model pembelajaran mesin, parameter output dinamis berdasarkan data historis.
  3. Masukkan aliran informasi untuk menentukan emosi pasar, hindari langkah yang salah pada saat-saat kritis.
  4. Tambahkan metode stop loss bersyarat, seperti trailing stop, untuk mempertahankan keuntungan.

Kesimpulan

Ichimoku Entries Strategy adalah strategi perdagangan tren terintegrasi multi-indikator. Dengan menilai arah tren dan kelainan harga, ia menangkap ritme pasar dengan cukup dapat diandalkan. Meskipun ada ruang untuk perbaikan, secara keseluruhan ini adalah strategi dengan kinerja yang konsisten dan risiko yang dapat dikontrol. Penyesuaian parameter dan pengenalan pembelajaran mesin dapat membuat strategi ini lebih luar biasa.


/*backtest
start: 2023-01-30 00:00:00
end: 2024-01-30 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("ichi strategy", overlay=true)

// Input parameters
rsiLength = input(14, title="RSI Length")
bbLength = input(20, title="Bollinger Bands Length")
bbMultiplier = input(2, title="Bollinger Bands Multiplier")
stopLossPct = input(1, title="Stop Loss Percentage")
takeProfitPct = input(2, title="Take Profit Percentage")

// Calculate Ichimoku Cloud components
tenkan = ta.sma(high + low, 9) / 2
kijun = ta.sma(high + low, 26) / 2
senkouA = (tenkan + kijun) / 2
senkouB = ta.sma(high + low, 52) / 2

// Bollinger Bands
basis = ta.sma(close, bbLength)
upperBB = basis + bbMultiplier * ta.stdev(close, bbLength)
lowerBB = basis - bbMultiplier * ta.stdev(close, bbLength)

// RSI
rsiValue = ta.rsi(close, rsiLength)

// Trade Proximity Oscillator
length = input(14, title="Channels Length")
multiplier = input(2, title="Channels Multiplier")
atr_length = input(14, title="ATR Length")
threshold_percentage = input(1.5, title="Threshold Percentage (%)")

ma = ta.sma(close, length)
std_dev = ta.stdev(close, length)
upper_band = ma + multiplier * std_dev
lower_band = ma - multiplier * std_dev
distance_upper = close - upper_band
distance_lower = lower_band - close
atr_value = ta.atr(atr_length)
threshold = atr_value * threshold_percentage
oscillator = distance_upper - distance_lower

// Strategy logic
longCondition = close > upperBB and tenkan > kijun and ta.crossover(close, basis) and rsiValue < 70
shortCondition = close < lowerBB and tenkan < kijun and ta.crossunder(close, basis) and rsiValue > 30

strategy.entry("Long", strategy.long, when = longCondition)
strategy.entry("Short", strategy.short, when = shortCondition)

// Exit logic
longExitCondition = close < upperBB and ta.crossover(oscillator, 0)
shortExitCondition = close > lowerBB and ta.crossunder(oscillator, 0)

strategy.exit("Take Profit/Stop Loss", from_entry="Long", loss=close - close * stopLossPct / 100, profit=close + close * takeProfitPct / 100, when = longExitCondition)
strategy.exit("Take Profit/Stop Loss", from_entry="Short", loss=close + close * stopLossPct / 100, profit=close - close * takeProfitPct / 100, when = shortExitCondition)

// Plotting
plot(senkouA, color=color.green, title="Senkou A")
plot(senkouB, color=color.red, title="Senkou B")
plot(upperBB, color=color.blue, title="Upper Bollinger Band")
plot(lowerBB, color=color.blue, title="Lower Bollinger Band")

// Additional Plots
plot(tenkan, color=color.orange, title="Tenkan")
plot(kijun, color=color.purple, title="Kijun")



Lebih banyak