Cette stratégie utilise les deux moyennes mobiles, les bandes de Brin et le MACD pour établir des conditions d’achat et de vente et effectuer des transactions sur un cycle de 5 minutes sur l’indice Nifty des banques. Acheter lorsque la fourchette MACD est morte et que le prix de clôture a dépassé la bande de Brin.
Voici la logique de négociation globale de cette stratégie.
Il s’agit d’une stratégie de tendance très pratique qui présente les avantages suivants:
Dans l’ensemble, la stratégie exploite les atouts des différents indicateurs, des jugements précis, des spécifications opérationnelles et constitue une stratégie de tendance fiable et contrôlable.
Malgré les avantages évidents de cette stratégie, il y a des risques à prendre en compte:
Les mesures et les solutions sont les suivantes:
Il y a encore de la place pour l’optimisation de cette stratégie:
Dans l’ensemble, la stratégie est très bien structurée et peut être améliorée par l’optimisation des paramètres, l’innovation des indicateurs et l’adaptation, ce qui en fait une stratégie de trading plus robuste et plus stable.
La stratégie MACD à double courbe utilise pleinement divers indicateurs pour déterminer le moment d’acheter ou de vendre. Elle combine l’identification de tendances avec le jugement des extrêmes, les spécifications d’exploitation et la maîtrise des risques, une stratégie de négociation stable et efficace.
/*backtest
start: 2023-11-28 00:00:00
end: 2023-12-28 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Modified MACD and Bollinger Band Strategy", shorttitle="Mod_MACD_BB", overlay=true)
var bool open_buy_position = na
var bool open_sell_position = na
// MACD settings
fast_length = input(12, title="Fast Length")
slow_length = input(26, title="Slow Length")
signal_length = input(9, title="Signal Length")
src = close
[macdLine, signalLine, _] = macd(src, fast_length, slow_length, signal_length)
// Bollinger Band settings
bb_length = input(20, title="Bollinger Band Length")
bb_mult = input(2, title="Bollinger Band Multiplier")
basis = sma(src, bb_length)
dev = bb_mult * stdev(src, bb_length)
upper_band = basis + dev
lower_band = basis - dev
// Define profit target and stop loss
profit_target = input(60, title="Profit Target (Points)")
stop_loss = input(30, title="Stop Loss (Points")
// Buy condition: MACD crosses up the signal line and close is above upper Bollinger Band
buy_condition = crossover(macdLine, signalLine) and close > upper_band
// Sell condition: MACD crosses below the signal line and close is below the lower Bollinger Band
sell_condition = crossunder(macdLine, signalLine) and close < lower_band
// Check for open positions
if (buy_condition)
open_buy_position := true
if (sell_condition)
open_sell_position := true
// Strategy Orders
strategy.entry("Buy", strategy.long, when = buy_condition and not open_sell_position)
strategy.exit("Take Profit/Stop Loss", from_entry = "Buy", limit = close + profit_target, stop = close - stop_loss)
strategy.entry("Sell", strategy.short, when = sell_condition and not open_buy_position)
strategy.exit("Take Profit/Stop Loss", from_entry = "Sell", limit = close - profit_target, stop = close + stop_loss)
// Reset open position status
if (sell_condition)
open_buy_position := na
if (buy_condition)
open_sell_position := na