移動平均に基づくサポートとレジスタンスのブレイクアウト戦略


作成日: 2023-09-28 15:20:47 最終変更日: 2023-09-28 15:20:47
コピー: 3 クリック数: 726
1
フォロー
1617
フォロワー

概要

この戦略は,移動平均に基づいて,重要なサポートとレジスタンス価格領域を特定し,これらの領域が突破されたときに取引を行う. 戦略はシンプルで有効で,容易に理解し,実行する.

戦略原則

この戦略は,50周期のシンプル・ムービング・アヴェア (SMA) を用いて,重要なサポートとレジスタンス領域を特定します.具体的には:

  • 閉店価格が下からSMAを突破すると,過去50サイクルで最も高い価格をレジスタンス位Rとして取ります
  • 閉店価格が上からSMAを下回ったとき,過去50サイクル間の最低値をSとしてサポートします.
  • 値がレジスタンスRを超えると,追加します.
  • “S”の支柱を抜けたとき,空白する

つまり,この戦略は,50サイクル長さのSMA分割価格区域を利用し,価格がこれらの領域を破るとき,逆方向で取引する. 突破抵抗を多くして,サポートを空にする. 戦略は単純明快で,操作が容易である.

優位分析

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

  1. 移動平均を用いたサポートレジスタンス識別には一定の信頼性があり,偽突破を効果的にフィルターすることができる.
  2. 50周期の長短はなく,より重要な中期サポート抵抗を識別することができる.
  3. SMAの1つの指標を使用すると,システムコストは小さく,実現しやすい.
  4. 突破取引戦略はシンプルで有効で操作が簡単です.
  5. 設定できるパラメータが少ないので,過度に最適化することは容易ではありません.

リスク分析

この戦略には以下のリスクもあります.

  1. 移動平均は完全にフィルターできず,偽の突破の危険性が依然として存在します.
  2. 固定サイクルは市場各サイクルの適応を妨げ,より短いサイクルの機会を逃す可能性があります.
  3. 突破後,再調節テストの前に高低が発生し,一定の止損技が必要となる.
  4. 長期にわたってポジションを保持する際には,より大きなレベルのトレンド方向に注意を払う必要があります.

これらのリスクに対して,移動平均周期を適切に調整したり,トレンドフィルタリング指標などを加えたりして最適化することができます.同時に,適切なストップ・マネジメントを行うことは非常に重要です.

最適化の方向

この戦略は以下の方向から最適化できる:

  1. MACDなどの指標を追加し,トレンドの方向と強さを判断します.
  2. 周期が動的に調整できるようにMA周期の自適化最適化を加える.
  3. 突破識別を最適化する,例えばMAとブリン帯を同時に突破して下線するように要求する.
  4. 単一損失を抑えるための損失防止メカニズムの追加
  5. 異なるMA周期パラメータを試し,最適なパラメータ組み合わせを探します.

これらの最適化により,戦略はより柔軟になり,異なる市場サイクルで効果を発揮することができます.

要約する

全体的に見ると,この戦略は,シンプルな移動平均線を用いて支柱の抵抗領域を識別し,価格突破操作を行うことが簡単で高効率である.最適化余地も大きく,複数の次元から改善することができる.ある種の偽突破のリスクがあるものの,合理的な止損配置を効果的に制御することができる.この戦略の考え方は,わかりやすく,初心者の入門戦略として実践するのに非常に適している.

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

//--------------------------*
//-- This source code is subject to the terms of the Mozilla Public License 2.0
//-- 開源代碼受Mozilla公眾授權條款2.0版規範, 網址是https://mozilla.org/MPL/2.0/
//
//@version=4
//
//  作品: [LunaOwl] 支撐壓力策略第4版
//  英文: [LunaOwl] Support Resistance Strategy V4
//
////////////////////////////////
//     ~~!!*(๑╹◡╹๑) **       //
//  製作:  @LunaOwl 彭彭      //
//  日期:  2019年03月05日     //
//  修改:  2019年04月22日     //
//  四版:  2020年06月16日     //
//  發表:  2020年06月17日     //
////////////////////////////////

//==設定策略==//

strategy("[LunaOwl] 支撐壓力策略 [回測]",
     shorttitle          = "支撐壓力策略 [回測]",
     overlay             = true,
     calc_on_order_fills = false,
     calc_on_every_tick  = false,
     pyramiding          = 0,
     currency            = currency.NONE,
     initial_capital     = 10000,
     slippage            = 5,
     default_qty_value   = 100,
     default_qty_type    = strategy.percent_of_equity,
     commission_type     = strategy.commission.percent,
     commission_value    = 0.05
     )

LB = input(50, title = "回溯期數", type = input.integer)
R = valuewhen(cross(sma(close, LB),close), highest(high, LB), 1)
S = valuewhen(cross(close,sma(close, LB)),  lowest( low, LB), 1)

plot(R, title = "壓力", color = color.green)
plot(S, title = "支撐", color = color.red)

//==定義輸出結果==//

Trend_up = crossover(close, R) ? 1 : 0
Trend_dn = crossunder(close, S) ? -1 : 0

//==設定出場規則==//

Enter = Trend_up ==  1 and Trend_up[1] == 0 ? Trend_up : na
Exit  = Trend_dn == -1 and Trend_dn[1] == 0 ? Trend_dn : na
strategy.entry("多", strategy.long, when = Enter)
strategy.entry("空", strategy.short, when = Exit)