絶対価格オシレーター傾向 戦略をフォローする

作者: リン・ハーンチャオチャン, 日付: 2023-09-21 15:27:59
タグ:

概要

この戦略は,取引信号を生成し,トレンドを追跡するために絶対価格オシレーター (APO) 指標を使用します.APOは,2つの EMAと取引のクロスオーバーの差をゼロ以上/以下に計算します.

戦略の論理

  • APOは,より速いEMAと,より遅いEMAで構成され,両方の差を取ります.

  • APO が買取ゾーン (デフォルト 3) を越えると,ロング.売れゾーン (デフォルト - 3) を越えるとショート.

  • 信号を逆転させるオプション - 売り上げの上のクロス,買い上げの下のクロス

  • 曲線は価格の勢いを示し ダイバージェンスの逆転を見つけることができます

これはトレンドフォロー戦略であり,持続的なロング/ショート信号のトレンド方向を決定するためにAPOを使用する.最適化されたパラメータは中期トレンドを追跡することができます.

利点

  • 基本的な移動平均の組み合わせを用いたシンプルな実装

  • APOは価格の動力と方向性を測定します

  • デフォルトパラメータは 中期に持続的な信号を生成し,過剰取引を避ける.

  • 価格/指標の差によって 傾向の逆転を検出できる

リスク

  • 市場での誤った信号や 変動に易しい

  • 遅延信号は 急速な逆転を 見逃す可能性があります

  • ストップ・ロストやポジションサイズがなく リスク管理が不完全です

緩和策

  • パラメータを最適化し,各機器で異なる組み合わせをテストする.

  • フィルターを追加して 不安定な条件で取引を避ける

  • ストップ・ロスを実施します.例えば,ストップ・トレリングです.

増進 の 機会

  • 理想のペアを見つけるために各楽器のパラメータ最適化

  • 価格の動きやボリュームに関する追加フィルターで,誤った信号を減らす.

  • 動的ポジションのサイズ設定は,波動性または口座%に基づいて行われます.

  • トレンドをフォローするためにストップをフォローします

  • MLは,成功する差異信号の確率を評価する.

結論

APOを使用したこのEMAクロスオーバーシステムは,トレンドフォローのための堅牢な基盤を提供します.パラメータ,リスク管理,フィルターの最適化により,効果的な定量戦略になり得ます.コアコンセプトは,さらなる開発のためのシンプルで堅牢です.


/*backtest
start: 2022-09-14 00:00:00
end: 2023-09-20 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 20/09/2018
// The Absolute Price Oscillator displays the difference between two exponential 
// moving averages of a security's price and is expressed as an absolute value.
// How this indicator works
//    APO crossing above zero is considered bullish, while crossing below zero is bearish.
//    A positive indicator value indicates an upward movement, while negative readings 
//      signal a downward trend.
//    Divergences form when a new high or low in price is not confirmed by the Absolute Price 
//      Oscillator (APO). A bullish divergence forms when price make a lower low, but the APO 
//      forms a higher low. This indicates less downward momentum that could foreshadow a bullish 
//      reversal. A bearish divergence forms when price makes a higher high, but the APO forms a 
//      lower high. This shows less upward momentum that could foreshadow a bearish reversal.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Absolute Price Oscillator (APO) Backtest 2.0", shorttitle="APO")
LengthShortEMA = input(10, minval=1)
LengthLongEMA = input(20, minval=1)
BuyZone = input(3, step = 0.01)
SellZone = input(-3, step = 0.01)
reverse = input(false, title="Trade reverse")
hline(BuyZone, color=green, linestyle=line)
hline(SellZone, color=red, linestyle=line)
hline(0, color=gray, linestyle=line)
xPrice = close
xShortEMA = ema(xPrice, LengthShortEMA)
xLongEMA = ema(xPrice, LengthLongEMA)
xAPO = xShortEMA - xLongEMA
pos = iff(xAPO > BuyZone, 1,
       iff(xAPO < SellZone, -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(xAPO, color=blue, title="APO")

もっと