週次ブレイクアウト移動平均取引戦略


作成日: 2024-01-18 11:47:25 最終変更日: 2024-01-18 11:47:25
コピー: 0 クリック数: 602
1
フォロー
1617
フォロワー

週次ブレイクアウト移動平均取引戦略

概要

この戦略は,ビットコインの周期の閉店価格と8週間のシンプル・ムービング・アヴェアに基づいて取引する.周期の閉店価格が8周線を越えたとき,多額の取引を行う.周期の閉店価格が8周線を越えたとき,平仓する.同時に,リスクを管理するために,ストップ・ストップ・レシオントを設定する.

戦略原則

この戦略は,ビットコインの周期の動きと8週間の簡易移動平均を分析して,市場が現在上昇傾向にあるか下降傾向にあるかを判断する.周期の収束価格が上方突破して8週間の線を突破すると,市場が上方通路に踏み入って,多額の利益を上げることを示す.周期の収束価格が8週間の線を下方突破すると,ビットコイン周期の収束価格が下方通路に踏み入ると,前回の多項を止めてしまうことを示す.

具体的には,以下のような判断条件が設定されています.

buy_condition= crossover(btc,ma)#周线收盘价上穿8周线,做多 
sell_condition= crossunder(btc,ma)#周线收盘价下穿8周线,平仓

買入条件が成立すると,戦略は多引入し,平置条件が成立すると,戦略はストップ・ストップ・ストップ・アウトを選択する.

ストップダストの比率は,以下のように設定されています.

loss_ratio=input(defval=1,title="LOSS RATIO", group="STRATEGY") 
reward_ratio=input(defval=3,title="REWARD RATIO", group="STRATEGY")

このうち,止損比はデフォルトで1,止損比はデフォルトで3。これは平仓信号が来ると,現在の利益であれば,利益の3倍で止まる,現在の損失であれば,損失の1倍で止まるという意味である。

優位分析

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

  1. 周線操作,小回撤,長線保持に適した
  2. 8週間のフィルター振動,主要トレンドを特定する
  3. ストップダストストップを設定し,リスクを制御する

リスク分析

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

  1. 周回操作,短期市場情勢に合わせてポジションを調整できない
  2. 突破信号は誤った信号になる可能性がある
  3. 市場異常時,ストップ・ストップの設定が有効になれない

対策として

  1. 短期的な調整の機会を特定するために,他の短期的な指標と組み合わせることができます.
  2. フィルタリング条件を追加し,誤信号を回避する
  3. 市場状況に応じてストップ・ストップの割合を調整し,損失を減らす

最適化の方向

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

  1. 突破信号の有効性を確保するために,他のフィルタリング条件を追加
  2. ストップ・ストップ比率の設定を最適化
  3. 短期指数と多時間枠の組み合わせ
  4. 機械学習アルゴリズムによるパラメータの自動最適化

要約する

この戦略は全体的に比較的単純で直接で,周線突破平均線によって市場動向を判断する.同時に,リスク制御のためにストップ・ストップを設定する.長線保有ビットコインの参照として使用できる.しかし,この戦略には一定の盲点もある.その後,信号の有効性を向上させ,パラメータの設定を最適化し,複数の時間枠の結合を実現するなど,改善することができる.

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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © taberandwords
//developer: taberandwords
//author: taberandwords
//@version=4

strategy("WEEKLY BTC TRADING SCRYPT","WBTS",overlay=false,default_qty_type=strategy.fixed)

source=input(defval=close,title="source",group="STRATEGY")

btc=security('BTCUSDT','1W', source)
ma=sma(btc,8)

buy_condition= crossover(btc,ma) 
sell_condition= crossunder(btc,ma)

ma_color=input(defval=#FF3232,title="COLOR",group="MA")
ma_linewidth=input(defval=2,title="LINE WIDTH",group="MA")
graphic_color=input(defval=#6666FF,title="COLOR",group="GRAPHIC")
graphic_linewidth=input(defval=2,title="LINE WIDTH",group="GRAPHIC")

start_date=input(defval=2020,title="YEAR",group="STRATEGY EXECUTION YEAR")

loss_ratio=input(defval=1,title="LOSS RATIO", group="STRATEGY")
reward_ratio=input(defval=3,title="REWARD RATIO", group="STRATEGY")

if(year>=start_date)
    strategy.entry('BUY',long=true,when=buy_condition,alert_message='Price came to buying value!')

    if(strategy.long)
        alert('BTC buy order trigerred!',alert.freq_once_per_bar)
    strategy.exit(id="SELL",loss=loss_ratio,profit=reward_ratio,when=sell_condition,alert_message='Price came to position closing value!')
    if(sell_condition)
        alert('BTC sell order trigerred!',alert.freq_once_per_bar)
plot(series=source,title="WEEKLY CLOSE",color=graphic_color,linewidth=graphic_linewidth)
plot(ma,title="SMA8 WEEKLY",color=ma_color,linewidth=ma_linewidth)
plot(strategy.equity,display=0)