Dies ist eine Trendfolgende und Umkehrhandelsstrategie, die auf einfachen gleitenden Durchschnitten basiert. Es verwendet die Überquerung von 1-Tage- und 4-Tage-gleitenden Durchschnitten, um die Trendrichtung zu bestimmen und Kauf- und Verkaufssignale zu generieren.
Wenn der 1-Tage-MA unter den 4-Tage-MA überschreitet, wird ein Verkaufssignal generiert. Wenn der 1-Tage-MA über den 4-Tage-MA überschreitet, wird ein Kaufsignal generiert.
Nach dem Markteintritt werden Stop-Loss- und Take-Profit-Punkte gesetzt. Der Stop-Loss wird 10 Punkte unter dem Einstiegspreis gesetzt. Der Take-Profit wird 100 Punkte über dem Einstiegspreis gesetzt. Dies kann Verluste begrenzen und Gewinne sperren.
Die Risiken können gemildert werden, indem Parameter eingestellt, dynamische Stopps eingestellt, andere Indikatoren für die Signalvalidierung eingesetzt werden usw.
Dies ist eine typische doppelte MA-Umkehrstrategie insgesamt. Sie identifiziert Umkehrungen durch schnelle und langsame MA-Kreuzungen, kontrolliert das Risiko mit Stopps, einfach und praktisch für Anfänger zu verstehen. Mit Parameter-Tuning und Optimierungen kann sie anpassungsfähig sein und Filter hinzufügen kann es weiter verbessern. Es ist eine sehr gute Starter-Strategie zum Lernen.
/*backtest start: 2023-11-19 00:00:00 end: 2023-12-19 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © cesarpieres72 //@version=5 strategy("300% STRATEGY", overlay=true, margin_long=10, margin_short=10) var float lastLongOrderPrice = na var float lastShortOrderPrice = na longCondition = ta.crossover(ta.sma(close, 1), ta.sma(close, 4)) if (longCondition) strategy.entry("Long Entry", strategy.long) // Enter long shortCondition = ta.crossunder(ta.sma(close, 1), ta.sma(close, 4)) if (shortCondition) strategy.entry("Short Entry", strategy.short) // Enter short if (longCondition) lastLongOrderPrice := close if (shortCondition) lastShortOrderPrice := close // Calculate stop loss and take profit based on the last executed order's price stopLossLong = lastLongOrderPrice - 170 // 10 USDT lower than the last long order price takeProfitLong = lastLongOrderPrice + 150 // 100 USDT higher than the last long order price stopLossShort = lastShortOrderPrice + 170 // 10 USDT higher than the last short order price takeProfitShort = lastShortOrderPrice - 150 // 100 USDT lower than the last short order price // Apply stop loss and take profit to long positions strategy.exit("Long Exit", from_entry="Long Entry", stop=stopLossLong, limit=takeProfitLong) // Apply stop loss and take profit to short positions strategy.exit("Short Exit", from_entry="Short Entry", stop=stopLossShort, limit=takeProfitShort)