Hi everyone,
I’m sharing this strategy I’ve been working on recently. It’s a breakout / explosive momentum designed for the Nasdaq working on H1 & H4.
Easy and straightforward strategy, can also be converted to an indicator and well adapted to stocks!
//------------------------------------------//
// Impulse Momentum Strategy - Nasdaq - Thibauld Robin
//------------------------------------------//
// Base
momLen = 13
volLen = 21
atrLen = 14
// MAs
fastMA = AVERAGE[9](CLOSE)
slowMA = AVERAGE[21](CLOSE)
// Momentum Components
priceMom = (CLOSE - CLOSE[momLen]) / CLOSE[momLen] * 100
volMom = (VOLUME - VOLUME[momLen]) / VOLUME[momLen] * 100
// Directional Movement
dmPos = HIGH - HIGH[1]
IF dmPos <= 0 THEN
dmPos = 0
ENDIF
dmNeg = LOW[1] - LOW
IF dmNeg <= 0 THEN
dmNeg = 0
ENDIF
dmFilter = 0
IF dmPos > dmNeg AND dmPos > 0 THEN
dmFilter = 1
ENDIF
// Volatility
atr = AVERAGETRUERANGE[atrLen](CLOSE)
volRatio = VOLUME / AVERAGE[volLen](VOLUME)
// Impulse Detection
impulseUp = (CLOSE - CLOSE[3]) / (HIGHEST[3](HIGH) - LOWEST[3](LOW)) * 100
impulsePower = (HIGH - LOW) / AVERAGE[5](HIGH - LOW)
// Normalized Components
normMom = (priceMom - LOWEST[momLen](priceMom)) / (HIGHEST[momLen](priceMom) - LOWEST[momLen](priceMom))
normImpulse = (impulseUp - LOWEST[momLen](impulseUp)) / (HIGHEST[momLen](impulseUp) - LOWEST[momLen](impulseUp))
// Composite Impulse Signal
signal = (normMom * 2 + normImpulse * 3) / 5
signalMA = AVERAGE[8](signal)
ONCE pos = 0
// Entry
IF signal > signalMA AND signal > 0.7 AND volRatio > 1.2 AND impulsePower > 1.8 AND dmFilter = 1 AND fastMA > slowMA AND pos = 0 THEN
BUY 1 CONTRACTS AT MARKET
SET STOP %LOSS 1
pos = 1
ENDIF
//Exit
IF pos = 1 AND (signal < signalMA OR CLOSE < fastMA) THEN
SELL AT MARKET
pos = 0
ENDIF