DEMA 高速二重指数移動平均戦略


作成日: 2023-09-26 20:28:11 最終変更日: 2023-09-26 20:28:11
コピー: 0 クリック数: 754
1
フォロー
1617
フォロワー

概要

DEMA速二指数移動平均策略は,DEMA (二指数移動平均) に基づく短線取引策略である.この策略は,移動平均の平滑性とEMAの迅速な応答の優位性を融合し,DEMA線の交差を利用して短線価格の傾向を捕捉し,利益を上げることを目的としている.

戦略原則

この戦略は主にDEMA快線とDEMA慢線の金叉と死叉をベースに,買入と売却の信号を判断する.

具体的には,速線の計算式は次のとおりです.

demaFast = 2 * ema(close, fastPeriod) - ema(ema(close, fastPeriod), fastPeriod)

スローラインの計算式は:

demaSlow = 2 * ema(close, slowPeriod) - ema(ema(close, slowPeriod), slowPeriod)

fastPeriodとslowPeriodは,それぞれ速線と遅線のパラメータ周期を表している.

速線で慢線を横切るときに買い信号を生成し,速線の下で慢線を横切るときに売り信号を生成する.

buy = crossover(demaSlow, demaFast)  
sell = crossunder(demaSlow, demaFast)

この戦略は,DEMA線の交差状況に基づいて具体的な取引方向を決定する.

優位分析

DEMA線は,従来の移動平均よりも敏感で,価格の変化により迅速に反応します.これは,この戦略がより多くのショートライン取引機会を捉えることを可能にします.

さらに,DEMA線は移動平均の平滑性を併用して,市場騒音の一部をフィルターして,誤った信号を回避する.

さらに,この戦略は,高速線と遅線の組み合わせを用いて,仮想交差を一定程度回避することができる.高速線と遅線のパラメータ設定は異なるが,交差信号はより信頼性が高い.

したがって,DEMAの急速双指数移動平均戦略は,全体として,応答速度,フィルターノイズ,信号安定性の信頼性の優位性を持っています.

リスク分析

DEMA線はEMA線よりも安定しているにもかかわらず,虚擬交差が発生し,誤信号が生じるリスクがある.この点に対して,快速線周期パラメータを適切に調整して,快速線が十分に敏感で,遅速線が十分に安定することを確保することができる.

また,ショートライン取引戦略として,取引コストに敏感である.取引頻度が過高または取引量1回設定が過小である場合,取引コストは収益に一定の影響を及ぼす可能性があります.

最後に,いかなる技術指標戦略も,完全にはストップダスの発生を避けることができないので,リスクを制御するために,合理的な資金管理を伴い行う必要があります.

最適化の方向

この戦略は改善の余地がある:

  1. 異なる周期パラメータの組み合わせをテストし,最適なパラメータの組み合わせを探します.

  2. 取引信号を確認するためにRSIなどの他の技術指標を添加して,誤った信号の発生を防ぐことができます.

  3. 利潤をロックするために移動ストップを設定するなど.

  4. 資金管理戦略を最適化できます.例えば,口座資金に応じて取引量を調整したり,波動性調整ポジションを導入したりなどです.

要約する

DEMA速二指数移動平均策略は,全体的に比較して安定したショートライン取引策である.迅速な応答速度があり,同時に一定の滑らかなフィルタリング能力がある.SMAなどの指標と比較して,この策略は,より多くのショートライン機会を捕捉することができる.パラメータ最適化および配套措置により,戦略の収益の安定性と収益性をさらに向上させることができる.全体的に,この策略は,高周波ショートライン取引を必要とする投資家に適している.

ストラテジーソースコード
/*backtest
start: 2022-09-19 00:00:00
end: 2023-09-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

strategy(title = "DEMA Strategy", shorttitle = "DEMA Strategy",initial_capital=1000, commission_value=0.2, commission_type =strategy.commission.percent, default_qty_value=100 , overlay = false, pyramiding=10, default_qty_type=strategy.percent_of_equity)
//@Moneros 2017
//Based on The DEMA is a fast-acting moving average that is more responsive to market changes than a traditional moving average
// !!!!  IN ORDER TO AVOID REPAITING ISSUES !!!!
// !!!!  DO NOT VIEW IN LOWER RESOLUTIONS THAN res/2 PARAMETER  !!!!
// for example res = 120 view >= 60m  res = 60 view >= 30m
// the length of the DEMA sampling shouldn't be longer than a candle 



// Best profits tested on BTCUSD
//res = 105 slowPeriod = 2 fastPeriod = 32
//res = 125 slowPeriod = 3 fastPeriod = 21
//res = 120 slowPeriod = 2 fastPeriod = 32 
//res = 130 slowPeriod = 1 fastPeriod = 24 
//res = 40 slowPeriod = 4 fastPeriod = 93 
//res = 60 slowPeriod = 1 fastPeriod = 67 

fastPeriod    = input(defval = 32, title = "DEMA FAST Period", minval = 2)
slowPeriod = input(defval = 2, title = "DEMA SLOW Period", minval = 1)
res = input(title="Resolution  - not lower than chart", defval="120")


demaFast =  request.security(syminfo.tickerid, res, 2 * ta.ema(close, fastPeriod) - ta.ema(ta.ema(close, fastPeriod), fastPeriod)  )
demaSlow  = request.security(syminfo.tickerid,res, 2 * ta.ema(close, slowPeriod) - ta.ema(ta.ema(close, slowPeriod), slowPeriod)  )



plot(demaFast,color=color.red)
plot(demaSlow,color=color.lime)

buy = ta.crossover(demaSlow, demaFast)
sell = ta.crossunder(demaSlow, demaFast)


// value [1] for avoid repaiting bottom bars
bgcolor( buy[1] ? color.lime : na, transp=0)
bgcolor( sell[1] ? color.red : na, transp=0)


strategy.entry("BUY", strategy.long, 1, when = buy)
strategy.entry("SELL", strategy.short, 1, when = sell )