振動逆転戦略をヘッジする

作者: リン・ハーンチャオチャン, 日付: 2023年12月20日 15:43:18
タグ:

img

概要

ヘージング振動逆転戦略は,逆転点の周辺でヘージングポジションを立てるためにボリンジャーバンド,エンベロープライン,ADX,ストーキャスティックスなどの複数の指標を使用して市場の逆転点を特定する短期間の取引戦略である.この戦略は,主にトレード信号を確認するために価格が過剰に伸びているかどうかを決定するためにボリンジャーバンドとエンベロープラインを使用し,逆転点の周辺でヘージングポジションを確立するために,トレンド強度を決定するためにADXと過剰購入/過剰販売エリアを決定するためにストーキャスティックを使用する.

戦略原則

"ヘジング・オシレーション・リバース"戦略は,以下の判断規則に基づいています.

  1. 閉じる価格がボリンジャー帯の上部レールを上回り,エンベロープライン上部レールを上回ると,価格が過買い状態にある可能性があることを示します.この時点で,ADXが30未満であれば,トレンド強さが強くないことを意味します.一方,ストキャスティックスが50を超えると,それは過買い領域にあることを意味します.したがって,ショートポジションを検討することができます.

  2. 閉じる価格がボリンジャー帯の下線以下,またエンベロープライン下線以下にある場合,価格は過売れエリアにある可能性があることを示します.この時点で,ADXが30未満である場合,トレンド強さが強くないことを意味します.一方,ストーキャスティックスが50未満である場合,それは過売れエリアにあることを意味します.したがって,ロングポジションを検討することができます.

  3. ショートポジションのストップ・ロスの出口条件は,閉じる価格がボリンジャー・バンドの下列レールまたはエンベロープ・ラインの下列レール以下,またはストカスティックは50未満である.

  4. ロングポジションのストップ・ロスの出口条件は,閉じる価格がボリンジャー・バンドの上部レール,エンベロープ・ラインの上部レールの上部レール,またはストキャスティック値が50を超えるとします.

この判断ルールを通じて 逆転点の周辺に ヘッジポジションを確立し 短期的な価格変動から利益を得ることができます

利点分析

このヘジング・オシレーション・リバース戦略には以下の利点があります.

  1. 判断のために複数の指標を使用することで,取引信号を効果的に確認し,偽のブレイクを回避できます.

  2. トレンド逆転点の周りの取引は比較的高い成功率を持っています

  3. リスクを効果的にコントロールできるのは,ヘッジ操作の方法です.

  4. 取引頻度が高いため短期取引に適しています

  5. 収入源は主に価格変動から生まれ,傾向の逆転に完全に依存していない.

リスク分析

このヘジング・オシレーション・リバース戦略には,注意を払う必要があるいくつかのリスクもあります.

  1. 逆転の失敗の可能性はまだある 損失はもっと大きい

  2. 頻繁な取引は過度に最適化される傾向があります

  3. 逆転のタイミングを正確に把握できなければ 損失が増える可能性があります

  4. 傾向の変異の可能性があり,それに対して警戒する必要がある.

これらのリスクに対応するために 指標パラメータを最適化し ストップ損失を厳格に制御し トレンドと基本分析を組み合わせて 一般的な方向性を決定する必要があります

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

このヘジング・オシレーション・リバース戦略は,次の方向でも最適化できます.

  1. 取引信号の質を改善するために指標パラメータを最適化する.

  2. 傾向に反する取引を避けるために 基本的要因判断を増やしてください

  3. V型逆転パターン認識を組み込み 成功率を向上させる

  4. ストップ損失範囲を動的に調整する

  5. 資本管理を最適化して 単一の取引損失を厳格に制御する

概要

ヘージング・オシレーション・リバース戦略は,複数の指標判断に基づいて反転点の周辺のヘージングポジションを採用し,高い取引頻度と簡単なリスク制御の利点があります.しかし,反転取引のリスクは無視することはできません.私たちは継続的に戦略を最適化し,取引規則を厳格に遵守し,この効率的な短期取引戦略を最大限に活用する必要があります.


/*backtest
start: 2023-12-12 00:00:00
end: 2023-12-19 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © exlux99

//@version=5
strategy("Contrarian Scalping Counter Trend",overlay=true)

//bollinger bands
length = input.int(20, minval=1, title="Length BB")
src = input(close, title="Source")
mult = input.float(2.0, minval=0.001, maxval=50, title="StdDev BB")
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev


//envelope
len = input.int(20, title="Length Envelope", minval=1)
percent = input(1.0)
exponential = input(false)
envelope = exponential ? ta.ema(src, len) : ta.sma(src, len)
k = percent/100.0
upper_env = envelope * (1 + k)
lower_env = envelope * (1 - k)

//adx
adxlen = input(14, title="ADX Smoothing")
dilen = input(14, title="DI Length")
dirmov(len) =>
	up = ta.change(high)
	down = -ta.change(low)
	plusDM = na(up) ? na : (up > down and up > 0 ? up : 0)
	minusDM = na(down) ? na : (down > up and down > 0 ? down : 0)
	truerange = ta.rma(ta.tr, len)
	plus = fixnan(100 * ta.rma(plusDM, len) / truerange)
	minus = fixnan(100 * ta.rma(minusDM, len) / truerange)
	[plus, minus]
adx(dilen, adxlen) =>
	[plus, minus] = dirmov(dilen)
	sum = plus + minus
	adx = 100 * ta.rma(math.abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)
sig = adx(dilen, adxlen)

//stochastic

periodK = input.int(50, title="%K Length", minval=1)
smoothK = input.int(20, title="%K Smoothing", minval=1)
stock = ta.sma(ta.stoch(close, high, low, periodK), smoothK)


short=close> upper and close >upper_env and sig < 30 and stock > 50
long=close< lower and close <lower_env and sig < 30 and stock < 50


short_exit= close < lower or close<lower_env or stock <50
long_exit=close > lower or close>lower_env or stock >50



strategy.entry("short",strategy.short,when=short)
strategy.close("short",when=short_exit)


strategy.entry("long",strategy.long,when=long)
strategy.close('long',when=long_exit)


もっと