{"ticker": {"uuid": "98474077-2958-4383-babe-4ef2013d5c4e", "symbol": "LSL", "name": "LSL Property Services plc", "exchange": "LSE", "country": "GB", "sector": "Real Estate", "industry": "Real Estate Services"}, "articles": [{"title": "LSL Property Services Completes Buyback of 130,000 Shares at Prices up to 256.2p in Early August 2026", "summary": "", "url": "", "source_name": "Kalkine Media", "published_at": "2026-08-10T06:01:20+00:00", "published_display": "10 Aug 2026 06:01", "sentiment": "positive", "sentiment_pct": 57, "event_type": "capital_return", "event_label": "Capital return", "event_confidence": 53, "tier": "direct", "tier_label": "Direct company coverage", "is_stale": false, "evidence_weight": 0.299, "duplicate_count": 1, "topics": []}], "by_tier": {"direct": [{"title": "LSL Property Services Completes Buyback of 130,000 Shares at Prices up to 256.2p in Early August 2026", "summary": "", "url": "", "source_name": "Kalkine Media", "published_at": "2026-08-10T06:01:20+00:00", "published_display": "10 Aug 2026 06:01", "provider": "", "sentiment": "positive", "sentiment_pct": 57, "event_type": "capital_return", "event_label": "Capital return", "event_confidence": 53, "tier": "direct", "tier_label": "Direct company coverage", "is_stale": false, "evidence_weight": 0.299, "duplicate_count": 1, "topics": []}], "industry": [], "sector": []}, "total_fetched": 1, "total_unique": 1, "total_relevant": 1, "pipeline_health": {"providers_attempted": 1, "providers_with_results": 0, "provider_counts": {"eodhd": 0}, "raw_articles": 0, "unique_stories": 0, "duplicates_removed": 0, "relevant_stories": 1, "current_evidence": 1, "direct_evidence": 1, "eodhd_articles": 0, "eodhd": {"configured": true, "status": "healthy", "calls_used": 260, "call_budget": 500, "budget_used_pct": 52.0, "requests_made": 52, "last_success_at": "2026-08-13T08:45:22.345153+00:00", "newest_seen_at": "2026-08-13T08:28:00+00:00", "rate_limit": 1200, "rate_remaining": 1199, "last_error": "", "mapped_mentions": 3297, "unmapped_mentions": 1906}, "status": "unavailable", "durable_evidence_used": true, "durable_collected_at": "2026-08-11T23:13:34.951929+00:00", "durable_newest_article_at": "2026-08-10T06:01:20+00:00", "durable_story_count": 1}, "sentiment_summary": {"positive": 1, "negative": 0, "neutral": 0, "score": 52, "raw_score": 57, "total": 1, "evidence_count": 1, "effective_articles": 1.0, "direct_story_count": 1, "industry_story_count": 0, "sector_story_count": 0, "story_count": 1, "source_count": 1, "source_concentration": 1.0, "direct_share": 100, "dispersion": 0, "confidence": 41, "evidence_status": "measured", "score_version": "evidence-v4", "newest_article_at": "2026-08-10T06:01:20+00:00", "label": "Balanced news tone", "tone": "neutral"}, "classifier": {"primary_event": "capital_return", "primary_label": "Capital return", "confidence": 72, "events": [{"event": "capital_return", "label": "Capital return", "weight": 0.6, "count": 1}], "positive_events": 1, "negative_events": 0, "pipeline": {"providers_attempted": 1, "providers_with_results": 0, "provider_counts": {"eodhd": 0}, "raw_articles": 0, "unique_stories": 0, "duplicates_removed": 0, "relevant_stories": 1, "current_evidence": 1, "direct_evidence": 1, "eodhd_articles": 0, "eodhd": {"configured": true, "status": "healthy", "calls_used": 260, "call_budget": 500, "budget_used_pct": 52.0, "requests_made": 52, "last_success_at": "2026-08-13T08:45:22.345153+00:00", "newest_seen_at": "2026-08-13T08:28:00+00:00", "rate_limit": 1200, "rate_remaining": 1199, "last_error": "", "mapped_mentions": 3297, "unmapped_mentions": 1906}, "status": "unavailable", "durable_evidence_used": true, "durable_collected_at": "2026-08-11T23:13:34.951929+00:00", "durable_newest_article_at": "2026-08-10T06:01:20+00:00", "durable_story_count": 1}}, "market_context": {"has_market_context": true, "latest_close": 258.0, "latest_week": "2026-08-07", "one_week_move": 5.3, "four_week_move": 14.7, "twelve_week_move": 22.9, "trend_signal": "0", "trend_label": "Trend inactive", "trend_tone": "negative", "market_dynamics": 1.371764, "market_dynamics_buy_signal": false, "relative_strength": -3.149742, "fair_value_gap": -4.6, "fair_value_label": "Near fair-value range", "fair_value_tone": "neutral", "expectation_direction": "undecided", "expectation_probability": 46.1923, "reaction_label": "Price confirming higher", "reaction_tone": "positive", "market_sentence": "+5.3% over one week, +14.7% over four weeks, trend inactive, and near fair-value range."}, "interpretation": {"label": "Price moving ahead of tone", "tone": "positive", "classification": "price_leads_news", "summary": "Price is moving more forcefully than the current news tone suggests.", "confidence": 47, "badges": [], "opportunities": [], "risks": [], "event_label": "Capital return", "sentiment_word": "balanced"}, "charts": {"sources": [{"label": "Kalkine Media", "count": 1}], "tiers": [{"label": "Direct company coverage", "count": 1}, {"label": "Industry context", "count": 0}, {"label": "Sector context", "count": 0}], "events": [{"label": "Capital return", "count": 1}]}, "insights": [{"label": "Weighted tone", "value": "52/100", "tone": "neutral", "text": "Balanced news tone"}, {"label": "Evidence confidence", "value": "41/100", "tone": "neutral", "text": "1.0 effective stories after overlap and weighting."}, {"label": "Market reaction", "value": "Price moving ahead of tone", "tone": "positive", "text": "Price is moving more forcefully than the current news tone suggests."}, {"label": "Primary event", "value": "Capital return", "tone": "neutral", "text": "72/100 classification confidence."}, {"label": "Company focus", "value": "1", "tone": "neutral", "text": "100% of weighted evidence is company-specific."}, {"label": "Evidence agreement", "value": "0/100", "tone": "positive", "text": "lower dispersion means the independent stories agree more closely."}, {"label": "Trend context", "value": "Trend inactive", "tone": "negative", "text": "+5.3% over one week, +14.7% over four weeks, trend inactive, and near fair-value range."}, {"label": "Latest direct headline", "value": "Positive", "tone": "positive", "text": "LSL Property Services Completes Buyback of 130,000 Shares at Prices up to 256.2p in Early August 2026"}], "updated_at": "2026-08-11T23:13:34.951929+00:00", "detail_intelligence": {"headline": "Price moving ahead of tone", "summary": "Balanced news tone is drawn from 1 fresh independent stories, including 1 company-specific items across 1 publishers.", "status": "measured", "metrics": [{"label": "Weighted tone", "value": 52, "display": "52", "tone": "neutral", "note": "Balanced news tone"}, {"label": "Evidence confidence", "value": 41, "display": "41", "tone": "neutral", "note": "building confidence"}, {"label": "Company focus", "value": 100, "display": "100%", "tone": "positive", "note": "1 direct stories"}, {"label": "Evidence agreement", "value": 0, "display": "N/A", "tone": "neutral", "note": "requires at least 2 stories"}], "confidence_drivers": [{"label": "Sample depth", "value": 12, "note": "1.0 effective stories"}, {"label": "Source breadth", "value": 20, "note": "1 independent publishers"}, {"label": "Direct relevance", "value": 100, "note": "company-specific evidence share"}, {"label": "Freshness", "value": 58, "note": "recency-weighted evidence"}, {"label": "Agreement", "value": 0, "note": "requires at least 2 stories"}, {"label": "Source independence", "value": 0, "note": "lower publisher concentration"}], "freshness": 58, "source_independence": 0, "timeline": [{"date": "2026-07-24", "label": "24 Jul", "count": 0, "score": null, "tone": "neutral", "x": 42.0, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-07-25", "label": "25 Jul", "count": 0, "score": null, "tone": "neutral", "x": 87.8, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-07-26", "label": "26 Jul", "count": 0, "score": null, "tone": "neutral", "x": 133.6, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-07-27", "label": "27 Jul", "count": 0, "score": null, "tone": "neutral", "x": 179.4, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-07-28", "label": "28 Jul", "count": 0, "score": null, "tone": "neutral", "x": 225.2, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-07-29", "label": "29 Jul", "count": 0, "score": null, "tone": "neutral", "x": 271.0, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-07-30", "label": "30 Jul", "count": 0, "score": null, "tone": "neutral", "x": 316.8, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-07-31", "label": "31 Jul", "count": 0, "score": null, "tone": "neutral", "x": 362.6, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-08-01", "label": "01 Aug", "count": 0, "score": null, "tone": "neutral", "x": 408.4, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-08-02", "label": "02 Aug", "count": 0, "score": null, "tone": "neutral", "x": 454.2, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-08-03", "label": "03 Aug", "count": 0, "score": null, "tone": "neutral", "x": 500.0, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-08-04", "label": "04 Aug", "count": 0, "score": null, "tone": "neutral", "x": 545.8, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-08-05", "label": "05 Aug", "count": 0, "score": null, "tone": "neutral", "x": 591.6, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-08-06", "label": "06 Aug", "count": 0, "score": null, "tone": "neutral", "x": 637.4, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-08-07", "label": "07 Aug", "count": 0, "score": null, "tone": "neutral", "x": 683.2, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-08-08", "label": "08 Aug", "count": 0, "score": null, "tone": "neutral", "x": 729.0, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-08-09", "label": "09 Aug", "count": 0, "score": null, "tone": "neutral", "x": 774.8, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-08-10", "label": "10 Aug", "count": 1, "score": 57, "tone": "neutral", "x": 820.6, "y": 122.3, "volume_height": 52.0, "volume_y": 214.0}, {"date": "2026-08-11", "label": "11 Aug", "count": 0, "score": null, "tone": "neutral", "x": 866.4, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-08-12", "label": "12 Aug", "count": 0, "score": null, "tone": "neutral", "x": 912.2, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}, {"date": "2026-08-13", "label": "13 Aug", "count": 0, "score": null, "tone": "neutral", "x": 958.0, "y": 135.0, "volume_height": 0.0, "volume_y": 266.0}], "timeline_points": "820.6,122.3", "timeline_has_signal": true, "timeline_start": "24 Jul", "timeline_mid": "03 Aug", "timeline_end": "13 Aug", "momentum": {"label": "Cooling", "tone": "neutral", "recent_score": null, "prior_score": 57, "delta": null, "recent_count": 0, "prior_count": 1, "volume_delta": -1}, "freshness_buckets": [{"label": "Last 24 hours", "count": 0, "share": 0}, {"label": "1 to 3 days", "count": 0, "share": 0}, {"label": "4 to 7 days", "count": 1, "share": 100}, {"label": "8 to 30 days", "count": 0, "share": 0}], "source_profile": [{"label": "Kalkine Media", "count": 1, "share": 100, "score": 57, "tone": "neutral"}], "event_profile": [{"label": "Capital return", "count": 1, "share": 100, "score": 57, "tone": "neutral"}], "topics": [], "supporting": [{"label": "Direct evidence", "text": "1 current stories are mapped specifically to LSL."}], "tempering": [{"label": "Source breadth", "text": "Only 1 publisher currently contribute to the measured read."}, {"label": "Price disagreement", "text": "Price is moving more forcefully than the current news tone suggests."}], "supporting_heading": "What supports the read", "tempering_heading": "What tempers the read", "latest_observation": {"title": "LSL Property Services Completes Buyback of 130,000 Shares at Prices up to 256.2p in Early August 2026", "summary": "", "url": "", "source_name": "Kalkine Media", "published_at": "2026-08-10T06:01:20+00:00", "published_display": "10 Aug 2026 06:01", "sentiment": "positive", "sentiment_pct": 57, "event_type": "capital_return", "event_label": "Capital return", "event_confidence": 53, "tier": "direct", "tier_label": "Direct company coverage", "is_stale": false, "evidence_weight": 0.299, "duplicate_count": 1, "topics": []}, "article_count": 1, "updated_at": "2026-08-11T23:13:34.951929+00:00"}, "price_sentiment_path": {"available": true, "price_points": [{"x": 42.0, "y": 55.8, "label": "13 Feb 2026", "close": 259.91, "index": 100.0}, {"x": 77.6, "y": 55.8, "label": "20 Feb 2026", "close": 259.91, "index": 100.0}, {"x": 113.3, "y": 67.7, "label": "27 Feb 2026", "close": 255.91, "index": 98.5}, {"x": 148.9, "y": 118.2, "label": "06 Mar 2026", "close": 238.92, "index": 91.9}, {"x": 184.5, "y": 147.9, "label": "13 Mar 2026", "close": 228.92, "index": 88.1}, {"x": 220.1, "y": 171.7, "label": "20 Mar 2026", "close": 220.92, "index": 85.0}, {"x": 255.8, "y": 156.9, "label": "27 Mar 2026", "close": 225.92, "index": 86.9}, {"x": 291.4, "y": 162.8, "label": "03 Apr 2026", "close": 223.92, "index": 86.2}, {"x": 327.0, "y": 165.8, "label": "10 Apr 2026", "close": 222.92, "index": 85.8}, {"x": 362.7, "y": 153.9, "label": "17 Apr 2026", "close": 226.92, "index": 87.3}, {"x": 398.3, "y": 174.7, "label": "24 Apr 2026", "close": 219.92, "index": 84.6}, {"x": 433.9, "y": 168.7, "label": "01 May 2026", "close": 221.92, "index": 85.4}, {"x": 469.5, "y": 174.7, "label": "08 May 2026", "close": 219.92, "index": 84.6}, {"x": 505.2, "y": 204.2, "label": "15 May 2026", "close": 210.0, "index": 80.8}, {"x": 540.8, "y": 180.4, "label": "22 May 2026", "close": 218.0, "index": 83.9}, {"x": 576.4, "y": 180.4, "label": "29 May 2026", "close": 218.0, "index": 83.9}, {"x": 612.1, "y": 201.2, "label": "05 Jun 2026", "close": 211.0, "index": 81.2}, {"x": 647.7, "y": 180.4, "label": "12 Jun 2026", "close": 218.0, "index": 83.9}, {"x": 683.3, "y": 204.2, "label": "19 Jun 2026", "close": 210.0, "index": 80.8}, {"x": 718.9, "y": 192.3, "label": "26 Jun 2026", "close": 214.0, "index": 82.3}, {"x": 754.6, "y": 204.2, "label": "03 Jul 2026", "close": 210.0, "index": 80.8}, {"x": 790.2, "y": 159.6, "label": "10 Jul 2026", "close": 225.0, "index": 86.6}, {"x": 825.8, "y": 150.7, "label": "17 Jul 2026", "close": 228.0, "index": 87.7}, {"x": 861.5, "y": 106.1, "label": "24 Jul 2026", "close": 243.0, "index": 93.5}, {"x": 897.1, "y": 100.1, "label": "31 Jul 2026", "close": 245.0, "index": 94.3}, {"x": 932.7, "y": 61.5, "label": "07 Aug 2026", "close": 258.0, "index": 99.3}], "sentiment_points": [{"x": 689.9, "y": 126.3, "label": "20 Jun 2026", "score": 52}, {"x": 694.2, "y": 120.8, "label": "21 Jun 2026", "score": 55}, {"x": 697.4, "y": 120.8, "label": "21 Jun 2026", "score": 55}, {"x": 698.4, "y": 122.6, "label": "21 Jun 2026", "score": 54}, {"x": 703.9, "y": 122.6, "label": "23 Jun 2026", "score": 54}, {"x": 704.3, "y": 122.6, "label": "23 Jun 2026", "score": 54}, {"x": 717.8, "y": 122.6, "label": "25 Jun 2026", "score": 54}, {"x": 733.7, "y": 124.5, "label": "28 Jun 2026", "score": 53}, {"x": 737.0, "y": 124.5, "label": "29 Jun 2026", "score": 53}, {"x": 751.2, "y": 119.0, "label": "02 Jul 2026", "score": 56}, {"x": 751.8, "y": 117.1, "label": "02 Jul 2026", "score": 57}, {"x": 770.9, "y": 113.4, "label": "06 Jul 2026", "score": 59}, {"x": 797.4, "y": 119.0, "label": "11 Jul 2026", "score": 56}, {"x": 798.6, "y": 119.0, "label": "11 Jul 2026", "score": 56}, {"x": 799.9, "y": 119.0, "label": "11 Jul 2026", "score": 56}, {"x": 829.5, "y": 124.5, "label": "17 Jul 2026", "score": 53}, {"x": 840.6, "y": 126.3, "label": "19 Jul 2026", "score": 52}, {"x": 844.8, "y": 122.6, "label": "20 Jul 2026", "score": 54}, {"x": 851.8, "y": 120.8, "label": "22 Jul 2026", "score": 55}, {"x": 853.5, "y": 122.6, "label": "22 Jul 2026", "score": 54}, {"x": 860.7, "y": 122.6, "label": "23 Jul 2026", "score": 54}, {"x": 861.3, "y": 122.6, "label": "23 Jul 2026", "score": 54}, {"x": 866.1, "y": 126.3, "label": "24 Jul 2026", "score": 52}, {"x": 900.0, "y": 126.3, "label": "31 Jul 2026", "score": 52}, {"x": 937.1, "y": 111.6, "label": "07 Aug 2026", "score": 60}, {"x": 947.7, "y": 107.9, "label": "09 Aug 2026", "score": 62}, {"x": 953.8, "y": 117.1, "label": "11 Aug 2026", "score": 57}, {"x": 958.0, "y": 117.1, "label": "11 Aug 2026", "score": 57}], "price_path": "42.0,55.8 77.6,55.8 113.3,67.7 148.9,118.2 184.5,147.9 220.1,171.7 255.8,156.9 291.4,162.8 327.0,165.8 362.7,153.9 398.3,174.7 433.9,168.7 469.5,174.7 505.2,204.2 540.8,180.4 576.4,180.4 612.1,201.2 647.7,180.4 683.3,204.2 718.9,192.3 754.6,204.2 790.2,159.6 825.8,150.7 861.5,106.1 897.1,100.1 932.7,61.5", "sentiment_path": "689.9,126.3 694.2,120.8 697.4,120.8 698.4,122.6 703.9,122.6 704.3,122.6 717.8,122.6 733.7,124.5 737.0,124.5 751.2,119.0 751.8,117.1 770.9,113.4 797.4,119.0 798.6,119.0 799.9,119.0 829.5,124.5 840.6,126.3 844.8,122.6 851.8,120.8 853.5,122.6 860.7,122.6 861.3,122.6 866.1,126.3 900.0,126.3 937.1,111.6 947.7,107.9 953.8,117.1 958.0,117.1", "price_change": -0.7, "sentiment_change": 5, "latest_close": 258.0, "start_label": "13 Feb", "mid_label": "15 May", "end_label": "07 Aug"}, "disclaimer": "Educational market research only. Not financial, investment, trading, tax, or legal advice."}