{"ticker": {"uuid": "4033572a-bc81-4db9-84da-af9f18a9d1a3", "symbol": "PPIH", "name": "Perma-Pipe International Holdings Inc", "exchange": "NASDAQ", "asset_type": "equity"}, "latest_week": "2026-06-12", "summary": "PPIH closed the latest completed week at 25.36 USD. The 4-week return is -20.7% and the 12-week return is -11.4%. Trend Signal is inactive, Market Dynamics is -0.46.", "description": "Perma-Pipe International Holdings, Inc. designs, manufactures, and sells leak detection systems and specialty piping. The company is headquartered in Niles, Illinois.", "setup_signature": "Risk-first tape", "composite_score": "26", "kpis": [{"label": "Latest Close", "value": "25.36 USD", "hint": "2026-06-12"}, {"label": "1W Return", "value": "-18.6%", "tone": "negative", "hint": "latest completed week"}, {"label": "4W Return", "value": "-20.7%", "tone": "negative", "hint": "short-term follow-through"}, {"label": "12W Return", "value": "-11.4%", "tone": "negative", "hint": "quarterly tape"}, {"label": "Trend Breadth", "value": "96.2%", "hint": "50 of 52 weeks active"}, {"label": "Volume Ratio", "value": "3.1x", "hint": "vs 13-week average"}], "classification": {"exchange": "NASDAQ", "country": "US", "sector": "Industrials", "industry": "Building Products & Equipment", "currency": "USD", "market_cap": "258.5M"}, "price": {"trend_line": "30.60 USD", "fair_value": "16.49 USD", "vs_trend": "-17.1%", "vs_fair_value": "53.8%", "high_52": "36.72 USD", "low_52": "17.99 USD", "drawdown": "-30.9%", "range_position": "39.4%"}, "momentum": {"returns": [{"label": "1W", "value": -18.58747993579454, "value_label": "-18.6%", "tone": "negative", "width": 53.107085530841545}, {"label": "4W", "value": -20.72522663332291, "value_label": "-20.7%", "tone": "negative", "width": 59.214933238065456}, {"label": "12W", "value": -11.42158574921411, "value_label": "-11.4%", "tone": "negative", "width": 32.63310214061174}, {"label": "26W", "value": -22.184719239030386, "value_label": "-22.2%", "tone": "negative", "width": 63.38491211151539}, {"label": "52W", "value": 46.33583381419505, "value_label": "46.3%", "tone": "positive", "width": 100}], "trend_streak": 0, "active_weeks": 50, "active_breadth": "96.2%", "peer": {"scope": "US Industrials", "count": 663, "rank": 641, "percentile": 3.3232628398791486, "avg_weekly_return": 1.452429949818802}}, "setup": {"scores": [{"label": "Trend", "value": 52.884615384615394, "value_label": "53", "width": 52.884615384615394, "tone": "neutral", "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": 0, "value_label": "0", "width": 4, "tone": "negative", "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": 100, "value_label": "100", "width": 100, "tone": "positive", "description": "Participation compared with the 13-week volume baseline."}, {"label": "Risk Control", "value": 3.935361640011976, "value_label": "4", "width": 4, "tone": "negative", "description": "Drawdown and recent weekly volatility pressure."}], "timeline": [{"week": "27 Feb", "return": -4.287403903015975, "return_label": "-4.3%", "tone": "negative", "trend": true, "buy_signal": false, "positive_md": true, "height": 35.72836585846646}, {"week": "6 Mar", "return": -11.677479147358659, "return_label": "-11.7%", "tone": "negative", "trend": true, "buy_signal": false, "positive_md": true, "height": 97.31232622798882}, {"week": "13 Mar", "return": -1.6789087093389312, "return_label": "-1.7%", "tone": "negative", "trend": true, "buy_signal": false, "positive_md": false, "height": 13.99090591115776}, {"week": "20 Mar", "return": 1.8498754891497673, "return_label": "1.8%", "tone": "positive", "trend": true, "buy_signal": false, "positive_md": false, "height": 15.415629076248061}, {"week": "27 Mar", "return": 2.4799161718477154, "return_label": "2.5%", "tone": "positive", "trend": true, "buy_signal": false, "positive_md": false, "height": 20.66596809873096}, {"week": "2 Apr", "return": 4.942058623040216, "return_label": "4.9%", "tone": "positive", "trend": true, "buy_signal": false, "positive_md": false, "height": 41.183821858668466}, {"week": "10 Apr", "return": 8.963949334199409, "return_label": "9.0%", "tone": "positive", "trend": true, "buy_signal": false, "positive_md": false, "height": 74.69957778499507}, {"week": "17 Apr", "return": -9.657228017883751, "return_label": "-9.7%", "tone": "negative", "trend": true, "buy_signal": false, "positive_md": false, "height": 80.47690014903127}, {"week": "24 Apr", "return": 5.905641702408455, "return_label": "5.9%", "tone": "positive", "trend": true, "buy_signal": false, "positive_md": false, "height": 49.213680853403794}, {"week": "1 May", "return": 3.084112149532716, "return_label": "3.1%", "tone": "positive", "trend": true, "buy_signal": false, "positive_md": false, "height": 25.7009345794393}, {"week": "8 May", "return": 2.085222121486847, "return_label": "2.1%", "tone": "positive", "trend": true, "buy_signal": false, "positive_md": true, "height": 17.376851012390393}, {"week": "15 May", "return": -5.298993487270582, "return_label": "-5.3%", "tone": "negative", "trend": true, "buy_signal": false, "positive_md": true, "height": 44.158279060588185}, {"week": "22 May", "return": -2.3444826508283843, "return_label": "-2.3%", "tone": "negative", "trend": true, "buy_signal": false, "positive_md": false, "height": 19.53735542356987}, {"week": "29 May", "return": -1.7605633802816811, "return_label": "-1.8%", "tone": "negative", "trend": true, "buy_signal": false, "positive_md": false, "height": 14.671361502347343}, {"week": "5 Jun", "return": 1.4988595633756836, "return_label": "1.5%", "tone": "positive", "trend": true, "buy_signal": false, "positive_md": false, "height": 12.49049636146403}, {"week": "12 Jun", "return": -18.58747993579454, "return_label": "-18.6%", "tone": "negative", "trend": false, "buy_signal": false, "positive_md": false, "height": 100}]}, "groups": {"sector": {"scope": "US Industrials", "count": 100, "avg_weekly_return": 1.3416835961300608, "avg_four_week_return": 3.9919056374990105, "avg_twelve_week_return": 12.883679276122864, "trend_breadth": 52.0, "positive_md_breadth": 45.0, "positive_rs_breadth": 48.0, "week_rank": null, "four_week_rank": null, "twelve_week_rank": null, "top_peers": [{"id": 1460, "symbol": "FDX", "name": "FedEx Corporation", "exchange": "NYSE", "url": "/terminal/58bbb408-f616-4154-8e5a-45305051ce09/report/", "weekly_return": 2.208459214501511, "weekly_return_label": "2.2%", "weekly_return_tone": "positive", "four_week_return": 38.19237623814953, "four_week_return_label": "38.2%", "four_week_return_tone": "positive", "twelve_week_return": -5.72384004458688, "twelve_week_return_label": "-5.7%", "twelve_week_return_tone": "negative", "trend_active": false, "positive_md": false, "positive_rs": true}, {"id": 861, "symbol": "CRS", "name": "Carpenter Technology Corporation", "exchange": "NYSE", "url": "/terminal/ab8d3913-8bd1-406f-9ec0-ceee1154b06f/report/", "weekly_return": 16.106286186931346, "weekly_return_label": "16.1%", "weekly_return_tone": "positive", "four_week_return": 37.307118577751694, "four_week_return_label": "37.3%", "four_week_return_tone": "positive", "twelve_week_return": 55.00890592406831, "twelve_week_return_label": "55.0%", "twelve_week_return_tone": "positive", "trend_active": true, "positive_md": true, "positive_rs": true}, {"id": 279, "symbol": "ATI", "name": "Allegheny Technologies Incorporated", "exchange": "NYSE", "url": "/terminal/0802cf34-ceb2-4495-9663-4626c3935957/report/", "weekly_return": 11.838620611934408, "weekly_return_label": "11.8%", "weekly_return_tone": "positive", "four_week_return": 28.69926079626507, "four_week_return_label": "28.7%", "four_week_return_tone": "positive", "twelve_week_return": 39.97179125528912, "twelve_week_return_label": "40.0%", "twelve_week_return_tone": "positive", "trend_active": true, "positive_md": true, "positive_rs": true}, {"id": 8693, "symbol": "UAL", "name": "United Airlines Holdings Inc", "exchange": "NASDAQ", "url": "/terminal/d4e9af52-c5f8-473a-9110-57dbcd7c3f9e/report/", "weekly_return": 9.259434408398743, "weekly_return_label": "9.3%", "weekly_return_tone": "positive", "four_week_return": 24.415724286483577, "four_week_return_label": "24.4%", "four_week_return_tone": "positive", "twelve_week_return": 28.42690383546414, "twelve_week_return_label": "28.4%", "twelve_week_return_tone": "positive", "trend_active": false, "positive_md": true, "positive_rs": false}, {"id": 7469, "symbol": "ODFL", "name": "Old Dominion Freight Line Inc", "exchange": "NASDAQ", "url": "/terminal/99ff4189-ce9b-4046-81bc-8230f52946fa/report/", "weekly_return": 1.310961784227236, "weekly_return_label": "1.3%", "weekly_return_tone": "positive", "four_week_return": 21.13621082974977, "four_week_return_label": "21.1%", "four_week_return_tone": "positive", "twelve_week_return": 33.61787733797304, "twelve_week_return_label": "33.6%", "twelve_week_return_tone": "positive", "trend_active": true, "positive_md": true, "positive_rs": true}]}, "industry": {"scope": "US Building Products & Equipment", "count": 33, "avg_weekly_return": -0.002058778740832187, "avg_four_week_return": 3.5754341439540616, "avg_twelve_week_return": 28.876356029509594, "trend_breadth": 39.39393939393939, "positive_md_breadth": 54.54545454545454, "positive_rs_breadth": 18.181818181818183, "week_rank": 31, "four_week_rank": 31, "twelve_week_rank": 31, "top_peers": [{"id": 1426, "symbol": "FBIN", "name": "Fortune Brands Innovations Inc.", "exchange": "NYSE", "url": "/terminal/527da4f1-aedf-47ea-b1cc-0d27cc0f9b48/report/", "weekly_return": 10.650281618023543, "weekly_return_label": "10.7%", "weekly_return_tone": "positive", "four_week_return": 26.61750790260821, "four_week_return_label": "26.6%", "four_week_return_tone": "positive", "twelve_week_return": 12.509013476611806, "twelve_week_return_label": "12.5%", "twelve_week_return_tone": "positive", "trend_active": false, "positive_md": false, "positive_rs": false}, {"id": 4021, "symbol": "TREX", "name": "Trex Company Inc", "exchange": "NYSE", "url": "/terminal/52982c17-d3cb-4322-9cf9-43ccde081e29/report/", "weekly_return": 15.081967213114764, "weekly_return_label": "15.1%", "weekly_return_tone": "positive", "four_week_return": 21.875000000000014, "four_week_return_label": "21.9%", "four_week_return_tone": "positive", "twelve_week_return": 26.785218116143373, "twelve_week_return_label": "26.8%", "twelve_week_return_tone": "positive", "trend_active": true, "positive_md": true, "positive_rs": false}, {"id": 2269, "symbol": "JELD", "name": "Jeld-Wen Holding Inc", "exchange": "NYSE", "url": "/terminal/161d8648-6a80-495b-9148-d00104080bc2/report/", "weekly_return": -4.8387096774193585, "weekly_return_label": "-4.8%", "weekly_return_tone": "negative", "four_week_return": 20.408163265306126, "four_week_return_label": "20.4%", "four_week_return_tone": "positive", "twelve_week_return": 42.74193548387097, "twelve_week_return_label": "42.7%", "twelve_week_return_tone": "positive", "trend_active": false, "positive_md": true, "positive_rs": false}, {"id": 4816, "symbol": "APOG", "name": "Apogee Enterprises Inc", "exchange": "NASDAQ", "url": "/terminal/a0e937a4-47e0-4215-9faf-080fad9af713/report/", "weekly_return": 8.457173736827892, "weekly_return_label": "8.5%", "weekly_return_tone": "positive", "four_week_return": 18.024110555718913, "four_week_return_label": "18.0%", "four_week_return_tone": "positive", "twelve_week_return": 27.475109960779342, "twelve_week_return_label": "27.5%", "twelve_week_return_tone": "positive", "trend_active": false, "positive_md": true, "positive_rs": false}, {"id": 8441, "symbol": "SWIM", "name": "Latham Group Inc", "exchange": "NASDAQ", "url": "/terminal/1f00dd96-4f18-4f7b-81a4-97785fdbdc93/report/", "weekly_return": 6.060606060606049, "weekly_return_label": "6.1%", "weekly_return_tone": "positive", "four_week_return": 17.64705882352941, "four_week_return_label": "17.6%", "four_week_return_tone": "positive", "twelve_week_return": 0.9009009009008978, "twelve_week_return_label": "0.9%", "twelve_week_return_tone": "positive", "trend_active": false, "positive_md": false, "positive_rs": false}]}}, "dynamics": {"market_dynamics": "-0.46", "market_dynamics_tone": "negative", "md_4_change": "-1152.9%", "relative_strength": "-24.60", "rs_4_change": "-2180.5%", "expectation": "Undecided", "expectation_probability": "48.86%"}, "volume": {"latest": "1.6M", "average_13": "503.8K", "average_52": "525.3K", "ratio_13": "3.1x", "ratio_52": "3.0x"}, "risk": {"volatility_13": "7.0%", "volatility_52": "8.8%", "downside_weeks": 23, "upside_weeks": 29, "downside_breadth": "44.2%", "average_gain": "6.9%", "average_loss": "-6.2%"}, "signals": [{"label": "Trend Signal", "value": "Inactive", "tone": "negative"}, {"label": "Market Dynamics", "value": "No fresh buy", "tone": "neutral"}, {"label": "Price vs Trend", "value": "-17.1%", "tone": "negative"}, {"label": "Volume", "value": "3.1x", "tone": "positive"}], "opportunities": ["Price is above Fair Value, showing premium demand versus the model.", "Volume is elevated versus the 13-week average, confirming attention."], "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.", "Market Dynamics is negative, which weakens the current setup.", "The share remains more than 20% below its 52-week high.", "The latest week was a sharp negative move."], "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": "25.36 USD", "weekly_return": -18.58747993579454, "weekly_return_label": "-18.6%", "weekly_return_tone": "negative", "trend_line": "30.60 USD", "fair_value": "16.49 USD", "market_dynamics": "-0.46", "relative_strength": "-24.60", "volume": "1.6M", "trend_signal": "Off"}, {"week": "2026-06-05", "close": "31.15 USD", "weekly_return": 1.4988595633756836, "weekly_return_label": "1.5%", "weekly_return_tone": "positive", "trend_line": "30.57 USD", "fair_value": "16.39 USD", "market_dynamics": "-0.34", "relative_strength": "-5.16", "volume": "357.8K", "trend_signal": "On"}, {"week": "2026-05-29", "close": "30.69 USD", "weekly_return": -1.7605633802816811, "weekly_return_label": "-1.8%", "weekly_return_tone": "negative", "trend_line": "30.45 USD", "fair_value": "16.26 USD", "market_dynamics": "-0.19", "relative_strength": "-10.15", "volume": "353.7K", "trend_signal": "On"}, {"week": "2026-05-22", "close": "31.24 USD", "weekly_return": -2.3444826508283843, "weekly_return_label": "-2.3%", "weekly_return_tone": "negative", "trend_line": "30.36 USD", "fair_value": "16.13 USD", "market_dynamics": "-0.03", "relative_strength": "-5.27", "volume": "550.4K", "trend_signal": "On"}, {"week": "2026-05-15", "close": "31.99 USD", "weekly_return": -5.298993487270582, "weekly_return_label": "-5.3%", "weekly_return_tone": "negative", "trend_line": "30.27 USD", "fair_value": "15.99 USD", "market_dynamics": "0.04", "relative_strength": "-1.08", "volume": "450.8K", "trend_signal": "On"}, {"week": "2026-05-08", "close": "33.78 USD", "weekly_return": 2.085222121486847, "weekly_return_label": "2.1%", "weekly_return_tone": "positive", "trend_line": "30.03 USD", "fair_value": "15.86 USD", "market_dynamics": "0.01", "relative_strength": "4.96", "volume": "321.1K", "trend_signal": "On"}, {"week": "2026-05-01", "close": "33.09 USD", "weekly_return": 3.084112149532716, "weekly_return_label": "3.1%", "weekly_return_tone": "positive", "trend_line": "29.74 USD", "fair_value": "15.71 USD", "market_dynamics": "-0.10", "relative_strength": "9.38", "volume": "345.6K", "trend_signal": "On"}, {"week": "2026-04-24", "close": "32.10 USD", "weekly_return": 5.905641702408455, "weekly_return_label": "5.9%", "weekly_return_tone": "positive", "trend_line": "29.39 USD", "fair_value": "15.56 USD", "market_dynamics": "-0.33", "relative_strength": "8.74", "volume": "734.8K", "trend_signal": "On"}, {"week": "2026-04-17", "close": "30.31 USD", "weekly_return": -9.657228017883751, "weekly_return_label": "-9.7%", "weekly_return_tone": "negative", "trend_line": "29.08 USD", "fair_value": "15.43 USD", "market_dynamics": "-0.64", "relative_strength": "6.04", "volume": "612.8K", "trend_signal": "On"}, {"week": "2026-04-10", "close": "33.55 USD", "weekly_return": 8.963949334199409, "weekly_return_label": "9.0%", "weekly_return_tone": "positive", "trend_line": "28.87 USD", "fair_value": "15.31 USD", "market_dynamics": "-0.88", "relative_strength": "25.71", "volume": "300.4K", "trend_signal": "On"}, {"week": "2026-04-02", "close": "30.79 USD", "weekly_return": 4.942058623040216, "weekly_return_label": "4.9%", "weekly_return_tone": "positive", "trend_line": "28.78 USD", "fair_value": "15.16 USD", "market_dynamics": "-1.10", "relative_strength": "22.19", "volume": "220.3K", "trend_signal": "On"}, {"week": "2026-03-27", "close": "29.34 USD", "weekly_return": 2.4799161718477154, "weekly_return_label": "2.5%", "weekly_return_tone": "positive", "trend_line": "28.77 USD", "fair_value": "15.03 USD", "market_dynamics": "-1.11", "relative_strength": "22.48", "volume": "384.7K", "trend_signal": "On"}, {"week": "2026-03-20", "close": "28.63 USD", "weekly_return": 1.8498754891497673, "weekly_return_label": "1.8%", "weekly_return_tone": "positive", "trend_line": "28.79 USD", "fair_value": "14.91 USD", "market_dynamics": "-0.69", "relative_strength": "16.89", "volume": "356.2K", "trend_signal": "On"}, {"week": "2026-03-13", "close": "28.11 USD", "weekly_return": -1.6789087093389312, "weekly_return_label": "-1.7%", "weekly_return_tone": "negative", "trend_line": "28.84 USD", "fair_value": "14.80 USD", "market_dynamics": "-0.24", "relative_strength": "13.58", "volume": "389.9K", "trend_signal": "On"}], "chart_url": "/terminal/4033572a-bc81-4db9-84da-af9f18a9d1a3/", "api_path": "/terminal/4033572a-bc81-4db9-84da-af9f18a9d1a3/report/api/"}