Strategi Penjejakan Pintar Purata Bergerak Berganda


Tarikh penciptaan: 2023-12-20 13:50:47 Akhirnya diubah suai: 2023-12-20 13:50:47
Salin: 22 Bilangan klik: 620
1
fokus pada
1621
Pengikut

Strategi Penjejakan Pintar Purata Bergerak Berganda

Gambaran keseluruhan

Strategi pengesanan pintar binari menggunakan indikator binari untuk mengesan trend harga jangka pendek dan jangka panjang, membentuk bantuan visual melalui perubahan warna dan lebar garis semasa pengesanan, membantu peniaga menilai pergerakan pasaran secara intuitif dan membuat kedudukan kosong. Strategi ini menggunakan parameter tersuai yang sangat fleksibel, sesuai untuk dana swasta dan dana perlindungan yang mempunyai asas teknologi untuk berdagang dengan prosedur.

Prinsip Strategi

Inti strategi pengesanan pintar dua garis adalah menghasilkan isyarat perdagangan menggunakan purata bergerak cepat dan purata bergerak perlahan. Secara khusus, purata bergerak cepat mengesan perubahan harga jangka pendek, purata bergerak perlahan mencerminkan trend jangka panjang. Pada masa yang sama, strategi menggunakan tiga skim warna (persaingan, arah dan komprehensif) untuk menjadikan purata bergerak asas warna yang berbeza, membantu menentukan pergerakan pasaran.

Analisis kelebihan

Kelebihan terbesar strategi pengesanan pintar dua hala adalah gabungan indikator dua hala dan visual visual warna untuk menilai pergerakan pasaran, operasi mudah dan jelas. Kedua, parameter strategi boleh disesuaikan, pengguna boleh menyesuaikan mengikut pilihan perdagangan mereka sendiri dan persekitaran pasaran, untuk mendapatkan pengesanan dan perdagangan langsung yang cekap. Sekali lagi, skema warna yang berbeza dapat memenuhi visual dan tabiat operasi pengguna yang berbeza.

Analisis risiko

Walaupun kelebihan strategi pengesanan pintar binari jelas, terdapat juga beberapa risiko yang berpotensi. Binari sangat sensitif terhadap perubahan harga, mudah menghasilkan isyarat palsu yang menyebabkan perdagangan berlebihan. Selain itu, parameter tersuai, walaupun fleksibel, tetapi juga meningkatkan kesukaran penyesuaian, kombinasi parameter yang tidak sesuai dapat mempengaruhi keuntungan strategi.

Arah pengoptimuman

Terdapat beberapa arah yang boleh dioptimumkan untuk strategi pengesanan pintar dua hala. Pertama, anda boleh memperkenalkan penapis petunjuk tambahan untuk memusnahkan isyarat yang salah, seperti petunjuk KDJ untuk menilai overbought dan oversold, MACD untuk menilai keuntungan dan penarikan balik. Kedua, membina model pengoptimuman parameter untuk membantu pengguna memilih kombinasi parameter terbaik. Ketiga, menggunakan model pembelajaran mesin untuk meramalkan perubahan harga, membantu menentukan arah pergerakan dua hala.

ringkaskan

Strategi pengesanan pintar binari secara keseluruhan adalah strategi perdagangan berprogram frekuensi tinggi yang jelas dan mudah fleksibel. Ia menggabungkan indikator binari dan penilaian visual visual warna dengan bijak, dapat menangkap turun naik harga jangka pendek untuk keuntungan. Strategi ini juga sangat disesuaikan, sesuai untuk pelabur dan dana yang mempunyai asas perdagangan kuantitatif untuk pengoptimuman strategi dan penyesuaian parameter.

Kod sumber strategi
/*backtest
start: 2022-12-13 00:00:00
end: 2023-12-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// © Julien_Eche

//@version=5
strategy("Smart MA Strategy", shorttitle="Smart MA Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=20)

// Input parameters
base_ma_length = input.int(50, title="Base MA Length")
ma_type = input.string("SMA", title="MA Type", options=["SMA", "WMA", "EMA"])
color_choice = input.string("Composite", title="Color Option", options=["Crossover", "Direction", "Composite"])
fast_length = input.int(10, title="Fast MA Length", group="For Crossover Color Option")
slow_length = input.int(30, title="Slow MA Length", group="For Crossover Color Option")

// Start and end date inputs
start_year = input.int(1975, title="Start Year", group="Date Range")
start_month = input.int(1, title="Start Month", group="Date Range")
start_day = input.int(1, title="Start Day", group="Date Range")
end_year = input.int(2099, title="End Year", group="Date Range")
end_month = input.int(12, title="End Month", group="Date Range")
end_day = input.int(31, title="End Day", group="Date Range")

// Calculate the selected MAs
fast_ma = ta.sma(close, fast_length)
slow_ma = ta.sma(close, slow_length)

// Calculate the base MA with the specified length
base_ma = ta.sma(close, base_ma_length)

// Determine if the base MA is increasing or decreasing
base_ma_increasing = base_ma > base_ma[1]

// Define the color for the base MA based on the selected option
base_ma_color =    color_choice == "Direction" ? (base_ma_increasing ? color.teal : color.red) :    color_choice == "Crossover" ? (fast_ma > slow_ma ? color.teal : color.red) :    color_choice == "Composite" ? (base_ma_increasing and fast_ma > slow_ma ? color.teal : not base_ma_increasing and fast_ma < slow_ma ? color.red : color.gray) :    color.gray

// Plot the base MA with the specified color and linewidth
plot(base_ma, title="Base MA", color=base_ma_color, style=plot.style_line, linewidth=2)

// Define the start and end timestamps
start_date = timestamp(start_year, start_month, start_day, 0, 0)
end_date = timestamp(end_year, end_month, end_day, 23, 59)

// Filter strategy signals based on date
in_date_range = time >= start_date and time <= end_date

// Strategy conditions for each option
if (color_choice == "Composite" and in_date_range)
    if (base_ma_increasing and fast_ma > slow_ma)
        strategy.entry("Buy", strategy.long)
    if (not base_ma_increasing and fast_ma < slow_ma)
        strategy.close("Buy")

if (color_choice == "Crossover" and in_date_range)
    if (fast_ma > slow_ma)
        strategy.entry("Buy", strategy.long)
    if (fast_ma < slow_ma)
        strategy.close("Buy")

if (color_choice == "Direction" and in_date_range)
    if (base_ma_increasing)
        strategy.entry("Buy", strategy.long)
    if (not base_ma_increasing)
        strategy.close("Buy")