9日間のEBAブレイクバック・プルバック・トレード戦略

作者: リン・ハーンチャオチャン, 日時: 2023-09-20 11:45:21
タグ:

概要

この戦略は,EMAの価格ブレイクに基づいて市場方向を決定する判断指標として9日間のEMAを使用し,EMAの価格ブレイクに基づいて市場方向を決定する.EMAブレイクでロング/ショートに入り,価格が引き下げられると利益を得るために退場する.

戦略の論理

9日間のEMA線は,トレンド判断のために計算される.価格がEMA以下に開き,EMA上から閉じる場合,上向きブレイクアウトはロングに行くことを識別する.価格がEMA上から開き,EMA下から閉じる場合,下向きブレイクアウトはショートに行くことを識別する.

入場後,取利益ストップは,そのバーの高値/低値近くに設定されます.つまり,上向きブレイクアウトの取利益は,前のバーの高値であり,下向きブレイクアウトは,前のバーの低値です.価格が取利益レベルに達すると取引は終了します.

利点分析

この戦略は,トレンドを決定するためにEMAを使用し,EMAのブレイクアウトを入力し,効果的にトレンドを追跡する.近隣の取利益ポイントは,短期的な引き下げを捕捉することを目的としています.戦略の論理はシンプルで直接的で,自動化が簡単です.

EMA期間は柔軟性のためにカスタマイズできます.直接ストップ・プロフィートアプローチは,負ける取引を長時間持たないようにします.バックテストは明らかなトレンド期間に良いパフォーマンスを示します.

リスク分析

単一のEMA指標に依存することは,変動市場において傾向を特定するのが困難になり,過度に誤った信号が発生する危険性があります.近隣ストップ利益も,十分な傾向の動きを捉えることができません.

EMA期間を調整するか,追加の技術指標を組み込むことが判断を改善するのに役立ちます.トレイルストップ,ダイナミックアウトジットなどを通じてストップ・プロフィートを最適化することで,安定性も助かる可能性があります.資本管理を通じて取引先のポジションサイズを制御することでリスクがさらに制限されます.

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

  1. EMA パラメータをテストし最適化して より適した期間を見つけます

  2. ボリューム,波動性,または他の判断規則を追加します.

  3. ストップ・プロフィートの戦略を最適化します ストップ・トレイル,ダイナミック・エグジットなどです

  4. より多くの技術指標を組み合わせて 総合システムを作ります

  5. 傾向の方向性を予測するために機械学習を適用します

  6. 厳格な資本管理を導入し,取引ポジションのサイズを制御する.

概要

この戦略はシンプルなEMAブレイクバックシステムであり,明確で実行が簡単ですが,単一のEMAに依存することは限られています.より多くの技術指標を組み込むことで強度が向上できます.全体として,基本的な量子取引戦略のアイデアを提供します.


/*backtest
start: 2023-01-01 00:00:00
end: 2023-09-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("larry willians teste2", overlay=true)

//Window of time
start     = timestamp(2019, 00, 00, 00, 00)  // backtest start window
finish    = timestamp(2019, 12, 31, 23, 59)        // backtest finish window
window()  => true // create function "within window of time"  

ema9=ema(close,9) // Ema de 9 periodos

//Condições de compra
c1= (open< ema9 and close > ema9) //abrir abaixo da ema9 e fechar acima da ema9

if(window())
    if(c1)
        strategy.entry("Compra", true, stop = high) // Coloca ordem stopgain no topo anterior
    else
        strategy.cancel("Compra") // Cancela a ordem se o proximo candle não "pegar"
        
//codições de venda
v1= (open> ema9 and close < ema9) // abrir acima da ema9 e fechar abaixo ema9

if(window())
    if (v1)
        strategy.exit("Venda", from_entry = "Compra", stop = low) // Saida da entrada com stop no fundo anterior
    else
        strategy.cancel("Venda") //Cancela a ordem se o proximo candle não "pegar"



もっと