EMAの戦略

作者: リン・ハーンチャオチャン開催日:2023年9月26日 20:09:08
タグ:

概要

この戦略は,EMAラインの黄金十字と死十字をキャンドルストック閉値と組み合わせてエントリーと出口信号を決定します. 急速なEMAライン (8~13~21期) が中期EMAライン (55期) を越え,閉値が中期EMAを越えるときは長行し,急速なEMAラインが中期EMAを下回り,閉値が中期EMAを下回ると短行します. この戦略は日時・時間表にうまく機能します.

戦略の論理

この戦略は,EMAラインの黄金十字と死十字原則に基づいています.このコードは,異なる期間の5つのEMAライン (8-, 13-, 21-, 55-, 200期) を設定し,チャートに視覚化しています.コア論理は:

  1. 8~13~21期間の EMAが 55期間の EMAを超え,閉じる価格が 55期間の EMAを超えると,ロングする.

  2. 8~13~21期間の EMAが 55期間の EMAを下回り,閉場価格が 55期間の EMAを下回ると,ショートします.

短期間のEMA線と実際の閉値ブレイクと組み合わせることで,比較的信頼性の高いエントリー・アウトリーシグナルが生成できます.

利点分析

この戦略の利点は次のとおりです.

  1. EMAの黄金十字と死十字を使用することで,トレンドの変化を効果的に把握できます.

  2. EMA関係と閉じる価格を組み込むことで 偽のブレイクアウトをフィルタリングできます

  3. 異なる期間の複数の EMA を組み合わせることで,信号の信頼性が向上します.

  4. シンプルで分かりやすい論理で,初心者にも適しています.

  5. 調整可能な EMA 期間,異なる市場環境に適応できる.

  6. 視覚化されたEMA線は直感的な取引指標を形成します.

リスク分析

リスクもあります:

  1. EMAシステムでは市場差異を特定する性能が悪くて,誤った信号を生む可能性があります.

  2. EMAの閉値では 誤ったブレイクを完全に避けることはできません

  3. パラメータの設定が正しくない場合,過剰な取引とコスト増加につながる可能性があります.

  4. バックテストのバイアスリスク ライブパフォーマンスが劣る可能性があります

  5. 効果的なストップ損失制御がない場合 大損失を引き起こす可能性があります

改善 の 方向

戦略をさらに改善する方法:

  1. 信号フィルタリングのためにMACD,KDJなどの他の指標を追加します.

  2. トレンド検知を組み込み フリップサーを避ける

  3. ストップロスを設定して 単一の取引損失を制御する.

  4. 異なる製品に対して EMA 期間を最適化します

  5. 口座サイズに基づいてポジションサイズを設定する.

  6. 複数の時間枠で 機会を探してください

結論

EMA Close戦略は,EMA理論に基づいたシンプルで効果的なトレンドフォロー戦略である.クリーンなコードで強力な実用的な価値があり,初心者にとっては簡単に学習でき,より複雑なシステムにも統合できる.しかし,いくつかの制限があり,進化する市場に適応するためにさらなる最適化が必要である.全体として,EMA Close戦略は,深く研究する価値のある堅牢なトレンド取引フレームワークを提供します.


/*backtest
start: 2023-09-18 00:00:00
end: 2023-09-25 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © x11joe
strategy(title="EMA Candle Close Strategy", overlay=true,initial_capital=1000,commission_type=strategy.commission.percent,commission_value=0.26,default_qty_type=strategy.percent_of_equity,default_qty_value=100)

len1 = input(8, minval=1, title="EMA #1")
src1 = input(close, title="EMA Source #1")
out1 = ema(src1, len1)
plot(out1, title="EMA #1", color=close >= out1 ? color.gray : color.gray, linewidth = 1)

len2 = input(13, minval=1, title="EMA #2")
src2 = input(close, title="EMA Source #2")
out2 = ema(src2, len2)
plot(out2, title="EMA #2", color=close >= out2 ? color.white : color.white, linewidth = 2)

len3 = input(21, minval=1, title="EMA #3")
src3 = input(close, title="EMA Source #3")
out3 = ema(src3, len3)
plot(out3, title="EMA #3", color=close >= out3 ? color.blue : color.blue, linewidth = 3)

len4 = input(55, minval=1, title="EMA #4")
src4 = input(close, title="EMA Source #4")
out4 = ema(src4, len4)
plot(out4, title="EMA #4", color=close >= out4 ? color.yellow : color.yellow, linewidth = 3)

len5 = input(200, minval=1, title="EMA #5")
src5 = input(close, title="EMA Source #5")
out5 = ema(src5, len5)
plot(out5, title="EMA #5", color=close >= out5 ? #FF00FF : #FF00FF, linewidth = 4)

//Buying requires the 8,13 & 21 to close above the 55 and a candle closing above this.
if(out1>out4 and out2>out4 and out3>out4 and close>out4)
    strategy.entry("Long",strategy.long)
    
if(out1<out4 and out2<out4 and out3<out4 and close<out4)
    strategy.entry("Short",strategy.short)

もっと