
Cette stratégie est une stratégie de suivi de tendance et de trading inverse basée sur des moyennes mobiles simples. Elle utilise une ligne de croisement de la ligne de 1 et de la ligne de 4 pour déterminer la direction de la tendance et générer des signaux d’achat et de vente.
Lorsque la ligne 1 journeuse traverse la ligne 4 journeuse de haut en bas, un signal de vente est généré; lorsque la ligne 1 journeuse traverse la ligne 4 journeuse de bas en haut, un signal d’achat est généré. Ainsi, en croisant les moyennes mobiles rapides et les moyennes mobiles lentes, le point de basculement de la tendance du marché est déterminé et un profit est réalisé.
Le stop-loss est défini à 10 points en dessous du prix d’entrée et le stop-loss est défini à 100 points au-dessus du prix d’entrée. Cela permet de limiter les pertes et de bloquer les bénéfices.
Il est possible de réduire ces risques en ajustant les paramètres de la moyenne, en définissant un mécanisme de stop-loss dynamique ou en ajoutant d’autres indicateurs de jugement.
Cette stratégie est globalement une stratégie de trading bi-équilibrée typique. Elle utilise des points de retournement de tendance de jugement de croisement des équilibres rapides et lents, définit les risques de contrôle de stop-loss, est simple, pratique, facile à comprendre et convient aux débutants.
/*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)