
Cette stratégie, appelée “Jancok Strategycs v3”, est une stratégie de suivi de tendance multi-indicateurs basée sur les moyennes mobiles (MA), la variance de convergence des moyennes mobiles (MACD), l’indicateur de force relative (RSI) et la portée réelle moyenne (ATR). L’idée principale de cette stratégie est d’utiliser une combinaison de plusieurs indicateurs pour juger de la tendance du marché et de négocier dans la direction de la tendance.
La stratégie utilise les quatre indicateurs suivants pour évaluer les tendances du marché:
La logique de négociation de cette stratégie est la suivante:
Jancok Strategycs v3 est une stratégie de suivi de tendance basée sur une combinaison d’indicateurs multiples pour juger de la tendance du marché à l’aide d’indicateurs tels que les moyennes mobiles, le MACD, le RSI et l’ATR, et utilise des outils de gestion des risques tels que les arrêts de perte dynamiques et les arrêts de perte de suivi pour contrôler les risques et optimiser les gains. L’avantage de cette stratégie réside dans la précision du jugement des tendances, la flexibilité et l’adaptabilité de la gestion des risques.
/*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"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © financialAccou42381
//@version=5
strategy("Jancok Strategycs v3", overlay=true, initial_capital=100, currency="USD")
// Inputs
short_ma_length = input.int(9, title="Short MA Length", minval=1)
long_ma_length = input.int(21, title="Long MA Length", minval=1)
atr_multiplier_for_sl = input.float(2, title="ATR Multiplier for Stop Loss", minval=1.0)
atr_multiplier_for_tp = input.float(4, title="ATR Multiplier for Take Profit", minval=1.0)
volume_ma_length = input.int(20, title="Volume MA Length", minval=1)
volatility_threshold = input.float(1.5, title="Volatility Threshold", minval=0.1, step=0.1)
use_trailing_stop = input.bool(false, title="Use Trailing Stop")
trailing_stop_atr_multiplier = input.float(2.5, title="Trailing Stop ATR Multiplier", minval=1.0)
// Calculating indicators
short_ma = ta.sma(close, short_ma_length)
long_ma = ta.sma(close, long_ma_length)
[macdLine, signalLine, _] = ta.macd(close, 12, 26, 9)
atr = ta.atr(14)
volume_ma = ta.sma(volume, volume_ma_length)
volatility = atr / close
// Plotting indicators
plot(short_ma, color=color.red)
plot(long_ma, color=color.blue)
// Defining entry conditions with added indicators and filters
long_condition = ta.crossover(short_ma, long_ma) and (macdLine > signalLine) and (volume > volume_ma) and (volatility < volatility_threshold)
short_condition = ta.crossunder(short_ma, long_ma) and (macdLine < signalLine) and (volume > volume_ma) and (volatility < volatility_threshold)
// Entering trades with dynamic stop loss and take profit based on ATR
if (long_condition)
strategy.entry("Long", strategy.long)
if use_trailing_stop
strategy.exit("Exit Long", "Long", trail_points=atr * trailing_stop_atr_multiplier, trail_offset=atr * 0.5)
else
strategy.exit("Exit Long", "Long", loss=atr * atr_multiplier_for_sl, profit=atr * atr_multiplier_for_tp)
if (short_condition)
strategy.entry("Short", strategy.short)
if use_trailing_stop
strategy.exit("Exit Short", "Short", trail_points=atr * trailing_stop_atr_multiplier, trail_offset=atr * 0.5)
else
strategy.exit("Exit Short", "Short", loss=atr * atr_multiplier_for_sl, profit=atr * atr_multiplier_for_tp)