ダブルスムージングストキャスティクスブライザー戦略


作成日: 2024-02-05 15:57:37 最終変更日: 2024-02-05 15:57:37
コピー: 1 クリック数: 705
1
フォロー
1617
フォロワー

ダブルスムージングストキャスティクスブライザー戦略

概要

ダブル・スムージド・ストキャスティック・ブレスレット・ストラテジー (Double Smoothed Stochastic Bressert Strategy) は,ウィリアム・ブラウが考案した量的な取引戦略である.移動平均法と振動器の原理を組み合わせようと試みている.

この戦略は,一連の二平面ランダム指数を計算して取引シグナルを生成する.具体的には,まず価格の二平面ランダム指数を計算し,その二平面ランダム指数に再び平面平均を適用して,二平面ランダム指数が得られる.トリガーラインが二平面ランダム指数を通過すると,買入または売り出出のシグナルを生成する.

戦略原則

  1. 価格を計算するPDS周期の平滑ランダム指数xPreCalc
  2. xPreCalcの長さであるEMAlenの指数移動平均を適用して,xDSS,すなわち双平滑ランダム指数が得られます.
  3. xDSSの別のEMA平均線である xTriggerを計算する
  4. 取引のシグナルを生成する:
    • xTriggerがxDSSよりも低くなると,超売ラインよりも低くなると,多めにします.
    • xTriggerがxDSSより高く,超買いラインより高く,空白する
  5. 二平面ランダム指数xDSSとトリガーラインxTriggerの曲線を描画

優位分析

この戦略は,移動平均のトレンドフォロー能力と,ランダムな指数の超買超売の識別能力を組み合わせている.主要優点は以下の通りである.

  1. 偽信号を2層滑らかにフィルタリングし,安定性を向上させる
  2. トリガーラインは取引信号を生成し,頻繁に取引を避ける
  3. 異なる市場環境に対応するカスタマイズ可能なパラメータ
  4. グラフィックは直感的で 戦略を把握し検証しやすい

リスク分析

ブラッサーの戦略にはいくつかのリスクがあります.

  1. ブレッサー指数は低波動の状況下では偽信号が多く存在します.
  2. 価格の転換点に信号が遅れてしまう可能性があります.
  3. パラメータの不適切な設定は,トレンドの中心を識別できない可能性があります
  4. ギャンブル取引のリスクは残っている

対策として

  1. パラメータを最適化して,識別精度を向上させる
  2. 他の指標と組み合わせたフィルター信号
  3. ポジション管理手段を増やし,リスクを回避

最適化の方向

この戦略は,以下の点で最適化できます.

  1. 二重平滑指数の周期パラメータを調整し,平滑効果を最適化
  2. 単一損失を抑えるための止損メカニズム
  3. トレンド判断の指標を増やし,逆操作を避ける
  4. ポジション管理と利益の最大化

要約する

双平滑ランダム指数ブレッサー戦略は,移動平均とランダム指数の優位性を融合し,超買超売点を識別し,トレンドをフォローする能力を有する.双平滑とトリガーライン設定により,ノイズ信号を効果的にフィルターすることができる.しかし,パラメータ最適化とリスク管理に注意する必要がある.

ストラテジーソースコード
/*backtest
start: 2024-01-05 00:00:00
end: 2024-02-04 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 05/04/2017
// Double Smoothed Stochastics (DSS) is designed by William Blaw. 
// It attempts to combine moving average methods with oscillator principles. 
//
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="DSS Bressert (Double Smoothed Stochastic)", shorttitle="DSS Bressert")
PDS = input(10, minval=1)
EMAlen = input(9, minval=1)
TriggerLen = input(5, minval=1)
Overbought = input(80, minval=1)
Oversold = input(20, minval=1)
reverse = input(false, title="Trade reverse")
hline(Overbought, color=green, linestyle=line)
hline(Oversold, color=red, linestyle=line)
xPreCalc = ema(stoch(close, high, low, PDS), EMAlen)
xDSS = ema(stoch(xPreCalc, xPreCalc, xPreCalc, PDS), EMAlen)
//xDSS = stoch(xPreCalc, xPreCalc, xPreCalc, PDS)
xTrigger = ema(xDSS, TriggerLen)
pos = iff(xTrigger < xDSS and xTrigger < Oversold, -1,
	     iff(xTrigger > xDSS and xTrigger > Overbought, 1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(xDSS, color=blue, title="DSS")
plot(xTrigger, color=red, title="Trigger")