二重移動平均ゴールデンクロスデッドクロスストップ利益とストップロス戦略


作成日: 2024-02-22 17:30:38 最終変更日: 2024-02-22 17:30:38
コピー: 0 クリック数: 651
1
フォロー
1617
フォロワー

二重移動平均ゴールデンクロスデッドクロスストップ利益とストップロス戦略

概要

双均線金叉死叉止損策は,トレンド追跡策である. ストキャスティック指標の2つの移動平均KとDの金叉と死叉を使用して,買入と売却のタイミングを判断する. 同時に,リスクを管理するために止損を使用する.

戦略原則

この戦略の核心指標は,ストキャスティックの快線Kと慢線Dである.快線Kはストキャスティックの原値の3日単行移動平均である.慢線Dは快線Kの3日単行移動平均である.快線上を通過すると,金叉信号が生じ,多頭トレンドが来ていることを示す,買えます.快線下を通過すると,死叉信号が生じ,空頭トレンドが来ていることを示す,売ることができます.

さらに,この戦略は,ストキャスティックの値が超冷帯 (<20) または超熱帯 (<80) にある場合にのみ取引信号を生成することを条件として設定しています.これは,いくつかの偽信号をフィルターすることができます.

市場に出回った後,ストップ・ストップ・ロスを使ってリスクを制御する. ストップ・ストップのエントリー価格は120ティックで,ストップ・ストップのエントリー価格は60ティックである. 価格がストップまたはストップ・ロスのレベルに達すると,現在のポジションを退出する.

戦略的優位性

  • ストキャスティック指数は,トレンドの方向を判断する上で高い正確性を持っています.
  • 偽信号をフィルタリングするために,冷区と過熱区の条件を設定します.
  • ストップ・ストップ・ロスを使って,単一の損失を制限し,全体的なリスクを制御します.

戦略リスク

  • Stochasticは横軸整理された市場で偽信号を生じやすい
  • ストップ・ストップ・ロスの距離は固定で,市場の変化を動的に追跡することはできません.
  • 最大の撤収を制限できない

リスク対策:

  • 他の指標を組み合わせてトレンドを特定する
  • ダイナミック・ストップ・ストローを設定
  • 最大回帰出口を増やすこと

戦略最適化の方向性

  • MACD,KDJなどの他の指標とストキャスティックの組み合わせを使用して,信号の正確性を向上させる
  • ATR 設定による動的停止距離
  • 最大撤退条件の追加
  • ストップダスト係数を最適化し,最適なパラメータを探します.

要約する

双均線金叉死叉ストップ・ロスト戦略は,シンプルで実用的なトレンド追跡戦略である. Stochasticの双均線システムを活用して,入札のタイミングを判断し,ストップ・ロストを活用してリスクを制御する. この戦略は,効果が顕著で,実行が容易で,量化取引に適している. 更に最適化すれば,安定した収益性のアルゴリズム取引戦略になる可能性がある.

ストラテジーソースコード
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Strategy alerts workaround", overlay=true) 
// disclaimer: this content is purely educational, especially please don't pay attention to backtest results on any timeframe/ticker

// Entries logic: based on Stochastic crossover
k = ta.sma(ta.stoch(close, high, low, 14), 3)
d = ta.sma(k, 3)
crossover = ta.crossover(k,d)
crossunder = ta.crossunder(k,d)

if (crossover and k < 20)
	strategy.entry("Buy", strategy.long, alert_message="buy")
if (crossunder and k > 80)
	strategy.entry("Sell", strategy.short, alert_message="sell")

// StopLoss / TakeProfit exits:
SL = input.int(60, title="StopLoss Distance from entry price (in Ticks)")
TP = input.int(120, title="TakeProfit Distance from entry price (in Ticks)")
strategy.exit("xl", from_entry="Buy", loss=SL, profit=TP, alert_message="closebuy")
strategy.exit("xs", from_entry="Sell", loss=SL, profit=TP, alert_message="closesell")

// logical conditions exits:
if (crossunder and k <= 80)
	strategy.close("Buy", alert_message="closebuy")
if (crossover and k >= 20)
	strategy.close("Sell", alert_message="closesell")