{
 "schema_name": "page",
 "schema_version": "2.0",
 "page_type": "history",
 "url": "/authors/joshua-ojele/picks/3/",
 "canonical": "/authors/joshua-ojele/picks/3/",
 "language": "en",
 "hreflang": [],
 "translations": [],
 "heading": "Joshua Ojele — football predictions, page 3 of 8",
 "description": "Predictions 21–40 of 121 by Joshua Ojele, with outcomes in words and links to the evidence.",
 "first_paragraph": {
  "body": "Page 3 of 8 of the predictions by Joshua Ojele recorded by Forecast Record: predictions 21–40 of 121 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": "121",
  "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:47:35.538Z",
 "built_at": "2026-11-07T19:52:23.438Z",
 "lastmod": "2026-11-07T19:52:23.438Z",
 "content_hash": null,
 "meaning_hash": "69dab521ab6b5c6697c6c02747b70c65ecfff899f1ab14bf6a33d98cfefc3e07",
 "dependency_group": "author:e-039bcef343c50ba1d22f8e19",
 "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/joshua-ojele/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-039bcef343c50ba1d22f8e19",
  "public_name": "Joshua Ojele",
  "tracker_number": 1407,
  "status": "active",
  "inactive_since": null,
  "verified_creator": false,
  "observation_period": {
   "since": "2026-09-28",
   "until": "2026-11-07"
  },
  "platform_list": [
   {
    "medium": "website",
    "handle": null,
    "url": null,
    "link_confirmed": false,
    "show": true
   }
  ],
  "comment": null
 },
 "recorded_picks": [
  {
   "record_id": "n-ed3c42a301e184cc7004f42e",
   "url": "/authors/joshua-ojele/picks/3/#pick-n-ed3c42a301e184cc7004f42e",
   "match": "Feyenoord v AZ Alkmaar",
   "match_url": "/football/matches/feyenoord-vs-az-alkmaar-2026-10-10/",
   "kickoff": "2026-10-10T16:45:00.000Z",
   "competition": "Eredivisie",
   "lead_hours": 49.5,
   "market_code": "both_teams_score_and_result",
   "author_said": "Match result and both teams to score: Feyenoord win, both teams to score: yes at 2.87",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "2-0",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "author_price",
   "series_short": "author's odds",
   "author_price": "2.87",
   "settled_price": "2.87",
   "published_at": "2026-10-08T15:12:01.000Z",
   "recorded_at": "2026-10-08T15:17:03.431Z",
   "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,
   "platform": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-ed3c42a301e184cc7004f42e",
    "quote_text": "> Feyenoord to win + BTTS at 187/100 (2.87) | Likelihood: Possible",
    "fragment_from": 4928,
    "fragment_to": 4994,
    "quote_allowed": true,
    "source_info": {
     "medium": "rss",
     "url": "https://footballwhispers.com/blog/feyenoord-vs-az-alkmaar-prediction-10-10-2026/",
     "display_name": null,
     "speaker": "Joshua Ojele",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "5821114761f02cd4884bb100227ea85f358a3e2689b95c6c89587da72e204176",
     "material_removed": false
    },
    "published_at": "2026-10-08T15:12:01.000Z",
    "detected_at": "2026-10-08T15:17:03.431Z",
    "executed_at": "2026-10-08T21:24:39.547Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-c6205886907a",
     "display_name": "Feyenoord — AZ Alkmaar",
     "competition_name": "Eredivisie",
     "starts_at": "2026-10-10T16:45:00.000Z",
     "url": "/football/matches/feyenoord-vs-az-alkmaar-2026-10-10/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "Match result and both teams to score",
    "outcome_label": "Feyenoord win, both teams to score: yes",
    "odds_set": {
     "by_author": "2.87",
     "our_snapshot": null,
     "our_snapshot_at": null,
     "our_snapshot_source": null,
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "loss",
    "simulation_change_hundredths": -10000,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At the author's stated price",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-08T15:12:01.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-08T15:12:01.000Z",
     "detected_at": "2026-10-08T15:17:03.431Z",
     "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": "Match result and both teams to score",
     "choice": "Feyenoord win, both teams to score: yes",
     "author_odds": "2.87",
     "market_key": "both_teams_score_and_result",
     "choice_key": "1-yes",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Match result and both teams to score: Feyenoord win, both teams to score: yes at 2.87"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "2-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Feyenoord 2-0 AZ Alkmaar."
    },
    "settlements": [
     {
      "operation_id": "f7f33db7f8be5c0a44b29419c6de64c5bdcf0351b44d08e8eb213957a44d1782",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Match result and both teams to score",
      "choice": "Feyenoord win, both teams to score: yes",
      "decimal_odds": "2.87",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-08T21:24:39.547Z",
      "methodology_version": "2.1",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "ad6b1d6bcc9ec8bbe4b268bbef3f2bce0dab782df1864e4cbb76b7c22e8af0e2",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Match result and both teams to score",
      "choice": "Feyenoord win, both teams to score: yes",
      "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": "settled_pick",
    "authorship": {
     "material_author": "Joshua Ojele",
     "publisher": "Football Whispers",
     "forecaster": "Joshua Ojele",
     "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://footballwhispers.com/blog/feyenoord-vs-az-alkmaar-prediction-10-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Feyenoord win, both teams to score: yes"
   }
  },
  {
   "record_id": "n-14ae2cb8d6aa3148341c94bc",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "With Maritimo trailing in four of their most recent five matches, HT/FT – Porto/Porto at 9/10 (1.90) is another favourable option",
   "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-08T17:09:43.000Z",
   "recorded_at": "2026-10-08T17:23:06.165Z",
   "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,
   "platform": null,
   "correction": null
  },
  {
   "record_id": "n-1d0c2c994b9b6a021354c402",
   "url": "/authors/joshua-ojele/picks/3/#pick-n-1d0c2c994b9b6a021354c402",
   "match": "Marítimo v FC Porto",
   "match_url": "/football/matches/maritimo-vs-fc-porto-2026-10-10/",
   "kickoff": "2026-10-10T17:00:00.000Z",
   "competition": "Primeira Liga",
   "lead_hours": 47.6,
   "market_code": "total",
   "author_said": "Over/Under 2.5 goals: over 2.5 at 1.75",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "1-2",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 7200,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "1.75",
   "settled_price": "1.7200",
   "published_at": "2026-10-08T17:09:43.000Z",
   "recorded_at": "2026-10-08T17:23:06.165Z",
   "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,
   "platform": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-1d0c2c994b9b6a021354c402",
    "quote_text": "over 2.5 goals at 3/4 (1.75) is our third pick of the game.",
    "fragment_from": 4626,
    "fragment_to": 4685,
    "quote_allowed": true,
    "source_info": {
     "medium": "rss",
     "url": "https://footballwhispers.com/blog/maritimo-vs-porto-prediction-10-10-2026/",
     "display_name": null,
     "speaker": "Joshua Ojele",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "c154fbb54ab80e0fee23f87515907bff416053fa5f8fe18dce3290c31fa6ff3e",
     "material_removed": false
    },
    "published_at": "2026-10-08T17:09:43.000Z",
    "detected_at": "2026-10-08T17:23:06.165Z",
    "executed_at": "2026-10-22T11:11:45.456Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-5d9efad94cea",
     "display_name": "Marítimo — FC Porto",
     "competition_name": "Primeira Liga",
     "starts_at": "2026-10-10T17:00:00.000Z",
     "url": "/football/matches/maritimo-vs-fc-porto-2026-10-10/",
     "scoreline": "1-2",
     "condition": "finished"
    },
    "market_label": "Over/Under 2.5 goals",
    "outcome_label": "over 2.5",
    "odds_set": {
     "by_author": "1.75",
     "our_snapshot": "1.7200",
     "our_snapshot_at": "2026-10-08T17:20:36.000Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 7200,
    "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-08T17:09:43.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-08T17:09:43.000Z",
     "detected_at": "2026-10-08T17:23:06.165Z",
     "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.75",
     "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.75"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "1-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Marítimo 1-2 FC Porto."
    },
    "settlements": [
     {
      "operation_id": "e469eab3b4c554e29c8fc91ee95ee32ae9a37eee5b272856e310e3625f54e527",
      "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.75",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 7500,
      "executed_at": "2026-10-08T17:25:32.407Z",
      "methodology_version": "2.1",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "b3610717ed398fd5b45a29ca08ec066861e791910df40f9aa087f413a38e8e90",
      "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.7200",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 7200,
      "executed_at": "2026-10-22T11:11:45.456Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "Joshua Ojele",
     "publisher": "Football Whispers",
     "forecaster": "Joshua Ojele",
     "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://footballwhispers.com/blog/maritimo-vs-porto-prediction-10-10-2026/",
     "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-b71d2ec0154a51610731c01f",
   "url": "/authors/joshua-ojele/picks/3/#pick-n-b71d2ec0154a51610731c01f",
   "match": "Marítimo v FC Porto",
   "match_url": "/football/matches/maritimo-vs-fc-porto-2026-10-10/",
   "kickoff": "2026-10-10T17:00:00.000Z",
   "competition": "Primeira Liga",
   "lead_hours": 47.6,
   "market_code": "both_teams_score_and_result",
   "author_said": "Match result and both teams to score: FC Porto win, both teams to score: yes at 3.4",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "1-2",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 24000,
   "series_code": "author_price",
   "series_short": "author's odds",
   "author_price": "3.4",
   "settled_price": "3.4",
   "published_at": "2026-10-08T17:09:43.000Z",
   "recorded_at": "2026-10-08T17:23:06.165Z",
   "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,
   "platform": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-b71d2ec0154a51610731c01f",
    "quote_text": "Porto have managed just one clean sheet in their last five games against Maritimo, and Porto to win + BTTS – Yes at 12/5 (3.40) is the high-value bet for us",
    "fragment_from": 4687,
    "fragment_to": 4843,
    "quote_allowed": true,
    "source_info": {
     "medium": "rss",
     "url": "https://footballwhispers.com/blog/maritimo-vs-porto-prediction-10-10-2026/",
     "display_name": null,
     "speaker": "Joshua Ojele",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "c154fbb54ab80e0fee23f87515907bff416053fa5f8fe18dce3290c31fa6ff3e",
     "material_removed": false
    },
    "published_at": "2026-10-08T17:09:43.000Z",
    "detected_at": "2026-10-08T17:23:06.165Z",
    "executed_at": "2026-10-08T17:25:32.472Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-5d9efad94cea",
     "display_name": "Marítimo — FC Porto",
     "competition_name": "Primeira Liga",
     "starts_at": "2026-10-10T17:00:00.000Z",
     "url": "/football/matches/maritimo-vs-fc-porto-2026-10-10/",
     "scoreline": "1-2",
     "condition": "finished"
    },
    "market_label": "Match result and both teams to score",
    "outcome_label": "FC Porto win, both teams to score: yes",
    "odds_set": {
     "by_author": "3.4",
     "our_snapshot": null,
     "our_snapshot_at": null,
     "our_snapshot_source": null,
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 24000,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At the author's stated price",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-08T17:09:43.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-08T17:09:43.000Z",
     "detected_at": "2026-10-08T17:23:06.165Z",
     "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": "Match result and both teams to score",
     "choice": "FC Porto win, both teams to score: yes",
     "author_odds": "3.4",
     "market_key": "both_teams_score_and_result",
     "choice_key": "2-yes",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Match result and both teams to score: FC Porto win, both teams to score: yes at 3.4"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "1-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Marítimo 1-2 FC Porto."
    },
    "settlements": [
     {
      "operation_id": "f6aa1df3eb6ca47d16e80581e282e539066826362c5a77ced723e1236753b792",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Match result and both teams to score",
      "choice": "FC Porto win, both teams to score: yes",
      "decimal_odds": "3.4",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 24000,
      "executed_at": "2026-10-08T17:25:32.472Z",
      "methodology_version": "2.1",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "925dc8e21831641c18ee67670643ea4f120cba8733a96ec29d5d69197f7a4123",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Match result and both teams to score",
      "choice": "FC Porto win, both teams to score: yes",
      "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": "settled_pick",
    "authorship": {
     "material_author": "Joshua Ojele",
     "publisher": "Football Whispers",
     "forecaster": "Joshua Ojele",
     "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://footballwhispers.com/blog/maritimo-vs-porto-prediction-10-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "FC Porto win, both teams to score: yes"
   }
  },
  {
   "record_id": "n-c6c4597e20499e28494ed259",
   "url": "/authors/joshua-ojele/picks/3/#pick-n-c6c4597e20499e28494ed259",
   "match": "Marítimo v FC Porto",
   "match_url": "/football/matches/maritimo-vs-fc-porto-2026-10-10/",
   "kickoff": "2026-10-10T17:00:00.000Z",
   "competition": "Primeira Liga",
   "lead_hours": 47.6,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Marítimo 1-3 FC Porto at 12",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "1-2",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "author_price",
   "series_short": "author's odds",
   "author_price": "12",
   "settled_price": "12",
   "published_at": "2026-10-08T17:09:43.000Z",
   "recorded_at": "2026-10-08T17:23:06.165Z",
   "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,
   "platform": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-c6c4597e20499e28494ed259",
    "quote_text": "while a correct score of 1-3 at 11/1 (12.00) is our outside pick.",
    "fragment_from": 4845,
    "fragment_to": 4910,
    "quote_allowed": true,
    "source_info": {
     "medium": "rss",
     "url": "https://footballwhispers.com/blog/maritimo-vs-porto-prediction-10-10-2026/",
     "display_name": null,
     "speaker": "Joshua Ojele",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "c154fbb54ab80e0fee23f87515907bff416053fa5f8fe18dce3290c31fa6ff3e",
     "material_removed": false
    },
    "published_at": "2026-10-08T17:09:43.000Z",
    "detected_at": "2026-10-08T17:23:06.165Z",
    "executed_at": "2026-10-09T11:29:52.330Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-5d9efad94cea",
     "display_name": "Marítimo — FC Porto",
     "competition_name": "Primeira Liga",
     "starts_at": "2026-10-10T17:00:00.000Z",
     "url": "/football/matches/maritimo-vs-fc-porto-2026-10-10/",
     "scoreline": "1-2",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Marítimo 1-3 FC Porto",
    "odds_set": {
     "by_author": "12",
     "our_snapshot": null,
     "our_snapshot_at": null,
     "our_snapshot_source": null,
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "loss",
    "simulation_change_hundredths": -10000,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At the author's stated price",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-08T17:09:43.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-08T17:09:43.000Z",
     "detected_at": "2026-10-08T17:23:06.165Z",
     "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": "Correct score",
     "choice": "Marítimo 1-3 FC Porto",
     "author_odds": "12",
     "market_key": "correct_score_market",
     "choice_key": "1-3",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Marítimo 1-3 FC Porto at 12"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "1-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Marítimo 1-2 FC Porto."
    },
    "settlements": [
     {
      "operation_id": "f756deb18fa08733380eb950259d5a825e0a314e8301b53f6d40726ab19277db",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Correct score",
      "choice": "Marítimo 1-3 FC Porto",
      "decimal_odds": "12",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-09T11:29:52.330Z",
      "methodology_version": "2.1",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "ab0d61bacee5142c31c40f0cd8f6b355fa4cafd4206540d8a178158cfb8d980b",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Correct score",
      "choice": "Marítimo 1-3 FC Porto",
      "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": "settled_pick",
    "authorship": {
     "material_author": "Joshua Ojele",
     "publisher": "Football Whispers",
     "forecaster": "Joshua Ojele",
     "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://footballwhispers.com/blog/maritimo-vs-porto-prediction-10-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Marítimo 1-3 FC Porto"
   }
  },
  {
   "record_id": "n-cb8d7ac1ed71c067059f3371",
   "url": "/authors/joshua-ojele/picks/3/#pick-n-cb8d7ac1ed71c067059f3371",
   "match": "Marítimo v FC Porto",
   "match_url": "/football/matches/maritimo-vs-fc-porto-2026-10-10/",
   "kickoff": "2026-10-10T17:00:00.000Z",
   "competition": "Primeira Liga",
   "lead_hours": 47.6,
   "market_code": "1x2",
   "author_said": "1X2, match result: FC Porto at 1.27",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "1-2",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 3000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "1.27",
   "settled_price": "1.3000",
   "published_at": "2026-10-08T17:09:43.000Z",
   "recorded_at": "2026-10-08T17:23:06.165Z",
   "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,
   "platform": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-cb8d7ac1ed71c067059f3371",
    "quote_text": "At 27/100 (1.27), Porto are clear favourites to come away with the win this weekend, and given the gulf in quality and experience between the two sides, we are siding with the bookmakers here.",
    "fragment_from": 4295,
    "fragment_to": 4487,
    "quote_allowed": true,
    "source_info": {
     "medium": "rss",
     "url": "https://footballwhispers.com/blog/maritimo-vs-porto-prediction-10-10-2026/",
     "display_name": null,
     "speaker": "Joshua Ojele",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "c154fbb54ab80e0fee23f87515907bff416053fa5f8fe18dce3290c31fa6ff3e",
     "material_removed": false
    },
    "published_at": "2026-10-08T17:09:43.000Z",
    "detected_at": "2026-10-08T17:23:06.165Z",
    "executed_at": "2026-10-22T12:24:05.077Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-5d9efad94cea",
     "display_name": "Marítimo — FC Porto",
     "competition_name": "Primeira Liga",
     "starts_at": "2026-10-10T17:00:00.000Z",
     "url": "/football/matches/maritimo-vs-fc-porto-2026-10-10/",
     "scoreline": "1-2",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "FC Porto",
    "odds_set": {
     "by_author": "1.27",
     "our_snapshot": "1.3000",
     "our_snapshot_at": "2026-10-08T17:20:36.000Z",
     "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-08T17:09:43.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-08T17:09:43.000Z",
     "detected_at": "2026-10-08T17:23:06.165Z",
     "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": "FC Porto",
     "author_odds": "1.27",
     "market_key": "1x2",
     "choice_key": "2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: FC Porto at 1.27"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "1-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Marítimo 1-2 FC Porto."
    },
    "settlements": [
     {
      "operation_id": "679454bb325ccfff7b6232d62e682f4915b74c434cf57f007ca5fd29f0ef7bc1",
      "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": "FC Porto",
      "decimal_odds": "1.27",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 2700,
      "executed_at": "2026-10-08T17:25:32.538Z",
      "methodology_version": "2.1",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "ec449f067d45c745fe3db381e68ae59bae9666ac86044c08e77f33c737b6df08",
      "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": "FC Porto",
      "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-22T12:24:05.077Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "Joshua Ojele",
     "publisher": "Football Whispers",
     "forecaster": "Joshua Ojele",
     "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://footballwhispers.com/blog/maritimo-vs-porto-prediction-10-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "FC Porto to win"
   }
  },
  {
   "record_id": "n-045131a469d0ac3fe0ac78f0",
   "url": "/authors/joshua-ojele/picks/3/#pick-n-045131a469d0ac3fe0ac78f0",
   "match": "AFC Ajax v NEC Nijmegen",
   "match_url": "/football/matches/afc-ajax-vs-nec-nijmegen-2026-10-10/",
   "kickoff": "2026-10-10T19:00:00.000Z",
   "competition": "Eredivisie",
   "lead_hours": 43.9,
   "market_code": "total",
   "author_said": "Over/Under 2.5 goals: over 2.5 at 1.3",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "1-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "1.3",
   "settled_price": "1.2900",
   "published_at": "2026-10-08T22:55:42.000Z",
   "recorded_at": "2026-10-08T23:05:34.157Z",
   "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,
   "platform": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-045131a469d0ac3fe0ac78f0",
    "quote_text": "> Over 2.5 goals at 3/10 (1.30) | Likelihood: Possible",
    "fragment_from": 5348,
    "fragment_to": 5402,
    "quote_allowed": true,
    "source_info": {
     "medium": "rss",
     "url": "https://footballwhispers.com/blog/ajax-vs-nec-nijmegen-prediction-10-10-2026/",
     "display_name": null,
     "speaker": "Joshua Ojele",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "548e22c3e2514ed9088e12d5f20ce8b2069d39a0d614bcbe6c64da735f574793",
     "material_removed": false
    },
    "published_at": "2026-10-08T22:55:42.000Z",
    "detected_at": "2026-10-08T23:05:34.157Z",
    "executed_at": "2026-10-22T11:03:46.573Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-2dc93103faf2",
     "display_name": "AFC Ajax — NEC Nijmegen",
     "competition_name": "Eredivisie",
     "starts_at": "2026-10-10T19:00:00.000Z",
     "url": "/football/matches/afc-ajax-vs-nec-nijmegen-2026-10-10/",
     "scoreline": "1-1",
     "condition": "finished"
    },
    "market_label": "Over/Under 2.5 goals",
    "outcome_label": "over 2.5",
    "odds_set": {
     "by_author": "1.3",
     "our_snapshot": "1.2900",
     "our_snapshot_at": "2026-10-08T23:05:36.000Z",
     "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-08T22:55:42.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-08T22:55:42.000Z",
     "detected_at": "2026-10-08T23:05:34.157Z",
     "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.3",
     "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.3"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "1-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was AFC Ajax 1-1 NEC Nijmegen."
    },
    "settlements": [
     {
      "operation_id": "076500f87f2f238a7fc464e0838de1ba40555c55cbb82c07bcb447ba65fdb3e9",
      "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.3",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-09T00:17:24.486Z",
      "methodology_version": "2.1",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "5cc7e5238104df1d9b8caa1bbbaad5fb10981c141488c59287fc8614602259d3",
      "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.2900",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-22T11:03:46.573Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "Joshua Ojele",
     "publisher": "Football Whispers",
     "forecaster": "Joshua Ojele",
     "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://footballwhispers.com/blog/ajax-vs-nec-nijmegen-prediction-10-10-2026/",
     "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-1c99feb3ccf03c0257ae653d",
   "url": "/authors/joshua-ojele/picks/3/#pick-n-1c99feb3ccf03c0257ae653d",
   "match": "AFC Ajax v NEC Nijmegen",
   "match_url": "/football/matches/afc-ajax-vs-nec-nijmegen-2026-10-10/",
   "kickoff": "2026-10-10T19:00:00.000Z",
   "competition": "Eredivisie",
   "lead_hours": 43.9,
   "market_code": "correct_score_market",
   "author_said": "Correct score: AFC Ajax 3-1 NEC Nijmegen at 10",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "1-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "author_price",
   "series_short": "author's odds",
   "author_price": "10",
   "settled_price": "10",
   "published_at": "2026-10-08T22:55:42.000Z",
   "recorded_at": "2026-10-08T23:05:34.157Z",
   "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,
   "platform": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-1c99feb3ccf03c0257ae653d",
    "quote_text": "> Correct score: 3-1 at 9/1 (10.00) | Likelihood: Outsider",
    "fragment_from": 5469,
    "fragment_to": 5527,
    "quote_allowed": true,
    "source_info": {
     "medium": "rss",
     "url": "https://footballwhispers.com/blog/ajax-vs-nec-nijmegen-prediction-10-10-2026/",
     "display_name": null,
     "speaker": "Joshua Ojele",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "548e22c3e2514ed9088e12d5f20ce8b2069d39a0d614bcbe6c64da735f574793",
     "material_removed": false
    },
    "published_at": "2026-10-08T22:55:42.000Z",
    "detected_at": "2026-10-08T23:05:34.157Z",
    "executed_at": "2026-10-09T11:29:52.029Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-2dc93103faf2",
     "display_name": "AFC Ajax — NEC Nijmegen",
     "competition_name": "Eredivisie",
     "starts_at": "2026-10-10T19:00:00.000Z",
     "url": "/football/matches/afc-ajax-vs-nec-nijmegen-2026-10-10/",
     "scoreline": "1-1",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "AFC Ajax 3-1 NEC Nijmegen",
    "odds_set": {
     "by_author": "10",
     "our_snapshot": null,
     "our_snapshot_at": null,
     "our_snapshot_source": null,
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "loss",
    "simulation_change_hundredths": -10000,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At the author's stated price",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-08T22:55:42.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-08T22:55:42.000Z",
     "detected_at": "2026-10-08T23:05:34.157Z",
     "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": "Correct score",
     "choice": "AFC Ajax 3-1 NEC Nijmegen",
     "author_odds": "10",
     "market_key": "correct_score_market",
     "choice_key": "3-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: AFC Ajax 3-1 NEC Nijmegen at 10"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "1-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was AFC Ajax 1-1 NEC Nijmegen."
    },
    "settlements": [
     {
      "operation_id": "46d797edcc878088120b7f13baff35bd738b95dc77db0b2a0b3242f95977e813",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Correct score",
      "choice": "AFC Ajax 3-1 NEC Nijmegen",
      "decimal_odds": "10",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-09T11:29:52.029Z",
      "methodology_version": "2.1",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "4b12f42fa9f4cb068409d253cb5a71a4703418072efc66cd4aec996728d759de",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Correct score",
      "choice": "AFC Ajax 3-1 NEC Nijmegen",
      "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": "settled_pick",
    "authorship": {
     "material_author": "Joshua Ojele",
     "publisher": "Football Whispers",
     "forecaster": "Joshua Ojele",
     "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://footballwhispers.com/blog/ajax-vs-nec-nijmegen-prediction-10-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "AFC Ajax 3-1 NEC Nijmegen"
   }
  },
  {
   "record_id": "n-8d989498db9596bf83ce508c",
   "url": "/authors/joshua-ojele/picks/3/#pick-n-8d989498db9596bf83ce508c",
   "match": "AFC Ajax v NEC Nijmegen",
   "match_url": "/football/matches/afc-ajax-vs-nec-nijmegen-2026-10-10/",
   "kickoff": "2026-10-10T19:00:00.000Z",
   "competition": "Eredivisie",
   "lead_hours": 43.9,
   "market_code": "both_teams_score_and_result",
   "author_said": "Match result and both teams to score: AFC Ajax win, both teams to score: yes at 2.25",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "1-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "author_price",
   "series_short": "author's odds",
   "author_price": "2.25",
   "settled_price": "2.25",
   "published_at": "2026-10-08T22:55:42.000Z",
   "recorded_at": "2026-10-08T23:05:34.157Z",
   "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,
   "platform": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-8d989498db9596bf83ce508c",
    "quote_text": "> Ajax to win + BTTS – Yes at 5/4 (2.25) | Likelihood: Possible",
    "fragment_from": 5404,
    "fragment_to": 5467,
    "quote_allowed": true,
    "source_info": {
     "medium": "rss",
     "url": "https://footballwhispers.com/blog/ajax-vs-nec-nijmegen-prediction-10-10-2026/",
     "display_name": null,
     "speaker": "Joshua Ojele",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "548e22c3e2514ed9088e12d5f20ce8b2069d39a0d614bcbe6c64da735f574793",
     "material_removed": false
    },
    "published_at": "2026-10-08T22:55:42.000Z",
    "detected_at": "2026-10-08T23:05:34.157Z",
    "executed_at": "2026-10-09T00:17:24.549Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-2dc93103faf2",
     "display_name": "AFC Ajax — NEC Nijmegen",
     "competition_name": "Eredivisie",
     "starts_at": "2026-10-10T19:00:00.000Z",
     "url": "/football/matches/afc-ajax-vs-nec-nijmegen-2026-10-10/",
     "scoreline": "1-1",
     "condition": "finished"
    },
    "market_label": "Match result and both teams to score",
    "outcome_label": "AFC Ajax win, both teams to score: yes",
    "odds_set": {
     "by_author": "2.25",
     "our_snapshot": null,
     "our_snapshot_at": null,
     "our_snapshot_source": null,
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "loss",
    "simulation_change_hundredths": -10000,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At the author's stated price",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-08T22:55:42.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-08T22:55:42.000Z",
     "detected_at": "2026-10-08T23:05:34.157Z",
     "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": "Match result and both teams to score",
     "choice": "AFC Ajax win, both teams to score: yes",
     "author_odds": "2.25",
     "market_key": "both_teams_score_and_result",
     "choice_key": "1-yes",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Match result and both teams to score: AFC Ajax win, both teams to score: yes at 2.25"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "1-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was AFC Ajax 1-1 NEC Nijmegen."
    },
    "settlements": [
     {
      "operation_id": "7d38d8e7c4de497dbb3f78c62972d5ac512434490f88352540b490c1749716d1",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Match result and both teams to score",
      "choice": "AFC Ajax win, both teams to score: yes",
      "decimal_odds": "2.25",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-09T00:17:24.549Z",
      "methodology_version": "2.1",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "c924d8887ec60b77d9b6dac60c389044c4f007884d8badbcac13a7598c6d2204",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Match result and both teams to score",
      "choice": "AFC Ajax win, both teams to score: yes",
      "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": "settled_pick",
    "authorship": {
     "material_author": "Joshua Ojele",
     "publisher": "Football Whispers",
     "forecaster": "Joshua Ojele",
     "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://footballwhispers.com/blog/ajax-vs-nec-nijmegen-prediction-10-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "AFC Ajax win, both teams to score: yes"
   }
  },
  {
   "record_id": "n-ebe3123e1884f71b89c65125",
   "url": "/authors/joshua-ojele/picks/3/#pick-n-ebe3123e1884f71b89c65125",
   "match": "AFC Ajax v NEC Nijmegen",
   "match_url": "/football/matches/afc-ajax-vs-nec-nijmegen-2026-10-10/",
   "kickoff": "2026-10-10T19:00:00.000Z",
   "competition": "Eredivisie",
   "lead_hours": 43.9,
   "market_code": "both_teams_score",
   "author_said": "Both teams to score: yes",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "1-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 5405,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "1.5405",
   "published_at": "2026-10-08T22:55:42.000Z",
   "recorded_at": "2026-10-08T23:05:34.157Z",
   "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.5405",
    "result": "Won",
    "points_hundredths": 5405,
    "picked_favourite": true
   },
   "platform": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-ebe3123e1884f71b89c65125",
    "quote_text": "🔥 Our Hot tip\n\nBTTS - Yes",
    "fragment_from": 181,
    "fragment_to": 206,
    "quote_allowed": true,
    "source_info": {
     "medium": "rss",
     "url": "https://footballwhispers.com/blog/ajax-vs-nec-nijmegen-prediction-10-10-2026/",
     "display_name": null,
     "speaker": "Joshua Ojele",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "548e22c3e2514ed9088e12d5f20ce8b2069d39a0d614bcbe6c64da735f574793",
     "material_removed": false
    },
    "published_at": "2026-10-08T22:55:42.000Z",
    "detected_at": "2026-10-08T23:05:34.157Z",
    "executed_at": "2026-10-10T23:35:07.586Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-2dc93103faf2",
     "display_name": "AFC Ajax — NEC Nijmegen",
     "competition_name": "Eredivisie",
     "starts_at": "2026-10-10T19:00:00.000Z",
     "url": "/football/matches/afc-ajax-vs-nec-nijmegen-2026-10-10/",
     "scoreline": "1-1",
     "condition": "finished"
    },
    "market_label": "Both teams to score",
    "outcome_label": "yes",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "1.5405",
     "our_snapshot_at": "2026-10-09T00:23:26.248Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 5405,
    "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-08T22:55:42.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-08T22:55:42.000Z",
     "detected_at": "2026-10-08T23:05:34.157Z",
     "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": null,
     "market_key": "both_teams_score",
     "choice_key": "yes",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Both teams to score: yes"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "1-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was AFC Ajax 1-1 NEC Nijmegen."
    },
    "settlements": [
     {
      "operation_id": "3df7edbf253e80079364a0f2e6b1a1a812cd2d2f33fee324da213c11c1887014",
      "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.5405",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 5405,
      "executed_at": "2026-10-10T23:35:07.586Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "Joshua Ojele",
     "publisher": "Football Whispers",
     "forecaster": "Joshua Ojele",
     "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://footballwhispers.com/blog/ajax-vs-nec-nijmegen-prediction-10-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "yes (Both teams to score)"
   }
  },
  {
   "record_id": "n-2e046f485f5bc49c877ce832",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Goal range – 2-4 goals at 57/100 (1.57)",
   "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-09T21:03:51.000Z",
   "recorded_at": "2026-10-09T21:12:16.773Z",
   "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,
   "platform": null,
   "correction": null
  },
  {
   "record_id": "n-7ef1f322f700b316b9cca9bd",
   "url": "/authors/joshua-ojele/picks/3/#pick-n-7ef1f322f700b316b9cca9bd",
   "match": "Benfica v Vitória Guimarães",
   "match_url": "/football/matches/benfica-vs-vitoria-guimaraes-2026-10-11/",
   "kickoff": "2026-10-11T17:00:00.000Z",
   "competition": "Primeira Liga",
   "lead_hours": 43.8,
   "market_code": "1x2",
   "author_said": "1X2, match result: Benfica",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Won",
   "final_score": "2-0",
   "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-09T21:03:51.000Z",
   "recorded_at": "2026-10-09T21:12:16.773Z",
   "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,
   "platform": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-7ef1f322f700b316b9cca9bd",
    "quote_text": "we are siding with the bookmakers here",
    "fragment_from": 4266,
    "fragment_to": 4304,
    "quote_allowed": true,
    "source_info": {
     "medium": "rss",
     "url": "https://footballwhispers.com/blog/benfica-vs-vitoria-guimaraes-prediction-11-10-2026/",
     "display_name": null,
     "speaker": "Joshua Ojele",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "50aa8a37fdb17b4c5a60206332da97ae3758b43ee19ca1ded27ad1e2e4cf0019",
     "material_removed": false
    },
    "published_at": "2026-10-09T21:03:51.000Z",
    "detected_at": "2026-10-09T21:12:16.773Z",
    "executed_at": null,
    "statement_class": "unpriced",
    "status": "ambiguous",
    "cause": "",
    "cause_code": "not_checked",
    "event": {
     "event_id": "s-ab34e450c302",
     "display_name": "Benfica — Vitória Guimarães",
     "competition_name": "Primeira Liga",
     "starts_at": "2026-10-11T17:00:00.000Z",
     "url": "/football/matches/benfica-vs-vitoria-guimaraes-2026-10-11/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "Benfica",
    "odds_set": {
     "by_author": null,
     "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-09T21:03:51.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-09T21:03:51.000Z",
     "detected_at": "2026-10-09T21:12:16.773Z",
     "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": "Benfica",
     "author_odds": null,
     "market_key": "1x2",
     "choice_key": "1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: Benfica"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "2-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Benfica 2-0 Vitória Guimarães."
    },
    "settlements": [
     {
      "operation_id": "5ebfe1cde3f825ff57a02dec61f35f443d32d316c66a0447037fbdc3ac749860",
      "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": "Benfica",
      "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.1",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "Joshua Ojele",
     "publisher": "Football Whispers",
     "forecaster": "Joshua Ojele",
     "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://footballwhispers.com/blog/benfica-vs-vitoria-guimaraes-prediction-11-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Benfica to win"
   }
  },
  {
   "record_id": "n-b2ca1a23e7292e1d7b35ba8f",
   "url": "/authors/joshua-ojele/picks/3/#pick-n-b2ca1a23e7292e1d7b35ba8f",
   "match": "Benfica v Vitória Guimarães",
   "match_url": "/football/matches/benfica-vs-vitoria-guimaraes-2026-10-11/",
   "kickoff": "2026-10-11T17:00:00.000Z",
   "competition": "Primeira Liga",
   "lead_hours": 43.8,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Benfica 2-0 Vitória Guimarães at 7",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Won",
   "final_score": "2-0",
   "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-09T21:03:51.000Z",
   "recorded_at": "2026-10-09T21:12:16.773Z",
   "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,
   "platform": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-b2ca1a23e7292e1d7b35ba8f",
    "quote_text": "Correct score: 2-0 at 6/1 (7.00) | Likelihood: Outsider",
    "fragment_from": 4884,
    "fragment_to": 4939,
    "quote_allowed": true,
    "source_info": {
     "medium": "rss",
     "url": "https://footballwhispers.com/blog/benfica-vs-vitoria-guimaraes-prediction-11-10-2026/",
     "display_name": null,
     "speaker": "Joshua Ojele",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "50aa8a37fdb17b4c5a60206332da97ae3758b43ee19ca1ded27ad1e2e4cf0019",
     "material_removed": false
    },
    "published_at": "2026-10-09T21:03:51.000Z",
    "detected_at": "2026-10-09T21:12:16.773Z",
    "executed_at": null,
    "statement_class": "priced",
    "status": "recognised",
    "cause": "",
    "cause_code": "not_checked",
    "event": {
     "event_id": "s-ab34e450c302",
     "display_name": "Benfica — Vitória Guimarães",
     "competition_name": "Primeira Liga",
     "starts_at": "2026-10-11T17:00:00.000Z",
     "url": "/football/matches/benfica-vs-vitoria-guimaraes-2026-10-11/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Benfica 2-0 Vitória Guimarães",
    "odds_set": {
     "by_author": "7",
     "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-09T21:03:51.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-09T21:03:51.000Z",
     "detected_at": "2026-10-09T21:12:16.773Z",
     "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": "Correct score",
     "choice": "Benfica 2-0 Vitória Guimarães",
     "author_odds": "7",
     "market_key": "correct_score_market",
     "choice_key": "2-0",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Benfica 2-0 Vitória Guimarães at 7"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "2-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Matched: the final score was Benfica 2-0 Vitória Guimarães."
    },
    "settlements": [
     {
      "operation_id": "15f7c05f22f941484e1c5522c02cbe95d81e21336e23a69ac162e0c2bc780a13",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Correct score",
      "choice": "Benfica 2-0 Vitória Guimarães",
      "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.1",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "ea982cd51f69ff56a7ec3abd12cf76ead1c6c37bd27e22e8e0dc0bdcc771405f",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Correct score",
      "choice": "Benfica 2-0 Vitória Guimarães",
      "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.1",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "Joshua Ojele",
     "publisher": "Football Whispers",
     "forecaster": "Joshua Ojele",
     "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://footballwhispers.com/blog/benfica-vs-vitoria-guimaraes-prediction-11-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Benfica 2-0 Vitória Guimarães"
   }
  },
  {
   "record_id": "n-b976c9d74f367b199adf0537",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "HT/FT 1/1 at 33/50 (1.66) is a tempting pick",
   "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-09T21:03:51.000Z",
   "recorded_at": "2026-10-09T21:12:16.773Z",
   "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,
   "platform": null,
   "correction": null
  },
  {
   "record_id": "n-bd6b8ec6a0024afd623221e3",
   "url": "/authors/joshua-ojele/picks/3/#pick-n-bd6b8ec6a0024afd623221e3",
   "match": "Benfica v Vitória Guimarães",
   "match_url": "/football/matches/benfica-vs-vitoria-guimaraes-2026-10-11/",
   "kickoff": "2026-10-11T17:00:00.000Z",
   "competition": "Primeira Liga",
   "lead_hours": 43.8,
   "market_code": "both_teams_score_and_result",
   "author_said": "Match result and both teams to score: Benfica win, both teams to score: no at 2",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "2-0",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 10000,
   "series_code": "author_price",
   "series_short": "author's odds",
   "author_price": "2",
   "settled_price": "2",
   "published_at": "2026-10-09T21:03:51.000Z",
   "recorded_at": "2026-10-09T21:12:16.773Z",
   "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,
   "platform": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-bd6b8ec6a0024afd623221e3",
    "quote_text": "Benfica to win + BTTS – No at 1/1 (2.00) offers value",
    "fragment_from": 4580,
    "fragment_to": 4633,
    "quote_allowed": true,
    "source_info": {
     "medium": "rss",
     "url": "https://footballwhispers.com/blog/benfica-vs-vitoria-guimaraes-prediction-11-10-2026/",
     "display_name": null,
     "speaker": "Joshua Ojele",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "50aa8a37fdb17b4c5a60206332da97ae3758b43ee19ca1ded27ad1e2e4cf0019",
     "material_removed": false
    },
    "published_at": "2026-10-09T21:03:51.000Z",
    "detected_at": "2026-10-09T21:12:16.773Z",
    "executed_at": "2026-10-09T21:13:41.600Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-ab34e450c302",
     "display_name": "Benfica — Vitória Guimarães",
     "competition_name": "Primeira Liga",
     "starts_at": "2026-10-11T17:00:00.000Z",
     "url": "/football/matches/benfica-vs-vitoria-guimaraes-2026-10-11/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "Match result and both teams to score",
    "outcome_label": "Benfica win, both teams to score: no",
    "odds_set": {
     "by_author": "2",
     "our_snapshot": null,
     "our_snapshot_at": null,
     "our_snapshot_source": null,
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 10000,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At the author's stated price",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-09T21:03:51.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-09T21:03:51.000Z",
     "detected_at": "2026-10-09T21:12:16.773Z",
     "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": "Match result and both teams to score",
     "choice": "Benfica win, both teams to score: no",
     "author_odds": "2",
     "market_key": "both_teams_score_and_result",
     "choice_key": "1-no",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Match result and both teams to score: Benfica win, both teams to score: no at 2"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "2-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Benfica 2-0 Vitória Guimarães."
    },
    "settlements": [
     {
      "operation_id": "e5c052e8442ec217584d30c626aee16b9726b3755a16650b8903b515342a6c47",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Match result and both teams to score",
      "choice": "Benfica win, both teams to score: no",
      "decimal_odds": "2",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 10000,
      "executed_at": "2026-10-09T21:13:41.600Z",
      "methodology_version": "2.1",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "4eef4c466e647a1ca656420dd38aea7d25f46a73e27148eb6984203f98135dd2",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Match result and both teams to score",
      "choice": "Benfica win, both teams to score: no",
      "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": "settled_pick",
    "authorship": {
     "material_author": "Joshua Ojele",
     "publisher": "Football Whispers",
     "forecaster": "Joshua Ojele",
     "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://footballwhispers.com/blog/benfica-vs-vitoria-guimaraes-prediction-11-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Benfica win, both teams to score: no"
   }
  },
  {
   "record_id": "n-35248508a57fa7a0280c30bf",
   "url": "/authors/joshua-ojele/picks/3/#pick-n-35248508a57fa7a0280c30bf",
   "match": "Famalicão v Alverca",
   "match_url": "/football/matches/famalicao-vs-alverca-2026-10-12/",
   "kickoff": "2026-10-12T19:15:00.000Z",
   "competition": "Primeira Liga",
   "lead_hours": 40.1,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Famalicão 2-1 Alverca",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "1-4",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-11T02:17:25.000Z",
   "recorded_at": "2026-10-11T03:10:03.919Z",
   "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,
   "platform": "Sports Mole",
   "correction": null,
   "evidence": {
    "observation_id": "n-35248508a57fa7a0280c30bf",
    "quote_text": "We say: Famalicao 2-1 Alverca",
    "fragment_from": 4960,
    "fragment_to": 4989,
    "quote_allowed": true,
    "source_info": {
     "medium": "rss",
     "url": "https://www.sportsmole.co.uk/football/alverca/preview/famalicao-vs-alverca-prediction-team-news-lineups_606649.html",
     "display_name": null,
     "speaker": "Joshua Ojele",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "207a0ed8d51ac5715813979deb578d26af47216b070b8c0015adca6f71d23c46",
     "material_removed": false
    },
    "published_at": "2026-10-11T02:17:25.000Z",
    "detected_at": "2026-10-11T03:10:03.919Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-e3327098f683",
     "display_name": "Famalicão — Alverca",
     "competition_name": "Primeira Liga",
     "starts_at": "2026-10-12T19:15:00.000Z",
     "url": "/football/matches/famalicao-vs-alverca-2026-10-12/",
     "scoreline": "1-4",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Famalicão 2-1 Alverca",
    "odds_set": {
     "by_author": null,
     "our_snapshot": null,
     "our_snapshot_at": null,
     "our_snapshot_source": null,
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": null,
    "result": "loss",
    "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-11T02:17:25.000Z",
     "fragment_basis": "element",
     "source_page_at": "2026-10-11T02:17:25.000Z",
     "detected_at": "2026-10-11T03:10:03.919Z",
     "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": "Correct score",
     "choice": "Famalicão 2-1 Alverca",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Famalicão 2-1 Alverca"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "1-4",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Famalicão 1-4 Alverca."
    },
    "settlements": [
     {
      "operation_id": "783d5350a9848875007d344d3bd921b106de7cf188ce8551de1a4dc11c78f560",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "Famalicão",
      "decimal_odds": "1.8200",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-23T00:52:44.211Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "Joshua Ojele",
     "publisher": "Sports Mole",
     "forecaster": "Joshua Ojele",
     "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://www.sportsmole.co.uk/football/alverca/preview/famalicao-vs-alverca-prediction-team-news-lineups_606649.html",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Famalicão 2-1 Alverca"
   }
  },
  {
   "record_id": "n-a049d20e46a4d70af94ec562",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "We say: Al-Ahli 1-2 Al-Nassr",
   "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-13T20:55:58.000Z",
   "recorded_at": "2026-10-13T21:09:55.398Z",
   "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,
   "platform": "Sports Mole",
   "correction": null
  },
  {
   "record_id": "n-0d6deadfc4eab547799c02c0",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "over 2.5 goals at 53/10 (1.53) is our third pick of the game.",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "ambiguous",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-13T22:42:45.000Z",
   "recorded_at": "2026-10-13T22:54:14.445Z",
   "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,
   "platform": null,
   "correction": null
  },
  {
   "record_id": "n-32a5c3c282ed198fe2b74bd9",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "> Goal range – 2-4 goals at 57/100 (1.57) | Likelihood: Possible",
   "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-13T22:42:45.000Z",
   "recorded_at": "2026-10-13T22:54:14.445Z",
   "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,
   "platform": null,
   "correction": null
  },
  {
   "record_id": "n-62db2bc53acb971c9f41fbc4",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "we are backing them to carry the day in front of their home supporters, which is currently priced at 9/25 (1.36) by the bookmakers.",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "ambiguous",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-13T22:42:45.000Z",
   "recorded_at": "2026-10-13T22:54:14.445Z",
   "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,
   "platform": null,
   "correction": null
  }
 ],
 "pagination": {
  "per_page": 20,
  "total": 121,
  "pages": 8,
  "page_urls": [
   "/authors/joshua-ojele/",
   "/authors/joshua-ojele/picks/2/",
   "/authors/joshua-ojele/picks/3/",
   "/authors/joshua-ojele/picks/4/",
   "/authors/joshua-ojele/picks/5/",
   "/authors/joshua-ojele/picks/6/",
   "/authors/joshua-ojele/picks/7/",
   "/authors/joshua-ojele/picks/8/"
  ],
  "groups": {
   "settled": 30,
   "pending": 0,
   "excluded": 91
  },
  "continuation": "by_time",
  "page": 3,
  "first": 21,
  "last": 40,
  "author_url": "/authors/joshua-ojele/",
  "current": false
 },
 "entity_id": "history:/authors/joshua-ojele/picks/3/",
 "source_revision": 42
}
