# A forecasting study — one prediction-market question, researched like a thesis

Recipe No. 51, Research and civic life. From The know.sh Cookbook: https://know.sh/cookbook/prediction-market

Will Port Calder’s transit tax pass in November? The market says 62 per cent. Your study starts from the county’s record, weighs each poll and endorsement in a section of its own with sources, and logs every change to your own number, so when the count is certified you can score your reasoning, not just your luck.

- For: someone practising forecasting on one hard question
- You get: a study of one question: base rates, evidence weighed, a forecast log
- Time: an evening, then twenty minutes a week
- Made with: Document, Section, Elements, Your AI assistant, Revisions

## How it works

1. **Pin the question and its rules.** Ask your assistant for a document whose first section quotes the resolution rules word for word: what counts as Yes, which source settles it, and when.
2. **Find the base rate first.** Before any news, ask for a Base rates section: how often questions like this one have resolved Yes, with sources. Write your opening forecast from it.
3. **Weigh each piece of evidence.** Ask for an Evidence section per poll, endorsement or precedent, for or against, with its source. Then a table element weighing them all, naming the section each came from.
4. **Log every change to your number.** Each week, ask for a line chart of the market against your forecast and another line in the decisions element saying what moved you. When it resolves, score yourself with a Brier score.

## Try this prompt

Your assistant, connected to know.sh (Claude, ChatGPT or a local model):

> Using know.sh, start a study on my Forecasting shelf of this question: will Measure R, Port Calder’s transit sales tax, pass on 3 November? First section: the resolution rules, quoted. Second: base rates, how often county and regional transit taxes have passed, with sources. Then an Evidence section per poll, endorsement or precedent, for or against, each with its source. Leave the forecast to me.

Your assistant, connected to know.sh (Claude, ChatGPT or a local model):

> In my Measure R study, add a table element to The evidence, weighed: a row per Evidence section, with its number, the evidence in a line, which way it leans, and a weight of high, medium or low. Then add my new forecast to the decisions element in Forecast log, 55%, superseding the last one, and ask me for the reason.

## Elements in the specimens

Written as your assistant writes them through the know.sh MCP server. Each reads as plain words until you turn elements on (Account → Elements).

Chart, specimen 1:

```element chart
{
  "type": "line",
  "caption": "Chance Measure R passes: the market against my forecast, each Sunday",
  "dimension": "Week ending",
  "labels": [
    {
      "label": "2 Aug"
    },
    {
      "label": "9 Aug"
    },
    {
      "label": "16 Aug"
    },
    {
      "label": "23 Aug"
    },
    {
      "label": "30 Aug"
    },
    {
      "label": "6 Sep"
    },
    {
      "label": "13 Sep"
    },
    {
      "label": "20 Sep"
    },
    {
      "label": "27 Sep"
    }
  ],
  "series": [
    {
      "name": "Market",
      "values": "52, 55, 54, 61, 58, 60, 66, 60, 62"
    },
    {
      "name": "My forecast",
      "values": "45, 45, 45, 52, 52, 52, 57, 55, 55"
    }
  ],
  "units": "%",
  "measure": "Chance of Yes",
  "axisTitles": true,
  "min": 30,
  "max": 80,
  "markers": true,
  "highlight": "My forecast",
  "annotations": [
    {
      "axis": "y",
      "at": "50",
      "label": "Even"
    },
    {
      "axis": "x",
      "at": "23 Aug",
      "label": "Chamber endorses"
    },
    {
      "axis": "x",
      "at": "13 Sep",
      "label": "Poll: 54% Yes"
    },
    {
      "axis": "x",
      "at": "20 Sep",
      "label": "No campaign starts"
    }
  ],
  "source": "The market’s implied probability, noted each Sunday evening. Port Calder, Measure R and every figure here are invented."
}
```

Table, specimen 2:

```element table
{
  "caption": "Evidence on Measure R, as of 27 September",
  "columns": [
    {
      "label": "Evidence (section)",
      "align": "left"
    },
    {
      "label": "Leans",
      "align": "left"
    },
    {
      "label": "Weight",
      "align": "left"
    }
  ],
  "rows": [
    [
      "County midterm record: 2 of 5 transit taxes passed (2)",
      "No",
      "High"
    ],
    [
      "Region since 2010: 19 of 31 transit taxes passed (2)",
      "Yes",
      "Medium"
    ],
    [
      "Harbour Institute poll, 11 September: 54% Yes, 12% undecided (3)",
      "Yes",
      "High"
    ],
    [
      "Chamber of Commerce endorsement, 21 August (4)",
      "Yes",
      "Medium"
    ],
    [
      "Bus ridership above its 2019 level since March (5)",
      "Yes",
      "Low"
    ],
    [
      "Taxpayers’ association campaign, from 20 September (6)",
      "No",
      "Medium"
    ],
    [
      "Measure K failed with 48.6% in 2018 (7)",
      "No",
      "Low"
    ]
  ],
  "notes": "High moves the forecast several points; low, one or none. The poll counts for less than its size suggests: 12 per cent undecided with five weeks to go."
}
```

Decisions, specimen 3:

```element decisions
{
  "caption": "Forecast log: every change to my number, and why",
  "decisions": [
    {
      "title": "Forecast, 20 September",
      "status": "decided",
      "date": "2026-09-20",
      "choice": "55% Yes",
      "reason": "The No campaign launched with a clear message about the tax’s thirty-year length. Down two points."
    },
    {
      "title": "Forecast, 13 September",
      "status": "superseded",
      "date": "2026-09-13",
      "choice": "57% Yes",
      "reason": "The first independent poll, 54 per cent Yes. Up five, not more: 12 per cent undecided.",
      "supersededBy": "Forecast, 20 September"
    },
    {
      "title": "Forecast, 23 August",
      "status": "superseded",
      "date": "2026-08-23",
      "choice": "52% Yes",
      "reason": "Business opposition sank Measure K in 2018; the Chamber backing this one removes it.",
      "supersededBy": "Forecast, 13 September"
    },
    {
      "title": "Opening forecast",
      "status": "superseded",
      "date": "2026-08-02",
      "choice": "45% Yes",
      "reason": "The county’s midterm record, 2 of 5, nudged up by the region’s 19 of 31.",
      "supersededBy": "Forecast, 23 August"
    },
    {
      "title": "The October poll",
      "status": "open",
      "choice": "Move to 60% if Yes leads by eight or more",
      "reason": "Written down before the poll, so the result cannot talk me into more.",
      "alternatives": [
        {
          "option": "Hold at 55% if the lead is under five"
        }
      ]
    }
  ]
}
```
