モメンタム平均逆救済プルバック戦略


作成日: 2024-02-18 10:21:04 最終変更日: 2024-02-18 10:21:04
コピー: 0 クリック数: 542
1
フォロー
1617
フォロワー

モメンタム平均逆救済プルバック戦略

概要

モメンタム・アベアー・インバース・リリーフ・プルバック・ストラテジー (MOM) は,移動平均線の近くで反転操作を行う簡単な戦略である.この戦略は50期指数移動平均を主要トレンド判断指標として採用し,形質学の吸収ルールを組み合わせて反転の機会を探している.移動平均線を突破した後,第2根または第3根の反転K線が形成されるのを待って,もし反転形状に合致するならば,次のK線が閉じる時に反転開仓を行い,1分間のストップ・タイマーを設定する.

原則

この戦略は主に2つの仮定に基づいています.

  1. 50期EMAは,市場トレンドの方向を効果的に判断できます.価格が上昇すると,多頭行進と見なされ,下落すると,空頭行進と見なされます.

  2. トレンドがEMAを突破した後に,しばしば短期的な調整反転が発生し,反転K線の吸収の形状特性を利用して,反転が終了するタイミングを捕捉して,反転操作を行うことができる.

具体的には,戦略はまず50期EMAを計算し,その後価格がEMAを突破するかどうかを判断する. 多頭突破すると,下向き陰線K線2-3本待ち,次のK線が多頭吞食すると,そのK線が閉じる時に多行する. 空頭突破すると,上向き陽線2-3本待ち,次のK線が空頭吞食すると,そのK線が閉じる時に空行する.

優位分析

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

  1. 操作ロジックはシンプルでわかりやすく,理解しやすい実装で,初心者にも適しています.

  2. 移動平均のトレンド判断とK線形状の特性を充分利用し,取引シグナルをより効率的にします.

  3. ストップ・ロスの時間設定により,単一取引の損失を制御できます.

  4. 規則は明確で,主観的な判断は避けられ,戦略はより信頼性が高くなります.

リスク分析

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

  1. 50日 EMAはトレンドを正確に判断できず,誤判の可能性もある.

  2. K線形判定は,同様に誤判の可能性がある.

  3. ストップ・タイムが正しく設定されていない場合,損失が増加したり,利益が減少したりする可能性があります.

  4. 機械取引には滑り点,串単等の問題があり,利益に影響する可能性がある.

対策として

  1. 移動平均の周期パラメータを最適化して,より適切な値を見つける.

  2. 他の指標と組み合わせて判断し,信号の信頼性を高めます.

  3. 停止時間パラメータをテストして最適化し,最適なパラメータを見つけます.

  4. スライド・コントロールを戦略に設定して,重大なスライド・損失を回避する.

最適化の方向

この戦略は以下の点で最適化できます.

  1. 移動平均の周期パラメータを最適化して,最適なパラメータを見つけます.

  2. 移動平均の他のタイプ,加重移動平均などに置き換える.

  3. 音量や波幅などのフィルターを追加して,誤った信号を回避する.

  4. ストキャスティクス,MACDなどの他の指標と組み合わせた戦略で信号の質を向上させる.

  5. 各種の特徴と取引時期に応じて最適なストップ・タイムを設定する.

  6. 収益が一定水準に達したときに,積極的に停止するストップ・ストップ戦略を追加します.

要約する

動量平均逆数救済引き戻し戦略は,シンプルで実用的なショートライン取引戦略で,主に移動平均を使用してトレンドを判断し,K線を吸収して反転の機会を発見してショートライン操作を行う.この戦略は,操作の明確さと実現の簡素さの利点がありますが,いくつかのパラメータの最適化スペースもあります.ある程度のテストと調整を経て,この戦略は,初心者向けの量化取引の良い出発点になります.

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

//@version=5
strategy("LinoR EMA Pullback Strategy", shorttitle="EPS", overlay=true)

// Define EMA period
emaPeriod = input(50, title="EMA Period")

// Calculate 50 EMA
ema50 = ta.ema(close, emaPeriod)

// Calculate engulfing conditions
engulfingBullish = close[1] < open[1] and close > open and close > close[1] and open < open[1]
engulfingBearish = close[1] > open[1] and open > close and open > open[1] and close < close[1]

// Define a 1-minute timer
var timer = 0
if bar_index > 0
    timer := timer[1] + 1

// Long condition
longCondition = ta.crossover(close, ema50) and engulfingBullish
if longCondition
    strategy.entry("Buy", strategy.long)

// Short condition
shortCondition = ta.crossunder(close, ema50) and engulfingBearish
if shortCondition
    strategy.entry("Sell", strategy.short)

// Exit after 1 minute
if timer >= 1
    strategy.close("Exit")

plotshape(series=longCondition, title="Long Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=shortCondition, title="Short Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)