CM Super Guppy Indicator: 23 EMAs for Trend Trading
CM Super Guppy displays two groups of exponential moving averages and a longer reference average. Its colors summarize how those averages are ordered. The ribbon can help describe a trend, but its 23 lines are related calculations from price, not 23 independent confirmations of a trade.

Which Super Guppy version are you using?
Community scripts with similar names can use different averages, periods, colors, and signals. The author of CM Super Guppy ala WY Strategy identifies it as a strategy adaptation of CM Super Guppy by FritzMurphy and credits both FritzMurphy and ChrisMoody. A strategy adaptation should not be assumed to have the same entry and exit rules as an indicator.
The settings and color rules below describe Pineify's CM Super Guppy implementation. When using a TradingView community publication, compare its source and inputs with these rules before interpreting its colors the same way.
| Group | Default EMA lengths, in bars | Role |
|---|---|---|
| Fast ribbon | 3, 6, 9, 12, 15, 18, 21 | Shorter lookback averages |
| Slow ribbon | 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66 | Longer lookback averages |
| Reference | 200 | Separate long lookback average |
These are different lengths on the calculation timeframe. On a one-hour chart, a 21-period EMA and a 66-period EMA both use hourly bars unless the script explicitly requests another timeframe. Calling their agreement "multi-timeframe confirmation" would be inaccurate.
An EMA weights recent observations more heavily than older ones. For length N, its smoothing factor is 2 ÷ (N + 1); each update combines the current source value with the previous EMA. The default source here is close. The averages still respond to price that has already occurred.
Read the colors as conditions
In Pineify's implementation, each group is bullish when its shorter EMAs are strictly above the next longer EMA throughout that group. The bearish condition reverses those comparisons.
- Fast cyan/aqua: both the fast and slow groups meet their bullish ordering conditions.
- Fast orange: both groups meet their bearish ordering conditions.
- Fast gray: neither combined condition is satisfied.
- Slow green or red: the slow group alone meets its bullish or bearish ordering condition; otherwise it is gray.
The 200 EMA is a separate reference line. It is not part of those color tests. Also, ordering within each group does not require the entire fast ribbon to sit above or below the entire slow ribbon. A rule requiring separation between the groups must test that separately.
Wider spacing describes greater separation between smoothed price series. Compression describes convergence. Neither specifies how long the condition will last or when the next breakout will occur. Gray bars can occur during a transition or within a range; gray is not a forecast that trading must be unprofitable.
Add the indicator to TradingView
Open a chart and use Indicators to search for the exact publication you want. Check the author, source availability, and whether it is an indicator or a strategy before adding it. Review its inputs, price source, and any timeframe setting. Save the publication URL and settings with your chart notes so another person can identify the same version.
If using Pineify to generate a chart with CM Super Guppy, review the exported source and settings in TradingView before relying on the display. Pineify's configurable EMA lengths and plotted color conditions describe the implementation; they do not establish a tested trading edge.
Use standard candlesticks when evaluating trade rules. Watch the indicator while a bar is open, then compare the closed bar with the saved observation. With close as its source, a developing bar can change the averages and their ordering. TradingView explains the difference between realtime and historical calculations in its repainting documentation.
Turn a ribbon interpretation into a test
"Buy when the ribbon looks strong" is not reproducible. One possible research rule is to enter long after a confirmed bar first satisfies both bullish ordering conditions, provided the previous bar did not. Exit after a confirmed bar no longer satisfies that combined condition. Specify the simulated fill timing and position size separately. This is a test specification, not a measured profitable strategy.
If you also want all fast averages above all slow averages, add that as an explicit rule. If you want price above the 200 EMA, record that filter independently. These conditions are different from the default color logic.
Before testing, save:
| Item | Required detail |
|---|---|
| Indicator | Publication or source version, source price, and every EMA length |
| Dataset | Exchange-qualified symbol, interval, sessions, and test dates |
| Orders | Exact entry event, exit event, order timing, and same-bar conflict policy |
| Exposure | Quantity rule, stop policy if any, and maximum concurrent positions |
| Costs | Commission, spread, and slippage assumptions |
| Comparison | Baseline rules and the single modification under evaluation |
Compare the baseline with and without the 200 EMA filter while keeping everything else fixed. Report trade count, drawdown, net result after modeled costs, and time in market. Keep a separate evaluation period that was not used to choose the periods or filters. TradingView's strategy documentation explains the broker emulator and testing assumptions.
If reporting a "false signal rate," define a false signal and its observation window before counting. If comparing trending and ranging periods, define those labels without using future trade profits to choose the categories. Otherwise, the test can simply label winning periods as trends after the fact.
What the ribbon cannot establish
No universal best timeframe, false-signal percentage, or profit factor is established here. Adding more averages does not add independent market information, and a larger lookback does not remove lag or whipsaw risk. A ribbon is useful when its exact conditions help you express and review a rule; the trading result still depends on entries, exits, sizing, costs, and the market sample.

