ローナンス・リバーション・トレーディング・ストラテジー

作者: リン・ハーンチャオチャン, 日付: 2023年11月7日 15:01:19
タグ:

img

概要

これは,調整されたガウッシアンデントレンド価格オシレーター (GDPO) とスムーズな価格サイクルを組み合わせて,潜在的な価格逆転を特定する戦略である.これはガウッシアンスムーズ化によるデントレンドオシレーターを使用して,逆転機会を把握するための特定のエントリーと出口ルールを設定する.

戦略の論理

この戦略は,まず,短期的な価格サイクルを特定するために,閉じる価格を指数的な移動平均値 (EMA) と特定期間で比較することによって,デトレンデッド価格オシレーター (DPO) を計算する.その後,DPO値は,ノイズをフィルタリングするために,ガウスススイッチング技術によるアルヌ・レゴ移動平均値 (ALMA) を使用して平滑する.

入口・出口ルールは,スムーズなGDPOと遅延バージョンの間のクロスオーバーイベントに基づいて定義される.スムーズなGDPOが遅延を超えるとロングポジションが入力され,負になる.スムーズなGDPOが遅延またはゼロラインを下回るとロングポジションが終了する.スムーズなGDPOが遅延またはゼロラインを下回るとショートポジションが入力され,ポジティブになる.スムーズなGDPOが遅延またはゼロラインを下回るとショートポジションが終了する.

グラフのグラフの背景は,グラフのグラフのグラフのグラフのグラフに表示されている.グラフのグラフのグラフは,グラフのグラフのグラフのグラフに表示されている.グラフのグラフは,グラフのグラフのグラフに表示されている.グラフのグラフのグラフは,グラフのグラフに表示されている.グラフのグラフは,グラフのグラフのグラフに表示されている.グラフのグラフは,グラフのグラフに表示されている.グラフのグラフは,グラフのグラフに表示されている.グラフのグラフは,グラフのグラフに表示されている.グラフのグラフは,グラフのグラフに表示されている.グラフのグラフは,グラフのグラフに表示されている.グラフのグラフは,グラフのグラフに表示されている.グラフのグラフは,グラフのグラフに表示されている.グラフのグラフは,グラフのグラフに表示されている.グラフのグラフは,グラフのグラフに表示されている.グラ

利点分析

この戦略は,他のオシレーターと比較して逆転機会をより明確に識別するために,デトレンディング技術とガウスススムーズ化を組み合わせている.GDPOは,デトレンディングとサイクル分析を組み込むことで精度を向上させる.ガウススムーズ化は,より明確な信号のためにノイズを排除する.特定のエントリーと出口ルールは,損失を効果的に制御する.

リスク分析

ストラテジーは,期間の長さやスムージングパラメータなどのパラメータ調節に敏感である.最適なパラメータを決定するには,広範なバックテストが必要で,そうでなければ過剰な誤った信号が発生する可能性があります. ストラテジーはトレンド市場で連続的な損失を生む可能性があります. ストップロスは単一の取引損失を制御するために使用する必要があります. 失敗した逆転も大きなリスクです. 逆転確率はチャートパターンとトレンド強さを使用して確認する必要があります.

オプティマイゼーションは,パラメータを動的に調整し,強度を向上させるためにトレンドインジケーターを組み込むことで行うことができます.動的ストップはリスクも制御することができます.

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

戦略は,いくつかの側面で最適化することができます:

  1. トレンドのスムーズ化を増やし,偽信号を減らすために,スムーズ化パラメータを動的に調整します.

  2. ADXのようなトレンドインジケーターを組み込むことで トレンド市場での損失を回避できます

  3. ダイナミックストップやトライリングストップのようなストップ・ロスのメカニズムを追加します

  4. 入力条件を最適化し,追加指標やパターンを用いて,より高い入力精度を得る.

  5. 市場の状況に基づいてポジションサイズとストップを調整することによって資本管理を最適化する.

  6. 日々のデータや週間のデータなど 異なる時間枠で戦略をテストします

概要

ガウスの抑制逆転戦略は,GDPOを使用して短期サイクルを特定し,定義されたエントリーと出口ルールの下で逆転を捕捉するためにガウスのフィルタリングで信号を抽出する.逆転取引のリスクを効果的に制御するが,パラメータ最適化とトレンド検証を必要とする.ダイナミックな調整,インジケーターの確認,ストップ損失戦略を通じて強度をさらに向上させることができる.


/*backtest
start: 2022-10-31 00:00:00
end: 2023-11-06 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0
// © DraftVenture

//@version=5
strategy(title="Gaussian Detrended Reversion Strategy", overlay=false, default_qty_type=strategy.percent_of_equity, default_qty_value=15)

//Detrended Price Oscillator for price cycles
period_ = input.int(50, title="Price Length", minval=1)

barsback = period_/2 + 1
ma = ta.ema(close, period_)
dpo = close - ma[barsback]

// Rounded ALMA Calculations for gaussian smoothing
almaSource = dpo
almaWindowSize = input(title="Smoothing Length", defval=50)
lagLength = input(title="Lag Length", defval=25)
almaSmoothed = ta.alma(almaSource, almaWindowSize, 0.85, 6)
almaLag = almaSmoothed[lagLength]

// Reversion entry conditions
entryL = ta.crossover(almaSmoothed, almaLag) and almaSmoothed < 0
exitL = ta.crossunder(almaSmoothed, almaLag) or ta.crossunder(almaSmoothed, 0)
entryS = ta.crossunder(almaSmoothed, almaLag) and almaSmoothed > 0
exitS = ta.crossover(almaSmoothed, almaLag) or ta.crossover(almaSmoothed, 0)

// Long entry and exit
if entryL
    strategy.entry("Long", strategy.long)

if exitL
    strategy.close("Long")

// Short entry and exit
if entryS
    strategy.entry("Short", strategy.short)

if exitS
    strategy.close("Short")

// Plot the oscillator
plot(almaSmoothed, title="GDPO", color=color.green)
plot(almaLag, title="Lag", color=color.white)

hline(0, title="Zero Line", color=color.white)

bgcolor(entryL ? color.new(color.green, 40) : na)
bgcolor(entryS ? color.new(color.red, 40) : na)

plotshape(series=ta.crossunder(almaSmoothed, almaLag) or ta.crossunder(almaSmoothed, 0), style=shape.xcross, location=location.top, color=color.white, size=size.tiny)
plotshape(series=ta.crossover(almaSmoothed, almaLag) or ta.crossover(almaSmoothed, 0), style=shape.xcross, location=location.bottom, color=color.white, size=size.tiny)

//Strategy by KP

もっと