Strategi ini adalah sistem perdagangan parameter adaptif berdasarkan isyarat crossover purata bergerak berganda. Ia menjana isyarat perdagangan melalui persilangan purata bergerak pantas dan perlahan, digabungkan dengan parameter pengurusan risiko yang boleh disesuaikan termasuk stop-loss, mengambil keuntungan, dan berhenti, mencapai pengurusan strategi perdagangan yang fleksibel. Inti strategi terletak pada penyesuaian dinamik pelbagai parameter melalui panel kawalan, membolehkan strategi menyesuaikan diri dengan persekitaran pasaran yang berbeza.
Strategi ini menggunakan dua purata bergerak - pantas dan perlahan - sebagai penunjuk teras. Isyarat kedudukan panjang dihasilkan apabila purata bergerak pantas melintasi di atas purata bergerak perlahan, manakala isyarat penutupan kedudukan dihasilkan apabila purata bergerak pantas melintasi di bawah purata bergerak perlahan. Di samping itu, strategi ini menggabungkan mekanisme kawalan risiko tiga kali ganda: stop-loss tetap, mengambil keuntungan tetap, dan berhenti. Parameter ini boleh diselaraskan dalam masa nyata melalui panel kawalan, mulai dari 0.1% hingga peratusan yang lebih besar, menyediakan pedagang dengan keupayaan kawalan risiko yang tepat.
Strategi ini membina sistem perdagangan adaptif melalui silang purata bergerak berganda yang digabungkan dengan parameter pengurusan risiko yang fleksibel. Kekuatannya terletak pada penyesuaian parameter yang kuat dan kawalan risiko yang komprehensif, sementara perhatian mesti diberikan kepada risiko dari pasaran yang berbeza dan pengoptimuman parameter. Strategi ini mempunyai potensi pengoptimuman yang signifikan melalui penambahan penapis trend dan kaedah pengoptimuman stop-loss. Bagi peniaga, menetapkan parameter dengan betul dan terus memantau prestasi strategi adalah kunci untuk memastikan kestabilan strategi.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-27 08:00:00 period: 2d basePeriod: 2d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © traderhub //@version=5 strategy("Two Moving Averages Strategy with Adjustable Parameters", overlay=true) // Adjustable parameters for fast and slow moving averages fastLength = input.int(10, title="Fast Moving Average Length", minval=1, maxval=100) slowLength = input.int(30, title="Slow Moving Average Length", minval=1, maxval=100) // Risk management parameters stopLossPerc = input.float(1, title="Stop Loss (%)", step=0.1) // Stop-loss percentage takeProfitPerc = input.float(2, title="Take Profit (%)", step=0.1) // Take-profit percentage trailStopPerc = input.float(1.5, title="Trailing Stop (%)", step=0.1) // Trailing stop percentage // Calculate fast and slow moving averages fastMA = ta.sma(close, fastLength) slowMA = ta.sma(close, slowLength) // Plot moving averages on the chart plot(fastMA, color=color.blue, title="Fast Moving Average") plot(slowMA, color=color.red, title="Slow Moving Average") // Conditions for opening and closing positions longCondition = ta.crossover(fastMA, slowMA) // Buy when fast moving average crosses above the slow moving average shortCondition = ta.crossunder(fastMA, slowMA) // Sell when fast moving average crosses below the slow moving average // Variables for stop-loss and take-profit levels var float longStopLevel = na var float longTakeProfitLevel = na // Enter a long position if (longCondition) longStopLevel := strategy.position_avg_price * (1 - stopLossPerc / 100) longTakeProfitLevel := strategy.position_avg_price * (1 + takeProfitPerc / 100) strategy.entry("Long", strategy.long) // Manage stop-loss, take-profit, and trailing stop for long positions if (strategy.position_size > 0) strategy.exit("Take Profit/Stop Loss", "Long", stop=longStopLevel, limit=longTakeProfitLevel, trail_offset=trailStopPerc) // Close the long position and enter short when the condition is met if (shortCondition) strategy.close("Long") strategy.entry("Short", strategy.short)