Strategi ini adalah sistem perdagangan adaptif berdasarkan Indeks Kekuatan Relatif (RSI), yang direka untuk menangkap perubahan momentum pasaran dengan memantau zon overbought dan oversold RSI. Sistem ini mengintegrasikan mekanisme pengurusan kedudukan pintar, termasuk kawalan stop-loss dan take-profit pelbagai peringkat, serta fungsi penutupan kedudukan automatik, bertujuan untuk mencapai nisbah risiko-balasan yang kukuh.
Strategi teras adalah berdasarkan isyarat overbought/oversold RSI, digabungkan dengan pelbagai keadaan perdagangan:
Strategi ini menangkap perubahan momentum pasaran melalui penunjuk RSI, ditambah dengan sistem pengurusan risiko yang komprehensif, mencapai sistem perdagangan automatik sepenuhnya. Walaupun terdapat batasan tertentu, penambahbaikan melalui arah pengoptimuman yang dicadangkan dapat membawa kepada prestasi perdagangan yang lebih stabil. Kelebihan utama terletak pada tahap kelengkapan dan automasi sistem, menjadikannya sesuai sebagai rangka kerja asas untuk pembangunan dan pengoptimuman lanjut.
/*backtest start: 2024-11-04 00:00:00 end: 2024-11-11 00:00:00 period: 10m basePeriod: 10m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Harmony Signal Flow By Arun", overlay=true) // RSI settings rsiLength = 14 rsiSource = close rsiValue = ta.rsi(rsiSource, rsiLength) // Define RSI levels buyLevel = 30 sellLevel = 70 // Buy signal: RSI crosses above 30 buyCondition = ta.crossover(rsiValue, buyLevel) // Sell signal: RSI crosses below 70 sellCondition = ta.crossunder(rsiValue, sellLevel) // Ensure only one order at a time if (strategy.position_size == 0) // No open positions if (buyCondition) strategy.entry("Buy", strategy.long) else if (sellCondition) strategy.entry("Sell", strategy.short) // Stop-loss and target conditions var float stopLossBuy = na var float targetBuy = na var float stopLossSell = na var float targetSell = na if (strategy.position_size > 0) // If there's an open buy position stopLossBuy := strategy.position_avg_price - 100 // Set stop-loss for buy targetBuy := strategy.position_avg_price + 150 // Set target for buy if (close <= stopLossBuy) strategy.close("Buy", comment="Stoploss Hit") else if (close >= targetBuy) strategy.close("Buy", comment="Target Hit") if (strategy.position_size < 0) // If there's an open sell position stopLossSell := strategy.position_avg_price + 100 // Set stop-loss for sell targetSell := strategy.position_avg_price - 150 // Set target for sell if (close >= stopLossSell) strategy.close("Sell", comment="Stoploss Hit") else if (close <= targetSell) strategy.close("Sell", comment="Target Hit") // Close all positions by 3:25 PM if (hour(timenow) == 15 and minute(timenow) == 25) strategy.close_all(comment="Close all positions at 3:25 PM") // Plot buy/sell signals on the chart plotshape(buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(sellCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL") // Plot RSI and levels hline(buyLevel, "Buy Level", color=color.green) hline(sellLevel, "Sell Level", color=color.red) plot(rsiValue, "RSI", color=color.blue)