マルボローソク足セグメント均衡戦略


作成日: 2024-02-23 14:23:41 最終変更日: 2024-02-23 14:23:41
コピー: 1 クリック数: 735
1
フォロー
1617
フォロワー

マルボローソク足セグメント均衡戦略

概要

マルーボーク線段均衡戦略は,日中の時間帯をベースにした量的な取引戦略である.この戦略は,マルーボークの形状を識別し,線段の均衡状況を調査することによって,市場動向を判断し,取引機会を探している.

戦略原則

この戦略の核心的な論理は以下の通りです.

  1. マルボを識別する 白多頭と黒空頭。 マルボは,開盤価格と閉盤価格の間に影線が存在しない長体を指す特殊な線図パターンであり,白多頭と黒空頭2種に分かれている。

  2. 実体平均線段の長さを計算し,現在の実体長さと比較して,線段が長か短か判断する.

  3. 線段が平衡しているかどうかを判断する,つまり上影線と下影線の長さは大体同じである.

  4. マルボの白多頭を識別すると多頭を; マルボの黒空頭を識別すると空頭を.

  5. この2つのの収束を調査した結果,トレンドが逆転し,平仓のシグナルとなった.

この戦略は,マルブルボーム自身から提供される強力な一面的なトレンドシグナルと,ライン段の均衡条件を判断して,空調を多めにする.マルブルボームが認識されると,市場には強力な一面的なトレンドが存在することを示し,ライン段の均衡状況も,そのトレンドの信頼性を証明する.強いトレンドが逆転するときに,トレンドを捕獲するために,時効的に平仓する.

優位分析

マルーボトンの線段均衡戦略には以下の利点があります.

  1. マルボウは,非常に強力な一方的なトレンドシグナルを提供している.

  2. 線段均衡は偽突破を効果的にフィルタリングし,被套を避ける.線段不均衡が生じるときは,偽突破の危険性があることを示し,取引信号をスキップする.

  3. この2つのを使って,トレンドの逆転を判断し,トレンドを把握し,より高い利益を得ることができます.

  4. 戦略はシンプルでわかりやすく,理解し,実行しやすく,初心者のためのものです.

  5. どんな品種でも,どんな時代でも使える,適応力強い。

リスク分析

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

  1. 震動傾向を効果的にフィルタリングできないため,震動行情で仮想信号が多く発生し,封鎖されるリスクがある.パラメータを調整することで,保有期間を短縮したり,ストップロスを拡大したりして緩和することができる.

  2. パラメータ設定によって,異なるパラメータにより結果の差が大きい可能性があります.パラメータをリターンで最適化することができます.

  3. 副強気トレンドの判断ができない場合,極度のマルーボットのみに依存する判断を行うと,副強気チャンスは逃してしまう.緩い線段の均衡条件によって改善することができる.

戦略の最適化

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

  1. マルボボの判定された線段比の値を最適化し,識別感度を調整する.

  2. 均衡値のパラメータを最適化し,より均衡またはより不均衡の均衡型を識別する.

  3. 閉盤価格と移動平均の比較を補助判断指標として追加する.

  4. 取引量増加の突発性指標の判断

  5. 松線段の均衡要求により,より強力なマルーボーイングの機会を識別する.

要約する

マルーボの線段均衡戦略は,特定ののパターンを識別し,均衡判断に付随して,高確率の単面トレンドの機会を発見する.戦略は,簡単で分かりやすい,高い勝率を持ち,初心者の学習にも適し,潜在的機会を探し出すための高度なトレーダーにも適している.いくつかのパラメータと信号の最適化によってより良い効果を得ることができる.全体的には,非常に実用的な日間量化戦略である.

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

//@version=4

strategy(title="Marubozu", shorttitle="Marubozu", overlay=true, initial_capital = 1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent , commission_value=0 )

C_Len = 14 // ema depth for bodyAvg
C_ShadowPercent = 5.0 // size of shadows
C_ShadowEqualsPercent = 100.0
C_DojiBodyPercent = 5.0
C_Factor = 2.0 // shows the number of times the shadow dominates the candlestick body

