この戦略は,異なる長さのEMA指標を使用した二重EMAクロスに基づいたトレンドトレーディング戦略である.EMAラインのポジション関係を判断することによって,統合の現在のトレンドを決定する.また,ブレイクアウト中に価格とEMAラインの間のクロス状況を判断することによって,購入信号を生成する.また,利益とリスクを制御するために利益とストップロスのポイントを設定する.
この戦略は30期と60期 EMA線を使用する. EMA線は平らな移動平均線で,最近の価格により重みを当て,EMA線は価格変化により迅速に対応できる.
短期間EMA線が長期間EMA線を横切ると,買い信号が生成されます.これは現在上昇傾向を示します.価格が低期EMAを底から上へと突破すると,長期トレンドからのサポートにより価格が上昇し続けます.この時点で購入します.
この戦略は,利益とストップロスのポイントも設定する.利益を取ることは,最大利益をロックするために,最後の10バーの最高価格の最も高いポイントに設定される.ストップロスはリスクを制御するために,長いEMAラインに設定される.
この戦略の主な利点は以下の通りである.
この戦略の主なリスクは以下のとおりです.
対応する解法:
この戦略の主要な最適化方向は以下の通りである.
この戦略は,トレンド方向とシグナルトリガーのためのダブルEMAクロスを決定するためにEMAラインをベースとした典型的なトレンドトレーディング戦略である.正確性を向上させるために主要なトレンドとダブルクロスシグナルを判断するためにEMAラインを使用する.トレンド逆転に対するEMAラインの遅延応答とダブルクロスの間違ったシグナルはその主なリスクである.パラメータ最適化と補助システム拡張によって,この戦略の安定性と拡張性が向上することができる.一般的に,この戦略にはいくつかの実用的な有用性がある.
/*backtest start: 2023-12-23 00:00:00 end: 2024-01-22 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("EMA Cross Strategy", overlay=true) // 输入设置 ema30_length = input.int(30, title="EMA 30 Length", minval=1) ema60_length = input.int(60, title="EMA 60 Length", minval=1) // 计算EMA ema30 = ta.ema(close, ema30_length) ema60 = ta.ema(close, ema60_length) // 绘制EMA plot(ema30, title="EMA 30", color=color.blue, linewidth=2) plot(ema60, title="EMA 60", color=color.red, linewidth=2) // 判断上升趋势 uptrend = close > ema30 and ema30 > ema60 // 买入条件 buy_signal = ta.crossover(close, ema30) and close[1] < ema30[1] and close[1] > ema60[1] and uptrend // 止盈止损 take_profit_level = ta.highest(high, 10) stop_loss_level = ema60 // 执行交易 if (buy_signal) strategy.entry("Long", strategy.long) strategy.exit("Exit", "Long", stop=stop_loss_level, limit=take_profit_level)