この戦略は,価格が平均を突破する方向に応じて多空方向を判断するために,二指数移動平均を使用する.価格が上昇すると平均を突破すると多空し,価格が低下すると平均を突破すると空空する.この戦略は,トレンド判断と超買い超売りを組み合わせて,利益をロックする.
この策略は,二進数移動平均指標に基づいています.指標のLengthパラメータを20日周期の平均値に設定します.xPriceパラメータを閉店価格に設定します.それから20日指数移動平均xXAを計算します.また,最近2日の最高値と最低値のnHHとnLLを計算します.nLLが平均より高く,nHHが平均より低い場合は,nLLとnHHのより小さなキー値をキー価格nXSとして取ります.
この戦略は,価格が平均線を突破する方向を判断し,リアルタイム最高値と最低値を組み合わせて,突破の有効性を決定し,偽突破を避ける.価格が平均線を実際に突破したときに取引シグナルを発信する.
双指数移動平均を使用すると,トレンドの方向をより正確に判断できます.
最高価格と最低価格を組み合わせて,突破の有効性を判断することで,価格の揺れによる偽突破を回避できます.
リバースパラメータの調整で多空方向を便利に作ることができ,異なる市場環境に適応します.
平均を突破したときに取引するので,市場ノイズを効果的にフィルターできます.
双指数移動平均は時に不機敏で,短期間の取引機会を逃す可能性があります.
移動平均システムは,整合市場で頻繁に偽信号を生成する.
この戦略は,トレンドが顕著な市場環境に適しており,波動的な市場を整えるには適していません.
損失の拡大の危険性がある.
ポジションの規模が設定されていないため,リスク管理が不適切になる可能性があります.
市場動向を判断する他の指標と組み合わせて,清算市場での頻繁な取引を避ける.
ダイナミック・ストップを追加して,単一損失のリスクをコントロールできます.
市場変動の程度に合わせて動向的に移動平均のパラメータを調整し,指標の感度を最適化できます.
ポジションの規模を設定し,利潤を拡大しながらリスクをコントロールできます.
ウォーク・フォワード・アナリシス (Walk Forward Analysis) によりパラメータを最適化することができる.
この戦略は,価格トレンドの方向を判断する双指数移動平均の指標を使用し,最高価格と最低価格と組み合わせて偽突破を避ける. ストップ・ローズ・メカニズム,ポジション・スケール・コントロールなどの最適化に関して改善の余地がある. しかし,この戦略は,全体的にシンプルで実用的で,パラメータを調整することで,異なる市場環境に適応することができる. これは,信頼できるトレンド追跡戦略である.
/*backtest
start: 2023-09-07 00:00:00
end: 2023-10-07 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 27/12/2016
// Strategy
// This indicator plots 2/20 exponential moving average. For the Mov
// Avg X 2/20 Indicator, the EMA bar will be painted when the Alert criteria is met.
//
// You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
// 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="Strategy 2/20 Exponential Moving Average", overlay = true)
Length = input(20, minval=1)
reverse = input(false, title="Trade reverse")
xPrice = close
xXA = ema(xPrice, Length)
nHH = max(high, high[1])
nLL = min(low, low[1])
nXS = iff((nLL > xXA)or(nHH < xXA), nLL, nHH)
pos = iff(close > xXA and close > nXS , 1,
iff(close < xXA and close < nXS, -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(nXS, color=blue, title="XAverage")