アンドリュー・アブラハム トレンド・トラッキング戦略

作者: リン・ハーンチャオチャン,日付: 2024-01-08 16:21:11
タグ:

img

概要

トレンドトラッキング戦略は,アンドリュー・エイブラムが1998年9月に株式と商品の技術分析誌に掲載された"トレンドを取引する"と題した記事で提案した.価格傾向とトレンド方向の取引を決定するために,移動平均の真の範囲と最高値と最低値を使用する.

原則

この戦略は,まず21日間の平均真の範囲 avgTRを計算する.その後,21日間の最高価格最高Cと最低価格最低Cを計算する.次に,最高価格マイナス3倍 avgTRである上部レールhiLimitと,最低価格プラス3倍 avgTRである下部レールloLimitを計算する.閉値が上部レールと下部レールを超えると,それらの値がそれぞれ基準価格 retとして取られる.閉値が基準価格より高くなった場合,ロング;低かった場合,ショート.

利点

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

  1. チャンネルを計算するために平均の真の範囲を使用することで,市場の変動を動的に把握できます.
  2. トレンドの方向性を決定するために最高価格と最低価格を組み合わせることで,振動する市場によって誤導されるのを避ける.
  3. 論理は単純で明快で 分かりやすく実行できます
  4. トレンドに従って取引し,振動する市場で頻繁にポジションを開くことは避けることができます.

リスク

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

  1. 振動する市場では,より多くの誤った信号が発生します.パラメータを最適化することでこれを減らすことができます.
  2. 傾向の逆転点を特定できないため,損失のリスクがあります.他の指標を組み合わせて傾向の逆転を判断することができます.
  3. パラメータの不適切な最適化は,過剰取引または誤った信号を引き起こす可能性があります. パラメータの安定性は慎重にテストする必要があります.

改善

この戦略を改善する方法:

  1. 最適なパラメータ組み合わせを見つけるために移動平均期を最適化します.
  2. 単一の損失を制御するためにストップ損失を追加します.
  3. 変動指標を組み合わせて市場状況を決定し,変動する市場での取引を避ける.
  4. 傾向の反転点を特定し,損失の確率を減らすために傾向判断指標を追加します.

結論

トレンドトラッキング戦略は,シンプルで実用的なトレンドトレーディング戦略である.トレンド方向を決定し,振動する市場に閉じ込められることを避けるために価格チャネルを使用する.しかし,依然としていくつかのリスクがあり,安定性を向上させるためにさらなる最適化が必要である.それはいくつかの取引経験を持つ投資家にとって適している.


/*backtest
start: 2023-01-01 00:00:00
end: 2024-01-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 12/01/2017
// This is plots the indicator developed by Andrew Abraham 
// in the Trading the Trend article of TASC September 1998  
//
// 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="Trend Trader Strategy", overlay = true)
Length = input(21, minval=1),
Multiplier = input(3, minval=1)
reverse = input(false, title="Trade reverse")
avgTR      = wma(atr(1), Length)
highestC   = highest(Length)
lowestC    = lowest(Length)
hiLimit = highestC[1]-(avgTR[1] * Multiplier)
loLimit = lowestC[1]+(avgTR[1] * Multiplier)
ret = iff(close > hiLimit and close > loLimit, hiLimit,
       iff(close < loLimit and close < hiLimit, loLimit, nz(ret[1], 0)))
pos = iff(close > ret, 1,
	   iff(close < ret, -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(ret, color= blue , title="Trend Trader Strategy")

もっと