
これは,サポートとトレンドEMAをベースにした多方向戦略である.市場トレンドと重要なサポートを識別して,最適なエントリー機会を探し,ATRの動的ストップと分段の利益と組み合わせて,リスク管理を実現する戦略である.この戦略は,価格が上昇傾向でサポートに回帰する状況に焦点を当て,合理的なリスク・リターン比率を設定することによって取引の成功率を向上させる.
策略は100サイクルEMAをトレンド判断指標として使用し,価格がEMA上にあるときに上昇傾向を確認する.また,10サイクル間の最低価格を短期サポートとして計算し,価格がサポートの近くに戻ったときにサポート+0.5*ATR) で入場機会を探している.入場後,分段の利潤方式を採用し,5倍ATRで50%のポジションを締め,残りのポジションは10倍ATRで完全に締め,同時に1倍ATRを動的ストップとして設定している.各取引のリスクは,口座総額の3%以内で管理され,動的にポジションサイズを計算することによってリスク管理を実現している.
この戦略は,トレンドフォローと支柱位回調を組み合わせて,完全な取引システムを構築し,分期利益とダイナミックストップロースを利用してリスク管理を実現している.戦略の核心的な優点は,その完善なリスク制御機構と明確な取引論理にあるが,それでも,異なる市場環境に対応するために,パラメータとエントリー条件を実践で継続的に最適化する必要がある.トレーダーは,現場で使用するときに十分なフィードバックを行い,市場経験と組み合わせて戦略に個性的な調整を行うことをお勧めする.
/*backtest
start: 2024-02-22 00:00:00
end: 2024-05-30 00:00:00
period: 2d
basePeriod: 2d
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Ultra-Profitable SMC Long-Only Strategy", shorttitle="Ultra_Profit_SMC", overlay=true)
// User Inputs
emaTrendLength = input.int(100, title="Trend EMA Length") // Faster EMA to align with aggressive trends
supportLookback = input.int(10, title="Support Lookback Period") // Short-term support zones
atrLength = input.int(14, title="ATR Length")
atrMultiplierSL = input.float(1.0, title="ATR Multiplier for Stop-Loss")
atrMultiplierTP1 = input.float(5.0, title="ATR Multiplier for TP1")
atrMultiplierTP2 = input.float(10.0, title="ATR Multiplier for TP2")
riskPercent = input.float(3.0, title="Risk per Trade (%)", step=0.1)
// Calculate Indicators
emaTrend = ta.ema(close, emaTrendLength) // Trend EMA
supportLevel = ta.lowest(low, supportLookback) // Support Level
atr = ta.atr(atrLength) // ATR
// Entry Conditions
isTrendingUp = close > emaTrend // Price above Trend EMA
nearSupport = close <= supportLevel + (atr * 0.5) // Price near support zone
longCondition = isTrendingUp and nearSupport
// Dynamic Stop-Loss and Take-Profit Levels
longStopLoss = supportLevel - (atr * atrMultiplierSL)
takeProfit1 = close + (atr * atrMultiplierTP1) // Partial Take-Profit at 5x ATR
takeProfit2 = close + (atr * atrMultiplierTP2) // Full Take-Profit at 10x ATR
// Position Sizing
capital = strategy.equity
tradeRisk = riskPercent / 100 * capital
positionSize = tradeRisk / (close - longStopLoss)
// Execute Long Trades
if (longCondition)
strategy.entry("Ultra Long", strategy.long, qty=positionSize)
// Exit Conditions
strategy.exit("Partial Exit", from_entry="Ultra Long", limit=takeProfit1, qty_percent=50) // Exit 50% at TP1
strategy.exit("Full Exit", from_entry="Ultra Long", limit=takeProfit2, qty_percent=100, stop=longStopLoss) // Exit the rest at TP2
// Plot Indicators
plot(emaTrend, color=color.blue, title="Trend EMA")
plot(supportLevel, color=color.green, title="Support Level", linewidth=2)