日中のハンマー逆転パターン ロング戦略

作者: リン・ハーンチャオチャン,日付: 2024-03-15 17:13:23
タグ:

img

概要

この戦略は,日中のハンマー逆転パターンを,次の緑色のキャンドルと組み合わせて,潜在的な上向きの機会を見つける.ハンマー逆転パターンが現れ,次のキャンドルは緑色の上向きのキャンドルであるとき,戦略はロングポジションを開く.ストップロスはハンマーキャンドルの底に設定され,利益はエントリー価格の1.5倍に設定される.

戦略の原則

ハンマーパターン (hammer pattern) は,ダウントレンドの終わりに現れる一般的なテクニカルパターンで,トレンド逆転の到来をシグナルにします.典型的なハンマーパターンは以下の特徴を持っています.

  1. 全体のキャンドルボディは比較的小さく,通常はキャンドルの全高低範囲の30%未満です.
  2. 下の影は長く,ろうそくの体長の少なくとも2倍です.
  3. 上層影は非常に短く,または存在しないが,最高でもキャンドルの開封価格の1%を超えない.

ハンマーパターンが確認されると,次のキャンドルが緑色の上向きキャンドルで,低値がハンマーキャンドルの低値よりも高くなった場合,上昇信号が形成され,ロングポジションが入力されます.リスクを制御するためにストップロスはハンマーキャンドルの低値に設定され,収益を収めるためにはエントリー価格の1.5倍に設定されます.

利点分析

  1. ハンマーパターンは一般的な逆転パターンで,トレンドコンテキストと組み合わせると高い勝利率を持っています.
  2. ハンマーパターンの厳格な制限とそれ以降の上昇型キャンドル形は信号品質を改善します.
  3. ストップ・ロスをハンマー・キャンドルの最下位に設定すると リスクは制御可能になります
  4. 1.5Rで利益を取ると リスク・リターン比が良さそうです

リスク分析

  1. 市場パターンの変化と価格の動きが戦略条件を満たしても,市場が再び下落し続けるリスクがあります.
  2. ストップ・ロスはハンマー・キャンドルの低点に設定されれば,一度のストップ・ロスは比較的大きい.
  3. 傾向転換の初期段階では波動性が高く,戦略は高い価格波動リスクにさらされる.

オプティマイゼーションの方向性

  1. RSIやMACDなどのより多くの技術指標を導入することを検討し,インディケーターステータスと組み合わせて信号の有効性を向上させる.
  2. ハンマーパターンの定義とそれ以降の上昇傾向のキャンドルは,より定量的な基準を導入することによってさらに最適化することができます.
  3. ダイナミック・テイク・プロフィートやトライリング・ストップ戦略など,利益とストップ・ロスの設定をさらに最適化することができる.
  4. 上昇傾向に見られるハンマーパターンは,より高い勝利率を持つ可能性があるため,市場の傾向条件を考慮してください.

概要

日中のハンマー逆転パターンの長戦略は,ハンマーパターンの逆転特性を完全に利用し,次の緑色のキャンドルの確認と組み合わせて,2つの連続したキャンドルパターンをベースにバリーシグナルを形成する.同時に,戦略はリスク露出を制御し,高いリスク報酬比を維持するために固定リスク報酬比を使用する.しかし,戦略のパターンの定義は比較的単純で,他の技術指標からの検証が欠けているため,実用的なアプリケーションでは高い信号失敗率に直面する可能性があります.また,ストップ損失が比較的近く設定されているため,戦略は高いシングル損失の問題にも直面しています.将来,戦略は,全体の安定性と収益性を高めるために信号確認とリスク制御の観点からさらに最適化され改善されることができます.


/*backtest
start: 2023-03-09 00:00:00
end: 2024-03-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Hammer Pattern and Follow-Up Green Candle Strategy", overlay=true)

// Detecting a Hammer candle
isHammer() =>
    bodySize = math.abs(close[1] - open[1])
    lowerWickSize = open[1] - low[1]
    upperWickSize = high[1] - open[1] // For a red candle, the upper wick is from the open to the high
    bodyIsSmall = bodySize <= (high[1] - low[1]) * 0.3 // Body is less than 30% of the entire candle range
    lowerWickIsLong = lowerWickSize >= bodySize * 2 // Lower wick is at least twice the body length
    noUpperWick = upperWickSize == 0 or high[1] <= open[1] * 1.01 // No upper wick or very small
    close[1] < open[1] and bodyIsSmall and lowerWickIsLong and noUpperWick

// Check if the current candle is green with no or small tail
isGreenWithNoSmallTail() =>
    close > open

// Entry condition
entryCondition = isHammer() and isGreenWithNoSmallTail() and low >low[1]

// Calculate stop loss and take profit levels
stopLossLevel = low[1]
profitTargetLevel = close * 1.5
//Calculate position bodySize
positionSize = 50000 / close

// Execute strategy
if (entryCondition)
    strategy.entry("Hammer Buy", strategy.long,qty=positionSize)
    strategy.exit("Take Profit / Stop Loss", "Hammer Buy", stop=stopLossLevel, limit=profitTargetLevel)



もっと