
Strategi ini adalah sistem perdagangan yang berasaskan silang dua garis sejajar yang digabungkan dengan tingkap waktu perdagangan tertentu dan mekanisme pengurusan risiko. Logik utamanya adalah menggunakan hubungan silang antara purata bergerak cepat dan purata bergerak perlahan untuk menentukan perubahan trend pasaran, untuk menghasilkan isyarat membeli dan menjual. Strategi ini juga mewujudkan pelaksanaan perdagangan dalam tempoh masa yang tetap, dan menetapkan mekanisme berhenti dan berhenti untuk mengawal risiko.
Prinsip-prinsip utama strategi ini adalah berdasarkan sistem purata bergerak yang bercampur-campur, seperti berikut:
Pengiraan dua hala:
Sinyal dagangan dihasilkan:
Tetingkap masa dagangan:
Mekanisme pengurusan risiko:
Proses logik sistem:
Strategi ini menggunakan pendekatan sistematik ini untuk mewujudkan gabungan organik antara pengenalan trend dan kawalan risiko.
Analisis pelaksanaan kod strategi ini dapat meringkaskan beberapa kelebihan yang ketara:
Keberkesanan trend-trackingGaris persilangan dua rata-rata adalah kaedah pengenalan trend klasik yang dapat menangkap perubahan trend pasaran jangka pendek dan sederhana. Garis rata-rata cepat (dalam 10 kitaran) bertindak balas terhadap perubahan harga, sementara garis rata-rata perlahan (dalam 25 kitaran) dapat menyaring bunyi pasaran jangka pendek.
Pengurusan masa transaksi yang teraturDengan menetapkan tetingkap dagangan tertentu (08:30-15:00), strategi ini mengelakkan risiko kecairan rendah pada waktu dagangan bukan utama dan memberi tumpuan kepada perdagangan pada waktu paling aktif di pasaran.
Mekanisme Kawalan Risiko yang BaikStrategi ini mempunyai ciri-ciri terbina dalam untuk menghentikan dan menghentikan kerugian, setiap perdagangan mempunyai sasaran risiko dan pulangan yang ditetapkan, memastikan peraturan dalam pengurusan dana.
Mekanisme penutupan simpanan wajib: Mengelakkan risiko memegang kedudukan semalaman dengan mewajibkan kedudukan kosong pada jam 15:00 setiap hari, terutamanya untuk peniaga dalam hari yang tidak mahu menanggung risiko semalaman.
Parameter yang fleksibelParameter utama dalam strategi: ((Period purata, bilangan titik hentian kerugian, jumlah dagangan) direka sebagai parameter input yang boleh disesuaikan oleh pengguna mengikut keadaan pasaran yang berbeza dan keutamaan risiko peribadi.
Logik transaksi jelas: Strategi mewujudkan syarat kemasukan dan keluar yang jelas, tanpa logik penghakiman yang rumit, mudah difahami dan dilaksanakan, mengurangkan kemungkinan kesilapan operasi.
Walaupun strategi ini direka dengan baik, terdapat risiko yang berpotensi:
Risiko ketinggalan rata-rata: Rata-rata bergerak pada dasarnya adalah penunjuk keterlambatan, yang boleh menghasilkan isyarat keterlambatan dalam pasaran yang berubah dengan cepat, yang menyebabkan masuk atau keluar tidak tepat pada masanya, terutama apabila pasaran bergoyang di seberang.
Risiko Hentian TetapStrategi menggunakan nilai tetap sebagai tetapan berhenti, tanpa mengambil kira perubahan kadar turun naik pasaran, mungkin berhenti terlalu kecil dalam persekitaran turun naik tinggi, mungkin berhenti terlalu besar dalam persekitaran turun naik rendah.
Pembatasan Jendela MasaJendela masa dagangan tetap mungkin terlepas peluang dagangan penting di luar tetingkap, terutamanya apabila pasaran mengalami peristiwa besar pada masa yang tidak berdagang.
Pengurusan kewangan yang kurang baikStrategi menggunakan jumlah dagangan tetap, tanpa menyesuaikan saiz kedudukan secara dinamik mengikut saiz akaun dan tahap risiko.
Kurangnya kesesuaian dengan keadaan pasaran: Strategi silang dua hala berfungsi dengan baik dalam pasaran yang sedang tren, tetapi boleh menyebabkan perdagangan yang kerap dan kerugian dalam pasaran yang bergolak.
Berdasarkan analisis kod dan ciri-ciri strategi, berikut adalah beberapa arah pengoptimuman yang mungkin:
Mekanisme penangguhan kerosakan dinamik:
Tambah penapis trend:
Optimumkan jenis garis rata:
Menyertai mekanisme hentian kerugian bergerak:
Jendela masa perdagangan yang diperhalusi:
Menerapkan pengurusan kedudukan dinamik:
“Strategi Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tetap Tet
Kelebihan utama strategi ini adalah kejernihan logik, kawalan risiko yang sempurna dan spesifikasi operasi. Walau bagaimanapun, sebagai sistem berasaskan garis rata, ia juga menghadapi risiko yang wujud seperti lag isyarat dan isyarat palsu. Dengan memperkenalkan langkah-langkah pengoptimuman seperti berhenti dinamik, penapis trend, mengoptimumkan jenis garis rata, dan melaksanakan langkah-langkah pengoptimuman seperti berhenti bergerak dan pengurusan kedudukan dinamik, anda dapat meningkatkan kehandalan dan kesesuaian strategi dengan ketara.
Bagi peniaga dalam hari dan pemantau trend jangka pendek, strategi ini yang digabungkan dengan analisis teknikal dan pengurusan risiko memberikan kerangka perdagangan yang baik. Dengan pengoptimuman berterusan parameter dan penyesuaian adaptasi kepada persekitaran pasaran, strategi ini berpotensi untuk mengekalkan prestasi yang agak stabil dalam keadaan pasaran yang berbeza.
/*backtest
start: 2025-02-24 00:00:00
end: 2025-02-28 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"SOL_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © szapatamejia193
//@version=5
strategy("Custom MACrossOver", overlay=true)
// Parámetros configurables
fastLength = input(10, title="Fast Period")
slowLength = input(25, title="Slow Period")
stopLossTicks = input(50, title="Stop (Ticks)")
profitTargetTicks = input(50, title="Target (Ticks)")
defaultQuantity = input(2, title="Default Quantity")
// Cálculo de medias móviles
fastMA = ta.sma(close, fastLength)
slowMA = ta.sma(close, slowLength)
// Condiciones de cruce
longCondition = ta.crossover(fastMA, slowMA)
shortCondition = ta.crossunder(fastMA, slowMA)
// Guardar precio de entrada
var float tradeEntryPrice = na
// Definir rango de mercado abierto (08:30 - 15:00)
market_open = (hour >= 8 and minute >= 30) and (hour < 15)
// Apertura de operaciones
if (market_open)
if (longCondition)
strategy.entry("Long", strategy.long, defaultQuantity)
tradeEntryPrice := close
else if (shortCondition)
strategy.entry("Short", strategy.short, defaultQuantity)
tradeEntryPrice := close
// Definir Stop Loss y Take Profit
if (not na(tradeEntryPrice))
stopLossPrice = tradeEntryPrice - stopLossTicks * syminfo.mintick
takeProfitPrice = tradeEntryPrice + profitTargetTicks * syminfo.mintick
if (strategy.position_size > 0) // Si estamos en largo
strategy.exit("SL/TP", from_entry="Long", stop=stopLossPrice, limit=takeProfitPrice)
else if (strategy.position_size < 0) // Si estamos en corto
strategy.exit("SL/TP", from_entry="Short", stop=stopLossPrice, limit=takeProfitPrice)
// Salir de todas las operaciones a las 15:00
if (hour == 15 and minute == 0)
strategy.close_all()
// Dibujar medias móviles
plot(fastMA, title="Fast MA", color=color.blue)
plot(slowMA, title="Slow MA", color=color.red)