モメンタム指標とストキャスティクス指標を組み合わせた戦略


作成日: 2023-12-26 14:30:23 最終変更日: 2023-12-26 14:30:23
コピー: 0 クリック数: 761
1
フォロー
1623
フォロワー

モメンタム指標とストキャスティクス指標を組み合わせた戦略

概要

この戦略は,トレンド指数とランダムな指数を組み合わせて取引信号を生成します.トレンド指数のDI+,DI-およびADX線は,トレンドの方向と強さを判断するために使用され,ランダムな指数の%K線は,オーバーバイまたはオーバーセールかどうかを判断するために使用されます.戦略は,DI+がDI-,ADXが25より高く,Kが20%より低い場合,多頭シグナルを生成します.DI-がDI+より高く,ADXが25より高く,Kが80%より高い場合,空頭シグナルを生成します.同時に,戦略は,革新的なダイナミックストップ方式を使用して,最後のエントリーポイント後の最高価格と最低価格をダイナミックストップとして使用し,リスクを効果的に制御します.

戦略原則

この戦略の核心的な論理は以下の部分に基づいています.

  1. トレンド指数判断:DI+,DI-およびADXで市場トレンドの方向と強さを判断する.DI+がDI-よりも高いときは,多頭トレンドを表す.DI-がDI+よりも高いときは,空頭トレンドを表す.ADXはトレンドの強さを判断するために使用される.数値が大きいほど,傾向がより顕著であることを示す.

  2. ランダムな指標で 超買いと超売りを判断するランダムな指標の%K線は,特定の周期内の最高値と最低値に対する現在の閉盘価格の位置を示し,市場が超買い超売りであるかどうかを判断するために使用される.%Kが20を下回ると超売りであり,80を超えると超買いである.

  3. 信号は論理的になる: トレンド指数とランダムな指標を組み合わせて,この戦略はDI+がDI- ((多頭トレンド) よりも高く,ADXが25より高く, (トレンドが顕著である) と%Kが20より低く, (オーバーセール) であるときに多頭シグナルを生じます.DI-がDI+ ((空頭トレンド) よりも高く,ADXが25より高く,%Kが80より高く, (オーバーセール) であるときに空頭シグナルを生じます.

  4. ダイナミック・ストップ・モード:最後のエントリーポイントの後の最高値と最低値を記録し,それを動的なストップ・ローズとして使用します. これにより,市場変動に応じて利益をロックしたり,リスクを制御することができます.

優位分析

この戦略の利点は以下の通りです.

  1. トレンド指数とランダム指数の二重判断を組み合わせると,信頼性が高い. トレンド指数は主トレンドの方向を判断し,ランダム指数は局所的特性を捉え,両者は互いを補完する.

  2. 革新的なダイナミック・ストップ・メカニズム.最近の波動に基づいてストップ・ポイントを設定し,実際の市場状況に応じてリスクを制御し,ストップ・効果が良い.

  3. 策略パラメータが少なく,容易に実現する.主要パラメータは指標計算長さのみで,策略を簡単に調整・最適化できる.

  4. 株,外貨,暗号通貨などの金融市場でもこの戦略を使用できます.

  5. 取引プラットフォームに直接適用できる,便利で迅速なpineスクリプトで書かれています.

リスク分析

この戦略にはいくつかのリスクがあります.

  1. トレンドが揺れるとき,誤信号が生じやすい.このときADXは比較的低いので,ポジションを下げてリスクを回避すべきである.

  2. ランダムな指標は,それ自体が後続指標であり,シグナルを生成する時には市場が逆転している可能性がある.適切な他の先行指標と組み合わせるべきである.

  3. ダイナミック・ストップ・メカニズムは,巨大な市場情勢の衝撃を完全に回避することはできません.合理的なストップ・ポイントの距離を設定することが推奨されます.

  4. パラメータの設定が不適切であることも,戦略の効果に影響する.適切な指標長さのパラメータを選択する.

  5. 市場全体の状況を注意深く監視する必要がある.重大な黒天事件が発生した場合,異常な損失を避けるために,戦略を一時的に停止する必要があります.

最適化の方向

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

  1. 他の判断指標を追加し,多重フィルタリングを形成し,信号の信頼性を高めます.例えば,均線判断傾向への加入,MACD判断偏離などです.

  2. パラメータ設定を最適化し,最適のパラメータ組み合わせを選択する. 過去データを見直して,最も適切な指標長さを決定することができる.

  3. 異なる品種と取引周期に応じて異なるパラメータを設定します.高周波取引に適した品種は計算周期を短縮することができます.

  4. getInfo関数と日記記録機能を組み合わせて,詳細な取引日記と指標データを出力し,戦略分析と最適化を容易にします.

  5. pine エディタにグラフを描画を追加し,取引シグナルポイントを表示する。同時に,ストップローズの動きを表示する。

  6. 特定の条件を満たしたときにメッセージリマインダーを送信するアラート機能を開発し,取引を早期に介入することを容易にします.

要約する

この戦略は,トレンド指数とランダムな指標の優位性を総合的に使用し,トレンド方向を判断し,同時にオーバーバイオーバーセール領域を定位し,取引信号を生成する.同時に,革新的な設計されたダイナミックな止損方法により,リスク管理がより賢く,自動化される.この戦略信号は,信頼性があり,適用範囲が広く,使用が簡単で,効率的で実用的な量化取引戦略である.継続的な最適化と改善により,この戦略は,より優れた戦略的パフォーマンスを得る見通しがある.

ストラテジーソースコード
/*backtest
start: 2022-12-19 00:00:00
end: 2023-12-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("DMI with Stochastic and Dynamic Stop-Loss", shorttitle="DMI_Stoch_SL", overlay=true)

length = input(14, title="DMI Length")
adxThreshold = input(25, title="ADX Threshold")
stochKLength = input(14, title="Stochastic %K Length")
stochDLength = input(3, title="Stochastic %D Length")

[diPlus, diMinus, adx] = ta.dmi(length, length)
stochKLine = ta.stoch(close, high, low, stochKLength)

var float lowestClose = na
var float highestClose = na
lowestClose := na(lowestClose) ? close : math.min(lowestClose, close)
highestClose := na(highestClose) ? close : math.max(highestClose, close)

longCondition = (diPlus > diMinus) and (adx > adxThreshold) and (stochKLine < 20)
shortCondition = (diMinus > diPlus) and (adx > adxThreshold) and (stochKLine > 80)

if longCondition
    strategy.entry("Buy", strategy.long)
    strategy.exit("Exit Buy", "Buy", stop=lowestClose)

if shortCondition
    strategy.entry("Sell", strategy.short)
    strategy.exit("Exit Sell", "Sell", stop=highestClose)