この戦略は,トレンドを決定するために,高速および遅いEMAラインの黄金十字と死亡十字を使用し,トレンドの実行のためのトレンドのトレンドのルールとして利益率を設定します.これは任意のタイムフレームに適用され,インデックスと株式の両方のトレンドを把握することができます.
この戦略は,3期と30期EMAを取引信号として採用している. 3EMAが30EMAを超えると,価格が上昇し始めることを示し,購入条件に適合する. 3EMAが30EMAを下回ると,価格が低下し始めることを示し,販売条件に適合する.
さらに,戦略には利益目標が設定されています. 価格が入場価格に上昇し,利益率に掛けると,ポジションは,より多くの利益をロックし,取引後にトレンドを達成するために閉鎖されます.
結論として,これは非常に実践的なトレンドフォロー戦略である.トレンド方向性を決定するために単純なEMA指標を採用し,長期にわたるストックとインデックスの中期から長期のトレンドを追跡するのに適したリスクを効果的に制御するために合理的な利益採取規則を設定する.パラメータ最適化と補完信号検証指標を通じて安定性と利益因子のさらなる改善を達成することができる.
/*backtest start: 2023-02-12 00:00:00 end: 2024-02-18 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("EMA Crossover Strategy with Target", shorttitle="EMACross", overlay=true) // Define input parameters fastLength = input(3, title="Fast EMA Length") slowLength = input(30, title="Slow EMA Length") profitPercentage = input(100.0, title="Profit Percentage") // Calculate EMAs fastEMA = ta.ema(close, fastLength) slowEMA = ta.ema(close, slowLength) // Plot EMAs on the chart plot(fastEMA, color=color.blue, title="Fast EMA") plot(slowEMA, color=color.red, title="Slow EMA") // Buy condition: 3EMA crosses above 30EMA buyCondition = ta.crossover(fastEMA, slowEMA) // Sell condition: 3EMA crosses below 30EMA or profit target is reached sellCondition = ta.crossunder(fastEMA, slowEMA) or close >= (strategy.position_avg_price * (1 + profitPercentage / 100)) // Target condition: 50 points profit //targetCondition = close >= (strategy.position_avg_price + 50) // Execute orders // strategy.entry("Buy", strategy.long, when=buyCondition) // strategy.close("Buy", when=sellCondition ) if (buyCondition) strategy.entry("Buy", strategy.long) if (sellCondition) strategy.close("Buy") // // Execute sell orders // strategy.entry("Sell", strategy.short, when=sellCondition) // strategy.close("Sell", when=buyCondition) // Plot buy and sell signals on the chart plotshape(series=buyCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar) plotshape(series=sellCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)