この戦略は,フェアバリューギャップ (FVG) 検出に基づいた取引戦略であり,動的なリスク管理と固定された利益の引き上げ目標を組み合わせます. 15分間のタイムフレームで動作し,この戦略は市場における価格ギャップを検出することによって潜在的な取引機会を特定します. 2023年11月から2024年8月までのバックテストデータによると,この戦略は153件の取引で284.40%の純利益を達成し,71.24%の勝利率と2.422の利益因子を維持しました.
基本的なメカニズムは,連続した3つのキャンドルで価格関係を監視することによって,フェアバリューギャップを検出することです.
この戦略は,フェアバリューギャップ理論と科学的リスク管理を組み合わせることで印象的な結果を示しています.高い勝利率と安定した利益因子は,その実用的な価値を示しています.提案された最適化方向性を通じて,さらなる改善の可能性があります.トレーダーは,実行する前に徹底的なパラメータ最適化とバックテストを行うことをお勧めします.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-28 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Fair Value Gap Strategy with % SL and Fixed TP", overlay=true, initial_capital=500, default_qty_type=strategy.fixed, default_qty_value=1) // Parameters fvgThreshold = input.float(0.5, "FVG Threshold (%)", minval=0.1, step=0.1) // Fixed take profit in pips takeProfitPips = 50 // Function to convert pips to price pipsToPriceChange(pips) => syminfo.mintick * pips * 10 // Function to detect Fair Value Gap detectFVG(dir) => gap = 0.0 if dir > 0 // Bullish FVG gap := low[2] - high[1] else // Bearish FVG gap := low[1] - high[2] math.abs(gap) > (close * fvgThreshold / 100) // Detect FVGs bullishFVG = detectFVG(1) bearishFVG = detectFVG(-1) // Entry conditions longCondition = bullishFVG shortCondition = bearishFVG // Calculate take profit level longTakeProfit = strategy.position_avg_price + pipsToPriceChange(takeProfitPips) shortTakeProfit = strategy.position_avg_price - pipsToPriceChange(takeProfitPips) // Calculate stop loss amount (5% of capital) stopLossAmount = strategy.equity * 0.01 // Execute trades if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) // Set exit conditions if (strategy.position_size > 0) strategy.exit("Long TP", "Long", limit=longTakeProfit) strategy.close("Long SL", when=strategy.openprofit < -stopLossAmount) else if (strategy.position_size < 0) strategy.exit("Short TP", "Short", limit=shortTakeProfit) strategy.close("Short SL", when=strategy.openprofit < -stopLossAmount) // Plot signals plotshape(longCondition, "Buy Signal", location = location.belowbar, color = color.green, style = shape.triangleup, size = size.small) plotshape(shortCondition, "Sell Signal", location = location.abovebar, color = color.red, style = shape.triangledown, size = size.small)