トレンド SMA トレーディング戦略 1.1

作者: リン・ハーンチャオチャン, 日時: 2023-09-22 16:40:33
タグ:

概要

この取引戦略は,2つのシンプル・ムービング・平均線 (SMA) をのみ使用する.トレンド方向を定義するためにスロー SMA線と特定のエントリーポイントを決定するために高速 SMA線を使用する.この戦略は,毎時間およびより高いタイムフレームで仮想通貨取引に適している.

戦略の論理

戦略は,高速SMA線と遅いSMA線を計算してトレンド方向を判断します.

  • スロー SMAライン (青) は,トレンド方向を定義するために使用されます.価格がスロー SMAを下回り,価格が上回りするとダウントレンドが定義されます.

  • 急速SMA線 (赤) は,特定のエントリーポイントを決定するために使用されます. 上向きのトレンドでは,キャンドルストークの閉じるがオープンよりも低く,急速SMA以下になるとロングします. 下向きのトレンドでは,閉じるがオープンよりも高く,高速SMA以上になるとショートします.

この戦略は,キャンドルスティック色も考慮し,定義されたトレンドの方向での取引のみを行います. 上向きのトレンドで長い信号と下向きのトレンドで短い信号,反トレンドの取引を避けます.

利点

  • この戦略は2つの基本的なSMA指標のみを使用し,理解が非常に簡単です.
  • 2つのSMA線を使用してトレンドを決定することは信頼性があり,市場の騒音を避けます.
  • カンドルスタイクの色を考えると 逆トレンドのエントリーを避け リスクを減らすことができます
  • 調整可能な高速SMAと遅いSMAのパラメータは,異なる市場条件に適しています.
  • 市場状況に合わせて 柔軟に

リスク分析

  • 傾向のターニングポイントを 見逃す可能性があります
  • 固定パラメータは 変化する市場に適応できないので 調整が必要です
  • トレンド判断が誤りになり,反トレンドの取引リスクが生じる可能性があります.
  • 単一指標の組み合わせによる確認の欠如,過剰取引リスク

リスクに対処するための可能な最適化:

  1. トレンドを確認するためにMACDを追加します.

  2. リスクをコントロールするためにストップロスを実行します

  3. アダプティブパラメータのパラメータ最適化を追加します

  4. 過剰取引を避けるために入力確認を追加します.

オプティマイゼーションの方向性

戦略を最適化するための主な側面:

  1. パラメータ最適化 市場状況に基づいて パラメータを自動的に調整する モジュールを追加します

  2. 入力確認です.MACDやボリンジャー帯のような指標を追加して SMA信号を確認します.

  3. ストップ・ロスはリスクを制限するために ストップ・ロスの戦略を実行します

  4. 引き下げ制御 損失を制限するために 最大引き上げパーセントに達すると すべてのポジションを閉じる

  5. クロスタイムフレーム検証.より低いタイムフレームのSMA信号を確認するために,より高いタイムフレームの指標を使用します.

  6. ロング/ショート選択.異なる市場でのロングまたはショート取引のみを選択するためのスイッチを追加します.

概要

この戦略は,シンプルなトレンドフォローインジケーターを用いて,明確でわかりやすい論理を持っています.しかし,利益の可能性は限られており,リスク管理は不十分です.次のステップは,市場適応性と効果的なリスク管理のためにパラメータとリスク管理を最適化し,戦略をさらに改善することです.


/*backtest
start: 2023-08-22 00:00:00
end: 2023-09-21 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("Noro's Trend SMA Strategy v1.1", shorttitle = "Trend SMA str 1.1", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)

fastlen = input(5, "fast SMA Period")
slowlen = input(15, "slow SMA Period")
only = input(false, "Only long?")

fastsma = ema(close, fastlen)
slowsma = ema(close, slowlen)

trend = low > slowsma ? 1 : high < slowsma ? -1 : trend[1]

up = trend == 1 and low < fastsma and close < open ? 1 : 0
dn = trend == -1 and high > fastsma and close > open ? 1 : 0

plot(fastsma, color = red, title = "Fast SMA")
plot(slowsma, color = blue, title = "Slow SMA")

longCondition = up == 1
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = dn == 1
if (shortCondition)
    strategy.entry("Short", strategy.short, only == true ? 0 : na)

もっと