{
 "schema_name": "page",
 "schema_version": "2.0",
 "page_type": "history",
 "url": "/authors/soccerloy/picks/3/",
 "canonical": "/authors/soccerloy/picks/3/",
 "language": "en",
 "hreflang": [],
 "translations": [],
 "heading": "SoccerLoy — football predictions, page 3 of 4",
 "description": "Predictions 21–40 of 56 by SoccerLoy, with outcomes in words and links to the evidence.",
 "first_paragraph": {
  "body": "Page 3 of 4 of the predictions by SoccerLoy recorded by Forecast Record: predictions 21–40 of 56 in the order we recorded them, earliest first; as of 7 November 2026. Each row links to its evidence, and the summary of the record is on the profile page.",
  "key_number": "56",
  "data": "2026-11-07",
  "source_info": "our own evidence archive",
  "brand": "Forecast Record"
 },
 "indexable": false,
 "noindex_reason": "technical",
 "indexing_threshold": {
  "settled_count": 0,
  "date_count": 0,
  "required_settled": 0,
  "required_dates": 0
 },
 "data_date": "2026-11-07T17:49:04.754Z",
 "built_at": "2026-11-07T19:52:23.438Z",
 "lastmod": "2026-11-07T19:52:23.438Z",
 "content_hash": null,
 "meaning_hash": "7ba7f1f65d9375aadb4c24b9f6256d999b0aa3a24873390116107c12cc158ea2",
 "dependency_group": "author:e-12371f096805c5ddb717b85f",
 "release_id": "20261107-195223",
 "markup": [
  {
   "type_code": "WebPage",
   "allowed": true,
   "cause": null
  },
  {
   "type_code": "Organization",
   "allowed": true,
   "cause": null
  }
 ],
 "exports": [
  {
   "type_code": "json",
   "url": "/authors/soccerloy/picks/3/index.json",
   "bytes": null
  }
 ],
 "modules": {
  "affiliate": false,
  "api": true,
  "compare_yourself": false
 },
 "affiliate_block": null,
 "restrictions": {
  "name_withdrawn": false,
  "tracker_number": null,
  "withdrawn_quotes": [],
  "removed_at": null,
  "cause": null,
  "suspended_records": [],
  "withdrawal_log_number": 0
 },
 "page_links": {
  "methodology": "/methodology/",
  "right_of_reply": "/right-of-reply/",
  "source_coverage": "/coverage/",
  "corrections_log": "/corrections/",
  "api": "/api/",
  "claim": "/claim/"
 },
 "entity": {
  "id": "e-12371f096805c5ddb717b85f",
  "public_name": "SoccerLoy",
  "tracker_number": 5853,
  "status": "active",
  "inactive_since": null,
  "verified_creator": false,
  "observation_period": {
   "since": "2026-10-25",
   "until": "2026-11-07"
  },
  "platform_list": [
   {
    "medium": "website",
    "handle": null,
    "url": null,
    "link_confirmed": false,
    "show": true
   }
  ],
  "comment": null
 },
 "recorded_picks": [
  {
   "record_id": "n-2d97ddac316f553c548c5186",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Prediction: Away win @ 1.31",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T07:00:35.000Z",
   "recorded_at": "2026-10-25T03:42:38.919Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-6018e7118e6c45fd10737f92",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Prediction: Over 2.5 @ 1.33",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T07:00:35.000Z",
   "recorded_at": "2026-10-25T03:42:38.919Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-40675396acac5d4620ef285e",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Prediction: Home win @ 1.36",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-15T07:00:34.000Z",
   "recorded_at": "2026-10-25T03:42:39.753Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-de0c11efea46de38943b503d",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Prediction: Over 2.5 @ 1.43",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-15T07:00:34.000Z",
   "recorded_at": "2026-10-25T03:42:39.753Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-0c1a4c3a8fae93acd7f72ec3",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Prediction: Over 2.5 @ 1.30",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-16T07:00:44.000Z",
   "recorded_at": "2026-10-25T03:42:40.560Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-83ae98d57713e330956db54b",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Prediction: Over 2.5 @ 1.33",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-16T07:00:44.000Z",
   "recorded_at": "2026-10-25T03:42:40.560Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-04e99ef98697cebcf45484ff",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Prediction: Over 2.5 @ 1.36",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-17T07:01:36.000Z",
   "recorded_at": "2026-10-25T03:42:41.336Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-6f5fedcb2f2f6c88659705f2",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Prediction: Home win @ 1.31",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-17T07:01:36.000Z",
   "recorded_at": "2026-10-25T03:42:41.336Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-1f67d1d43aa42823782906c4",
   "url": "/authors/soccerloy/picks/3/#pick-n-1f67d1d43aa42823782906c4",
   "match": "Union St. Gilloise v Cercle Brugge",
   "match_url": "/football/matches/union-st-gilloise-vs-cercle-brugge-2026-10-25/",
   "kickoff": "2026-10-25T18:15:00.000Z",
   "competition": "Belgian Pro League",
   "lead_hours": 11.2,
   "market_code": "1x2",
   "author_said": "1X2, match result: Union St. Gilloise at 1.32",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Won",
   "final_score": "5-2",
   "reason": "graded against the result: right",
   "reason_code": "not_checked",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-25T07:00:54.000Z",
   "recorded_at": "2026-10-25T07:03:14.650Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-1f67d1d43aa42823782906c4",
    "quote_text": "Prediction: Home win @ 1.32",
    "fragment_from": 205,
    "fragment_to": 232,
    "quote_allowed": true,
    "source_info": {
     "medium": "telegram",
     "url": "https://t.me/soccerloy/4148",
     "display_name": null,
     "speaker": "SoccerLoy",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "e021172b163e9056e69073565af51a6268fdb5a1fe08bda621f70d150cc72276",
     "material_removed": false
    },
    "published_at": "2026-10-25T07:00:54.000Z",
    "detected_at": "2026-10-25T07:03:14.650Z",
    "executed_at": null,
    "statement_class": "priced",
    "status": "ambiguous",
    "cause": "",
    "cause_code": "not_checked",
    "event": {
     "event_id": "s-8590be27ecc0",
     "display_name": "Union St. Gilloise — Cercle Brugge",
     "competition_name": "Belgian Pro League",
     "starts_at": "2026-10-25T18:15:00.000Z",
     "url": "/football/matches/union-st-gilloise-vs-cercle-brugge-2026-10-25/",
     "scoreline": "5-2",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "Union St. Gilloise",
    "odds_set": {
     "by_author": "1.32",
     "our_snapshot": null,
     "our_snapshot_at": null,
     "our_snapshot_source": null,
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": null,
    "result": "win",
    "simulation_change_hundredths": null,
    "bankroll_after_hundredths": null,
    "executed_by": null,
    "series_label": null,
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-25T07:00:54.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-25T07:00:54.000Z",
     "detected_at": "2026-10-25T07:03:14.650Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "1X2, match result",
     "choice": "Union St. Gilloise",
     "author_odds": "1.32",
     "market_key": "1x2",
     "choice_key": "1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: Union St. Gilloise at 1.32"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "5-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Union St. Gilloise 5-2 Cercle Brugge."
    },
    "settlements": [
     {
      "operation_id": "3654d82e1e10a31ee0628e2c9d0acbd165240a2130773fdde49e1d32d93aed1d",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "1X2, match result",
      "choice": "Union St. Gilloise",
      "decimal_odds": null,
      "odds_role": null,
      "stake_hundredths": null,
      "status": "skipped",
      "status_text": "Not executed: ",
      "result": null,
      "result_words": null,
      "change_hundredths": null,
      "executed_at": null,
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "a8a5817f9c6172fa89f98794b0c7aba50149e376f930f34f596f66735b92e025",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "1X2, match result",
      "choice": "Union St. Gilloise",
      "decimal_odds": null,
      "odds_role": null,
      "stake_hundredths": null,
      "status": "skipped",
      "status_text": "Not executed: ",
      "result": null,
      "result_words": null,
      "change_hundredths": null,
      "executed_at": null,
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "SoccerLoy",
     "publisher": "t.me",
     "forecaster": "SoccerLoy",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://t.me/soccerloy/4148",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Union St. Gilloise to win"
   }
  },
  {
   "record_id": "n-6681d712f30dfa7a8367f720",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Prediction: Home win @ 1.36",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-25T07:00:54.000Z",
   "recorded_at": "2026-10-25T07:03:14.650Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-47bf1d1c8094e7d22b828ecf",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Prediction: Home win @ 1.37",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-26T07:00:31.000Z",
   "recorded_at": "2026-10-26T07:03:14.513Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-fce096e7c2cb11a17b0741a9",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Prediction: 1X @ 1.40",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-26T07:00:31.000Z",
   "recorded_at": "2026-10-26T07:03:14.513Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-3c6e56ceae91f425a2bf2433",
   "url": "/authors/soccerloy/picks/3/#pick-n-3c6e56ceae91f425a2bf2433",
   "match": "Blackpool v Aston Villa U21",
   "match_url": "/football/matches/blackpool-vs-aston-villa-u21-2026-10-27/",
   "kickoff": "2026-10-27T19:00:00.000Z",
   "competition": "EFL Trophy",
   "lead_hours": 11.9,
   "market_code": "1x2",
   "author_said": "1X2, match result: Blackpool at 1.36",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "3-2",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 3200,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "1.36",
   "settled_price": "1.3200",
   "published_at": "2026-10-27T07:00:28.000Z",
   "recorded_at": "2026-10-27T07:03:14.525Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": {
    "outcome": "1",
    "price": "1.3200",
    "result": "Won",
    "points_hundredths": 3200,
    "picked_favourite": true
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-3c6e56ceae91f425a2bf2433",
    "quote_text": "Prediction: Home win @ 1.36",
    "fragment_from": 91,
    "fragment_to": 118,
    "quote_allowed": true,
    "source_info": {
     "medium": "telegram",
     "url": "https://t.me/soccerloy/4150",
     "display_name": null,
     "speaker": "SoccerLoy",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "117032c2779f64fc1819074b4fb58f362f57b5c74f82b3d639757bfcdca087a4",
     "material_removed": false
    },
    "published_at": "2026-10-27T07:00:28.000Z",
    "detected_at": "2026-10-27T07:03:14.525Z",
    "executed_at": "2026-10-27T07:03:39.059Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-24c5643054aa",
     "display_name": "Blackpool — Aston Villa U21",
     "competition_name": "EFL Trophy",
     "starts_at": "2026-10-27T19:00:00.000Z",
     "url": "/football/matches/blackpool-vs-aston-villa-u21-2026-10-27/",
     "scoreline": "3-2",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "Blackpool",
    "odds_set": {
     "by_author": "1.36",
     "our_snapshot": "1.3200",
     "our_snapshot_at": "2026-10-27T07:01:54.125Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 3200,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-27T07:00:28.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-27T07:00:28.000Z",
     "detected_at": "2026-10-27T07:03:14.525Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "1X2, match result",
     "choice": "Blackpool",
     "author_odds": "1.36",
     "market_key": "1x2",
     "choice_key": "1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: Blackpool at 1.36"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "3-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Blackpool 3-2 Aston Villa U21."
    },
    "settlements": [
     {
      "operation_id": "42e37eef9a2b1d2b4e29fbef8a58b3483145b30a553796f69ee4c29219c444d2",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "1X2, match result",
      "choice": "Blackpool",
      "decimal_odds": "1.36",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3600,
      "executed_at": "2026-10-27T07:03:38.521Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "ed72bc676323d02b32cad4d8dfa70ca6256595f4e3711da73f0e059d95363b8b",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "1X2, match result",
      "choice": "Blackpool",
      "decimal_odds": "1.3200",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3200,
      "executed_at": "2026-10-27T07:03:39.059Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "SoccerLoy",
     "publisher": "t.me",
     "forecaster": "SoccerLoy",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://t.me/soccerloy/4150",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Blackpool to win"
   }
  },
  {
   "record_id": "n-d769621ed15053d85e920152",
   "url": "/authors/soccerloy/picks/3/#pick-n-d769621ed15053d85e920152",
   "match": "AS Roma v Cagliari",
   "match_url": "/football/matches/as-roma-vs-cagliari-2026-10-27/",
   "kickoff": "2026-10-27T19:45:00.000Z",
   "competition": "Serie A",
   "lead_hours": 12.7,
   "market_code": "1x2",
   "author_said": "1X2, match result: AS Roma at 1.38",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "4-2",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 3125,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "1.38",
   "settled_price": "1.3125",
   "published_at": "2026-10-27T07:00:28.000Z",
   "recorded_at": "2026-10-27T07:03:14.525Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": {
    "outcome": "1",
    "price": "1.3125",
    "result": "Won",
    "points_hundredths": 3125,
    "picked_favourite": true
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-d769621ed15053d85e920152",
    "quote_text": "Prediction: Home win @ 1.38",
    "fragment_from": 167,
    "fragment_to": 194,
    "quote_allowed": true,
    "source_info": {
     "medium": "telegram",
     "url": "https://t.me/soccerloy/4150",
     "display_name": null,
     "speaker": "SoccerLoy",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "117032c2779f64fc1819074b4fb58f362f57b5c74f82b3d639757bfcdca087a4",
     "material_removed": false
    },
    "published_at": "2026-10-27T07:00:28.000Z",
    "detected_at": "2026-10-27T07:03:14.525Z",
    "executed_at": "2026-10-27T07:03:40.757Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-67961bf73db7",
     "display_name": "AS Roma — Cagliari",
     "competition_name": "Serie A",
     "starts_at": "2026-10-27T19:45:00.000Z",
     "url": "/football/matches/as-roma-vs-cagliari-2026-10-27/",
     "scoreline": "4-2",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "AS Roma",
    "odds_set": {
     "by_author": "1.38",
     "our_snapshot": "1.3125",
     "our_snapshot_at": "2026-10-27T07:00:34.853Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 3125,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-27T07:00:28.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-27T07:00:28.000Z",
     "detected_at": "2026-10-27T07:03:14.525Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "1X2, match result",
     "choice": "AS Roma",
     "author_odds": "1.38",
     "market_key": "1x2",
     "choice_key": "1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: AS Roma at 1.38"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "4-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was AS Roma 4-2 Cagliari."
    },
    "settlements": [
     {
      "operation_id": "f8f268b1823bfe801436d13017f1540b739d2dfbfe9f5ce4b7883cfa8e7face2",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "1X2, match result",
      "choice": "AS Roma",
      "decimal_odds": "1.38",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3800,
      "executed_at": "2026-10-27T07:03:39.259Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "5ab0f12e2badd6c104a2eec66cdcb31e1032f071bc16ffb8931531a747d0ff0f",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "1X2, match result",
      "choice": "AS Roma",
      "decimal_odds": "1.3125",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3125,
      "executed_at": "2026-10-27T07:03:40.757Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "SoccerLoy",
     "publisher": "t.me",
     "forecaster": "SoccerLoy",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://t.me/soccerloy/4150",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "AS Roma to win"
   }
  },
  {
   "record_id": "n-50116d678a4d2dffb1eac5ef",
   "url": "/authors/soccerloy/picks/3/#pick-n-50116d678a4d2dffb1eac5ef",
   "match": "Celtic v Dundee Utd",
   "match_url": "/football/matches/celtic-vs-dundee-utd-2026-10-28/",
   "kickoff": "2026-10-28T19:45:00.000Z",
   "competition": "Scottish Premiership",
   "lead_hours": 12.7,
   "market_code": "total",
   "author_said": "Over/Under 2.5 goals: over 2.5 at 1.32",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "2-2",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 3200,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "1.32",
   "settled_price": "1.3200",
   "published_at": "2026-10-28T07:00:45.000Z",
   "recorded_at": "2026-10-28T07:03:14.531Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-50116d678a4d2dffb1eac5ef",
    "quote_text": "Prediction: Over 2.5 @ 1.32",
    "fragment_from": 158,
    "fragment_to": 185,
    "quote_allowed": true,
    "source_info": {
     "medium": "telegram",
     "url": "https://t.me/soccerloy/4151",
     "display_name": null,
     "speaker": "SoccerLoy",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "c5708b8e0a910c05ef3632a0a6bf0f862e45cc4d0b3909d9b59aa00988502325",
     "material_removed": false
    },
    "published_at": "2026-10-28T07:00:45.000Z",
    "detected_at": "2026-10-28T07:03:14.531Z",
    "executed_at": "2026-10-28T12:01:18.150Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-22a2cfe326f8",
     "display_name": "Celtic — Dundee Utd",
     "competition_name": "Scottish Premiership",
     "starts_at": "2026-10-28T19:45:00.000Z",
     "url": "/football/matches/celtic-vs-dundee-utd-2026-10-28/",
     "scoreline": "2-2",
     "condition": "finished"
    },
    "market_label": "Over/Under 2.5 goals",
    "outcome_label": "over 2.5",
    "odds_set": {
     "by_author": "1.32",
     "our_snapshot": "1.3200",
     "our_snapshot_at": "2026-10-28T07:06:43.450Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 3200,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-28T07:00:45.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-28T07:00:45.000Z",
     "detected_at": "2026-10-28T07:03:14.531Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "Over/Under 2.5 goals",
     "choice": "over 2.5",
     "author_odds": "1.32",
     "market_key": "total",
     "choice_key": "over",
     "period": "match",
     "line": "2.5",
     "subject": "goals_total",
     "in_words": "Over/Under 2.5 goals: over 2.5 at 1.32"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "2-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Celtic 2-2 Dundee Utd."
    },
    "settlements": [
     {
      "operation_id": "caf018ecf8e2e532d32ea5fc128b8e946f103ecd5657c3da81c100497332ed33",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Over/Under 2.5 goals",
      "choice": "over 2.5",
      "decimal_odds": "1.32",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3200,
      "executed_at": "2026-10-28T12:01:17.819Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "babb7deb180d0731eeee5aa20657fb7d8264b657e08d66a998b572d5a061bf7c",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Over/Under 2.5 goals",
      "choice": "over 2.5",
      "decimal_odds": "1.3200",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3200,
      "executed_at": "2026-10-28T12:01:18.150Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "SoccerLoy",
     "publisher": "t.me",
     "forecaster": "SoccerLoy",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://t.me/soccerloy/4151",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "over 2.5 (Over/Under 2.5 goals)"
   }
  },
  {
   "record_id": "n-54a62b41a65fd5ca66782c07",
   "url": "/authors/soccerloy/picks/3/#pick-n-54a62b41a65fd5ca66782c07",
   "match": "Venezia v Inter",
   "match_url": "/football/matches/venezia-vs-inter-2026-10-28/",
   "kickoff": "2026-10-28T17:30:00.000Z",
   "competition": "Serie A",
   "lead_hours": 10.4,
   "market_code": "1x2",
   "author_said": "1X2, match result: Inter at 1.36",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "0-2",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 3300,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "1.36",
   "settled_price": "1.3300",
   "published_at": "2026-10-28T07:00:45.000Z",
   "recorded_at": "2026-10-28T07:03:14.531Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": {
    "outcome": "2",
    "price": "1.3300",
    "result": "Won",
    "points_hundredths": 3300,
    "picked_favourite": true
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-54a62b41a65fd5ca66782c07",
    "quote_text": "Prediction: Away win @ 1.36",
    "fragment_from": 74,
    "fragment_to": 101,
    "quote_allowed": true,
    "source_info": {
     "medium": "telegram",
     "url": "https://t.me/soccerloy/4151",
     "display_name": null,
     "speaker": "SoccerLoy",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "c5708b8e0a910c05ef3632a0a6bf0f862e45cc4d0b3909d9b59aa00988502325",
     "material_removed": false
    },
    "published_at": "2026-10-28T07:00:45.000Z",
    "detected_at": "2026-10-28T07:03:14.531Z",
    "executed_at": "2026-10-28T12:01:17.663Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-6ce1a04a3c7d",
     "display_name": "Venezia — Inter",
     "competition_name": "Serie A",
     "starts_at": "2026-10-28T17:30:00.000Z",
     "url": "/football/matches/venezia-vs-inter-2026-10-28/",
     "scoreline": "0-2",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "Inter",
    "odds_set": {
     "by_author": "1.36",
     "our_snapshot": "1.3300",
     "our_snapshot_at": "2026-10-28T07:02:28.159Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 3300,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-28T07:00:45.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-28T07:00:45.000Z",
     "detected_at": "2026-10-28T07:03:14.531Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "1X2, match result",
     "choice": "Inter",
     "author_odds": "1.36",
     "market_key": "1x2",
     "choice_key": "2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: Inter at 1.36"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "0-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Venezia 0-2 Inter."
    },
    "settlements": [
     {
      "operation_id": "cb00e99918ea61b90b51cb90c3291849158d57361e60efd0e9a2373f06d13e86",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "1X2, match result",
      "choice": "Inter",
      "decimal_odds": "1.36",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3600,
      "executed_at": "2026-10-28T12:01:14.396Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "9b9502c73ec5a540e7ed74c026331d84c8c42725222df4e78590a156767fec6b",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "1X2, match result",
      "choice": "Inter",
      "decimal_odds": "1.3300",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3300,
      "executed_at": "2026-10-28T12:01:17.663Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "SoccerLoy",
     "publisher": "t.me",
     "forecaster": "SoccerLoy",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://t.me/soccerloy/4151",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Inter to win"
   }
  },
  {
   "record_id": "n-885e5edcd3af70ca5849408e",
   "url": "/authors/soccerloy/picks/3/#pick-n-885e5edcd3af70ca5849408e",
   "match": "Frosinone v Lecce",
   "match_url": "/football/matches/frosinone-vs-lecce-2026-10-29/",
   "kickoff": "2026-10-29T17:30:00.000Z",
   "competition": "Serie A",
   "lead_hours": 10.4,
   "market_code": "both_teams_score",
   "author_said": "Both teams to score: yes at 1.46",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "5-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 4444,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "1.46",
   "settled_price": "1.4444",
   "published_at": "2026-10-29T07:00:33.000Z",
   "recorded_at": "2026-10-29T07:03:14.813Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": {
    "outcome": "yes",
    "price": "1.4444",
    "result": "Won",
    "points_hundredths": 4444,
    "picked_favourite": true
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-885e5edcd3af70ca5849408e",
    "quote_text": "Prediction: GG @ 1.46",
    "fragment_from": 76,
    "fragment_to": 97,
    "quote_allowed": true,
    "source_info": {
     "medium": "telegram",
     "url": "https://t.me/soccerloy/4152",
     "display_name": null,
     "speaker": "SoccerLoy",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "7862acbb23976bb4aaff6a6a9bc1bde2a1b4daec61f0b2d8408457384ed095d7",
     "material_removed": false
    },
    "published_at": "2026-10-29T07:00:33.000Z",
    "detected_at": "2026-10-29T07:03:14.813Z",
    "executed_at": "2026-10-29T08:43:03.630Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-8a0995849f5c",
     "display_name": "Frosinone — Lecce",
     "competition_name": "Serie A",
     "starts_at": "2026-10-29T17:30:00.000Z",
     "url": "/football/matches/frosinone-vs-lecce-2026-10-29/",
     "scoreline": "5-1",
     "condition": "finished"
    },
    "market_label": "Both teams to score",
    "outcome_label": "yes",
    "odds_set": {
     "by_author": "1.46",
     "our_snapshot": "1.4444",
     "our_snapshot_at": "2026-10-29T07:03:01.981Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 4444,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-29T07:00:33.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-29T07:00:33.000Z",
     "detected_at": "2026-10-29T07:03:14.813Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "Both teams to score",
     "choice": "yes",
     "author_odds": "1.46",
     "market_key": "both_teams_score",
     "choice_key": "yes",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Both teams to score: yes at 1.46"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "5-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Frosinone 5-1 Lecce."
    },
    "settlements": [
     {
      "operation_id": "fb01ed1b1d6655ab74e615a347162884b9f18c67e6a73aea2bebf39bc3fd53f5",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Both teams to score",
      "choice": "yes",
      "decimal_odds": "1.46",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 4600,
      "executed_at": "2026-10-29T08:42:59.529Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "0b7c56058c01440069c1d3f39334a48da92d58326493416aa997e2537a5a5887",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Both teams to score",
      "choice": "yes",
      "decimal_odds": "1.4444",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 4444,
      "executed_at": "2026-10-29T08:43:03.630Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "SoccerLoy",
     "publisher": "t.me",
     "forecaster": "SoccerLoy",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://t.me/soccerloy/4152",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "yes (Both teams to score)"
   }
  },
  {
   "record_id": "n-ff7680a9451eb2077d3483c3",
   "url": "/authors/soccerloy/picks/3/#pick-n-ff7680a9451eb2077d3483c3",
   "match": "Atlético Mineiro v Cruzeiro",
   "match_url": "/football/matches/atletico-mineiro-vs-cruzeiro-2026-10-29/",
   "kickoff": "2026-10-29T22:30:00.000Z",
   "competition": "Brasileiro Série A",
   "lead_hours": 15.4,
   "market_code": "double_chance",
   "author_said": "Double chance: Atlético Mineiro or draw at 1.47",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "0-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "1.47",
   "settled_price": "1.5128",
   "published_at": "2026-10-29T07:00:33.000Z",
   "recorded_at": "2026-10-29T07:03:14.813Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-ff7680a9451eb2077d3483c3",
    "quote_text": "Prediction: 1X @ 1.47",
    "fragment_from": 151,
    "fragment_to": 172,
    "quote_allowed": true,
    "source_info": {
     "medium": "telegram",
     "url": "https://t.me/soccerloy/4152",
     "display_name": null,
     "speaker": "SoccerLoy",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "7862acbb23976bb4aaff6a6a9bc1bde2a1b4daec61f0b2d8408457384ed095d7",
     "material_removed": false
    },
    "published_at": "2026-10-29T07:00:33.000Z",
    "detected_at": "2026-10-29T07:03:14.813Z",
    "executed_at": "2026-10-29T08:43:07.452Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-432231b4ee5b",
     "display_name": "Atlético Mineiro — Cruzeiro",
     "competition_name": "Brasileiro Série A",
     "starts_at": "2026-10-29T22:30:00.000Z",
     "url": "/football/matches/atletico-mineiro-vs-cruzeiro-2026-10-29/",
     "scoreline": "0-1",
     "condition": "finished"
    },
    "market_label": "Double chance",
    "outcome_label": "Atlético Mineiro or draw",
    "odds_set": {
     "by_author": "1.47",
     "our_snapshot": "1.5128",
     "our_snapshot_at": "2026-10-29T06:59:37.645Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "loss",
    "simulation_change_hundredths": -10000,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-29T07:00:33.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-29T07:00:33.000Z",
     "detected_at": "2026-10-29T07:03:14.813Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "Double chance",
     "choice": "Atlético Mineiro or draw",
     "author_odds": "1.47",
     "market_key": "double_chance",
     "choice_key": "1X",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Double chance: Atlético Mineiro or draw at 1.47"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "0-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Atlético Mineiro 0-1 Cruzeiro."
    },
    "settlements": [
     {
      "operation_id": "2721180054c89d3882846f910c807322bd732b27ffb46e3f8546256c5473fee9",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Double chance",
      "choice": "Atlético Mineiro or draw",
      "decimal_odds": "1.47",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-29T08:43:03.761Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "29908e7318595c6ff0c24741421243cde6fc64a2694c35a53869d5e0ec4c3ec6",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Double chance",
      "choice": "Atlético Mineiro or draw",
      "decimal_odds": "1.5128",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-29T08:43:07.452Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "SoccerLoy",
     "publisher": "t.me",
     "forecaster": "SoccerLoy",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://t.me/soccerloy/4152",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Atlético Mineiro or draw"
   }
  },
  {
   "record_id": "n-3a6fb7101fff5fb0f9395074",
   "url": "/authors/soccerloy/picks/3/#pick-n-3a6fb7101fff5fb0f9395074",
   "match": "Casa Pia v Sporting CP",
   "match_url": "/football/matches/casa-pia-vs-sporting-cp-2026-10-30/",
   "kickoff": "2026-10-30T20:15:00.000Z",
   "competition": "Primeira Liga",
   "lead_hours": 13.2,
   "market_code": "1x2",
   "author_said": "1X2, match result: Sporting CP at 1.31",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "0-2",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 3000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "1.31",
   "settled_price": "1.3000",
   "published_at": "2026-10-30T07:00:38.000Z",
   "recorded_at": "2026-10-30T07:03:22.197Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": {
    "outcome": "2",
    "price": "1.3000",
    "result": "Won",
    "points_hundredths": 3000,
    "picked_favourite": true
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-3a6fb7101fff5fb0f9395074",
    "quote_text": "Prediction: Away win @ 1.31",
    "fragment_from": 179,
    "fragment_to": 206,
    "quote_allowed": true,
    "source_info": {
     "medium": "telegram",
     "url": "https://t.me/soccerloy/4153",
     "display_name": null,
     "speaker": "SoccerLoy",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "dd51a2f8184b1bfd10f06a72c727d10d9bd1f32aa5bc26abb9f86547748febf4",
     "material_removed": false
    },
    "published_at": "2026-10-30T07:00:38.000Z",
    "detected_at": "2026-10-30T07:03:22.197Z",
    "executed_at": "2026-10-30T13:17:21.755Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-901bd676fe3a",
     "display_name": "Casa Pia — Sporting CP",
     "competition_name": "Primeira Liga",
     "starts_at": "2026-10-30T20:15:00.000Z",
     "url": "/football/matches/casa-pia-vs-sporting-cp-2026-10-30/",
     "scoreline": "0-2",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "Sporting CP",
    "odds_set": {
     "by_author": "1.31",
     "our_snapshot": "1.3000",
     "our_snapshot_at": "2026-10-30T07:02:48.235Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 3000,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-30T07:00:38.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-30T07:00:38.000Z",
     "detected_at": "2026-10-30T07:03:22.197Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "1X2, match result",
     "choice": "Sporting CP",
     "author_odds": "1.31",
     "market_key": "1x2",
     "choice_key": "2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: Sporting CP at 1.31"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "0-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Casa Pia 0-2 Sporting CP."
    },
    "settlements": [
     {
      "operation_id": "d403064710a9e8d8dc62902c1b5e6d8eb246eceb6aee98085bf0312965ce5e6c",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "1X2, match result",
      "choice": "Sporting CP",
      "decimal_odds": "1.31",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3100,
      "executed_at": "2026-10-30T13:17:21.183Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "bcb82a74b452e62db35cce528de846ff833f6483810e5f8fe6b8a81fbf2c8a52",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "1X2, match result",
      "choice": "Sporting CP",
      "decimal_odds": "1.3000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3000,
      "executed_at": "2026-10-30T13:17:21.755Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "SoccerLoy",
     "publisher": "t.me",
     "forecaster": "SoccerLoy",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://t.me/soccerloy/4153",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Sporting CP to win"
   }
  },
  {
   "record_id": "n-c5ab263f978f7161d33c9707",
   "url": "/authors/soccerloy/picks/3/#pick-n-c5ab263f978f7161d33c9707",
   "match": "Le Havre v Paris Saint-Germain",
   "match_url": "/football/matches/le-havre-vs-paris-saint-germain-2026-10-30/",
   "kickoff": "2026-10-30T18:00:00.000Z",
   "competition": "Ligue 1",
   "lead_hours": 10.9,
   "market_code": "total",
   "author_said": "Over/Under 2.5 goals: over 2.5 at 1.32",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "1-5",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 3600,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "1.32",
   "settled_price": "1.3600",
   "published_at": "2026-10-30T07:00:38.000Z",
   "recorded_at": "2026-10-30T07:03:22.197Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": {
    "outcome": "over",
    "price": "1.3600",
    "result": "Won",
    "points_hundredths": 3600,
    "picked_favourite": true
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-c5ab263f978f7161d33c9707",
    "quote_text": "Prediction: Over 2.5 @ 1.32",
    "fragment_from": 90,
    "fragment_to": 117,
    "quote_allowed": true,
    "source_info": {
     "medium": "telegram",
     "url": "https://t.me/soccerloy/4153",
     "display_name": null,
     "speaker": "SoccerLoy",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "dd51a2f8184b1bfd10f06a72c727d10d9bd1f32aa5bc26abb9f86547748febf4",
     "material_removed": false
    },
    "published_at": "2026-10-30T07:00:38.000Z",
    "detected_at": "2026-10-30T07:03:22.197Z",
    "executed_at": "2026-10-30T13:17:21.155Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-093cac49e8f6",
     "display_name": "Le Havre — Paris Saint-Germain",
     "competition_name": "Ligue 1",
     "starts_at": "2026-10-30T18:00:00.000Z",
     "url": "/football/matches/le-havre-vs-paris-saint-germain-2026-10-30/",
     "scoreline": "1-5",
     "condition": "finished"
    },
    "market_label": "Over/Under 2.5 goals",
    "outcome_label": "over 2.5",
    "odds_set": {
     "by_author": "1.32",
     "our_snapshot": "1.3600",
     "our_snapshot_at": "2026-10-30T07:02:48.235Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 3600,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-30T07:00:38.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-30T07:00:38.000Z",
     "detected_at": "2026-10-30T07:03:22.197Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "Over/Under 2.5 goals",
     "choice": "over 2.5",
     "author_odds": "1.32",
     "market_key": "total",
     "choice_key": "over",
     "period": "match",
     "line": "2.5",
     "subject": "goals_total",
     "in_words": "Over/Under 2.5 goals: over 2.5 at 1.32"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "1-5",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Le Havre 1-5 Paris Saint-Germain."
    },
    "settlements": [
     {
      "operation_id": "ab8025501e85e98d4ca74d6a83fe8bc136bc01c7799718c069016347036ada78",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Over/Under 2.5 goals",
      "choice": "over 2.5",
      "decimal_odds": "1.32",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3200,
      "executed_at": "2026-10-30T13:17:20.317Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "d6dc60491846909b233404d2f678edf47e88ddebdf20ebe7e9ea6f37ae34c311",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Over/Under 2.5 goals",
      "choice": "over 2.5",
      "decimal_odds": "1.3600",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3600,
      "executed_at": "2026-10-30T13:17:21.155Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "SoccerLoy",
     "publisher": "t.me",
     "forecaster": "SoccerLoy",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://t.me/soccerloy/4153",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "over 2.5 (Over/Under 2.5 goals)"
   }
  }
 ],
 "pagination": {
  "per_page": 20,
  "total": 56,
  "pages": 4,
  "page_urls": [
   "/authors/soccerloy/",
   "/authors/soccerloy/picks/2/",
   "/authors/soccerloy/picks/3/",
   "/authors/soccerloy/picks/4/"
  ],
  "groups": {
   "settled": 16,
   "pending": 0,
   "excluded": 40
  },
  "continuation": "by_time",
  "page": 3,
  "first": 21,
  "last": 40,
  "author_url": "/authors/soccerloy/",
  "current": false
 },
 "entity_id": "history:/authors/soccerloy/picks/3/",
 "source_revision": 22
}
