この戦略は,トレードシグナルの信頼性を向上させるために,相対力指数 (RSI),移動平均収束差 (MACD),平均真差 (ATR) と組み合わせて,2つの指数指数移動平均値 (EMA) のクロスオーバーを主な取引信号として使用する.高速EMAが遅いEMAを超えると,RSIが70を下回り,MACD線が信号線を超えると,ATR値が前期と比較して10%以上上昇すると,ロング信号が生成される.逆に,高速EMAが遅いEMAを下回ると,RSIが30を超えると,MACD線が信号線を下回り,ATR値が前期と比較して10%以上上昇すると,ショート信号が生成される.また,固定ポイントストップ・ロスト戦略は,リスクと利益コントロールを短くする.
この戦略は,EMA,RSI,MACD,ATRなどの複数の技術指標を組み合わせることで,比較的信頼性の高い取引信号を生成し,固定ポイントストップ損失と利益を引き取りを設定することでリスクを制御する.この戦略には依然としていくつかの欠点があるが,より多くの指標を導入し,ストップ損失と利益を引き取りを最適化し,基本的な分析を組み合わせることなど,さらなる最適化によって改善することができる.全体として,この戦略は論理的には明確で,理解し実行しやすく,初心者が学び使用するのに適している.
/*backtest start: 2024-03-01 00:00:00 end: 2024-03-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Enhanced EMA Crossover Strategy", overlay=true) // Indicators ema_fast = ema(close, 8) ema_slow = ema(close, 14) rsi = rsi(close, 14) // Correcting the MACD variable definitions [macd_line, signal_line, _] = macd(close, 12, 26, 9) atr_value = atr(14) // Entry conditions with additional filters long_condition = crossover(ema_fast, ema_slow) and rsi < 70 and (macd_line > signal_line) and atr_value > atr_value[1] * 1.1 short_condition = crossunder(ema_fast, ema_slow) and rsi > 30 and (macd_line < signal_line) and atr_value > atr_value[1] * 1.1 // Adding debug information plotshape(series=long_condition, color=color.green, location=location.belowbar, style=shape.xcross, title="Long Signal") plotshape(series=short_condition, color=color.red, location=location.abovebar, style=shape.xcross, title="Short Signal") // Risk management based on a fixed number of points stop_loss_points = 100 take_profit_points = 200 // Order execution if (long_condition) strategy.entry("Long", strategy.long, comment="Long Entry") strategy.exit("Exit Long", "Long", stop=close - stop_loss_points, limit=close + take_profit_points) if (short_condition) strategy.entry("Short", strategy.short, comment="Short Entry") strategy.exit("Exit Short", "Short", stop=close + stop_loss_points, limit=close - take_profit_points) // Plotting EMAs for reference plot(ema_fast, color=color.blue, title="Fast EMA") plot(ema_slow, color=color.orange, title="Slow EMA")