Strategi ini dinamakan
Inti strategi ini adalah mengenal pasti
Nilai wajar ditakrifkan sebagai harga
Kecairan juga merupakan faktor utama kerana peniaga institusi cenderung untuk melaksanakan perdagangan di kawasan yang mempunyai kecairan tinggi.
Strategi menentukan nilai wajar dengan mengira purata bergerak mudah. Ia kemudian mengenal pasti blok pesanan berpotensi dengan panjang 20 tempoh. Jika perbezaan antara harga penutupan dan nilai wajar adalah di bawah 38.2% daripada jumlah ketinggian julat blok pesanan, blok pesanan ditentukan.
Blok pesanan bullish dianggap sebagai isyarat beli. Blok pesanan bearish dianggap isyarat jual.
Kelebihan utama strategi ini adalah menggunakan corak perdagangan peniaga institusi yang mungkin membolehkannya mengatasi strategi berasaskan penunjuk yang lebih mekanistik.
Kelebihan lain termasuk:
Strategi ini juga menghadapi beberapa risiko berpotensi seperti:
Untuk mengurangkan risiko ini, disyorkan untuk mempertimbangkan:
Berikut adalah beberapa pengoptimuman berpotensi untuk strategi:
Ringkasnya, strategi ini menawarkan pendekatan yang unik untuk memanfaatkan tingkah laku peniaga institusi. Ia menggabungkan pelbagai elemen dan mempunyai kelebihan tertentu. Tetapi seperti kebanyakan strategi perdagangan, ia juga menghadapi risiko apabila keadaan pasaran berubah atau tingkah laku harga yang tidak dijangka berlaku. Dengan ujian berterusan, pengoptimuman, dan pengurusan risiko, strategi boleh menjadi alat perdagangan kuantitatif yang berharga.
/*backtest start: 2024-01-23 00:00:00 end: 2024-02-22 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("ICT Strategy", overlay=true) // Input variables length = input.int(20, minval=1, title="Order Block Length") fairValuePeriod = input.int(60, minval=1, title="Fair Value Period") // Calculate fair value fairValue = ta.sma(close, fairValuePeriod) // Determine order blocks isOrderBlock(high, low) => highestHigh = ta.highest(high, length) lowestLow = ta.lowest(low, length) absHighLowDiff = highestHigh - lowestLow absCloseFairValueDiff = (close - fairValue) (absCloseFairValueDiff <= 0.382 * absHighLowDiff) isBuyBlock = isOrderBlock(high, low) and close > fairValue isSellBlock = isOrderBlock(high, low) and close < fairValue // Plot fair value and order blocks plot(fairValue, color=color.blue, title="Fair Value") plotshape(isBuyBlock, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small) plotshape(isSellBlock, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small) // Strategy logic if (isBuyBlock) strategy.entry("Buy", strategy.long) if (isSellBlock) strategy.entry("Sell", strategy.short)