モメンタムトレンド継続ファクター戦略


作成日: 2023-10-08 16:15:34 最終変更日: 2023-10-08 16:15:34
コピー: 0 クリック数: 674
1
フォロー
1617
フォロワー

概要

この戦略は,正負の変動の累積を計算して,現在のトレンドの継続性を判断し,これによって空白方向を決定する.正動量の変化の累積が負の変動の累積よりも大きいとき,上昇傾向の継続として判断し,空白する.正負の変動の累積が正動量の変化の累積よりも大きいとき,下降傾向の継続として判断し,空白する.

戦略原則

  1. 現在のサイクル終了価格に対する前の周期の変化のxChange を計算する.

  2. xChangeを分類し,正の変更はxPlusChangeと,負の変更はxMinusChangeと記した.

  3. 正負の累積と変数xPlusCF,xMinusCFを定義し,それぞれ正負の変化を累積する.

  4. この周期における正負の変化を計算します.

xPlus = xPlusChange - xMinusCF

xMinus = xMinusChange - xPlusCF

  1. プラス・ネガティブな変化の累積と:

xPlusTCF = sum(xPlus, Length)

xMinusTCF = sum(xMinus, Length)

  1. プラス・マイナス・累積と大きさを比較して,多空方向を決定する:

if xPlusTCF > xMinusTCF

もっとやる

else if xPlusTCF < xMinusTCF

空いた

  1. 逆取引のパラメータ reverse を追加して,多空方向を逆転させることができる.

この戦略は,正負の変動の累積傾向を追跡し,現在の上昇力と下降力の大きいものを比較して,将来の価格動向の可能な方向を判断し,取引信号を生成する.

優位分析

  1. 動態指標を使用すると,価格指標よりも早くトレンドの変化を捉えることができます.

  2. ポジティブ・ネガティブ・累積と比較を用い,市場のノイズをフィルターし,主要トレンドの方向を判断する.

  3. カスタマイズ可能なパラメータLengthは,偽信号を低減するために,感度調節します.

  4. 逆取引スイッチが追加され,異なる市場環境に柔軟に対応できる.

  5. トレンド指標の活用と組み合わせて,組み合わせ戦略の優位性を発揮できます.

  6. 学習や実践に適した,理解しやすい実装です.

リスク分析

  1. 参数Lengthを適切に調整する必要があります.長すぎても短すぎても効果に影響します.

  2. トレンドの逆転点の近くで誤信号が発生する可能性があります.

  3. この戦略は,トレンドの揺れのある市場では頻繁にシグナルが出るため,適当ではありません.

  4. 逆転スイッチの心理的影響について注意してください.

  5. 適切なテストと検証,または他の指標の組み合わせによるフィルタリングが必要です.

  6. すべての取引シグナルが利益をもたらすことは保証できないので,適切なストップを設定する必要があります.

最適化の方向

  1. EMA,MACDなどの他のトレンド指標の補助判断と組み合わせることができます.

  2. 追加パラメータは,正負の変化の計算方法をカスタマイズできます.

  3. LENGTHのオプションを最適化して,変更に自在に適応させる.

  4. 単一損失を抑えるためのストップ・メカニズムを追加しました.

  5. 完全な自動取引システムを構築し,フィードバックの最適化を行います.

  6. パラメータや取引ルールを訓練する機械学習の方法を試す.

要約する

本策は,動量指標を用いて,よりシンプルなトレンド追跡方法を設計し,考えが明確で実行しやすく,トレンド取引戦略の基本テンプレートとして使用することができる.しかし,実用化においては,パラメータ調整に注意し,効果を検証する必要があり,他の技術指標を組み合わせて最大限の効果を発揮し,誤判のリスクを軽減し,安定性を向上させる必要がある.同時に,リスクを制御し,損失を防止し,盲目的に信号を追うべきではない.継続的に最適化できれば,自動化要素を追加すれば,安定した取引システムを生み出すのに役立ちます.

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

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 04/01/2018
//    Trend continuation factor, by M.H. Pee 
//    The related article is copyrighted material from Stocks & Commodities.
//
//You can change long to short in the Input Settings
//WARNING:
//- For purpose educate only
//- This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Trend continuation factor")
Length = input(35, minval=1)
reverse = input(false, title="Trade reverse")
hline(0, color=green, linestyle=line)
xChange = mom(close, 1)
xPlusChange = iff(xChange > 0, xChange, 0)
xMinusChange = iff(xChange < 0, (xChange * -1), 0)
xPlusCF = iff(xPlusChange == 0, 0, xPlusChange + nz(xPlusCF[1], 1))
xMinusCF = iff(xMinusChange == 0, 0, xMinusChange + nz(xMinusCF[1], 1))
xPlus = xPlusChange - xMinusCF
xMinus = xMinusChange - xPlusCF
xPlusTCF =  sum(xPlus, Length)
xMinusTCF = sum(xMinus, Length)
pos = iff(xPlusTCF > xMinusTCF, 1,
       iff(xPlusTCF < xMinusTCF, -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(xPlusTCF, color=blue, title="Plus TCF")
plot(xMinusTCF, color=red, title="Minus TCF")