4つのDEMAマルチタイムフレームトレンド戦略

作者: リン・ハーンチャオチャン,日付: 2024-02-26 14:14:48
タグ:

img

概要

4つのDEMAマルチタイムフレームトレンド戦略は,複数のタイムフレームでトレンド方向を決定するために,異なる期間の4つのDEMA (ダブル指数指数移動平均) ラインを使用するトレンドフォロー戦略である.この戦略は,10日,15日,21日および30日間のDEMAラインを使用して価格トレンドを判断し,複数のタイムフレーム分析を通じて偽信号をフィルタリングして,高い確率のトレンド方向を特定する.

戦略の論理

この戦略は,10日,15日,21日および30日間のDEMA線を計算し,市場のトレンド方向を決定するためにそれらの大きさの関係を比較します. 具体的なルールは次のとおりです.

  1. 10日,15日,21日,30日間の DEMA ラインを計算します.

  2. 10日線が15日線,15日線が21日線,21日線が30日線を超えると,上向きトレンドとして定義され,ロングになります.

  3. 30日線が21日線以下,21日線が15日線以下,15日線が10日線以下を横切ると,ダウントレンド形成として決定され,ショートになります.

  4. 利益かストップロスを取って退場する

複数のタイムフレームを判断することで,この戦略はいくつかのノイズをフィルタリングし,より高い確率のトレンド方向をロックすることができます.また,より長い期間のDEMAラインはより優れたフィルタリング効果を持っています.したがって,この戦略は論理を構築するために10日,15日,21日および30日間のラインを使用します.

利点

  • 複数のタイムフレームの設計は,より長いタイムフレームの DEMA を介してノイズをフィルターし,高い確率の傾向を捕捉します.

  • DEMA インジケーターの特徴を踏まえて良い傾向を利用する.

  • シンプルで明瞭なルールで 分かりやすく実行し 量取引に適しています

リスク と 解決策

  • ロングストップ損失またはショートストップ損失リスク. シングルポジションストップ損失を制御するために移動ストップ損失を使用します.

  • 比較的長い引き下げ 単一のポジションリスクを下げるようにポジションサイズを調整する

  • パラメータの最適化空間が限られている.判断を助ける補助信号を追加する.

拡張スペース

  • ストップ・ロスの戦略を追加してリスクをさらに制御する.

  • DEMAのパラメータを最適化し 補助信号を追加する

  • トレンドインジケーターと組み合わせれば 逆転の確率が下がります

結論

4つのDEMAマルチタイムフレームトレンド戦略は,10日,15日,21日および30日間のDEMAラインの大きさ関係を比較することによって価格トレンド方向を決定する.これは典型的なトレンドフォロー戦略に属する.単一のMAラインと比較して,この戦略は複数のタイムフレーム判断を採用し,ノイズを効果的にフィルタリングし,精度を向上させる.また,戦略規則は単純で明確で,理解し実行しやすく,量子取引に適しています.結論として,この戦略はDEMA指標の利点を利用し,高確率の正確なトレンドを捕捉するために複数のタイムフレームロジックを設計し,推奨する価値があります.


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

//@version=3
//Author: HighProfit

//Lead-In
strategy("dema10-15-21-30", shorttitle="4dema", overlay=true)

short = input(10, minval=1)
srcShort = input(close, title="Source Dema 1")

long = input(15, minval=1)
srcLong = input(close, title="Source Dema 2")

long2 = input(21, minval=1)
srcLong2 = input(close, title="Source Dema 3")

long3 = input(30, minval=1)
srcLong3 = input(close, title="Source Dema 4")

e1 = ema(srcShort, short)
e2 = ema(e1, short)
dema1 = 2 * e1 - e2
plot(dema1, color=green, linewidth = 2)

e3 = ema(srcLong, long)
e4 = ema(e3, long)
dema2 = 2 * e3 - e4
plot(dema2, color=blue, linewidth = 2)

e5 = ema(srcLong2, long2)
e6 = ema(e5, long2)
dema3 = 2 * e5 - e6
plot(dema3, color=black, linewidth = 2)

e7 = ema(srcLong3, long3)
e8 = ema(e7, long3)
dema4 = 2 * e7 - e8
plot(dema4, color=red, linewidth = 2)

//Conditions
longCondition = (dema1>dema2) and (dema1>dema3) and (dema1>dema4) and (dema2>dema3) and (dema2>dema4) and (dema3>dema4)

if (longCondition)

    strategy.entry("Long", strategy.long)

strategy.close("Long",  cross(dema1,dema2))

shortCondition = (dema4>dema3) and (dema4>dema2) and (dema4>dema1) and (dema3>dema2) and (dema3>dema1) and (dema2>dema1)
if (shortCondition)
    strategy.entry("Short", strategy.short)
    
strategy.close("Short", cross(dema1,dema2))

bgcolor(longCondition?green:white , transp=70, offset=1)
bgcolor(shortCondition?red:white , transp=70, offset=1)

もっと