Potensi Pasaran Strategi Awan Panjang Ichimoku


Tarikh penciptaan: 2024-02-02 16:57:46 Akhirnya diubah suai: 2024-02-02 16:57:46
Salin: 0 Bilangan klik: 630
1
fokus pada
1617
Pengikut

Potensi Pasaran Strategi Awan Panjang Ichimoku

Gambaran keseluruhan

Strategi ini adalah strategi perdagangan awan Ichimoku yang hanya berbilang kepala. Ia membuka lebih banyak kedudukan ketika melintasi garis rujukan pada garis penukaran, dan menutup apabila melintasi garis penukaran di bawah garis rujukan.

Prinsip Strategi

Strategi ini menggunakan beberapa garis dalam indikator teknikal Ichimoku.

  1. Garis penukaran: purata harga tertinggi dan terendah dalam tempoh 9 hari terakhir, yang mewakili penukaran trend dalam satu tempoh masa.

  2. Barisan penanda aras: purata harga tertinggi dan terendah dalam tempoh 26 hari terakhir, yang mewakili pergerakan purata harga dalam tempoh jangka masa.

  3. Garis depan A: purata antara garis penukaran dan garis asas.

  4. Barisan B: purata harga tertinggi dan terendah dalam 52 hari terakhir, yang mewakili petunjuk awal trend jangka menengah dan panjang.

  5. Tempoh ketinggalan: harga penutupan semasa, ketinggalan 26 hari.

Apabila membuka kedudukan, ia mesti memenuhi syarat untuk menyeberangi garis rujukan dan span yang tertinggal di atas lapisan awan pada garis peralihan. Ini menunjukkan bahawa trend jangka pendek dan jangka menengah adalah isyarat ke atas.

Apabila kedudukan sejajar, ia perlu memenuhi syarat untuk menyeberangi garis peralihan di bawah garis asas dan ketinggalan Span di bawah lapisan awan. Ini menandakan bahawa trend telah berbalik dan ia harus keluar dari kedudukan.

Kelebihan Strategik

  1. Menggunakan indikator Awan Ichimoku untuk menilai trend, keakuratannya lebih tinggi.

  2. Ini adalah satu-satunya cara untuk mengelakkan pengesanan palsu.

  3. Hanya melakukan lebih banyak, sesuai dengan trend kenaikan garis panjang bagi kebanyakan mata wang digital.

  4. Penapisan syarat agak ketat, mewujudkan isyarat berkualiti tinggi.

Risiko Strategik

  1. Kedudukan hanya boleh dipenuhi atau kosong, dan tidak boleh disesuaikan dengan saiz kedudukan.

  2. “Saya tidak tahu apa-apa mengenai apa yang berlaku di Malaysia, tetapi saya tidak tahu apa yang berlaku di Malaysia, dan saya tidak tahu apa yang berlaku di Malaysia.

  3. Parameter yang ditetapkan secara lalai untuk cryptocurrency perlu disesuaikan untuk varieti lain.

  4. Ini adalah kerana terdapat sedikit isyarat perdagangan dan peluang yang mudah dilewatkan.

Pengoptimuman Strategi

  1. Tambah fungsi penyesuaian kedudukan, menutup sebahagian kedudukan apabila kerugian mencapai peratusan tertentu.

  2. Tambah isyarat jual, kosongkan kedudukan di bawah sokongan utama, kurangkan kerugian.

  3. Pengaturan parameter yang dioptimumkan untuk membolehkan ia menyesuaikan diri dengan lebih banyak jenis dan meningkatkan kestabilan.

  4. Tambah fungsi berhenti kerugian, berhenti apabila kerugian mencapai nilai terendah.

ringkaskan

Strategi ini mempunyai ketepatan yang tinggi dalam menentukan trend sebagai strategi perdagangan awan Ichimoku yang hanya berbilang kepala. Ia menggabungkan beberapa garis Ichimoku sebagai syarat penapisan pada masa yang sama, dan dapat menentukan titik perubahan trend dengan lebih dipercayai. Strategi ini sangat sesuai untuk jenis yang naik pada garis panjang, seperti mata wang kripto.

Kod sumber strategi
/*backtest
start: 2024-01-02 00:00:00
end: 2024-02-01 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// Simple long-only Ichimoku Cloud Strategy
// Enter position when conversion line crosses base line up, and close it when the opposite happens. 
// Additional condition for open / close the trade is lagging span, it should be higher than cloud to open position and below - to close it.
//@version=4
strategy("Ichimoku Cloud Strategy Long Only", shorttitle="Ichimoku Cloud Strategy (long only)", overlay=true )

conversion_length = input(9, minval=1, title="Conversion Line Periods"),
base_length = input(26, minval=1, title="Base Line Periods")
lagging_length = input(52, minval=1, title="Lagging Span 2 Periods"),
delta = input(26, minval=1, title="Delta")

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

conversion_line = average(conversion_length) // tenkan sen - trend
base_line = average(base_length) // kijun sen - movement
lead_line_a = avg(conversion_line, base_line) // senkou span A
lead_line_b = average(lagging_length) // senkou span B
lagging_span = close // chikou span - trend / move power

plot(conversion_line, color=color.blue, linewidth=2, title="Conversion Line")
plot(base_line, color=color.white, linewidth=2, title="Base Line")
plot(lagging_span, offset = -delta, color=color.purple, linewidth=2, title="Lagging Span")

lead_line_a_plot = plot(lead_line_a, offset = delta, color=color.green, title="Lead 1")
lead_line_b_plot = plot(lead_line_b, offset = delta, color=color.red, title="Lead 2")
fill(lead_line_a_plot, lead_line_b_plot, color = lead_line_a > lead_line_b ? color.green : color.red)

// Strategy logic

long_signal = crossover(conversion_line,base_line) and ((lagging_span) > (lead_line_a)) and ((lagging_span) > (lead_line_b))
short_signal = crossover(base_line, conversion_line) and ((lagging_span) < (lead_line_a)) and ((lagging_span) < (lead_line_b))

strategy.entry("LONG", strategy.long, when=strategy.opentrades == 0 and long_signal, alert_message='BUY')
strategy.close("LONG", when=strategy.opentrades > 0 and short_signal, alert_message='SELL')
    
    // === Backtesting Dates === thanks to Trost

testPeriodSwitch = input(true, "Custom Backtesting Dates")
testStartYear = input(2021, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testStartHour = input(0, "Backtest Start Hour")
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, testStartHour, 0)
testStopYear = input(2021, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(1, "Backtest Stop Day")
testStopHour = input(0, "Backtest Stop Hour")
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, testStopHour, 0)
testPeriod() => true
testPeriod_1 = testPeriod()
isPeriod = testPeriodSwitch == true ? testPeriod_1 : true
// === /END

if not isPeriod
    strategy.cancel_all()
    strategy.close_all()