この戦略は,トレンド決定の基礎として9期指数関数移動平均値 (9EMA) を使用する.取引日の最初の10分以内に,高値に近い (高値の99%以上またはそれと同等) と高値の9EMA以上の閉値が2つ連続して5分間のキャンドルがある場合,それは強力なブレイクアウト信号とみなされる.この時点で,現在の閉値に基づいてポジションサイズが計算され,ロングポジションが開かれる.ポジションは9EMA以下で閉じる最初の5分間のキャンドルまで保持され,その時点でポジションは閉鎖される.
この戦略は以下の原則に基づいています.
この戦略は,取引日の開業期間に強いブレイクアウト動きを捕捉することを目的とし,低リスクで高いリターンを達成することを目指すダイナミックなポジションサイジングに参加する.同時に,戦略は厳格なストップロスの条件も採用し,トレンドが逆転すると迅速にポジションを閉鎖し,引き下げを制御する.
上記のリスクに対処するために,以下の側面を最適化および改善するために考慮することができます:
上記の最適化により,戦略は傾向を把握しながらリスクをより良く制御し,戦略収益の安定性と持続性を向上させることが期待されます. もちろん,あらゆる最適化は厳格なバックテストを通じて検証され,実際の状況に基づいて動的に調整する必要があります.
この戦略は9EMAをコアとして使用し,取引日の最初の10分以内に,閉じる価格が9EMAを大きく突破する2つの連続した5分間のキャンドルで強い上昇傾向を捕捉する. ポジションサイズを動的に調整するために固定金額を使用して取引する. 戦略論理はシンプルで直接的で,理解し実行しやすく,ほとんどのトレーダーの使用に適しています. 同時に,この戦略には,市場範囲と下向きの市場への適応性が不十分であり,ポジションを開設した後急速な逆転のリスクなどの特定の制限とリスクもあります. これらの問題を解決するために,トレンド決定,ポジショニング,ストップ・ロスの最適化,フィルタリング条件などに関して改善と最適化を行うことができ,市場機会とリスクをよりよく捕捉し制御できるようにします. この戦略は,さらなる検討と実践に価値があり,全体的にプラスティシティと強力なリスクがあります.
/*backtest start: 2023-03-13 00:00:00 end: 2024-03-18 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Two 5min Closes Above 9EMA Strategy with Dynamic Position Size", overlay=true) // Define the fixed amount for position sizing fixedAmount = 1000 // Calculate the 9-period EMA ema9 = ta.ema(close, 9) // Define time constraints (9:30 AM to 9:40 AM EST, adjust for your timezone) sessionStart = 0930 sessionEnd = 0940 timeCondition = (hour * 100 + minute) >= sessionStart and (hour * 100 + minute) < sessionEnd // Detect two consecutive 5-min bars where close is near 0.99 times the high and above 9 EMA closeNearHighAndAboveEMA = close >= high * 0.99 and close > ema9 twoConsecutiveBars = closeNearHighAndAboveEMA and closeNearHighAndAboveEMA[1] // Entry condition: Within the first 10 minutes of the day and two consecutive bars match criteria entryCondition = twoConsecutiveBars // Exit condition: First 5-min close below 9 EMA after entry exitCondition = close < ema9 // Plot EMA for visualization plot(ema9, color=color.blue, linewidth=2, title="9 EMA") // Calculate position size positionSize = fixedAmount / close // Strategy execution if (entryCondition) strategy.entry("Buy", strategy.long, qty=positionSize) if (exitCondition) strategy.close("Buy")