
Artikel ini akan memperkenalkan sistem strategi perdagangan yang menggabungkan beberapa petunjuk teknikal. Sistem ini bertujuan untuk menyediakan pedagang dengan penyelesaian perdagangan yang komprehensif dengan menggabungkan pelbagai kaedah analisis teknikal seperti MACD, EMA, purata bergerak sederhana dan MA100, dengan pengurusan risiko dan penapis masa.
Strategi ini adalah sistem analisis teknikal berpasangan pelbagai strategi yang terdiri daripada empat substrategi yang berasingan: strategi MACD, strategi EMA8, strategi MA sederhana, dan strategi MA100. Sistem ini membolehkan peniaga untuk memilih jenis strategi yang berbeza mengikut keadaan pasaran, setiap substrategi mempunyai logik masuk dan keluar yang unik, dan dilengkapi dengan mekanisme pengurusan risiko yang sesuai.
Strategi MACD: menangkap trend pasaran dengan mengenal pasti corak kenaikan dan penurunan berturut-turut pada carta MACD. Apabila terdapat tiga tiang grafik berturut-turut yang meningkat, ia akan mencetuskan isyarat beli, dan dua tiang grafik berturut-turut yang menurun akan mencetuskan isyarat jual.
Strategi EMA8: menggabungkan analisa bentuk garis EMA8 pusingan, puncak awal dan garis K. Apabila harga menembusi garis EMA8 pusingan dan harga penutupan lebih tinggi daripada puncak awal, dan garis K yang kuat, sistem membeli. Strategi ini dilengkapi dengan tetapan stop loss 2%.
Strategi MA mudah: Membina sistem trend-tracking menggunakan purata bergerak indeks berganda (peringkat 10, 15, 25, 35, 40). Apabila purata kitaran yang lebih pendek berada di atas purata kitaran yang lebih panjang dan harga menembusi purata kitaran yang paling pendek, isyarat beli akan dihidupkan.
Strategi MA100: menggabungkan 100 hari rata-rata, 8 hari rata-rata dan 25 hari rata-rata, dan memperkenalkan penunjuk rawak untuk membuat penghakiman oversold. Apabila garis rata-rata jangka pendek berada di atas garis rata-rata jangka panjang, dan harga bergolak di sekitar MA100, sistem mencari peluang membeli di kawasan oversold. Strategi ini menggunakan 3% tetapan stop loss.
Sistem perdagangan analisis teknikal pelbagai strategi ini menyediakan pedagang dengan kerangka keputusan perdagangan yang komprehensif dengan mengintegrasikan beberapa kaedah analisis teknikal yang matang. Kelebihan utama sistem ini adalah fleksibiliti dan keupayaan untuk mengawal risiko, tetapi juga memerlukan pemahaman yang mendalam tentang pasaran oleh pedagang untuk digunakan dengan betul. Dengan pengoptimuman dan penambahbaikan yang berterusan, sistem ini dijangka menjadi alat perdagangan yang lebih baik.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-09 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ v5 code implements multiple trading strategies
//@version=5
strategy("Multi-Strategy Trading System", overlay=true)
// Input parameters for customization
strategy_type = input.string("MACD", "Strategy Type", options=["MACD", "EMA8", "SimpleMA", "MA100"])
show_macd = input.bool(true, "Show MACD Signals")
show_ema = input.bool(true, "Show EMA Signals")
show_ma = input.bool(true, "Show MA Signals")
// MACD Strategy Components
[macdLine, signalLine, histLine] = ta.macd(close, 12, 26, 9)
// Function to detect three consecutive ascending histogram bars
isThreeAscendingBars(hist) =>
not na(hist[3]) and hist[3] < hist[2] and hist[2] < hist[1] and hist[1] < hist[0]
// Function to detect two consecutive descending histogram bars
isTwoDescendingBars(hist) =>
not na(hist[2]) and hist[2] > hist[1] and hist[1] > hist[0]
// EMA Strategy Components
ema8_weekly = request.security(syminfo.tickerid, "W", ta.ema(close, 8))
weeklyHigh = request.security(syminfo.tickerid, "W", high)
previousWeekHigh = weeklyHigh[1]
isStrongCandleWeekly = request.security(syminfo.tickerid, "W", close > open and (close - open) > (high - low) * 0.6)
// Simple MA Strategy Components
ema10 = ta.ema(close, 10)
ema15 = ta.ema(close, 15)
ema25 = ta.ema(close, 25)
ema35 = ta.ema(close, 35)
ema40 = ta.ema(close, 40)
// MA100 Strategy Components
ma100 = ta.sma(close, 100)
ma8 = ta.sma(close, 8)
ma25 = ta.sma(close, 25)
// Corrected Stochastic Oscillator Calculation
stochK = ta.stoch(high, low, close, 14)
stochD = ta.sma(stochK, 3)
isOversold = stochK < 20 and stochD < 20
// MACD Strategy Logic
if strategy_type == "MACD"
// Buy condition: Three ascending histogram bars after lowest
if isThreeAscendingBars(histLine)
strategy.entry("MACD Buy", strategy.long)
// Sell condition: Two descending histogram bars after highest
if isTwoDescendingBars(histLine)
strategy.close("MACD Buy")
// EMA8 Strategy Logic
if strategy_type == "EMA8"
if close > ema8_weekly and close > previousWeekHigh and isStrongCandleWeekly
strategy.entry("EMA8 Buy", strategy.long)
strategy.exit("EMA8 Exit", "EMA8 Buy", stop=low - (low * 0.02))
// Simple MA Strategy Logic
if strategy_type == "SimpleMA"
isUptrend = ema10 > ema15 and ema15 > ema25 and ema25 > ema35 and ema35 > ema40
if isUptrend and close > ema10 and close[1] <= ema10[1]
strategy.entry("MA Buy", strategy.long)
strategy.exit("MA Exit", "MA Buy", stop=low - (low * 0.02))
// MA100 Strategy Logic
if strategy_type == "MA100"
isUptrend = ma8 > ma100 and ma25 > ma100
isPriceNearMA100 = math.abs(close - ma100) / ma100 * 100 < 1
if isUptrend and isPriceNearMA100 and isOversold
strategy.entry("MA100 Buy", strategy.long)
strategy.exit("MA100 Exit", "MA100 Buy", stop=low - (low * 0.03))
// Plotting components for visualization
plot(ma100, "MA100", color=color.blue, linewidth=2)
plot(ema8_weekly, "EMA8 Weekly", color=color.yellow, linewidth=2)
plot(series=histLine, title="MACD Histogram", style=plot.style_histogram, color=histLine > 0 ? color.green : color.red)