Strategi perdagangan harian berdasarkan Ichimoku Kinko Hyo


Tanggal Pembuatan: 2023-10-16 16:10:55 Akhirnya memodifikasi: 2023-10-16 16:10:55
menyalin: 0 Jumlah klik: 728
1
fokus pada
1617
Pengikut

Strategi perdagangan harian berdasarkan Ichimoku Kinko Hyo

Ringkasan

Strategi ini menggunakan garis keseimbangan pertama untuk melakukan perdagangan saham dalam sehari, termasuk dalam strategi perdagangan garis pendek. Ini menggunakan kombinasi garis ekuilibrium pertama, garis dasar, dan garis terdepan untuk menilai sinyal jual beli, dan dibantu dengan SAR garis paralel untuk melacak stop loss, untuk mencapai perlindungan ganda.

Prinsip

Garis ekuilibrium pertama terdiri dari garis konversi, garis acuan, garis 1 terdepan, dan garis 2 terdepan. Garis konversi adalah rata-rata harga penutupan hari dan harga tertinggi dan harga terendah dalam 9 hari terakhir, yang mencerminkan keseimbangan harga saham dalam beberapa waktu terakhir. Garis acuan adalah harga terendah dan harga terendah dalam 26 hari terakhir, yang mewakili keseimbangan jangka panjang. Garis 1 terdepan adalah rata-rata harga acuan dan garis konversi, yang mencerminkan tren masa depan. Garis 2 terdepan adalah harga terendah dan harga terendah dalam 52 hari terakhir.

Ketika harga penutupan dari bawah menembus garis dasar dan lebih tinggi dari garis 2 sebelumnya, menghasilkan sinyal beli. Ketika harga penutupan dari atas jatuh dari garis dasar dan lebih rendah dari garis 1 sebelumnya, menghasilkan sinyal jual.

Strategi ini menggunakan kombinasi garis keseimbangan untuk menilai tren masa depan harga saham dan keberlanjutan tren saat ini. Strategi ini merupakan strategi pelacakan tren yang khas.

Keunggulan

  1. Menggunakan garis keseimbangan untuk menilai tren masa depan, meningkatkan akurasi penilaian

Garis keseimbangan berisi informasi harga dari periode yang berbeda, dapat mencerminkan perubahan tren lebih awal, menggunakan penilaian gabungan untuk meningkatkan akurasi. Dibandingkan dengan indikator tunggal, dapat lebih akurat menentukan titik jual beli.

  1. SAR Stop Tracking, perlindungan ganda

SAR dapat secara fleksibel melacak pergerakan saham dan melakukan stop loss. Dengan kombinasi dengan garis ekuilibrium, dapat menghentikan kerugian tepat waktu setelah keuntungan, untuk menghindari perluasan kerugian.

  1. Pengaturan parameter sederhana, mudah diterapkan

Strategi ini hanya memiliki sedikit parameter, tidak bergantung pada indikator teknis yang rumit seperti kesesuaian kurva, sederhana, praktis, dan mudah diterapkan. Nilai default parameter dapat mencapai efek yang baik.

  1. Berlaku untuk transaksi short-day

Menggunakan perubahan harga dalam sehari untuk menentukan titik jual beli, termasuk strategi perdagangan garis pendek. Dapat memanfaatkan sepenuhnya fluktuasi saham dalam sehari untuk mendapatkan keuntungan.

Risiko

  1. Risiko penarikan diri

Mengikuti tren jual beli membawa pulangan yang lebih tinggi. Anda perlu mengatur stop loss yang masuk akal dan mengendalikan kerugian tunggal.

  1. Risiko Guncangan

Dalam situasi getaran, sinyal yang dihasilkan oleh garis keseimbangan mungkin sering, tidak menguntungkan. Parameter dapat disesuaikan dengan tepat, memfilter beberapa sinyal.

  1. Risiko yang Terlalu Optimal

Parameter sederhana mudah terlalu dioptimalkan, dan efek hard disk mungkin tidak ideal. Perlu dilakukan pengujian stabilitas untuk mencegah overfit.

  1. Faktor-faktor efek yang berbeda

Efeknya terkait dengan pilihan saham, sebaiknya pilih saham dengan tren yang jelas untuk diperdagangkan, sehingga strategi dapat memberikan efek maksimal.

Arah optimasi

  1. Kombinasi sinyal filter dengan indikator lain