C_BodyHi = max(close, open)
C_BodyLo = min(close, open)
C_Body = C_BodyHi - C_BodyLo
C_BodyAvg = ema(C_Body, C_Len)
C_SmallBody = C_Body < C_BodyAvg
C_LongBody = C_Body > C_BodyAvg
C_UpShadow = high - C_BodyHi
C_DnShadow = C_BodyLo - low
C_HasUpShadow = C_UpShadow > C_ShadowPercent / 100 * C_Body
C_HasDnShadow = C_DnShadow > C_ShadowPercent / 100 * C_Body
C_WhiteBody = open < close
C_BlackBody = open > close
C_Range = high-low
C_IsInsideBar = C_BodyHi[1] > C_BodyHi and C_BodyLo[1] < C_BodyLo
C_BodyMiddle = C_Body / 2 + C_BodyLo
C_ShadowEquals = C_UpShadow == C_DnShadow or (abs(C_UpShadow - C_DnShadow) / C_DnShadow * 100) < C_ShadowEqualsPercent and (abs(C_DnShadow - C_UpShadow) / C_UpShadow * 100) < C_ShadowEqualsPercent
C_IsDojiBody = C_Range > 0 and C_Body <= C_Range * C_DojiBodyPercent / 100
C_Doji = C_IsDojiBody and C_ShadowEquals

patternLabelPosLow = low - (atr(30) * 0.6)
patternLabelPosHigh = high + (atr(30) * 0.6)

C_MarubozuWhiteBullishNumberOfCandles = 1
C_MarubozuShadowPercentWhite = 5.0
C_MarubozuWhiteBullish = C_WhiteBody and C_LongBody and C_UpShadow <= C_MarubozuShadowPercentWhite/100*C_Body and C_DnShadow <= C_MarubozuShadowPercentWhite/100*C_Body and C_WhiteBody
alertcondition(C_MarubozuWhiteBullish, title = "Marubozu White", message = "New Marubozu White - Bullish pattern detected.")
if C_MarubozuWhiteBullish
    var ttBullishMarubozuWhite = "Marubozu White\nA Marubozu White Candle is a candlestick that does not have a shadow that extends from its candle body at either the open or the close. Marubozu is Japanese for “close-cropped” or “close-cut.” Other sources may call it a Bald or Shaven Head Candle."
    label.new(bar_index, patternLabelPosLow, text="MW", style=label.style_label_up, color = color.blue, textcolor=color.white, tooltip = ttBullishMarubozuWhite)
bgcolor(highest(C_MarubozuWhiteBullish?1:0, C_MarubozuWhiteBullishNumberOfCandles)!=0 ? color.blue : na, offset=-(C_MarubozuWhiteBullishNumberOfCandles-1))

C_MarubozuBlackBearishNumberOfCandles = 1
C_MarubozuShadowPercentBearish = 5.0
C_MarubozuBlackBearish = C_BlackBody and C_LongBody and C_UpShadow <= C_MarubozuShadowPercentBearish/100*C_Body and C_DnShadow <= C_MarubozuShadowPercentBearish/100*C_Body and C_BlackBody
alertcondition(C_MarubozuBlackBearish, title = "Marubozu Black", message = "New Marubozu Black - Bearish pattern detected.")
if C_MarubozuBlackBearish
    var ttBearishMarubozuBlack = "Marubozu Black\nThis is a candlestick that has no shadow, which extends from the red-bodied candle at the open, the close, or even at both. In Japanese, the name means “close-cropped” or “close-cut.” The candlestick can also be referred to as Bald or Shaven Head."
    label.new(bar_index, patternLabelPosHigh, text="MB", style=label.style_label_down, color = color.red, textcolor=color.white, tooltip = ttBearishMarubozuBlack)
bgcolor(highest(C_MarubozuBlackBearish?1:0, C_MarubozuBlackBearishNumberOfCandles)!=0 ? color.red : na, offset=-(C_MarubozuBlackBearishNumberOfCandles-1))

strategy.entry("short",1,when= C_MarubozuBlackBearish)

strategy.entry("long",0,when=C_MarubozuWhiteBullish)

strategy.close("long",when= close[1] < open[1]and close[2] < open[2] and close > open)
strategy.close("short",when= close[1] > open[1]and close[2] > open[2] and close < open)