GMA - Who coud give me the formula?


I use Pattern Explore Plug-in for Amibroker, and I found GMAs in Guppy.
But I do not know GMA's formula.

Could you show me the GMA formula?

Thank you very much!


Welcome to Amibroker Community Forum

Please refer the attached link


Thank you very much for point me the link!
I've just code it, but I look, it do not like the Guppy.

Some thing wrong in my code?

Plot(C, "", colorDefault, styleCandle);

Per = Param("GMA Periods", 3, 1, 100, 1);

M = 2/(Per + 1);
a1 = (C - Ref(EMA(C, Per), -1)) * M + Ref(EMA(C, Per), -1);

Plot(a1, "GMA " + Per, colorAqua, styleLine);

Try like this

SetChartOptions(0, chartShowArrows | chartShowDates);

FastMAColor = ParamColor("Fast Group MA Color", colorGreen);
SlowMAColor = ParamColor("Slow Group MA Color", colorRed);

Plot(EMA(C, 3), _DEFAULT_NAME(), FastMAColor, styleLine);
Plot(EMA(C, 5), _DEFAULT_NAME(), FastMAColor, styleLine);
Plot(EMA(C, 8), _DEFAULT_NAME(), FastMAColor, styleLine);
Plot(EMA(C, 10), _DEFAULT_NAME(), FastMAColor, styleLine);
Plot(EMA(C, 12), _DEFAULT_NAME(), FastMAColor, styleLine);
Plot(EMA(C, 15), _DEFAULT_NAME(), FastMAColor, styleLine);

Plot(EMA(C, 30), _DEFAULT_NAME(), SlowMAColor, styleLine);
Plot(EMA(C, 35), _DEFAULT_NAME(), SlowMAColor, styleLine);
Plot(EMA(C, 40), _DEFAULT_NAME(), SlowMAColor, styleLine);
Plot(EMA(C, 45), _DEFAULT_NAME(), SlowMAColor, styleLine);
Plot(EMA(C, 50), _DEFAULT_NAME(), SlowMAColor, styleLine);
Plot(EMA(C, 60), _DEFAULT_NAME(), SlowMAColor, styleLine);

Another version using custom array and looping.

/// Guppy MA
/// @link
fast_per = MxFromString("{{"+ParamStr("Fast periods", "3,5,8,10,12,15")+"}}");
slow_per = MxFromString("{{"+ParamStr("Slow periods", "30,35,40,45,50,60")+"}}");
fast_color = ParamColor("Guppy Fast Color", colorGreen);
slow_color = ParamColor("Guppy Slow Color", colorRed);
colnum = Min(MxGetSize(fast_per,1),MxGetSize(slow_per,1));
SetChartOptions(0, chartShowArrows | chartShowDates | chartWrapTitle);
for ( j = 0; j < colnum; j++ ) {
    Plot(EMA(C,fast_per[0][j]), "Guppy fast", fast_color);
    Plot(EMA(C,slow_per[0][j]), "Guppy slow", slow_color);



Thank you very much Fx!

This topic was automatically closed 100 days after the last reply. New replies are no longer allowed.