Anda dapat menggunakan indikator lain seperti moving average untuk memfilter beberapa sinyal yang tidak pasti dan menghindari transaksi virtual.

  1. Dinamika penyesuaian stop loss

Parameter SAR dapat disesuaikan secara dinamis sesuai dengan volatilitas pasar, sehingga stop loss lebih fleksibel.

  1. Kombinasi parameter optimasi

Strategi ini dapat meningkatkan efektivitas dengan optimasi yang lebih sistematis dan pengujian kombinasi untuk menemukan kombinasi parameter yang lebih baik.

  1. Penyusunan posisi berdasarkan kondisi pasar

Posisi dan posisi yang dapat disesuaikan secara dinamis dengan situasi pasar, seperti pergerakan saham besar, strategi penyesuaian posisi, pengendalian risiko.

Meringkaskan

Strategi ini menggunakan sinyal beli dan jual dari garis ekuilibrium, yang bekerja sama dengan SAR garis parabola untuk melakukan pelacakan stop loss, merupakan strategi perdagangan garis pendek yang lebih sederhana dan praktis. Efektif menggunakan fungsi garis ekuilibrium untuk memprediksi tren masa depan, melakukan operasi beli dan jual pada terobosan.

Kode Sumber Strategi
/*backtest
start: 2023-01-01 00:00:00
end: 2023-01-16 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//
//  Based on the trading strategy described at
//    http://stockcharts.com/school/doku.php?id=chart_school:trading_strategies:ichimoku_cloud
//
//  See Also:
//    - Backtesting and forwardtesting (of TradingView Strategies) <https://www.tradingview.com/wiki/Strategies#Backtesting_and_forwardtesting>
//    - 9 Mistakes Quants Make that Cause Backtests to Lie <https://blog.quantopian.com/9-mistakes-quants-make-that-cause-backtests-to-lie-by-tucker-balch-ph-d/>
//    - When Backtests Meet Reality <http://financial-hacker.com/Backtest.pdf>
//    - Why MT4 backtesting does not work <http://www.stevehopwoodforex.com/phpBB3/viewtopic.php?f=28&t=4020>
//
// 
// -----------------------------------------------------------------------------
// Copyright 2018 sherwind
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
// 
// The GNU General Public License can be found here
// <http://www.gnu.org/licenses/>.
//
// -----------------------------------------------------------------------------
//

strategy(title="Ichimoku Cloud Strategy", shorttitle="Ichimoku Strategy", overlay=true, pyramiding=3)

conversionPeriods   = input(9,  minval=1, title="Conversion Line Periods"),
basePeriods         = input(26, minval=1, title="Base Line Periods")
laggingSpan2Periods = input(52, minval=1, title="Lagging Span 2 Periods"),
displacement        = input(26, minval=1, title="Displacement")

usePSARTrailStop    = input(true, title="Use Parabolic SAR for Trailing Stop")
psarStart           = input(0.02, title="Parabolic SAR Start")
psarIncrement       = input(0.02, title="Parabolic SAR Increment")
psarMaximum         = input(0.2,  title="Parabolic SAR Maximum")


donchian(len) => avg(lowest(len), highest(len))

conversionLine = donchian(conversionPeriods)
baseLine  = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)
leadLineDisp1 = leadLine1[displacement]
leadLineDisp2 = leadLine2[displacement]

psar = sar(psarStart, psarIncrement, psarMaximum)

// BUY Signal:
// close > leading span b and
// leading span a > leading span b and 
// close crosses over base line and
// close > parabolic sar
buySignal = close > leadLineDisp2 and
  leadLineDisp1 > leadLineDisp2 and
  crossover(close, baseLine) and
  (usePSARTrailStop ? close > psar : not usePSARTrailStop)

// Sell Signal:
// close < leading span a and 
// leading span a < leading span b and 
// close crosses under base line and
// close < psar
sellSignal = close < leadLineDisp1 and
  leadLineDisp1 < leadLineDisp2 and
  crossunder(close, baseLine) and
  (usePSARTrailStop ? close < psar : not usePSARTrailStop)

hasLong  = strategy.position_size > 0
hasShort = strategy.position_size < 0


strategy.entry("ichimoku-long", strategy.long, when = buySignal)
strategy.entry("ichimoku-short", strategy.short, when = sellSignal)

strategy.exit("trailstop-long", "ichimoku-long", stop = psar, when = hasLong and usePSARTrailStop)
strategy.exit("trailstop-short", "ichimoku-short", stop = psar, when = hasShort and usePSARTrailStop)