ATR、EOM、VORTEXに基づく長期トレンド戦略


作成日: 2024-02-18 16:01:07 最終変更日: 2024-02-18 16:01:07
コピー: 0 クリック数: 591
1
フォロー
1617
フォロワー

ATR、EOM、VORTEXに基づく長期トレンド戦略

概要

この戦略は,株式市場と暗号通貨市場で使用される長線トレンド戦略である.これは,トレンドの方向性を識別するためにATR (平均実際の波動幅度),EOM (柔軟な平均),VORTEX (流指標) の3つの指標を組み合わせている.

戦略原則

  • ATRは市場の波動性を測定するために使用される.ここでは,10周期のATRを計算し,5周期のEMAを介してATRを平らにする.現在のATRがEMAATRより高く,現在高い波動の状況にあることを示すなら,牛市に属します.逆に,それは熊市に属します.

  • EOMは量価指標に属している。ここでは10周期のEOMを計算している。EOMが正であるならば,現在量能激増の状況にあることを意味する,牛市に属している;EOMが負であるならば,熊市に属している。

  • VORTEXは,長線トレンドの方向を判断するために使用される流指標を表します.私たちは,それぞれ,近10周期の価格変動の絶対値の和を計算してVMPとVMMを得ます.そして,ATRを,統一分母として加算して,VIPとVIMを計算します.両者の平均値を取ると,1より大きい場合は牛市に属し,1より小さい場合は熊市です.

総じて,この戦略はATRとEMAATRによって短期変動を判断し,EOMによって量値特性を判断し,VORTEXによって長線トレンドを判断し,3つを組み合わせて,最終的により多くの方向を決定する.

優位分析

  • この戦略は,波動率クラス,量価クラス,およびトレンドクラスを含む3つのカテゴリー指標を組み合わせて,全面的に判断し,信号は強い.

  • ATRとVORTEXは,振動時のノイズを効果的にフィルターし,誤った多頭信号を避けるために,平滑な特性を備えている.

  • 短線調整による損失のリスクを最小限に抑えるには,空いている時間よりも多めに作業するだけです.

  • トレンド追跡戦略として,主要トレンドの利益を得るために中長線方向の機会を捉えることに焦点を当てています.

リスク分析

  • 測量データは不十分で,リールディスクのパフォーマンスは検証が必要で,パラメータの設定もさらに最適化テストが必要である.

  • 逆転や震動がもたらす利得の機会を探索できない.利得の上限には一定の制限がある.

  • 純粋なトレンド戦略で,ポジションのリスクを効果的にコントロールできず,一定程度の資金ロックリスクが存在する.

  • 負債は空白できないし,ポジションリスクはカバーできないし,損失の余地は比較的大きい.

最適化の方向

  • 異なるATRとVORTEX周期パラメータの安定性をテストする.

  • 移動停止,時間停止など,単一損失を制御するための,止損メカニズムを導入してみてください.

  • ATR 値のセットポジション比率に基づいて,高波動時にポジションを下げるとリスクが低下する.

  • 逆転因子による入場確認のタイミングを組み合わせて,不必要な資金のロックを回避する.

要約する

この戦略は,長線トレンド追跡戦略に属し,ATR,EOM,VORTEXの3つの指標によってトレンドの方向を確認した後に入場し,余分なものを空にするのではなく,主動トレンドによる余剰収益を捕捉することを目指しています. 判断総合性の強さ,信号のより明確な利点がありますが,データ不足,リスク管理能力の弱い欠点もあります. 将来,ストップを導入し,パラメータ設定を最適化し,ポジション管理などの面で改善および最適化を行うことができます.

ストラテジーソースコード
/*backtest
start: 2023-02-11 00:00:00
end: 2024-02-17 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 at https://mozilla.org/MPL/2.0/
// © SoftKill21

//@version=4
strategy("atr+eom+vortex strat", overlay=true )

//atr and ema
atr_lenght=input(10)
atrvalue = atr(atr_lenght)


//plot(atrvalue)
ema_atr_length=input(5)
ema_atr = ema(atrvalue,ema_atr_length)

//plot(ema_atr,color=color.white)

//EOM and ema
lengthEOM = input(10, minval=1)
div = 10//input(10000, title="Divisor", minval=1)
eom = sma(div * change(hl2) * (high - low) / volume, lengthEOM)
// + - 0 long/short

//VORTEX
period_ = input(10, title="Length", minval=2)
VMP = sum( abs( high - low[1]), period_ )
VMM = sum( abs( low - high[1]), period_ )
STR = sum( atr(1), period_ )
VIP = VMP / STR
VIM = VMM / STR
avg_vortex=(VIP+VIM)/2
//plot(avg_vortex)

long= atrvalue > ema_atr and eom > 0 and avg_vortex>1 
short=atrvalue < ema_atr and eom < 0 and avg_vortex<1 

strategy.entry("long",1,when=long)
//strategy.entry("short",0,when=short)

strategy.close("long",when=short)