The guppy MMA oscillator is made of difference between 6 short term exponential moving average and 6 long term ones. Because of making the difference between 2 additions of moving average, it acts like a traditionnal MACD oscillator. Bullish signal occurs when the oscillator cross above the zero line and bearish signals when it crosses below this level.
I add an option to show oscillator as difference of price or as percentage.
//parameters
//n = 21
//percent = true (boolean)
short1 = exponentialaverage[3](close)
short2 = exponentialaverage[5](close)
short3 = exponentialaverage[8](close)
short4 = exponentialaverage[10](close)
short5 = exponentialaverage[12](close)
short6 = exponentialaverage[15](close)
short = short1+short2+short3+short4+short5+short6
long1 = exponentialaverage[30](close)
long2 = exponentialaverage[35](close)
long3 = exponentialaverage[40](close)
long4 = exponentialaverage[45](close)
long5 = exponentialaverage[50](close)
long6 = exponentialaverage[60](close)
long = long1+long2+long3+long4+long5+long6
GMMACD = exponentialaverage[n](short-long)
if (percent) THEN
GMMACD = exponentialaverage[n](((short-long)/long)*100)
ENDIF
RETURN GMMACD as "Guppy MMA Oscillator"