Strategi Pelacakan Cerdas Rata-rata Pergerakan Ganda


Tanggal Pembuatan: 2023-12-20 13:50:47 Akhirnya memodifikasi: 2023-12-20 13:50:47
menyalin: 22 Jumlah klik: 620
1
fokus pada
1621
Pengikut

Strategi Pelacakan Cerdas Rata-rata Pergerakan Ganda

Ringkasan

Strategi pelacakan cerdas biner menggunakan indikator biner untuk melacak tren harga jangka pendek dan jangka menengah, membentuk bantuan visual melalui perubahan warna dan lebar garis saat melacak, membantu pedagang secara intuitif menilai tren pasar dan dengan demikian membuat posisi kosong. Strategi ini menggunakan parameter khusus yang memungkinkan fleksibilitas yang tinggi, cocok untuk dana pribadi dan dana perlindungan dengan dasar teknologi tertentu untuk melakukan perdagangan berproses.

Prinsip Strategi

Inti dari strategi pelacakan cerdas dual-equilibrium adalah menghasilkan sinyal perdagangan dengan menggunakan rata-rata bergerak cepat dan rata-rata bergerak lambat. Secara khusus, rata-rata bergerak cepat melacak perubahan harga jangka pendek, rata-rata bergerak lambat mencerminkan tren jangka panjang. Selain itu, strategi tersebut membuat rata-rata bergerak acuan menampilkan warna yang berbeda melalui tiga skema warna (crossover, directional, dan integral).

Analisis Keunggulan

Keuntungan terbesar dari strategi pelacakan cerdas biner adalah kombinasi indikator biner dan bantuan visual warna untuk menilai tren pasar, pengoperasian yang sederhana dan jelas. Kedua, parameter strategi dapat disesuaikan, pengguna dapat menyesuaikan sesuai dengan preferensi perdagangan mereka sendiri dan lingkungan pasar, untuk melakukan pengembalian yang efisien dan perdagangan langsung.

Analisis risiko

Meskipun keuntungan dari strategi pelacakan cerdas biner adalah jelas, ada juga beberapa risiko potensial. Biner sangat sensitif terhadap perubahan harga, mudah menghasilkan sinyal palsu yang menyebabkan overtrading. Selain itu, parameter kustom, meskipun fleksibel, juga meningkatkan kesulitan pengaturan, kombinasi parameter yang tidak tepat dapat mempengaruhi profitabilitas strategi.

Arah optimasi

Strategi pelacakan cerdas dua linier memiliki beberapa arah yang dapat dioptimalkan. Pertama, Anda dapat memperkenalkan sinyal kesalahan penyaringan indikator tambahan, seperti indikator KDJ yang menilai overbought dan oversold, MACD yang menilai profit dan withdrawal. Kedua, membangun model optimasi parameter yang membantu pengguna memilih kombinasi parameter yang optimal. Ketiga, menggunakan model pembelajaran mesin untuk memprediksi perubahan harga, yang membantu menentukan arah pergerakan dua linier.

Meringkaskan

Secara keseluruhan, strategi pelacakan cerdas dua garis adalah strategi perdagangan berprogram frekuensi tinggi yang jelas dan fleksibel. Strategi ini menggabungkan indikator dua garis rata-rata dan penilaian visual warna dengan cerdas, dan dapat menangkap fluktuasi harga jangka pendek untuk keuntungan. Strategi ini juga sangat dapat disesuaikan, cocok untuk investor dan dana yang memiliki dasar perdagangan kuantitatif untuk melakukan optimasi strategi dan penyesuaian parameter. Tentu saja, kita juga perlu waspada terhadap beberapa risiko, seperti penyesuaian parameter kustom yang lebih sulit, dan indikator dua garis mudah menghasilkan sinyal yang salah.

Kode 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")