{"ticker": {"uuid": "ab4d8e20-36d0-47c5-a74d-99db4b30e9ef", "symbol": "SPP", "name": "The SPAR Group Ltd", "exchange": "JNB", "asset_type": "equity"}, "latest_week": "2026-06-12", "summary": "SPP closed the latest completed week at 5,213 ZAC. The 4-week return is -15.6% and the 12-week return is -17.6%. Trend Signal is inactive, Market Dynamics is -0.16.", "description": "The SPAR Group Ltd engages in the wholesale and distribution of goods and services to grocery stores and other group retail outlets in South Africa and internationally. The company offers fresh produce, in-store bakery, butchery, deli, ready-to-eat meals, home-meal replacements, groceries, general merchandise, baked foods, liquor products, building and hardware products, coffee, dispensary and health-related products, confectionery, health and beauty, frozen foods, catering products, wines, and non-food items. The SPAR Group Ltd operates stores under the SUPERSPAR, SPAR, KWIKSPAR, SPAR EXPRESS, PHARMACY at SPAR, TOPS at SPAR, and SAVEMOR brands. The company was founded in 1932 and is headquartered in Pinetown, South Africa.", "setup_signature": "Risk-first tape", "composite_score": "18", "kpis": [{"label": "Latest Close", "value": "5,213 ZAC", "hint": "2026-06-12"}, {"label": "1W Return", "value": "2.2%", "tone": "positive", "hint": "latest completed week"}, {"label": "4W Return", "value": "-15.6%", "tone": "negative", "hint": "short-term follow-through"}, {"label": "12W Return", "value": "-17.6%", "tone": "negative", "hint": "quarterly tape"}, {"label": "Trend Breadth", "value": "0.0%", "hint": "0 of 52 weeks active"}, {"label": "Volume Ratio", "value": "1.3x", "hint": "vs 13-week average"}], "classification": {"exchange": "JNB", "country": "ZA", "sector": "Consumer Defensive", "industry": "Food Distribution", "currency": "ZAC", "market_cap": "9.5B"}, "price": {"trend_line": "7,657 ZAC", "fair_value": "10,775 ZAC", "vs_trend": "-31.9%", "vs_fair_value": "-51.6%", "high_52": "11,324 ZAC", "low_52": "4,636 ZAC", "drawdown": "-54.0%", "range_position": "8.6%"}, "momentum": {"returns": [{"label": "1W", "value": 2.215686274509804, "value_label": "2.2%", "tone": "positive", "width": 6.330532212885154}, {"label": "4W", "value": -15.647249190938512, "value_label": "-15.6%", "tone": "negative", "width": 44.70642625982432}, {"label": "12W", "value": -17.581027667984188, "value_label": "-17.6%", "tone": "negative", "width": 50.23150762281197}, {"label": "26W", "value": -44.60148777895856, "value_label": "-44.6%", "tone": "negative", "width": 100}, {"label": "52W", "value": -52.383997077091706, "value_label": "-52.4%", "tone": "negative", "width": 100}], "trend_streak": 0, "active_weeks": 0, "active_breadth": "0.0%", "peer": {"scope": "ZA Consumer Defensive", "count": 21, "rank": 8, "percentile": 65.0, "avg_weekly_return": -0.5335833118435226}}, "setup": {"scores": [{"label": "Trend", "value": 0, "value_label": "0", "width": 4, "tone": "negative", "description": "Persistence of active Trend Signal over the last year and current streak."}, {"label": "Momentum", "value": 0, "value_label": "0", "width": 4, "tone": "negative", "description": "Blend of 4-week and 12-week follow-through."}, {"label": "Dynamics", "value": 52.78888157743456, "value_label": "53", "width": 52.78888157743456, "tone": "neutral", "description": "Latest Market Dynamics and whether pressure has improved over four weeks."}, {"label": "Relative Strength", "value": 0, "value_label": "0", "width": 4, "tone": "negative", "description": "Relative leadership and short-term RS change."}, {"label": "Volume", "value": 56.363608309362924, "value_label": "56", "width": 56.363608309362924, "tone": "neutral", "description": "Participation compared with the 13-week volume baseline."}, {"label": "Risk Control", "value": 0, "value_label": "0", "width": 4, "tone": "negative", "description": "Drawdown and recent weekly volatility pressure."}], "timeline": [{"week": "27 Feb", "return": -16.795804029085705, "return_label": "-16.8%", "tone": "negative", "trend": false, "buy_signal": false, "positive_md": false, "height": 100}, {"week": "6 Mar", "return": -8.696275071633238, "return_label": "-8.7%", "tone": "negative", "trend": false, "buy_signal": false, "positive_md": false, "height": 72.46895893027698}, {"week": "13 Mar", "return": -3.012709869763063, "return_label": "-3.0%", "tone": "negative", "trend": false, "buy_signal": false, "positive_md": false, "height": 25.105915581358857}, {"week": "20 Mar", "return": 2.3297201100145606, "return_label": "2.3%", "tone": "positive", "trend": false, "buy_signal": false, "positive_md": false, "height": 19.41433425012134}, {"week": "27 Mar", "return": 0.8695652173913043, "return_label": "0.9%", "tone": "positive", "trend": false, "buy_signal": false, "positive_md": false, "height": 7.246376811594203}, {"week": "3 Apr", "return": -3.4796238244514104, "return_label": "-3.5%", "tone": "negative", "trend": false, "buy_signal": false, "positive_md": false, "height": 28.99686520376175}, {"week": "10 Apr", "return": 0.5034101981162715, "return_label": "0.5%", "tone": "positive", "trend": false, "buy_signal": false, "positive_md": false, "height": 4.195084984302263}, {"week": "17 Apr", "return": 5.994506382291162, "return_label": "6.0%", "tone": "positive", "trend": false, "buy_signal": false, "positive_md": false, "height": 49.95421985242635}, {"week": "24 Apr", "return": -2.073170731707317, "return_label": "-2.1%", "tone": "negative", "trend": false, "buy_signal": false, "positive_md": false, "height": 17.276422764227643}, {"week": "1 May", "return": 0.5759651307596513, "return_label": "0.6%", "tone": "positive", "trend": false, "buy_signal": false, "positive_md": false, "height": 4.799709422997094}, {"week": "8 May", "return": -1.872775112211732, "return_label": "-1.9%", "tone": "negative", "trend": false, "buy_signal": false, "positive_md": false, "height": 15.6064592684311}, {"week": "15 May", "return": -2.5236593059936907, "return_label": "-2.5%", "tone": "negative", "trend": false, "buy_signal": false, "positive_md": false, "height": 21.03049421661409}, {"week": "22 May", "return": -7.3624595469255665, "return_label": "-7.4%", "tone": "negative", "trend": false, "buy_signal": false, "positive_md": false, "height": 61.353829557713055}, {"week": "29 May", "return": -14.899563318777293, "return_label": "-14.9%", "tone": "negative", "trend": false, "buy_signal": false, "positive_md": false, "height": 100}, {"week": "5 Jun", "return": 4.679802955665025, "return_label": "4.7%", "tone": "positive", "trend": false, "buy_signal": false, "positive_md": false, "height": 38.99835796387521}, {"week": "12 Jun", "return": 2.215686274509804, "return_label": "2.2%", "tone": "positive", "trend": false, "buy_signal": false, "positive_md": false, "height": 18.4640522875817}]}, "groups": {"sector": {"scope": "ZA Consumer Defensive", "count": 21, "avg_weekly_return": -0.5335833118435226, "avg_four_week_return": -0.253261569265739, "avg_twelve_week_return": -1.842395013581575, "trend_breadth": 33.33333333333333, "positive_md_breadth": 42.857142857142854, "positive_rs_breadth": 47.61904761904761, "week_rank": 8, "four_week_rank": 20, "twelve_week_rank": 19, "top_peers": [{"id": 46688, "symbol": "OCE", "name": "Oceana Group Limited", "exchange": "JNB", "url": "/terminal/3b047887-2251-4d38-affa-4c3e87d076f4/report/", "weekly_return": 4.161290322580645, "weekly_return_label": "4.2%", "weekly_return_tone": "positive", "four_week_return": 21.39097744360902, "four_week_return_label": "21.4%", "four_week_return_tone": "positive", "twelve_week_return": 12.528315037462972, "twelve_week_return_label": "12.5%", "twelve_week_return_tone": "positive", "trend_active": true, "positive_md": true, "positive_rs": true}, {"id": 46715, "symbol": "QFH", "name": "Quantum Foods Holdings Ltd", "exchange": "JNB", "url": "/terminal/e34890f8-2ee5-4c19-9cde-ebaa08d4429d/report/", "weekly_return": 9.227683049147442, "weekly_return_label": "9.2%", "weekly_return_tone": "positive", "four_week_return": 14.511041009463725, "four_week_return_label": "14.5%", "four_week_return_tone": "positive", "twelve_week_return": 20.59800664451827, "twelve_week_return_label": "20.6%", "twelve_week_return_tone": "positive", "trend_active": true, "positive_md": false, "positive_rs": true}, {"id": 46536, "symbol": "BRN", "name": "Brimstone Investment Corporation Limited", "exchange": "JNB", "url": "/terminal/1b28d108-4353-4bd7-a23f-5140baad5d81/report/", "weekly_return": 1.8867924528301887, "weekly_return_label": "1.9%", "weekly_return_tone": "positive", "four_week_return": 13.20754716981132, "four_week_return_label": "13.2%", "four_week_return_tone": "positive", "twelve_week_return": -1.7416137026822183, "twelve_week_return_label": "-1.7%", "twelve_week_return_tone": "negative", "trend_active": false, "positive_md": false, "positive_rs": true}, {"id": 46583, "symbol": "FBR", "name": "Famous Brands Limited", "exchange": "JNB", "url": "/terminal/aae1e365-e68c-43e7-b8ad-f3b580024846/report/", "weekly_return": 1.5311909262759926, "weekly_return_label": "1.5%", "weekly_return_tone": "positive", "four_week_return": 8.54890864995958, "four_week_return_label": "8.5%", "four_week_return_tone": "positive", "twelve_week_return": 3.0111238971998464, "twelve_week_return_label": "3.0%", "twelve_week_return_tone": "positive", "trend_active": false, "positive_md": true, "positive_rs": false}, {"id": 46550, "symbol": "CKS", "name": "Crookes Brothers Limited", "exchange": "JNB", "url": "/terminal/63a1c4a8-33d8-4e06-a386-668ad9bc1b0a/report/", "weekly_return": -0.24937655860349126, "weekly_return_label": "-0.2%", "weekly_return_tone": "negative", "four_week_return": 5.263157894736842, "four_week_return_label": "5.3%", "four_week_return_tone": "positive", "twelve_week_return": 11.049416990560799, "twelve_week_return_label": "11.0%", "twelve_week_return_tone": "positive", "trend_active": false, "positive_md": true, "positive_rs": false}]}, "industry": {"scope": "ZA Food Distribution", "count": 3, "avg_weekly_return": 2.9014843194538518, "avg_four_week_return": -0.9226704561628969, "avg_twelve_week_return": -2.990522704302119, "trend_breadth": 33.33333333333333, "positive_md_breadth": 66.66666666666666, "positive_rs_breadth": 0.0, "week_rank": 2, "four_week_rank": 3, "twelve_week_rank": 3, "top_peers": [{"id": 46583, "symbol": "FBR", "name": "Famous Brands Limited", "exchange": "JNB", "url": "/terminal/aae1e365-e68c-43e7-b8ad-f3b580024846/report/", "weekly_return": 1.5311909262759926, "weekly_return_label": "1.5%", "weekly_return_tone": "positive", "four_week_return": 8.54890864995958, "four_week_return_label": "8.5%", "four_week_return_tone": "positive", "twelve_week_return": 3.0111238971998464, "twelve_week_return_label": "3.0%", "twelve_week_return_tone": "positive", "trend_active": false, "positive_md": true, "positive_rs": false}, {"id": 46532, "symbol": "BID", "name": "Bid Corporation Limited", "exchange": "JNB", "url": "/terminal/5af981a2-82d5-4dc5-a644-3a8c80726bfe/report/", "weekly_return": 4.957575757575758, "weekly_return_label": "5.0%", "weekly_return_tone": "positive", "four_week_return": 4.330329172490241, "four_week_return_label": "4.3%", "four_week_return_tone": "positive", "twelve_week_return": 5.598335657877984, "twelve_week_return_label": "5.6%", "twelve_week_return_tone": "positive", "trend_active": true, "positive_md": true, "positive_rs": false}, {"id": 46781, "symbol": "SPP", "name": "The SPAR Group Ltd", "exchange": "JNB", "url": "/terminal/ab4d8e20-36d0-47c5-a74d-99db4b30e9ef/report/", "weekly_return": 2.215686274509804, "weekly_return_label": "2.2%", "weekly_return_tone": "positive", "four_week_return": -15.647249190938512, "four_week_return_label": "-15.6%", "four_week_return_tone": "negative", "twelve_week_return": -17.581027667984188, "twelve_week_return_label": "-17.6%", "twelve_week_return_tone": "negative", "trend_active": false, "positive_md": false, "positive_rs": false}]}}, "dynamics": {"market_dynamics": "-0.16", "market_dynamics_tone": "negative", "md_4_change": "70.8%", "relative_strength": "-43.36", "rs_4_change": "-13.7%", "expectation": "Undecided", "expectation_probability": "46.75%"}, "volume": {"latest": "5.1M", "average_13": "3.8M", "average_52": "3.3M", "ratio_13": "1.3x", "ratio_52": "1.5x"}, "risk": {"volatility_13": "5.2%", "volatility_52": "4.4%", "downside_weeks": 30, "upside_weeks": 22, "downside_breadth": "57.7%", "average_gain": "2.2%", "average_loss": "-3.9%"}, "signals": [{"label": "Trend Signal", "value": "Inactive", "tone": "negative"}, {"label": "Market Dynamics", "value": "No fresh buy", "tone": "neutral"}, {"label": "Price vs Trend", "value": "-31.9%", "tone": "negative"}, {"label": "Volume", "value": "1.3x", "tone": "neutral"}], "opportunities": ["No strong opportunity cluster is confirmed yet; monitor trend and Market Dynamics."], "risks": ["Trend Signal is inactive, so price action has not confirmed a constructive regime.", "Price is below the Trend Line, which keeps downside pressure in focus.", "Price is below Fair Value, so the market is still discounting the latest tape.", "Market Dynamics is negative, which weakens the current setup.", "The share remains more than 20% below its 52-week high."], "watch_points": ["Trend Line remains the key weekly regime level.", "Market Dynamics is the pressure gauge to monitor for confirmation or fade.", "A volume ratio above 1.5x would show stronger participation in the next move."], "recent_rows": [{"week": "2026-06-12", "close": "5,213 ZAC", "weekly_return": 2.215686274509804, "weekly_return_label": "2.2%", "weekly_return_tone": "positive", "trend_line": "7,657 ZAC", "fair_value": "10,775 ZAC", "market_dynamics": "-0.16", "relative_strength": "-43.36", "volume": "5.1M", "trend_signal": "Off"}, {"week": "2026-06-05", "close": "5,100 ZAC", "weekly_return": 4.679802955665025, "weekly_return_label": "4.7%", "weekly_return_tone": "positive", "trend_line": "7,839 ZAC", "fair_value": "10,807 ZAC", "market_dynamics": "-0.29", "relative_strength": "-44.76", "volume": "5.5M", "trend_signal": "Off"}, {"week": "2026-05-29", "close": "4,872 ZAC", "weekly_return": -14.899563318777293, "weekly_return_label": "-14.9%", "weekly_return_tone": "negative", "trend_line": "8,031 ZAC", "fair_value": "10,839 ZAC", "market_dynamics": "-0.42", "relative_strength": "-49.61", "volume": "5.9M", "trend_signal": "Off"}, {"week": "2026-05-22", "close": "5,725 ZAC", "weekly_return": -7.3624595469255665, "weekly_return_label": "-7.4%", "weekly_return_tone": "negative", "trend_line": "8,232 ZAC", "fair_value": "10,868 ZAC", "market_dynamics": "-0.47", "relative_strength": "-41.05", "volume": "2.2M", "trend_signal": "Off"}, {"week": "2026-05-15", "close": "6,180 ZAC", "weekly_return": -2.5236593059936907, "weekly_return_label": "-2.5%", "weekly_return_tone": "negative", "trend_line": "8,397 ZAC", "fair_value": "10,915 ZAC", "market_dynamics": "-0.55", "relative_strength": "-38.13", "volume": "3.2M", "trend_signal": "Off"}, {"week": "2026-05-08", "close": "6,340 ZAC", "weekly_return": -1.872775112211732, "weekly_return_label": "-1.9%", "weekly_return_tone": "negative", "trend_line": "8,539 ZAC", "fair_value": "10,953 ZAC", "market_dynamics": "-0.68", "relative_strength": "-39.30", "volume": "2.9M", "trend_signal": "Off"}, {"week": "2026-05-01", "close": "6,461 ZAC", "weekly_return": 0.5759651307596513, "weekly_return_label": "0.6%", "weekly_return_tone": "positive", "trend_line": "8,686 ZAC", "fair_value": "10,991 ZAC", "market_dynamics": "-0.93", "relative_strength": "-37.71", "volume": "2.3M", "trend_signal": "Off"}, {"week": "2026-04-24", "close": "6,424 ZAC", "weekly_return": -2.073170731707317, "weekly_return_label": "-2.1%", "weekly_return_tone": "negative", "trend_line": "8,806 ZAC", "fair_value": "11,036 ZAC", "market_dynamics": "-1.11", "relative_strength": "-39.72", "volume": "2.9M", "trend_signal": "Off"}, {"week": "2026-04-17", "close": "6,560 ZAC", "weekly_return": 5.994506382291162, "weekly_return_label": "6.0%", "weekly_return_tone": "positive", "trend_line": "8,924 ZAC", "fair_value": "11,085 ZAC", "market_dynamics": "-1.23", "relative_strength": "-41.67", "volume": "5.1M", "trend_signal": "Off"}, {"week": "2026-04-10", "close": "6,189 ZAC", "weekly_return": 0.5034101981162715, "weekly_return_label": "0.5%", "weekly_return_tone": "positive", "trend_line": "9,043 ZAC", "fair_value": "11,132 ZAC", "market_dynamics": "-1.31", "relative_strength": "-44.74", "volume": "2.2M", "trend_signal": "Off"}, {"week": "2026-04-03", "close": "6,158 ZAC", "weekly_return": -3.4796238244514104, "weekly_return_label": "-3.5%", "weekly_return_tone": "negative", "trend_line": "9,190 ZAC", "fair_value": "11,184 ZAC", "market_dynamics": "-1.33", "relative_strength": "-44.48", "volume": "2.4M", "trend_signal": "Off"}, {"week": "2026-03-27", "close": "6,380 ZAC", "weekly_return": 0.8695652173913043, "weekly_return_label": "0.9%", "weekly_return_tone": "positive", "trend_line": "9,333 ZAC", "fair_value": "11,235 ZAC", "market_dynamics": "-1.42", "relative_strength": "-41.20", "volume": "2.9M", "trend_signal": "Off"}, {"week": "2026-03-20", "close": "6,325 ZAC", "weekly_return": 2.3297201100145606, "weekly_return_label": "2.3%", "weekly_return_tone": "positive", "trend_line": "9,482 ZAC", "fair_value": "11,284 ZAC", "market_dynamics": "-1.36", "relative_strength": "-41.70", "volume": "6.6M", "trend_signal": "Off"}, {"week": "2026-03-13", "close": "6,181 ZAC", "weekly_return": -3.012709869763063, "weekly_return_label": "-3.0%", "weekly_return_tone": "negative", "trend_line": "9,634 ZAC", "fair_value": "11,332 ZAC", "market_dynamics": "-1.33", "relative_strength": "-46.26", "volume": "3.4M", "trend_signal": "Off"}], "chart_url": "/terminal/ab4d8e20-36d0-47c5-a74d-99db4b30e9ef/", "api_path": "/terminal/ab4d8e20-36d0-47c5-a74d-99db4b30e9ef/report/api/"}