OPEN-SOURCE SCRIPT
Darren - Engulfing + MACD Cross

Darren – Engulfing + MACD Cross
Overall Behavior
Inputs
• macdFast (default 12): length of MACD fast EMA
• macdSlow (default 26): length of MACD slow EMA
• macdSignal (default 9): length of MACD signal line
• windowBars (default 3): maximum bars allowed between an engulfing candle and a MACD crossover
Indicators
• macdLine and signalLine are calculated using ta.macd(close, macdFast, macdSlow, macdSignal)
• macdHist = macdLine – signalLine, plotted as columns (green when ≥ 0, red when < 0)
Engulfing Pattern Detection
• Bullish engulfing (bullEngulfing) is true when the previous candle is bearish (close[1] < open[1]), the current candle is bullish (close > open), and the current body fully engulfs the previous body (open < close[1] and close > open[1]).
• Bearish engulfing (bearEngulfing) is the inverse: previous candle bullish, current candle bearish, and current body fully engulfs the prior body.
MACD Crossover Detection
• macdCrossUp is true when macdLine crosses above signalLine.
• macdCrossDown is true when macdLine crosses below signalLine.
Timing Logic
• barsSinceBull = ta.barssince(bullEngulfing) returns number of bars since the last bullish engulfing.
• barsSinceBear = ta.barssince(bearEngulfing) returns number of bars since the last bearish engulfing.
• longCondition occurs if a MACD cross up happens within windowBars bars of a bullish engulfing (barsSinceBull ≤ windowBars and macdCrossUp).
• shortCondition occurs if a MACD cross down happens within windowBars bars of a bearish engulfing (barsSinceBear ≤ windowBars and macdCrossDown).
Chart Markers
• “Bull” label below bar whenever bullEngulfing is true.
• “Bear” label above bar whenever bearEngulfing is true.
• Small “Up” ▲ below bar when macdCrossUp is true.
• Small “Down” ▼ above bar when macdCrossDown is true.
• Triangle ▲ below bar for Long Entry (longCondition).
• Triangle ▼ above bar for Short Entry (shortCondition).
Entry & Exit Rules
• On longCondition: enter “Long”, and close any existing “Short” position.
• On shortCondition: enter “Short”, and close any existing “Long” position.
Overall Behavior
- Identify an engulfing candle (bullish or bearish).
- Wait up to windowBars bars for the corresponding MACD crossover (bullish engulfing → MACD cross up; bearish engulfing → MACD cross down).
- If the crossover occurs within that window, trigger an entry (long or short) and close any opposite open trade.
Inputs
• macdFast (default 12): length of MACD fast EMA
• macdSlow (default 26): length of MACD slow EMA
• macdSignal (default 9): length of MACD signal line
• windowBars (default 3): maximum bars allowed between an engulfing candle and a MACD crossover
Indicators
• macdLine and signalLine are calculated using ta.macd(close, macdFast, macdSlow, macdSignal)
• macdHist = macdLine – signalLine, plotted as columns (green when ≥ 0, red when < 0)
Engulfing Pattern Detection
• Bullish engulfing (bullEngulfing) is true when the previous candle is bearish (close[1] < open[1]), the current candle is bullish (close > open), and the current body fully engulfs the previous body (open < close[1] and close > open[1]).
• Bearish engulfing (bearEngulfing) is the inverse: previous candle bullish, current candle bearish, and current body fully engulfs the prior body.
MACD Crossover Detection
• macdCrossUp is true when macdLine crosses above signalLine.
• macdCrossDown is true when macdLine crosses below signalLine.
Timing Logic
• barsSinceBull = ta.barssince(bullEngulfing) returns number of bars since the last bullish engulfing.
• barsSinceBear = ta.barssince(bearEngulfing) returns number of bars since the last bearish engulfing.
• longCondition occurs if a MACD cross up happens within windowBars bars of a bullish engulfing (barsSinceBull ≤ windowBars and macdCrossUp).
• shortCondition occurs if a MACD cross down happens within windowBars bars of a bearish engulfing (barsSinceBear ≤ windowBars and macdCrossDown).
Chart Markers
• “Bull” label below bar whenever bullEngulfing is true.
• “Bear” label above bar whenever bearEngulfing is true.
• Small “Up” ▲ below bar when macdCrossUp is true.
• Small “Down” ▼ above bar when macdCrossDown is true.
• Triangle ▲ below bar for Long Entry (longCondition).
• Triangle ▼ above bar for Short Entry (shortCondition).
Entry & Exit Rules
• On longCondition: enter “Long”, and close any existing “Short” position.
• On shortCondition: enter “Short”, and close any existing “Long” position.
Script open-source
In pieno spirito TradingView, il creatore di questo script lo ha reso open-source, in modo che i trader possano esaminarlo e verificarne la funzionalità. Complimenti all'autore! Sebbene sia possibile utilizzarlo gratuitamente, ricorda che la ripubblicazione del codice è soggetta al nostro Regolamento.
Declinazione di responsabilità
Le informazioni ed i contenuti pubblicati non costituiscono in alcun modo una sollecitazione ad investire o ad operare nei mercati finanziari. Non sono inoltre fornite o supportate da TradingView. Maggiori dettagli nelle Condizioni d'uso.
Script open-source
In pieno spirito TradingView, il creatore di questo script lo ha reso open-source, in modo che i trader possano esaminarlo e verificarne la funzionalità. Complimenti all'autore! Sebbene sia possibile utilizzarlo gratuitamente, ricorda che la ripubblicazione del codice è soggetta al nostro Regolamento.
Declinazione di responsabilità
Le informazioni ed i contenuti pubblicati non costituiscono in alcun modo una sollecitazione ad investire o ad operare nei mercati finanziari. Non sono inoltre fornite o supportate da TradingView. Maggiori dettagli nelle Condizioni d'uso.