From 4044d6ccfe2fabeda7413529b120254cc517d49a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Mar=C3=ADa=20Juaristi?=
<127882282+juaristi22@users.noreply.github.com>
Date: Sat, 17 Oct 2026 11:01:24 +0100
Subject: [PATCH 1/4] Fix recent residential SDLT purchase schedules and
inclusive first-buyer caps
---
changelog.d/2245.fixed.md | 1 +
docs/book/programs/gov/hmrc/stamp-duty.ipynb | 6417 +----------------
.../residential/purchase/additional/rate.yaml | 14 +
.../residential/purchase/main/first/max.yaml | 4 +
.../residential/purchase/main/first/rate.yaml | 4 +
.../residential/purchase/main/subsequent.yaml | 6 +
.../hmrc/stamp_duty/stamp_duty_land_tax.yaml | 6 +-
.../stamp_duty_land_tax_history.yaml | 150 +
...rty_transaction_tax_purchase_properties.py | 2 +-
.../tests/test_sdlt_purchase_schedules.py | 158 +
...lt_on_residential_property_transactions.py | 2 +-
11 files changed, 464 insertions(+), 6300 deletions(-)
create mode 100644 changelog.d/2245.fixed.md
create mode 100644 policyengine_uk/tests/policy/baseline/gov/hmrc/stamp_duty/stamp_duty_land_tax_history.yaml
create mode 100644 policyengine_uk/tests/test_sdlt_purchase_schedules.py
diff --git a/changelog.d/2245.fixed.md b/changelog.d/2245.fixed.md
new file mode 100644
index 0000000000..18d03b4389
--- /dev/null
+++ b/changelog.d/2245.fixed.md
@@ -0,0 +1 @@
+Updated recent residential SDLT purchase schedules and applied the inclusive first-time-buyer price maximum, retaining annual sampling and contract-protection limitations.
diff --git a/docs/book/programs/gov/hmrc/stamp-duty.ipynb b/docs/book/programs/gov/hmrc/stamp-duty.ipynb
index b7975450bf..c868176975 100644
--- a/docs/book/programs/gov/hmrc/stamp-duty.ipynb
+++ b/docs/book/programs/gov/hmrc/stamp-duty.ipynb
@@ -21,6314 +21,141 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "## Rates\n",
- "\n",
- "The rates of SDLT depend on various factors, including the purchase price of the property, property type, and whether it is an additional property or a purchase by a first-time buyer. Generally, SDLT rates are higher for properties or land with a purchase price exceeding a specific threshold, often referred to as \"stamp duty bands\" or \"stamp duty brackets.\" The rules and thresholds for SDLT may change over time due to government policy adjustments. First-time buyers may be eligible for reduced SDLT rates if the purchase price of the property is not more than £500,000. \n",
- "\n",
- "Here we show current rates and thresholds for SDLT under different situations in 2023 below:\n",
- "\n",
- "
Residential\n",
- "\n",
- "- Rent\n",
- "\n",
- " Up to £125,000: 0%\n",
- " \n",
- " Over £125,000: 1%\n",
- "\n",
- "- Purchase\n",
- " - Main property \n",
- " \n",
- " - First-time\n",
- "\n",
- " Up to £300,000: 0%\n",
- "\n",
- " £300,000 to £500,000: 5%\n",
- "\n",
- " Over £500,000: Ineligible for relief, follow standard rates\n",
- "\n",
- " - Subsequent (standard rates):\n",
- "\n",
- " Up to £125,000: 0%\n",
- "\n",
- " £125,000 to £250,000: 2%\n",
- "\n",
- " £250,000 to £925,000: 5%\n",
- "\n",
- " £925,000 to £1,500,000: 10%\n",
- "\n",
- " Over £1,500,000: 12%\n",
- "\n",
- " - Additional property \n",
- "\n",
- " An additional 3% on top of the standard rates for each band. However, a secondary property or land with a purchase price or market value less than £40,000 will be exempt from SDLT.\n",
- "\n",
- " Less than £40,000: 0%\n",
- " \n",
- " £40,000 to £125,000: 3%\n",
- "\n",
- " £125,000 to £250,000: 5%\n",
- "\n",
- " £250,000 to £925,000: 8%\n",
- "\n",
- " £925,000 to £1,500,000: 13%\n",
- "\n",
- " Over £1,500,000: 15%\n",
- "\n",
- " Non-residential \n",
- "\n",
- "- Rent\n",
- "\n",
- " Up to £150,000: 0%\n",
- "\n",
- " £150,000 to £5,000,000: 1%\n",
- " \n",
- " Over £5,000,000: 2%\n",
- "\n",
- "- Purchase\n",
- "\n",
- " Up to £150,000: 0%\n",
- "\n",
- " £150,000 to £250,000: 2%\n",
- " \n",
- " Over £250,000: 5%"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 77,
- "metadata": {
- "tags": [
- "hide-input"
- ]
- },
- "outputs": [
- {
- "data": {
- "application/vnd.plotly.v1+json": {
- "config": {
- "plotlyServerURL": "https://plot.ly"
- },
- "data": [
- {
- "hovertemplate": "Label=Residential rent
Threshold=%{x}
Rate=%{y}",
- "legendgroup": "Residential rent",
- "line": {
- "color": "#636efa",
- "dash": "solid",
- "shape": "hv"
- },
- "marker": {
- "symbol": "circle"
- },
- "mode": "lines",
- "name": "Residential rent",
- "orientation": "v",
- "showlegend": true,
- "type": "scatter",
- "x": [
- 0,
- 125000,
- 5200000
- ],
- "xaxis": "x",
- "y": [
- 0,
- 0.01,
- 0.01
- ],
- "yaxis": "y"
- },
- {
- "hovertemplate": "Label=Residential purchase main (first home)
Threshold=%{x}
Rate=%{y}",
- "legendgroup": "Residential purchase main (first home)",
- "line": {
- "color": "#EF553B",
- "dash": "solid",
- "shape": "hv"
- },
- "marker": {
- "symbol": "circle"
- },
- "mode": "lines",
- "name": "Residential purchase main (first home)",
- "orientation": "v",
- "showlegend": true,
- "type": "scatter",
- "x": [
- 0,
- 300000,
- 500000,
- 925000,
- 1500000,
- 5200000
- ],
- "xaxis": "x",
- "y": [
- 0,
- 0.05,
- 0.05,
- 0.1,
- 0.12,
- 0.12
- ],
- "yaxis": "y"
- },
- {
- "hovertemplate": "Label=Residential purchase main standard
Threshold=%{x}
Rate=%{y}",
- "legendgroup": "Residential purchase main standard",
- "line": {
- "color": "#00cc96",
- "dash": "solid",
- "shape": "hv"
- },
- "marker": {
- "symbol": "circle"
- },
- "mode": "lines",
- "name": "Residential purchase main standard",
- "orientation": "v",
- "showlegend": true,
- "type": "scatter",
- "x": [
- 0,
- 125000,
- 250000,
- 925000,
- 1500000,
- 5200000
- ],
- "xaxis": "x",
- "y": [
- 0,
- 0.02,
- 0.05,
- 0.1,
- 0.12,
- 0.12
- ],
- "yaxis": "y"
- },
- {
- "hovertemplate": "Label=Residential purchase additional
Threshold=%{x}
Rate=%{y}",
- "legendgroup": "Residential purchase additional",
- "line": {
- "color": "#ab63fa",
- "dash": "solid",
- "shape": "hv"
- },
- "marker": {
- "symbol": "circle"
- },
- "mode": "lines",
- "name": "Residential purchase additional",
- "orientation": "v",
- "showlegend": true,
- "type": "scatter",
- "x": [
- 0,
- 40000,
- 125000,
- 250000,
- 925000,
- 1500000,
- 5200000
- ],
- "xaxis": "x",
- "y": [
- 0,
- 0.03,
- 0.05,
- 0.08,
- 0.13,
- 0.15,
- 0.15
- ],
- "yaxis": "y"
- },
- {
- "hovertemplate": "Label=Non-residential rent
Threshold=%{x}
Rate=%{y}",
- "legendgroup": "Non-residential rent",
- "line": {
- "color": "#FFA15A",
- "dash": "solid",
- "shape": "hv"
- },
- "marker": {
- "symbol": "circle"
- },
- "mode": "lines",
- "name": "Non-residential rent",
- "orientation": "v",
- "showlegend": true,
- "type": "scatter",
- "x": [
- 0,
- 150000,
- 5000000,
- 5200000
- ],
- "xaxis": "x",
- "y": [
- 0,
- 0.01,
- 0.02,
- 0.02
- ],
- "yaxis": "y"
- },
- {
- "hovertemplate": "Label=Non-residential purchase
Threshold=%{x}
Rate=%{y}",
- "legendgroup": "Non-residential purchase",
- "line": {
- "color": "#19d3f3",
- "dash": "solid",
- "shape": "hv"
- },
- "marker": {
- "symbol": "circle"
- },
- "mode": "lines",
- "name": "Non-residential purchase",
- "orientation": "v",
- "showlegend": true,
- "type": "scatter",
- "x": [
- 0,
- 150000,
- 250000,
- 5200000
- ],
- "xaxis": "x",
- "y": [
- 0,
- 0.02,
- 0.05,
- 0.05
- ],
- "yaxis": "y"
- }
- ],
- "layout": {
- "font": {
- "color": "black",
- "family": "Roboto Serif"
- },
- "height": 600,
- "images": [
- {
- "sizex": 0.2,
- "sizey": 0.2,
- "source": "https://raw.githubusercontent.com/PolicyEngine/policyengine-app/master/src/images/logos/policyengine/blue.png",
- "x": 1,
- "xanchor": "right",
- "xref": "paper",
- "y": -0.15,
- "yanchor": "bottom",
- "yref": "paper"
- }
- ],
- "legend": {
- "orientation": "h",
- "title": {
- "text": ""
- },
- "tracegroupgap": 0,
- "x": 0.9,
- "xanchor": "right",
- "y": -0.3,
- "yanchor": "bottom"
- },
- "modebar": {
- "bgcolor": "rgba(0,0,0,0)",
- "color": "rgba(0,0,0,0)"
- },
- "template": {
- "data": {
- "bar": [
- {
- "error_x": {
- "color": "#2a3f5f"
- },
- "error_y": {
- "color": "#2a3f5f"
- },
- "marker": {
- "line": {
- "color": "white",
- "width": 0.5
- },
- "pattern": {
- "fillmode": "overlay",
- "size": 10,
- "solidity": 0.2
- }
- },
- "type": "bar"
- }
- ],
- "barpolar": [
- {
- "marker": {
- "line": {
- "color": "white",
- "width": 0.5
- },
- "pattern": {
- "fillmode": "overlay",
- "size": 10,
- "solidity": 0.2
- }
- },
- "type": "barpolar"
- }
- ],
- "carpet": [
- {
- "aaxis": {
- "endlinecolor": "#2a3f5f",
- "gridcolor": "#C8D4E3",
- "linecolor": "#C8D4E3",
- "minorgridcolor": "#C8D4E3",
- "startlinecolor": "#2a3f5f"
- },
- "baxis": {
- "endlinecolor": "#2a3f5f",
- "gridcolor": "#C8D4E3",
- "linecolor": "#C8D4E3",
- "minorgridcolor": "#C8D4E3",
- "startlinecolor": "#2a3f5f"
- },
- "type": "carpet"
- }
- ],
- "choropleth": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "type": "choropleth"
- }
- ],
- "contour": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "contour"
- }
- ],
- "contourcarpet": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "type": "contourcarpet"
- }
- ],
- "heatmap": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "heatmap"
- }
- ],
- "heatmapgl": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "heatmapgl"
- }
- ],
- "histogram": [
- {
- "marker": {
- "pattern": {
- "fillmode": "overlay",
- "size": 10,
- "solidity": 0.2
- }
- },
- "type": "histogram"
- }
- ],
- "histogram2d": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "histogram2d"
- }
- ],
- "histogram2dcontour": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "histogram2dcontour"
- }
- ],
- "mesh3d": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "type": "mesh3d"
- }
- ],
- "parcoords": [
- {
- "line": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "parcoords"
- }
- ],
- "pie": [
- {
- "automargin": true,
- "type": "pie"
- }
- ],
- "scatter": [
- {
- "fillpattern": {
- "fillmode": "overlay",
- "size": 10,
- "solidity": 0.2
- },
- "type": "scatter"
- }
- ],
- "scatter3d": [
- {
- "line": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scatter3d"
- }
- ],
- "scattercarpet": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scattercarpet"
- }
- ],
- "scattergeo": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scattergeo"
- }
- ],
- "scattergl": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scattergl"
- }
- ],
- "scattermapbox": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scattermapbox"
- }
- ],
- "scatterpolar": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scatterpolar"
- }
- ],
- "scatterpolargl": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scatterpolargl"
- }
- ],
- "scatterternary": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scatterternary"
- }
- ],
- "surface": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "surface"
- }
- ],
- "table": [
- {
- "cells": {
- "fill": {
- "color": "#EBF0F8"
- },
- "line": {
- "color": "white"
- }
- },
- "header": {
- "fill": {
- "color": "#C8D4E3"
- },
- "line": {
- "color": "white"
- }
- },
- "type": "table"
- }
- ]
- },
- "layout": {
- "annotationdefaults": {
- "arrowcolor": "#2a3f5f",
- "arrowhead": 0,
- "arrowwidth": 1
- },
- "autotypenumbers": "strict",
- "coloraxis": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "colorscale": {
- "diverging": [
- [
- 0,
- "#8e0152"
- ],
- [
- 0.1,
- "#c51b7d"
- ],
- [
- 0.2,
- "#de77ae"
- ],
- [
- 0.3,
- "#f1b6da"
- ],
- [
- 0.4,
- "#fde0ef"
- ],
- [
- 0.5,
- "#f7f7f7"
- ],
- [
- 0.6,
- "#e6f5d0"
- ],
- [
- 0.7,
- "#b8e186"
- ],
- [
- 0.8,
- "#7fbc41"
- ],
- [
- 0.9,
- "#4d9221"
- ],
- [
- 1,
- "#276419"
- ]
- ],
- "sequential": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "sequentialminus": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ]
- },
- "colorway": [
- "#636efa",
- "#EF553B",
- "#00cc96",
- "#ab63fa",
- "#FFA15A",
- "#19d3f3",
- "#FF6692",
- "#B6E880",
- "#FF97FF",
- "#FECB52"
- ],
- "font": {
- "color": "#2a3f5f"
- },
- "geo": {
- "bgcolor": "white",
- "lakecolor": "white",
- "landcolor": "white",
- "showlakes": true,
- "showland": true,
- "subunitcolor": "#C8D4E3"
- },
- "hoverlabel": {
- "align": "left"
- },
- "hovermode": "closest",
- "mapbox": {
- "style": "light"
- },
- "paper_bgcolor": "white",
- "plot_bgcolor": "white",
- "polar": {
- "angularaxis": {
- "gridcolor": "#EBF0F8",
- "linecolor": "#EBF0F8",
- "ticks": ""
- },
- "bgcolor": "white",
- "radialaxis": {
- "gridcolor": "#EBF0F8",
- "linecolor": "#EBF0F8",
- "ticks": ""
- }
- },
- "scene": {
- "xaxis": {
- "backgroundcolor": "white",
- "gridcolor": "#DFE8F3",
- "gridwidth": 2,
- "linecolor": "#EBF0F8",
- "showbackground": true,
- "ticks": "",
- "zerolinecolor": "#EBF0F8"
- },
- "yaxis": {
- "backgroundcolor": "white",
- "gridcolor": "#DFE8F3",
- "gridwidth": 2,
- "linecolor": "#EBF0F8",
- "showbackground": true,
- "ticks": "",
- "zerolinecolor": "#EBF0F8"
- },
- "zaxis": {
- "backgroundcolor": "white",
- "gridcolor": "#DFE8F3",
- "gridwidth": 2,
- "linecolor": "#EBF0F8",
- "showbackground": true,
- "ticks": "",
- "zerolinecolor": "#EBF0F8"
- }
- },
- "shapedefaults": {
- "line": {
- "color": "#2a3f5f"
- }
- },
- "ternary": {
- "aaxis": {
- "gridcolor": "#DFE8F3",
- "linecolor": "#A2B1C6",
- "ticks": ""
- },
- "baxis": {
- "gridcolor": "#DFE8F3",
- "linecolor": "#A2B1C6",
- "ticks": ""
- },
- "bgcolor": "white",
- "caxis": {
- "gridcolor": "#DFE8F3",
- "linecolor": "#A2B1C6",
- "ticks": ""
- }
- },
- "title": {
- "x": 0.05
- },
- "xaxis": {
- "automargin": true,
- "gridcolor": "#EBF0F8",
- "linecolor": "#EBF0F8",
- "ticks": "",
- "title": {
- "standoff": 15
- },
- "zerolinecolor": "#EBF0F8",
- "zerolinewidth": 2
- },
- "yaxis": {
- "automargin": true,
- "gridcolor": "#EBF0F8",
- "linecolor": "#EBF0F8",
- "ticks": "",
- "title": {
- "standoff": 15
- },
- "zerolinecolor": "#EBF0F8",
- "zerolinewidth": 2
- }
- }
- },
- "title": {
- "text": "Stamp duty land tax rates over property price thresholds"
- },
- "width": 800,
- "xaxis": {
- "anchor": "y",
- "domain": [
- 0,
- 1
- ],
- "tickprefix": "£",
- "title": {
- "text": "Threshold"
- }
- },
- "yaxis": {
- "anchor": "x",
- "domain": [
- 0,
- 1
- ],
- "tickformat": ",.0%",
- "title": {
- "text": "Rate"
- }
- }
- }
- }
- },
- "metadata": {},
- "output_type": "display_data"
- }
- ],
- "source": [
- "import pandas as pd\n",
- "import plotly.express as px\n",
- "from policyengine_core.charts import format_fig\n",
- "\n",
- "residential_rent = pd.DataFrame(\n",
- " {\n",
- " \"Threshold\": [0, 125000, 5200000],\n",
- " \"Rate\": [0, 0.01, 0.01],\n",
- " \"Label\": [\"Residential rent\"] * 3,\n",
- " }\n",
- ")\n",
- "residential_purchase_main_first = pd.DataFrame(\n",
- " {\n",
- " \"Threshold\": [0, 300000, 500000, 925000, 1500000, 5200000],\n",
- " \"Rate\": [0, 0.05, 0.05, 0.1, 0.12, 0.12],\n",
- " \"Label\": [\"Residential purchase main (first home)\"] * 6,\n",
- " }\n",
- ")\n",
- "residential_purchase_main_standard = pd.DataFrame(\n",
- " {\n",
- " \"Threshold\": [0, 125000, 250000, 925000, 1500000, 5200000],\n",
- " \"Rate\": [0, 0.02, 0.05, 0.1, 0.12, 0.12],\n",
- " \"Label\": [\"Residential purchase main standard\"] * 6,\n",
- " }\n",
- ")\n",
- "residential_purchase_additional = pd.DataFrame(\n",
- " {\n",
- " \"Threshold\": [0, 40000, 125000, 250000, 925000, 1500000, 5200000],\n",
- " \"Rate\": [0, 0.03, 0.05, 0.08, 0.13, 0.15, 0.15],\n",
- " \"Label\": [\"Residential purchase additional\"] * 7,\n",
- " }\n",
- ")\n",
- "non_residential_rent = pd.DataFrame(\n",
- " {\n",
- " \"Threshold\": [0, 150000, 5000000, 5200000],\n",
- " \"Rate\": [0, 0.01, 0.02, 0.02],\n",
- " \"Label\": [\"Non-residential rent\"] * 4,\n",
- " }\n",
- ")\n",
- "non_residential_purchase = pd.DataFrame(\n",
- " {\n",
- " \"Threshold\": [0, 150000, 250000, 5200000],\n",
- " \"Rate\": [0, 0.02, 0.05, 0.05],\n",
- " \"Label\": [\"Non-residential purchase\"] * 4,\n",
- " }\n",
- ")\n",
- "df_list = [\n",
- " residential_rent,\n",
- " residential_purchase_main_first,\n",
- " residential_purchase_main_standard,\n",
- " residential_purchase_additional,\n",
- " non_residential_rent,\n",
- " non_residential_purchase,\n",
- "]\n",
- "df = pd.concat(df_list)\n",
- "# plot\n",
- "fig = (\n",
- " px.line(\n",
- " df,\n",
- " x=\"Threshold\",\n",
- " y=\"Rate\",\n",
- " color=\"Label\",\n",
- " title=\"Stamp duty land tax rates over property price thresholds\",\n",
- " )\n",
- " .update_layout(\n",
- " yaxis_tickformat=\",.0%\",\n",
- " xaxis_tickprefix=\"£\",\n",
- " legend=dict(\n",
- " orientation=\"h\",\n",
- " yanchor=\"bottom\",\n",
- " y=-0.3,\n",
- " xanchor=\"right\",\n",
- " x=0.9,\n",
- " title=\"\",\n",
- " ),\n",
- " )\n",
- " .update_traces(line_shape=\"hv\")\n",
- ")\n",
- "fig = format_fig(fig)\n",
- "fig"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "The first home discount only applies for homes priced under £500,000. When simulating the marginal effect of SDLT, we find a cliff effect for first-time buyers."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 88,
- "metadata": {
- "tags": [
- "hide-input"
- ]
- },
- "outputs": [
- {
- "data": {
- "application/vnd.plotly.v1+json": {
- "config": {
- "plotlyServerURL": "https://plot.ly"
- },
- "data": [
- {
- "hovertemplate": "Home price=%{x}
Marginal SDLT rate=%{y}",
- "legendgroup": "",
- "line": {
- "color": "#636efa",
- "dash": "solid",
- "shape": "hv"
- },
- "marker": {
- "symbol": "circle"
- },
- "mode": "lines",
- "name": "",
- "orientation": "v",
- "showlegend": false,
- "type": "scatter",
- "x": [
- 0,
- 5005.0048828125,
- 10010.009765625,
- 15015.0146484375,
- 20020.01953125,
- 25025.025390625,
- 30030.029296875,
- 35035.03515625,
- 40040.0390625,
- 45045.046875,
- 50050.05078125,
- 55055.0546875,
- 60060.05859375,
- 65065.06640625,
- 70070.0703125,
- 75075.078125,
- 80080.078125,
- 85085.0859375,
- 90090.09375,
- 95095.09375,
- 100100.1015625,
- 105105.1015625,
- 110110.109375,
- 115115.1171875,
- 120120.1171875,
- 125125.125,
- 130130.1328125,
- 135135.140625,
- 140140.140625,
- 145145.140625,
- 150150.15625,
- 155155.15625,
- 160160.15625,
- 165165.171875,
- 170170.171875,
- 175175.171875,
- 180180.1875,
- 185185.1875,
- 190190.1875,
- 195195.1875,
- 200200.203125,
- 205205.203125,
- 210210.203125,
- 215215.21875,
- 220220.21875,
- 225225.21875,
- 230230.234375,
- 235235.234375,
- 240240.234375,
- 245245.25,
- 250250.25,
- 255255.25,
- 260260.265625,
- 265265.25,
- 270270.28125,
- 275275.28125,
- 280280.28125,
- 285285.28125,
- 290290.28125,
- 295295.28125,
- 300300.3125,
- 305305.3125,
- 310310.3125,
- 315315.3125,
- 320320.3125,
- 325325.3125,
- 330330.34375,
- 335335.34375,
- 340340.34375,
- 345345.34375,
- 350350.34375,
- 355355.34375,
- 360360.375,
- 365365.375,
- 370370.375,
- 375375.375,
- 380380.375,
- 385385.375,
- 390390.375,
- 395395.40625,
- 400400.40625,
- 405405.40625,
- 410410.40625,
- 415415.40625,
- 420420.40625,
- 425425.4375,
- 430430.4375,
- 435435.4375,
- 440440.4375,
- 445445.4375,
- 450450.4375,
- 455455.46875,
- 460460.46875,
- 465465.46875,
- 470470.46875,
- 475475.46875,
- 480480.46875,
- 485485.5,
- 490490.5,
- 495495.5,
- 500500.5,
- 505505.5,
- 510510.5,
- 515515.5,
- 520520.53125,
- 525525.5,
- 530530.5,
- 535535.5625,
- 540540.5625,
- 545545.5625,
- 550550.5625,
- 555555.5625,
- 560560.5625,
- 565565.5625,
- 570570.5625,
- 575575.5625,
- 580580.5625,
- 585585.5625,
- 590590.5625,
- 595595.625,
- 600600.625,
- 605605.625,
- 610610.625,
- 615615.625,
- 620620.625,
- 625625.625,
- 630630.625,
- 635635.625,
- 640640.625,
- 645645.625,
- 650650.625,
- 655655.625,
- 660660.6875,
- 665665.6875,
- 670670.6875,
- 675675.6875,
- 680680.6875,
- 685685.6875,
- 690690.6875,
- 695695.6875,
- 700700.6875,
- 705705.6875,
- 710710.6875,
- 715715.6875,
- 720720.75,
- 725725.75,
- 730730.75,
- 735735.75,
- 740740.75,
- 745745.75,
- 750750.75,
- 755755.75,
- 760760.75,
- 765765.75,
- 770770.75,
- 775775.75,
- 780780.75,
- 785785.8125,
- 790790.8125,
- 795795.8125,
- 800800.8125,
- 805805.8125,
- 810810.8125,
- 815815.8125,
- 820820.8125,
- 825825.8125,
- 830830.8125,
- 835835.8125,
- 840840.8125,
- 845845.875,
- 850850.875,
- 855855.875,
- 860860.875,
- 865865.875,
- 870870.875,
- 875875.875,
- 880880.875,
- 885885.875,
- 890890.875,
- 895895.875,
- 900900.875,
- 905905.875,
- 910910.9375,
- 915915.9375,
- 920920.9375,
- 925925.9375,
- 930930.9375,
- 935935.9375,
- 940940.9375,
- 945945.9375,
- 950950.9375,
- 955955.9375,
- 960960.9375,
- 965965.9375,
- 970971,
- 975976,
- 980981,
- 985986,
- 990991,
- 995996,
- 1001001,
- 1006006,
- 1011011,
- 1016016,
- 1021021,
- 1026026,
- 1031031,
- 1036036.0625,
- 1041041.0625,
- 1046046.0625,
- 1051051,
- 1056056,
- 1061061,
- 1066066.125,
- 1071071.125,
- 1076076.125,
- 1081081.125,
- 1086086.125,
- 1091091.125,
- 1096096.125,
- 1101101.125,
- 1106106.125,
- 1111111.125,
- 1116116.125,
- 1121121.125,
- 1126126.125,
- 1131131.125,
- 1136136.125,
- 1141141.125,
- 1146146.125,
- 1151151.125,
- 1156156.125,
- 1161161.125,
- 1166166.125,
- 1171171.125,
- 1176176.125,
- 1181181.125,
- 1186186.125,
- 1191191.25,
- 1196196.25,
- 1201201.25,
- 1206206.25,
- 1211211.25,
- 1216216.25,
- 1221221.25,
- 1226226.25,
- 1231231.25,
- 1236236.25,
- 1241241.25,
- 1246246.25,
- 1251251.25,
- 1256256.25,
- 1261261.25,
- 1266266.25,
- 1271271.25,
- 1276276.25,
- 1281281.25,
- 1286286.25,
- 1291291.25,
- 1296296.25,
- 1301301.25,
- 1306306.25,
- 1311311.25,
- 1316316.375,
- 1321321.375,
- 1326326.375,
- 1331331.375,
- 1336336.375,
- 1341341.375,
- 1346346.375,
- 1351351.375,
- 1356356.375,
- 1361361.375,
- 1366366.375,
- 1371371.375,
- 1376376.375,
- 1381381.375,
- 1386386.375,
- 1391391.375,
- 1396396.375,
- 1401401.375,
- 1406406.375,
- 1411411.375,
- 1416416.375,
- 1421421.375,
- 1426426.375,
- 1431431.375,
- 1436436.375,
- 1441441.5,
- 1446446.5,
- 1451451.5,
- 1456456.5,
- 1461461.5,
- 1466466.5,
- 1471471.5,
- 1476476.5,
- 1481481.5,
- 1486486.5,
- 1491491.5,
- 1496496.5,
- 1501501.5,
- 1506506.5,
- 1511511.5,
- 1516516.5,
- 1521521.5,
- 1526526.5,
- 1531531.5,
- 1536536.5,
- 1541541.5,
- 1546546.5,
- 1551551.5,
- 1556556.5,
- 1561561.5,
- 1566566.625,
- 1571571.625,
- 1576576.625,
- 1581581.625,
- 1586586.625,
- 1591591.625,
- 1596596.625,
- 1601601.625,
- 1606606.625,
- 1611611.625,
- 1616616.625,
- 1621621.625,
- 1626626.625,
- 1631631.625,
- 1636636.625,
- 1641641.625,
- 1646646.625,
- 1651651.625,
- 1656656.625,
- 1661661.625,
- 1666666.625,
- 1671671.625,
- 1676676.625,
- 1681681.625,
- 1686686.625,
- 1691691.75,
- 1696696.75,
- 1701701.75,
- 1706706.75,
- 1711711.75,
- 1716716.75,
- 1721721.75,
- 1726726.75,
- 1731731.75,
- 1736736.75,
- 1741741.75,
- 1746746.75,
- 1751751.75,
- 1756756.75,
- 1761761.75,
- 1766766.75,
- 1771771.75,
- 1776776.75,
- 1781781.75,
- 1786786.75,
- 1791791.75,
- 1796796.75,
- 1801801.75,
- 1806806.75,
- 1811811.75,
- 1816816.875,
- 1821821.875,
- 1826826.875,
- 1831831.875,
- 1836836.875,
- 1841841.875,
- 1846846.875,
- 1851851.875,
- 1856856.875,
- 1861861.875,
- 1866866.875,
- 1871871.875,
- 1876876.875,
- 1881881.875,
- 1886886.875,
- 1891891.875,
- 1896896.875,
- 1901901.875,
- 1906906.875,
- 1911911.875,
- 1916916.875,
- 1921921.875,
- 1926926.875,
- 1931931.875,
- 1936936.875,
- 1941942,
- 1946947,
- 1951952,
- 1956957,
- 1961962,
- 1966967,
- 1971972,
- 1976977,
- 1981982,
- 1986987,
- 1991992,
- 1996997,
- 2002002,
- 2007007,
- 2012012,
- 2017017,
- 2022022,
- 2027027,
- 2032032,
- 2037037,
- 2042042,
- 2047047,
- 2052052,
- 2057057,
- 2062062,
- 2067067.125,
- 2072072.125,
- 2077077.125,
- 2082082.125,
- 2087087.125,
- 2092092.125,
- 2097097.125,
- 2102102,
- 2107107,
- 2112112,
- 2117117,
- 2122122,
- 2127127.25,
- 2132132.25,
- 2137137.25,
- 2142142.25,
- 2147147.25,
- 2152152.25,
- 2157157.25,
- 2162162.25,
- 2167167.25,
- 2172172.25,
- 2177177.25,
- 2182182.25,
- 2187187.25,
- 2192192.25,
- 2197197.25,
- 2202202.25,
- 2207207.25,
- 2212212.25,
- 2217217.25,
- 2222222.25,
- 2227227.25,
- 2232232.25,
- 2237237.25,
- 2242242.25,
- 2247247.25,
- 2252252.25,
- 2257257.25,
- 2262262.25,
- 2267267.25,
- 2272272.25,
- 2277277.25,
- 2282282.25,
- 2287287.25,
- 2292292.25,
- 2297297.25,
- 2302302.25,
- 2307307.25,
- 2312312.25,
- 2317317.25,
- 2322322.25,
- 2327327.25,
- 2332332.25,
- 2337337.25,
- 2342342.25,
- 2347347.25,
- 2352352.25,
- 2357357.25,
- 2362362.25,
- 2367367.25,
- 2372372.25,
- 2377377.5,
- 2382382.5,
- 2387387.5,
- 2392392.5,
- 2397397.5,
- 2402402.5,
- 2407407.5,
- 2412412.5,
- 2417417.5,
- 2422422.5,
- 2427427.5,
- 2432432.5,
- 2437437.5,
- 2442442.5,
- 2447447.5,
- 2452452.5,
- 2457457.5,
- 2462462.5,
- 2467467.5,
- 2472472.5,
- 2477477.5,
- 2482482.5,
- 2487487.5,
- 2492492.5,
- 2497497.5,
- 2502502.5,
- 2507507.5,
- 2512512.5,
- 2517517.5,
- 2522522.5,
- 2527527.5,
- 2532532.5,
- 2537537.5,
- 2542542.5,
- 2547547.5,
- 2552552.5,
- 2557557.5,
- 2562562.5,
- 2567567.5,
- 2572572.5,
- 2577577.5,
- 2582582.5,
- 2587587.5,
- 2592592.5,
- 2597597.5,
- 2602602.5,
- 2607607.5,
- 2612612.5,
- 2617617.5,
- 2622622.5,
- 2627627.75,
- 2632632.75,
- 2637637.75,
- 2642642.75,
- 2647647.75,
- 2652652.75,
- 2657657.75,
- 2662662.75,
- 2667667.75,
- 2672672.75,
- 2677677.75,
- 2682682.75,
- 2687687.75,
- 2692692.75,
- 2697697.75,
- 2702702.75,
- 2707707.75,
- 2712712.75,
- 2717717.75,
- 2722722.75,
- 2727727.75,
- 2732732.75,
- 2737737.75,
- 2742742.75,
- 2747747.75,
- 2752752.75,
- 2757757.75,
- 2762762.75,
- 2767767.75,
- 2772772.75,
- 2777777.75,
- 2782782.75,
- 2787787.75,
- 2792792.75,
- 2797797.75,
- 2802802.75,
- 2807807.75,
- 2812812.75,
- 2817817.75,
- 2822822.75,
- 2827827.75,
- 2832832.75,
- 2837837.75,
- 2842842.75,
- 2847847.75,
- 2852852.75,
- 2857857.75,
- 2862862.75,
- 2867867.75,
- 2872872.75,
- 2877878,
- 2882883,
- 2887888,
- 2892893,
- 2897898,
- 2902903,
- 2907908,
- 2912913,
- 2917918,
- 2922923,
- 2927928,
- 2932933,
- 2937938,
- 2942943,
- 2947948,
- 2952953,
- 2957958,
- 2962963,
- 2967968,
- 2972973,
- 2977978,
- 2982983,
- 2987988,
- 2992993,
- 2997998,
- 3003003,
- 3008008,
- 3013013,
- 3018018,
- 3023023,
- 3028028,
- 3033033,
- 3038038,
- 3043043,
- 3048048,
- 3053053,
- 3058058,
- 3063063,
- 3068068,
- 3073073,
- 3078078,
- 3083083,
- 3088088,
- 3093093,
- 3098098,
- 3103103,
- 3108108,
- 3113113,
- 3118118,
- 3123123,
- 3128128.25,
- 3133133.25,
- 3138138.25,
- 3143143.25,
- 3148148.25,
- 3153153.25,
- 3158158.25,
- 3163163.25,
- 3168168.25,
- 3173173.25,
- 3178178.25,
- 3183183.25,
- 3188188.25,
- 3193193.25,
- 3198198.25,
- 3203203.25,
- 3208208.25,
- 3213213.25,
- 3218218.25,
- 3223223.25,
- 3228228.25,
- 3233233.25,
- 3238238.25,
- 3243243.25,
- 3248248.25,
- 3253253.25,
- 3258258.25,
- 3263263.25,
- 3268268.25,
- 3273273.25,
- 3278278.25,
- 3283283.25,
- 3288288.25,
- 3293293.25,
- 3298298.25,
- 3303303.25,
- 3308308.25,
- 3313313.25,
- 3318318.25,
- 3323323.25,
- 3328328.25,
- 3333333.25,
- 3338338.25,
- 3343343.25,
- 3348348.25,
- 3353353.25,
- 3358358.25,
- 3363363.25,
- 3368368.25,
- 3373373.25,
- 3378378.5,
- 3383383.5,
- 3388388.5,
- 3393393.5,
- 3398398.5,
- 3403403.5,
- 3408408.5,
- 3413413.5,
- 3418418.5,
- 3423423.5,
- 3428428.5,
- 3433433.5,
- 3438438.5,
- 3443443.5,
- 3448448.5,
- 3453453.5,
- 3458458.5,
- 3463463.5,
- 3468468.5,
- 3473473.5,
- 3478478.5,
- 3483483.5,
- 3488488.5,
- 3493493.5,
- 3498498.5,
- 3503503.5,
- 3508508.5,
- 3513513.5,
- 3518518.5,
- 3523523.5,
- 3528528.5,
- 3533533.5,
- 3538538.5,
- 3543543.5,
- 3548548.5,
- 3553553.5,
- 3558558.5,
- 3563563.5,
- 3568568.5,
- 3573573.5,
- 3578578.5,
- 3583583.5,
- 3588588.5,
- 3593593.5,
- 3598598.5,
- 3603603.5,
- 3608608.5,
- 3613613.5,
- 3618618.5,
- 3623623.5,
- 3628628.75,
- 3633633.75,
- 3638638.75,
- 3643643.75,
- 3648648.75,
- 3653653.75,
- 3658658.75,
- 3663663.75,
- 3668668.75,
- 3673673.75,
- 3678678.75,
- 3683683.75,
- 3688688.75,
- 3693693.75,
- 3698698.75,
- 3703703.75,
- 3708708.75,
- 3713713.75,
- 3718718.75,
- 3723723.75,
- 3728728.75,
- 3733733.75,
- 3738738.75,
- 3743743.75,
- 3748748.75,
- 3753753.75,
- 3758758.75,
- 3763763.75,
- 3768768.75,
- 3773773.75,
- 3778778.75,
- 3783783.75,
- 3788788.75,
- 3793793.75,
- 3798798.75,
- 3803803.75,
- 3808808.75,
- 3813813.75,
- 3818818.75,
- 3823823.75,
- 3828828.75,
- 3833833.75,
- 3838838.75,
- 3843843.75,
- 3848848.75,
- 3853853.75,
- 3858858.75,
- 3863863.75,
- 3868868.75,
- 3873873.75,
- 3878879,
- 3883884,
- 3888889,
- 3893894,
- 3898899,
- 3903904,
- 3908909,
- 3913914,
- 3918919,
- 3923924,
- 3928929,
- 3933934,
- 3938939,
- 3943944,
- 3948949,
- 3953954,
- 3958959,
- 3963964,
- 3968969,
- 3973974,
- 3978979,
- 3983984,
- 3988989,
- 3993994,
- 3998999,
- 4004004,
- 4009009,
- 4014014,
- 4019019,
- 4024024,
- 4029029,
- 4034034,
- 4039039,
- 4044044,
- 4049049,
- 4054054,
- 4059059,
- 4064064,
- 4069069,
- 4074074,
- 4079079,
- 4084084,
- 4089089,
- 4094094,
- 4099099,
- 4104104,
- 4109109,
- 4114114,
- 4119119,
- 4124124,
- 4129129.25,
- 4134134.25,
- 4139139.25,
- 4144144.25,
- 4149149.25,
- 4154154.25,
- 4159159.25,
- 4164164.25,
- 4169169.25,
- 4174174.25,
- 4179179.25,
- 4184184.25,
- 4189189.25,
- 4194194.25,
- 4199199,
- 4204204,
- 4209209,
- 4214214,
- 4219219,
- 4224224,
- 4229229,
- 4234234,
- 4239239,
- 4244244,
- 4249249,
- 4254254.5,
- 4259259.5,
- 4264264.5,
- 4269269.5,
- 4274274.5,
- 4279279.5,
- 4284284.5,
- 4289289.5,
- 4294294.5,
- 4299299.5,
- 4304304.5,
- 4309309.5,
- 4314314.5,
- 4319319.5,
- 4324324.5,
- 4329329.5,
- 4334334.5,
- 4339339.5,
- 4344344.5,
- 4349349.5,
- 4354354.5,
- 4359359.5,
- 4364364.5,
- 4369369.5,
- 4374374.5,
- 4379379.5,
- 4384384.5,
- 4389389.5,
- 4394394.5,
- 4399399.5,
- 4404404.5,
- 4409409.5,
- 4414414.5,
- 4419419.5,
- 4424424.5,
- 4429429.5,
- 4434434.5,
- 4439439.5,
- 4444444.5,
- 4449449.5,
- 4454454.5,
- 4459459.5,
- 4464464.5,
- 4469469.5,
- 4474474.5,
- 4479479.5,
- 4484484.5,
- 4489489.5,
- 4494494.5,
- 4499499.5,
- 4504504.5,
- 4509509.5,
- 4514514.5,
- 4519519.5,
- 4524524.5,
- 4529529.5,
- 4534534.5,
- 4539539.5,
- 4544544.5,
- 4549549.5,
- 4554554.5,
- 4559559.5,
- 4564564.5,
- 4569569.5,
- 4574574.5,
- 4579579.5,
- 4584584.5,
- 4589589.5,
- 4594594.5,
- 4599599.5,
- 4604604.5,
- 4609609.5,
- 4614614.5,
- 4619619.5,
- 4624624.5,
- 4629629.5,
- 4634634.5,
- 4639639.5,
- 4644644.5,
- 4649649.5,
- 4654654.5,
- 4659659.5,
- 4664664.5,
- 4669669.5,
- 4674674.5,
- 4679679.5,
- 4684684.5,
- 4689689.5,
- 4694694.5,
- 4699699.5,
- 4704704.5,
- 4709709.5,
- 4714714.5,
- 4719719.5,
- 4724724.5,
- 4729729.5,
- 4734734.5,
- 4739739.5,
- 4744744.5,
- 4749749.5,
- 4754755,
- 4759760,
- 4764765,
- 4769770,
- 4774775,
- 4779780,
- 4784785,
- 4789790,
- 4794795,
- 4799800,
- 4804805,
- 4809810,
- 4814815,
- 4819820,
- 4824825,
- 4829830,
- 4834835,
- 4839840,
- 4844845,
- 4849850,
- 4854855,
- 4859860,
- 4864865,
- 4869870,
- 4874875,
- 4879880,
- 4884885,
- 4889890,
- 4894895,
- 4899900,
- 4904905,
- 4909910,
- 4914915,
- 4919920,
- 4924925,
- 4929930,
- 4934935,
- 4939940,
- 4944945,
- 4949950,
- 4954955,
- 4959960,
- 4964965,
- 4969970,
- 4974975,
- 4979980,
- 4984985,
- 4989990,
- 4994995
- ],
- "xaxis": "x",
- "y": [
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0.0030001061968505383,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000447034836,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.04999997466802597,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000003054738045,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.04999995231628418,
- 0.05000000074505806,
- 0.05000007897615433,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.04999998211860657,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.04999998211860657,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000007897615433,
- 0.05000000074505806,
- 0.05000000074505806,
- 1.0490009784698486,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.04999988153576851,
- 0.05000011622905731,
- 0.05000000074505806,
- 0.04999976605176926,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.050000157207250595,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.050000157207250595,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.04999976605176926,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.050000157207250595,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.04999976605176926,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.050000157207250595,
- 0.05000000074505806,
- 0.05000000074505806,
- 0.0592501237988472,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.1000003144145012,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.09999953210353851,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000047087669373,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.09999984502792358,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.09999984502792358,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000062733888626,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.09999906271696092,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10000000149011612,
- 0.10600025206804276,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.1199987530708313,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.1199987530708313,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.11999887973070145,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.1199987530708313,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.1199987530708313,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.1199987530708313,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.1199987530708313,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.11999887973070145,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.1199987530708313,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.1199987530708313,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.1199987530708313,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.1199987530708313,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.12000031024217606,
- 0.1199987530708313,
- 0.12000200152397156,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.12000200152397156,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.12000200152397156,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.11999862641096117,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.119998998939991,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.119998998939991,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.119998998939991,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.119998998939991,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1200018748641014,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.119998998939991,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.119998998939991,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.119998998939991,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.119998998939991,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.119998998939991,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.119998499751091,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.11999925225973128,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.11999925225973128,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.1199987530708313,
- 0.12000499665737152,
- 0.1199987530708313,
- 0.1199987530708313
- ],
- "yaxis": "y"
- },
- {
- "hovertemplate": "Home price=%{x}
SDLT=%{y}",
- "legendgroup": "",
- "line": {
- "color": "#636efa",
- "dash": "solid",
- "shape": "hv"
- },
- "marker": {
- "symbol": "circle"
- },
- "mode": "lines",
- "name": "",
- "orientation": "v",
- "showlegend": false,
- "type": "scatter",
- "x": [
- 0,
- 5005.0048828125,
- 10010.009765625,
- 15015.0146484375,
- 20020.01953125,
- 25025.025390625,
- 30030.029296875,
- 35035.03515625,
- 40040.0390625,
- 45045.046875,
- 50050.05078125,
- 55055.0546875,
- 60060.05859375,
- 65065.06640625,
- 70070.0703125,
- 75075.078125,
- 80080.078125,
- 85085.0859375,
- 90090.09375,
- 95095.09375,
- 100100.1015625,
- 105105.1015625,
- 110110.109375,
- 115115.1171875,
- 120120.1171875,
- 125125.125,
- 130130.1328125,
- 135135.140625,
- 140140.140625,
- 145145.140625,
- 150150.15625,
- 155155.15625,
- 160160.15625,
- 165165.171875,
- 170170.171875,
- 175175.171875,
- 180180.1875,
- 185185.1875,
- 190190.1875,
- 195195.1875,
- 200200.203125,
- 205205.203125,
- 210210.203125,
- 215215.21875,
- 220220.21875,
- 225225.21875,
- 230230.234375,
- 235235.234375,
- 240240.234375,
- 245245.25,
- 250250.25,
- 255255.25,
- 260260.265625,
- 265265.25,
- 270270.28125,
- 275275.28125,
- 280280.28125,
- 285285.28125,
- 290290.28125,
- 295295.28125,
- 300300.3125,
- 305305.3125,
- 310310.3125,
- 315315.3125,
- 320320.3125,
- 325325.3125,
- 330330.34375,
- 335335.34375,
- 340340.34375,
- 345345.34375,
- 350350.34375,
- 355355.34375,
- 360360.375,
- 365365.375,
- 370370.375,
- 375375.375,
- 380380.375,
- 385385.375,
- 390390.375,
- 395395.40625,
- 400400.40625,
- 405405.40625,
- 410410.40625,
- 415415.40625,
- 420420.40625,
- 425425.4375,
- 430430.4375,
- 435435.4375,
- 440440.4375,
- 445445.4375,
- 450450.4375,
- 455455.46875,
- 460460.46875,
- 465465.46875,
- 470470.46875,
- 475475.46875,
- 480480.46875,
- 485485.5,
- 490490.5,
- 495495.5,
- 500500.5,
- 505505.5,
- 510510.5,
- 515515.5,
- 520520.53125,
- 525525.5,
- 530530.5,
- 535535.5625,
- 540540.5625,
- 545545.5625,
- 550550.5625,
- 555555.5625,
- 560560.5625,
- 565565.5625,
- 570570.5625,
- 575575.5625,
- 580580.5625,
- 585585.5625,
- 590590.5625,
- 595595.625,
- 600600.625,
- 605605.625,
- 610610.625,
- 615615.625,
- 620620.625,
- 625625.625,
- 630630.625,
- 635635.625,
- 640640.625,
- 645645.625,
- 650650.625,
- 655655.625,
- 660660.6875,
- 665665.6875,
- 670670.6875,
- 675675.6875,
- 680680.6875,
- 685685.6875,
- 690690.6875,
- 695695.6875,
- 700700.6875,
- 705705.6875,
- 710710.6875,
- 715715.6875,
- 720720.75,
- 725725.75,
- 730730.75,
- 735735.75,
- 740740.75,
- 745745.75,
- 750750.75,
- 755755.75,
- 760760.75,
- 765765.75,
- 770770.75,
- 775775.75,
- 780780.75,
- 785785.8125,
- 790790.8125,
- 795795.8125,
- 800800.8125,
- 805805.8125,
- 810810.8125,
- 815815.8125,
- 820820.8125,
- 825825.8125,
- 830830.8125,
- 835835.8125,
- 840840.8125,
- 845845.875,
- 850850.875,
- 855855.875,
- 860860.875,
- 865865.875,
- 870870.875,
- 875875.875,
- 880880.875,
- 885885.875,
- 890890.875,
- 895895.875,
- 900900.875,
- 905905.875,
- 910910.9375,
- 915915.9375,
- 920920.9375,
- 925925.9375,
- 930930.9375,
- 935935.9375,
- 940940.9375,
- 945945.9375,
- 950950.9375,
- 955955.9375,
- 960960.9375,
- 965965.9375,
- 970971,
- 975976,
- 980981,
- 985986,
- 990991,
- 995996,
- 1001001,
- 1006006,
- 1011011,
- 1016016,
- 1021021,
- 1026026,
- 1031031,
- 1036036.0625,
- 1041041.0625,
- 1046046.0625,
- 1051051,
- 1056056,
- 1061061,
- 1066066.125,
- 1071071.125,
- 1076076.125,
- 1081081.125,
- 1086086.125,
- 1091091.125,
- 1096096.125,
- 1101101.125,
- 1106106.125,
- 1111111.125,
- 1116116.125,
- 1121121.125,
- 1126126.125,
- 1131131.125,
- 1136136.125,
- 1141141.125,
- 1146146.125,
- 1151151.125,
- 1156156.125,
- 1161161.125,
- 1166166.125,
- 1171171.125,
- 1176176.125,
- 1181181.125,
- 1186186.125,
- 1191191.25,
- 1196196.25,
- 1201201.25,
- 1206206.25,
- 1211211.25,
- 1216216.25,
- 1221221.25,
- 1226226.25,
- 1231231.25,
- 1236236.25,
- 1241241.25,
- 1246246.25,
- 1251251.25,
- 1256256.25,
- 1261261.25,
- 1266266.25,
- 1271271.25,
- 1276276.25,
- 1281281.25,
- 1286286.25,
- 1291291.25,
- 1296296.25,
- 1301301.25,
- 1306306.25,
- 1311311.25,
- 1316316.375,
- 1321321.375,
- 1326326.375,
- 1331331.375,
- 1336336.375,
- 1341341.375,
- 1346346.375,
- 1351351.375,
- 1356356.375,
- 1361361.375,
- 1366366.375,
- 1371371.375,
- 1376376.375,
- 1381381.375,
- 1386386.375,
- 1391391.375,
- 1396396.375,
- 1401401.375,
- 1406406.375,
- 1411411.375,
- 1416416.375,
- 1421421.375,
- 1426426.375,
- 1431431.375,
- 1436436.375,
- 1441441.5,
- 1446446.5,
- 1451451.5,
- 1456456.5,
- 1461461.5,
- 1466466.5,
- 1471471.5,
- 1476476.5,
- 1481481.5,
- 1486486.5,
- 1491491.5,
- 1496496.5,
- 1501501.5,
- 1506506.5,
- 1511511.5,
- 1516516.5,
- 1521521.5,
- 1526526.5,
- 1531531.5,
- 1536536.5,
- 1541541.5,
- 1546546.5,
- 1551551.5,
- 1556556.5,
- 1561561.5,
- 1566566.625,
- 1571571.625,
- 1576576.625,
- 1581581.625,
- 1586586.625,
- 1591591.625,
- 1596596.625,
- 1601601.625,
- 1606606.625,
- 1611611.625,
- 1616616.625,
- 1621621.625,
- 1626626.625,
- 1631631.625,
- 1636636.625,
- 1641641.625,
- 1646646.625,
- 1651651.625,
- 1656656.625,
- 1661661.625,
- 1666666.625,
- 1671671.625,
- 1676676.625,
- 1681681.625,
- 1686686.625,
- 1691691.75,
- 1696696.75,
- 1701701.75,
- 1706706.75,
- 1711711.75,
- 1716716.75,
- 1721721.75,
- 1726726.75,
- 1731731.75,
- 1736736.75,
- 1741741.75,
- 1746746.75,
- 1751751.75,
- 1756756.75,
- 1761761.75,
- 1766766.75,
- 1771771.75,
- 1776776.75,
- 1781781.75,
- 1786786.75,
- 1791791.75,
- 1796796.75,
- 1801801.75,
- 1806806.75,
- 1811811.75,
- 1816816.875,
- 1821821.875,
- 1826826.875,
- 1831831.875,
- 1836836.875,
- 1841841.875,
- 1846846.875,
- 1851851.875,
- 1856856.875,
- 1861861.875,
- 1866866.875,
- 1871871.875,
- 1876876.875,
- 1881881.875,
- 1886886.875,
- 1891891.875,
- 1896896.875,
- 1901901.875,
- 1906906.875,
- 1911911.875,
- 1916916.875,
- 1921921.875,
- 1926926.875,
- 1931931.875,
- 1936936.875,
- 1941942,
- 1946947,
- 1951952,
- 1956957,
- 1961962,
- 1966967,
- 1971972,
- 1976977,
- 1981982,
- 1986987,
- 1991992,
- 1996997,
- 2002002,
- 2007007,
- 2012012,
- 2017017,
- 2022022,
- 2027027,
- 2032032,
- 2037037,
- 2042042,
- 2047047,
- 2052052,
- 2057057,
- 2062062,
- 2067067.125,
- 2072072.125,
- 2077077.125,
- 2082082.125,
- 2087087.125,
- 2092092.125,
- 2097097.125,
- 2102102,
- 2107107,
- 2112112,
- 2117117,
- 2122122,
- 2127127.25,
- 2132132.25,
- 2137137.25,
- 2142142.25,
- 2147147.25,
- 2152152.25,
- 2157157.25,
- 2162162.25,
- 2167167.25,
- 2172172.25,
- 2177177.25,
- 2182182.25,
- 2187187.25,
- 2192192.25,
- 2197197.25,
- 2202202.25,
- 2207207.25,
- 2212212.25,
- 2217217.25,
- 2222222.25,
- 2227227.25,
- 2232232.25,
- 2237237.25,
- 2242242.25,
- 2247247.25,
- 2252252.25,
- 2257257.25,
- 2262262.25,
- 2267267.25,
- 2272272.25,
- 2277277.25,
- 2282282.25,
- 2287287.25,
- 2292292.25,
- 2297297.25,
- 2302302.25,
- 2307307.25,
- 2312312.25,
- 2317317.25,
- 2322322.25,
- 2327327.25,
- 2332332.25,
- 2337337.25,
- 2342342.25,
- 2347347.25,
- 2352352.25,
- 2357357.25,
- 2362362.25,
- 2367367.25,
- 2372372.25,
- 2377377.5,
- 2382382.5,
- 2387387.5,
- 2392392.5,
- 2397397.5,
- 2402402.5,
- 2407407.5,
- 2412412.5,
- 2417417.5,
- 2422422.5,
- 2427427.5,
- 2432432.5,
- 2437437.5,
- 2442442.5,
- 2447447.5,
- 2452452.5,
- 2457457.5,
- 2462462.5,
- 2467467.5,
- 2472472.5,
- 2477477.5,
- 2482482.5,
- 2487487.5,
- 2492492.5,
- 2497497.5,
- 2502502.5,
- 2507507.5,
- 2512512.5,
- 2517517.5,
- 2522522.5,
- 2527527.5,
- 2532532.5,
- 2537537.5,
- 2542542.5,
- 2547547.5,
- 2552552.5,
- 2557557.5,
- 2562562.5,
- 2567567.5,
- 2572572.5,
- 2577577.5,
- 2582582.5,
- 2587587.5,
- 2592592.5,
- 2597597.5,
- 2602602.5,
- 2607607.5,
- 2612612.5,
- 2617617.5,
- 2622622.5,
- 2627627.75,
- 2632632.75,
- 2637637.75,
- 2642642.75,
- 2647647.75,
- 2652652.75,
- 2657657.75,
- 2662662.75,
- 2667667.75,
- 2672672.75,
- 2677677.75,
- 2682682.75,
- 2687687.75,
- 2692692.75,
- 2697697.75,
- 2702702.75,
- 2707707.75,
- 2712712.75,
- 2717717.75,
- 2722722.75,
- 2727727.75,
- 2732732.75,
- 2737737.75,
- 2742742.75,
- 2747747.75,
- 2752752.75,
- 2757757.75,
- 2762762.75,
- 2767767.75,
- 2772772.75,
- 2777777.75,
- 2782782.75,
- 2787787.75,
- 2792792.75,
- 2797797.75,
- 2802802.75,
- 2807807.75,
- 2812812.75,
- 2817817.75,
- 2822822.75,
- 2827827.75,
- 2832832.75,
- 2837837.75,
- 2842842.75,
- 2847847.75,
- 2852852.75,
- 2857857.75,
- 2862862.75,
- 2867867.75,
- 2872872.75,
- 2877878,
- 2882883,
- 2887888,
- 2892893,
- 2897898,
- 2902903,
- 2907908,
- 2912913,
- 2917918,
- 2922923,
- 2927928,
- 2932933,
- 2937938,
- 2942943,
- 2947948,
- 2952953,
- 2957958,
- 2962963,
- 2967968,
- 2972973,
- 2977978,
- 2982983,
- 2987988,
- 2992993,
- 2997998,
- 3003003,
- 3008008,
- 3013013,
- 3018018,
- 3023023,
- 3028028,
- 3033033,
- 3038038,
- 3043043,
- 3048048,
- 3053053,
- 3058058,
- 3063063,
- 3068068,
- 3073073,
- 3078078,
- 3083083,
- 3088088,
- 3093093,
- 3098098,
- 3103103,
- 3108108,
- 3113113,
- 3118118,
- 3123123,
- 3128128.25,
- 3133133.25,
- 3138138.25,
- 3143143.25,
- 3148148.25,
- 3153153.25,
- 3158158.25,
- 3163163.25,
- 3168168.25,
- 3173173.25,
- 3178178.25,
- 3183183.25,
- 3188188.25,
- 3193193.25,
- 3198198.25,
- 3203203.25,
- 3208208.25,
- 3213213.25,
- 3218218.25,
- 3223223.25,
- 3228228.25,
- 3233233.25,
- 3238238.25,
- 3243243.25,
- 3248248.25,
- 3253253.25,
- 3258258.25,
- 3263263.25,
- 3268268.25,
- 3273273.25,
- 3278278.25,
- 3283283.25,
- 3288288.25,
- 3293293.25,
- 3298298.25,
- 3303303.25,
- 3308308.25,
- 3313313.25,
- 3318318.25,
- 3323323.25,
- 3328328.25,
- 3333333.25,
- 3338338.25,
- 3343343.25,
- 3348348.25,
- 3353353.25,
- 3358358.25,
- 3363363.25,
- 3368368.25,
- 3373373.25,
- 3378378.5,
- 3383383.5,
- 3388388.5,
- 3393393.5,
- 3398398.5,
- 3403403.5,
- 3408408.5,
- 3413413.5,
- 3418418.5,
- 3423423.5,
- 3428428.5,
- 3433433.5,
- 3438438.5,
- 3443443.5,
- 3448448.5,
- 3453453.5,
- 3458458.5,
- 3463463.5,
- 3468468.5,
- 3473473.5,
- 3478478.5,
- 3483483.5,
- 3488488.5,
- 3493493.5,
- 3498498.5,
- 3503503.5,
- 3508508.5,
- 3513513.5,
- 3518518.5,
- 3523523.5,
- 3528528.5,
- 3533533.5,
- 3538538.5,
- 3543543.5,
- 3548548.5,
- 3553553.5,
- 3558558.5,
- 3563563.5,
- 3568568.5,
- 3573573.5,
- 3578578.5,
- 3583583.5,
- 3588588.5,
- 3593593.5,
- 3598598.5,
- 3603603.5,
- 3608608.5,
- 3613613.5,
- 3618618.5,
- 3623623.5,
- 3628628.75,
- 3633633.75,
- 3638638.75,
- 3643643.75,
- 3648648.75,
- 3653653.75,
- 3658658.75,
- 3663663.75,
- 3668668.75,
- 3673673.75,
- 3678678.75,
- 3683683.75,
- 3688688.75,
- 3693693.75,
- 3698698.75,
- 3703703.75,
- 3708708.75,
- 3713713.75,
- 3718718.75,
- 3723723.75,
- 3728728.75,
- 3733733.75,
- 3738738.75,
- 3743743.75,
- 3748748.75,
- 3753753.75,
- 3758758.75,
- 3763763.75,
- 3768768.75,
- 3773773.75,
- 3778778.75,
- 3783783.75,
- 3788788.75,
- 3793793.75,
- 3798798.75,
- 3803803.75,
- 3808808.75,
- 3813813.75,
- 3818818.75,
- 3823823.75,
- 3828828.75,
- 3833833.75,
- 3838838.75,
- 3843843.75,
- 3848848.75,
- 3853853.75,
- 3858858.75,
- 3863863.75,
- 3868868.75,
- 3873873.75,
- 3878879,
- 3883884,
- 3888889,
- 3893894,
- 3898899,
- 3903904,
- 3908909,
- 3913914,
- 3918919,
- 3923924,
- 3928929,
- 3933934,
- 3938939,
- 3943944,
- 3948949,
- 3953954,
- 3958959,
- 3963964,
- 3968969,
- 3973974,
- 3978979,
- 3983984,
- 3988989,
- 3993994,
- 3998999,
- 4004004,
- 4009009,
- 4014014,
- 4019019,
- 4024024,
- 4029029,
- 4034034,
- 4039039,
- 4044044,
- 4049049,
- 4054054,
- 4059059,
- 4064064,
- 4069069,
- 4074074,
- 4079079,
- 4084084,
- 4089089,
- 4094094,
- 4099099,
- 4104104,
- 4109109,
- 4114114,
- 4119119,
- 4124124,
- 4129129.25,
- 4134134.25,
- 4139139.25,
- 4144144.25,
- 4149149.25,
- 4154154.25,
- 4159159.25,
- 4164164.25,
- 4169169.25,
- 4174174.25,
- 4179179.25,
- 4184184.25,
- 4189189.25,
- 4194194.25,
- 4199199,
- 4204204,
- 4209209,
- 4214214,
- 4219219,
- 4224224,
- 4229229,
- 4234234,
- 4239239,
- 4244244,
- 4249249,
- 4254254.5,
- 4259259.5,
- 4264264.5,
- 4269269.5,
- 4274274.5,
- 4279279.5,
- 4284284.5,
- 4289289.5,
- 4294294.5,
- 4299299.5,
- 4304304.5,
- 4309309.5,
- 4314314.5,
- 4319319.5,
- 4324324.5,
- 4329329.5,
- 4334334.5,
- 4339339.5,
- 4344344.5,
- 4349349.5,
- 4354354.5,
- 4359359.5,
- 4364364.5,
- 4369369.5,
- 4374374.5,
- 4379379.5,
- 4384384.5,
- 4389389.5,
- 4394394.5,
- 4399399.5,
- 4404404.5,
- 4409409.5,
- 4414414.5,
- 4419419.5,
- 4424424.5,
- 4429429.5,
- 4434434.5,
- 4439439.5,
- 4444444.5,
- 4449449.5,
- 4454454.5,
- 4459459.5,
- 4464464.5,
- 4469469.5,
- 4474474.5,
- 4479479.5,
- 4484484.5,
- 4489489.5,
- 4494494.5,
- 4499499.5,
- 4504504.5,
- 4509509.5,
- 4514514.5,
- 4519519.5,
- 4524524.5,
- 4529529.5,
- 4534534.5,
- 4539539.5,
- 4544544.5,
- 4549549.5,
- 4554554.5,
- 4559559.5,
- 4564564.5,
- 4569569.5,
- 4574574.5,
- 4579579.5,
- 4584584.5,
- 4589589.5,
- 4594594.5,
- 4599599.5,
- 4604604.5,
- 4609609.5,
- 4614614.5,
- 4619619.5,
- 4624624.5,
- 4629629.5,
- 4634634.5,
- 4639639.5,
- 4644644.5,
- 4649649.5,
- 4654654.5,
- 4659659.5,
- 4664664.5,
- 4669669.5,
- 4674674.5,
- 4679679.5,
- 4684684.5,
- 4689689.5,
- 4694694.5,
- 4699699.5,
- 4704704.5,
- 4709709.5,
- 4714714.5,
- 4719719.5,
- 4724724.5,
- 4729729.5,
- 4734734.5,
- 4739739.5,
- 4744744.5,
- 4749749.5,
- 4754755,
- 4759760,
- 4764765,
- 4769770,
- 4774775,
- 4779780,
- 4784785,
- 4789790,
- 4794795,
- 4799800,
- 4804805,
- 4809810,
- 4814815,
- 4819820,
- 4824825,
- 4829830,
- 4834835,
- 4839840,
- 4844845,
- 4849850,
- 4854855,
- 4859860,
- 4864865,
- 4869870,
- 4874875,
- 4879880,
- 4884885,
- 4889890,
- 4894895,
- 4899900,
- 4904905,
- 4909910,
- 4914915,
- 4919920,
- 4924925,
- 4929930,
- 4934935,
- 4939940,
- 4944945,
- 4949950,
- 4954955,
- 4959960,
- 4964965,
- 4969970,
- 4974975,
- 4979980,
- 4984985,
- 4989990,
- 4994995
- ],
- "xaxis": "x2",
- "y": [
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 15.015625,
- 265.265625,
- 515.515625,
- 765.765625,
- 1016.015625,
- 1266.265625,
- 1516.5172119140625,
- 1766.7672119140625,
- 2017.0172119140625,
- 2267.26708984375,
- 2517.51708984375,
- 2767.76708984375,
- 3018.018798828125,
- 3268.268798828125,
- 3518.518798828125,
- 3768.768798828125,
- 4019.018798828125,
- 4269.2685546875,
- 4519.5185546875,
- 4769.7705078125,
- 5020.0205078125,
- 5270.2705078125,
- 5520.5205078125,
- 5770.7705078125,
- 6021.0205078125,
- 6271.27197265625,
- 6521.52197265625,
- 6771.77197265625,
- 7022.02197265625,
- 7272.27197265625,
- 7522.52197265625,
- 7772.7734375,
- 8023.0234375,
- 8273.2734375,
- 8523.5234375,
- 8773.7734375,
- 9024.0234375,
- 9274.275390625,
- 9524.525390625,
- 9774.775390625,
- 15025.025390625,
- 15275.275390625,
- 15525.525390625,
- 15775.775390625,
- 16026.0263671875,
- 16276.275390625,
- 16526.525390625,
- 16776.77734375,
- 17027.02734375,
- 17277.27734375,
- 17527.52734375,
- 17777.77734375,
- 18028.02734375,
- 18278.27734375,
- 18528.52734375,
- 18778.77734375,
- 19029.02734375,
- 19279.27734375,
- 19529.52734375,
- 19779.78125,
- 20030.03125,
- 20280.28125,
- 20530.53125,
- 20780.78125,
- 21031.03125,
- 21281.28125,
- 21531.53125,
- 21781.78125,
- 22032.03125,
- 22282.28125,
- 22532.53125,
- 22782.78125,
- 23033.03515625,
- 23283.28515625,
- 23533.53515625,
- 23783.78515625,
- 24034.03515625,
- 24284.28515625,
- 24534.53515625,
- 24784.78515625,
- 25035.03515625,
- 25285.28515625,
- 25535.53515625,
- 25785.78515625,
- 26036.037109375,
- 26286.287109375,
- 26536.537109375,
- 26786.787109375,
- 27037.037109375,
- 27287.287109375,
- 27537.537109375,
- 27787.787109375,
- 28038.037109375,
- 28288.287109375,
- 28538.537109375,
- 28788.787109375,
- 29039.037109375,
- 29289.291015625,
- 29539.541015625,
- 29789.791015625,
- 30040.041015625,
- 30290.291015625,
- 30540.541015625,
- 30790.791015625,
- 31041.041015625,
- 31291.291015625,
- 31541.541015625,
- 31791.791015625,
- 32042.041015625,
- 32292.29296875,
- 32542.54296875,
- 32792.79296875,
- 33043.04296875,
- 33293.29296875,
- 33543.54296875,
- 33793.79296875,
- 34044.04296875,
- 34294.29296875,
- 34544.54296875,
- 34794.79296875,
- 35045.04296875,
- 35295.29296875,
- 35545.546875,
- 35795.796875,
- 36046.046875,
- 36342.59375,
- 36843.09375,
- 37343.59375,
- 37844.09375,
- 38344.59375,
- 38845.09375,
- 39345.59375,
- 39846.09375,
- 40346.59375,
- 40847.1015625,
- 41347.6015625,
- 41848.1015625,
- 42348.6015625,
- 42849.1015625,
- 43349.6015625,
- 43850.1015625,
- 44350.6015625,
- 44851.1015625,
- 45351.6015625,
- 45852.1015625,
- 46352.6015625,
- 46853.1015625,
- 47353.60546875,
- 47854.10546875,
- 48354.60546875,
- 48855.1015625,
- 49355.6015625,
- 49856.1015625,
- 50356.61328125,
- 50857.11328125,
- 51357.61328125,
- 51858.11328125,
- 52358.61328125,
- 52859.11328125,
- 53359.61328125,
- 53860.11328125,
- 54360.61328125,
- 54861.11328125,
- 55361.61328125,
- 55862.11328125,
- 56362.61328125,
- 56863.11328125,
- 57363.61328125,
- 57864.11328125,
- 58364.61328125,
- 58865.11328125,
- 59365.61328125,
- 59866.11328125,
- 60366.61328125,
- 60867.11328125,
- 61367.61328125,
- 61868.11328125,
- 62368.61328125,
- 62869.125,
- 63369.625,
- 63870.125,
- 64370.625,
- 64871.125,
- 65371.625,
- 65872.125,
- 66372.625,
- 66873.125,
- 67373.625,
- 67874.125,
- 68374.625,
- 68875.125,
- 69375.625,
- 69876.125,
- 70376.625,
- 70877.125,
- 71377.625,
- 71878.125,
- 72378.625,
- 72879.125,
- 73379.625,
- 73880.125,
- 74380.625,
- 74881.125,
- 75381.640625,
- 75882.140625,
- 76382.640625,
- 76883.140625,
- 77383.640625,
- 77884.140625,
- 78384.640625,
- 78885.140625,
- 79385.640625,
- 79886.140625,
- 80386.640625,
- 80887.140625,
- 81387.640625,
- 81888.140625,
- 82388.640625,
- 82889.140625,
- 83389.640625,
- 83890.140625,
- 84390.640625,
- 84891.140625,
- 85391.640625,
- 85892.140625,
- 86392.640625,
- 86893.140625,
- 87393.640625,
- 87894.1484375,
- 88394.6484375,
- 88895.1484375,
- 89395.6484375,
- 89896.1484375,
- 90396.6484375,
- 90897.1484375,
- 91397.6484375,
- 91898.1484375,
- 92398.6484375,
- 92899.1484375,
- 93399.6484375,
- 93930.1796875,
- 94530.78125,
- 95131.3828125,
- 95731.9765625,
- 96332.578125,
- 96933.1796875,
- 97533.78125,
- 98134.3828125,
- 98734.9765625,
- 99335.578125,
- 99936.1796875,
- 100536.78125,
- 101137.3828125,
- 101737.9921875,
- 102338.59375,
- 102939.1953125,
- 103539.796875,
- 104140.3984375,
- 104740.9921875,
- 105341.59375,
- 105942.1953125,
- 106542.796875,
- 107143.3984375,
- 107743.9921875,
- 108344.59375,
- 108945.1953125,
- 109545.796875,
- 110146.3984375,
- 110746.9921875,
- 111347.59375,
- 111948.1953125,
- 112548.796875,
- 113149.3984375,
- 113749.9921875,
- 114350.59375,
- 114951.1953125,
- 115551.796875,
- 116152.3984375,
- 116753.0078125,
- 117353.609375,
- 117954.2109375,
- 118554.8125,
- 119155.40625,
- 119756.0078125,
- 120356.609375,
- 120957.2109375,
- 121557.8125,
- 122158.40625,
- 122759.0078125,
- 123359.609375,
- 123960.2109375,
- 124560.8125,
- 125161.40625,
- 125762.0078125,
- 126362.609375,
- 126963.2109375,
- 127563.8125,
- 128164.40625,
- 128765.0078125,
- 129365.609375,
- 129966.2109375,
- 130566.8125,
- 131167.40625,
- 131768.03125,
- 132368.625,
- 132969.21875,
- 133569.828125,
- 134170.421875,
- 134771.03125,
- 135371.625,
- 135972.21875,
- 136572.828125,
- 137173.421875,
- 137774.03125,
- 138374.625,
- 138975.21875,
- 139575.828125,
- 140176.421875,
- 140777.03125,
- 141377.625,
- 141978.21875,
- 142578.828125,
- 143179.421875,
- 143780.03125,
- 144380.625,
- 144981.21875,
- 145581.828125,
- 146182.421875,
- 146783.046875,
- 147383.640625,
- 147984.234375,
- 148584.84375,
- 149185.4375,
- 149786.046875,
- 150386.640625,
- 150987.234375,
- 151587.84375,
- 152188.4375,
- 152789.046875,
- 153389.640625,
- 153990.234375,
- 154590.84375,
- 155191.4375,
- 155792.046875,
- 156392.640625,
- 156993.234375,
- 157593.84375,
- 158194.4375,
- 158795.046875,
- 159395.640625,
- 159996.234375,
- 160596.84375,
- 161197.4375,
- 161798.0625,
- 162398.65625,
- 162999.25,
- 163599.859375,
- 164200.453125,
- 164801.0625,
- 165401.65625,
- 166002.234375,
- 166602.84375,
- 167203.4375,
- 167804.046875,
- 168404.640625,
- 169005.265625,
- 169605.875,
- 170206.46875,
- 170807.0625,
- 171407.671875,
- 172008.265625,
- 172608.875,
- 173209.46875,
- 173810.0625,
- 174410.671875,
- 175011.265625,
- 175611.875,
- 176212.46875,
- 176813.0625,
- 177413.671875,
- 178014.265625,
- 178614.875,
- 179215.46875,
- 179816.0625,
- 180416.671875,
- 181017.265625,
- 181617.875,
- 182218.46875,
- 182819.0625,
- 183419.671875,
- 184020.265625,
- 184620.875,
- 185221.46875,
- 185822.0625,
- 186422.671875,
- 187023.265625,
- 187623.875,
- 188224.46875,
- 188825.0625,
- 189425.671875,
- 190026.265625,
- 190626.875,
- 191227.46875,
- 191828.0625,
- 192428.671875,
- 193029.265625,
- 193629.875,
- 194230.46875,
- 194831.0625,
- 195431.671875,
- 196032.265625,
- 196632.875,
- 197233.46875,
- 197834.0625,
- 198434.671875,
- 199035.296875,
- 199635.90625,
- 200236.5,
- 200837.09375,
- 201437.703125,
- 202038.296875,
- 202638.90625,
- 203239.5,
- 203840.09375,
- 204440.703125,
- 205041.296875,
- 205641.90625,
- 206242.5,
- 206843.09375,
- 207443.703125,
- 208044.296875,
- 208644.90625,
- 209245.5,
- 209846.09375,
- 210446.703125,
- 211047.296875,
- 211647.90625,
- 212248.5,
- 212849.09375,
- 213449.703125,
- 214050.296875,
- 214650.90625,
- 215251.5,
- 215852.09375,
- 216452.703125,
- 217053.296875,
- 217653.90625,
- 218254.5,
- 218855.09375,
- 219455.703125,
- 220056.296875,
- 220656.90625,
- 221257.5,
- 221858.09375,
- 222458.703125,
- 223059.296875,
- 223659.90625,
- 224260.5,
- 224861.09375,
- 225461.703125,
- 226062.296875,
- 226662.90625,
- 227263.5,
- 227864.09375,
- 228464.703125,
- 229065.328125,
- 229665.9375,
- 230266.53125,
- 230867.125,
- 231467.734375,
- 232068.328125,
- 232668.9375,
- 233269.53125,
- 233870.125,
- 234470.734375,
- 235071.328125,
- 235671.9375,
- 236272.53125,
- 236873.125,
- 237473.734375,
- 238074.328125,
- 238674.9375,
- 239275.53125,
- 239876.125,
- 240476.734375,
- 241077.328125,
- 241677.9375,
- 242278.53125,
- 242879.125,
- 243479.734375,
- 244080.328125,
- 244680.9375,
- 245281.53125,
- 245882.125,
- 246482.734375,
- 247083.328125,
- 247683.9375,
- 248284.53125,
- 248885.125,
- 249485.734375,
- 250086.328125,
- 250686.9375,
- 251287.53125,
- 251888.125,
- 252488.734375,
- 253089.328125,
- 253689.9375,
- 254290.53125,
- 254891.125,
- 255491.734375,
- 256092.328125,
- 256692.9375,
- 257293.53125,
- 257894.125,
- 258494.734375,
- 259095.359375,
- 259695.953125,
- 260296.5625,
- 260897.15625,
- 261497.765625,
- 262098.359375,
- 262698.96875,
- 263299.5625,
- 263900.15625,
- 264500.75,
- 265101.375,
- 265701.96875,
- 266302.5625,
- 266903.15625,
- 267503.75,
- 268104.375,
- 268704.96875,
- 269305.5625,
- 269906.15625,
- 270506.75,
- 271107.375,
- 271707.96875,
- 272308.5625,
- 272909.15625,
- 273509.75,
- 274110.375,
- 274710.96875,
- 275311.5625,
- 275912.15625,
- 276512.75,
- 277113.375,
- 277713.96875,
- 278314.5625,
- 278915.15625,
- 279515.75,
- 280116.375,
- 280716.96875,
- 281317.5625,
- 281918.15625,
- 282518.75,
- 283119.375,
- 283719.96875,
- 284320.5625,
- 284921.15625,
- 285521.75,
- 286122.375,
- 286722.96875,
- 287323.5625,
- 287924.15625,
- 288524.75,
- 289125.375,
- 289726,
- 290326.59375,
- 290927.1875,
- 291527.78125,
- 292128.375,
- 292729,
- 293329.59375,
- 293930.1875,
- 294530.78125,
- 295131.375,
- 295732,
- 296332.59375,
- 296933.1875,
- 297533.78125,
- 298134.375,
- 298735,
- 299335.59375,
- 299936.1875,
- 300536.78125,
- 301137.375,
- 301738,
- 302338.59375,
- 302939.1875,
- 303539.78125,
- 304140.375,
- 304741,
- 305341.59375,
- 305942.1875,
- 306542.78125,
- 307143.375,
- 307744,
- 308344.59375,
- 308945.1875,
- 309545.78125,
- 310146.375,
- 310747,
- 311347.59375,
- 311948.1875,
- 312548.78125,
- 313149.375,
- 313750,
- 314350.59375,
- 314951.1875,
- 315551.78125,
- 316152.375,
- 316753,
- 317353.59375,
- 317954.1875,
- 318554.78125,
- 319155.40625,
- 319756.03125,
- 320356.625,
- 320957.21875,
- 321557.8125,
- 322158.40625,
- 322759.03125,
- 323359.625,
- 323960.21875,
- 324560.8125,
- 325161.40625,
- 325762.03125,
- 326362.625,
- 326963.21875,
- 327563.8125,
- 328164.40625,
- 328765.03125,
- 329365.625,
- 329966.21875,
- 330566.8125,
- 331167.40625,
- 331768.03125,
- 332368.625,
- 332969.21875,
- 333569.8125,
- 334170.40625,
- 334771.03125,
- 335371.625,
- 335972.21875,
- 336572.8125,
- 337173.40625,
- 337774.03125,
- 338374.625,
- 338975.21875,
- 339575.8125,
- 340176.40625,
- 340777.03125,
- 341377.625,
- 341978.21875,
- 342578.8125,
- 343179.40625,
- 343780.03125,
- 344380.625,
- 344981.21875,
- 345581.8125,
- 346182.40625,
- 346783.03125,
- 347383.625,
- 347984.21875,
- 348584.8125,
- 349185.4375,
- 349786.0625,
- 350386.65625,
- 350987.25,
- 351587.84375,
- 352188.4375,
- 352789.0625,
- 353389.65625,
- 353990.25,
- 354590.84375,
- 355191.4375,
- 355792.0625,
- 356392.65625,
- 356993.25,
- 357593.84375,
- 358194.4375,
- 358795.0625,
- 359395.65625,
- 359996.25,
- 360596.84375,
- 361197.4375,
- 361798.0625,
- 362398.65625,
- 362999.25,
- 363599.84375,
- 364200.4375,
- 364801.0625,
- 365401.65625,
- 366002.25,
- 366602.84375,
- 367203.4375,
- 367804.0625,
- 368404.65625,
- 369005.25,
- 369605.84375,
- 370206.4375,
- 370807.0625,
- 371407.65625,
- 372008.25,
- 372608.84375,
- 373209.4375,
- 373810.0625,
- 374410.65625,
- 375011.25,
- 375611.84375,
- 376212.4375,
- 376813.0625,
- 377413.65625,
- 378014.25,
- 378614.84375,
- 379215.46875,
- 379816.09375,
- 380416.6875,
- 381017.28125,
- 381617.875,
- 382218.46875,
- 382819.09375,
- 383419.6875,
- 384020.28125,
- 384620.875,
- 385221.46875,
- 385822.09375,
- 386422.6875,
- 387023.28125,
- 387623.875,
- 388224.46875,
- 388825.09375,
- 389425.6875,
- 390026.28125,
- 390626.875,
- 391227.46875,
- 391828.09375,
- 392428.6875,
- 393029.28125,
- 393629.875,
- 394230.46875,
- 394831.09375,
- 395431.6875,
- 396032.28125,
- 396632.875,
- 397233.46875,
- 397834.09375,
- 398434.6875,
- 399035.28125,
- 399635.875,
- 400236.46875,
- 400837.09375,
- 401437.6875,
- 402038.28125,
- 402638.875,
- 403239.46875,
- 403840.09375,
- 404440.6875,
- 405041.28125,
- 405641.875,
- 406242.46875,
- 406843.09375,
- 407443.6875,
- 408044.28125,
- 408644.875,
- 409245.5,
- 409846.125,
- 410446.71875,
- 411047.3125,
- 411647.90625,
- 412248.5,
- 412849.125,
- 413449.71875,
- 414050.3125,
- 414650.90625,
- 415251.5,
- 415852.125,
- 416452.71875,
- 417053.3125,
- 417653.875,
- 418254.46875,
- 418855.09375,
- 419455.6875,
- 420056.28125,
- 420656.875,
- 421257.46875,
- 421858.09375,
- 422458.6875,
- 423059.28125,
- 423659.875,
- 424260.53125,
- 424861.125,
- 425461.75,
- 426062.34375,
- 426662.9375,
- 427263.53125,
- 427864.125,
- 428464.75,
- 429065.34375,
- 429665.9375,
- 430266.53125,
- 430867.125,
- 431467.75,
- 432068.34375,
- 432668.9375,
- 433269.53125,
- 433870.125,
- 434470.75,
- 435071.34375,
- 435671.9375,
- 436272.53125,
- 436873.125,
- 437473.75,
- 438074.34375,
- 438674.9375,
- 439275.53125,
- 439876.125,
- 440476.75,
- 441077.34375,
- 441677.9375,
- 442278.53125,
- 442879.125,
- 443479.75,
- 444080.34375,
- 444680.9375,
- 445281.53125,
- 445882.125,
- 446482.75,
- 447083.34375,
- 447683.9375,
- 448284.53125,
- 448885.125,
- 449485.75,
- 450086.34375,
- 450686.9375,
- 451287.53125,
- 451888.125,
- 452488.75,
- 453089.34375,
- 453689.9375,
- 454290.53125,
- 454891.125,
- 455491.75,
- 456092.34375,
- 456692.9375,
- 457293.53125,
- 457894.125,
- 458494.75,
- 459095.34375,
- 459695.9375,
- 460296.53125,
- 460897.125,
- 461497.75,
- 462098.34375,
- 462698.9375,
- 463299.53125,
- 463900.125,
- 464500.75,
- 465101.34375,
- 465701.9375,
- 466302.53125,
- 466903.125,
- 467503.75,
- 468104.34375,
- 468704.9375,
- 469305.53125,
- 469906.125,
- 470506.75,
- 471107.34375,
- 471707.9375,
- 472308.53125,
- 472909.125,
- 473509.75,
- 474110.34375,
- 474710.9375,
- 475311.53125,
- 475912.125,
- 476512.75,
- 477113.34375,
- 477713.9375,
- 478314.53125,
- 478915.125,
- 479515.75,
- 480116.34375,
- 480716.9375,
- 481317.53125,
- 481918.125,
- 482518.75,
- 483119.34375,
- 483719.9375,
- 484320.59375,
- 484921.1875,
- 485521.8125,
- 486122.40625,
- 486723,
- 487323.59375,
- 487924.1875,
- 488524.8125,
- 489125.40625,
- 489726,
- 490326.59375,
- 490927.1875,
- 491527.8125,
- 492128.40625,
- 492729,
- 493329.59375,
- 493930.1875,
- 494530.8125,
- 495131.40625,
- 495732,
- 496332.59375,
- 496933.1875,
- 497533.8125,
- 498134.40625,
- 498735,
- 499335.59375,
- 499936.1875,
- 500536.8125,
- 501137.40625,
- 501738,
- 502338.59375,
- 502939.1875,
- 503539.8125,
- 504140.40625,
- 504741,
- 505341.59375,
- 505942.1875,
- 506542.8125,
- 507143.40625,
- 507744,
- 508344.59375,
- 508945.1875,
- 509545.8125,
- 510146.40625,
- 510747,
- 511347.59375,
- 511948.1875,
- 512548.8125,
- 513149.40625
- ],
- "yaxis": "y2"
- }
- ],
- "layout": {
- "annotations": [
- {
- "font": {
- "size": 16
- },
- "showarrow": false,
- "text": "Marginal SDLT rate",
- "x": 0.225,
- "xanchor": "center",
- "xref": "paper",
- "y": 1,
- "yanchor": "bottom",
- "yref": "paper"
- },
- {
- "font": {
- "size": 16
- },
- "showarrow": false,
- "text": "Total SDLT",
- "x": 0.775,
- "xanchor": "center",
- "xref": "paper",
- "y": 1,
- "yanchor": "bottom",
- "yref": "paper"
- }
- ],
- "font": {
- "color": "black",
- "family": "Roboto Serif"
- },
- "height": 600,
- "images": [
- {
- "sizex": 0.2,
- "sizey": 0.2,
- "source": "https://raw.githubusercontent.com/PolicyEngine/policyengine-app/master/src/images/logos/policyengine/blue.png",
- "x": 1,
- "xanchor": "right",
- "xref": "paper",
- "y": -0.15,
- "yanchor": "bottom",
- "yref": "paper"
- }
- ],
- "modebar": {
- "bgcolor": "rgba(0,0,0,0)",
- "color": "rgba(0,0,0,0)"
- },
- "template": {
- "data": {
- "bar": [
- {
- "error_x": {
- "color": "#2a3f5f"
- },
- "error_y": {
- "color": "#2a3f5f"
- },
- "marker": {
- "line": {
- "color": "white",
- "width": 0.5
- },
- "pattern": {
- "fillmode": "overlay",
- "size": 10,
- "solidity": 0.2
- }
- },
- "type": "bar"
- }
- ],
- "barpolar": [
- {
- "marker": {
- "line": {
- "color": "white",
- "width": 0.5
- },
- "pattern": {
- "fillmode": "overlay",
- "size": 10,
- "solidity": 0.2
- }
- },
- "type": "barpolar"
- }
- ],
- "carpet": [
- {
- "aaxis": {
- "endlinecolor": "#2a3f5f",
- "gridcolor": "#C8D4E3",
- "linecolor": "#C8D4E3",
- "minorgridcolor": "#C8D4E3",
- "startlinecolor": "#2a3f5f"
- },
- "baxis": {
- "endlinecolor": "#2a3f5f",
- "gridcolor": "#C8D4E3",
- "linecolor": "#C8D4E3",
- "minorgridcolor": "#C8D4E3",
- "startlinecolor": "#2a3f5f"
- },
- "type": "carpet"
- }
- ],
- "choropleth": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "type": "choropleth"
- }
- ],
- "contour": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "contour"
- }
- ],
- "contourcarpet": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "type": "contourcarpet"
- }
- ],
- "heatmap": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "heatmap"
- }
- ],
- "heatmapgl": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "heatmapgl"
- }
- ],
- "histogram": [
- {
- "marker": {
- "pattern": {
- "fillmode": "overlay",
- "size": 10,
- "solidity": 0.2
- }
- },
- "type": "histogram"
- }
- ],
- "histogram2d": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "histogram2d"
- }
- ],
- "histogram2dcontour": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "histogram2dcontour"
- }
- ],
- "mesh3d": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "type": "mesh3d"
- }
- ],
- "parcoords": [
- {
- "line": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "parcoords"
- }
- ],
- "pie": [
- {
- "automargin": true,
- "type": "pie"
- }
- ],
- "scatter": [
- {
- "fillpattern": {
- "fillmode": "overlay",
- "size": 10,
- "solidity": 0.2
- },
- "type": "scatter"
- }
- ],
- "scatter3d": [
- {
- "line": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scatter3d"
- }
- ],
- "scattercarpet": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scattercarpet"
- }
- ],
- "scattergeo": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scattergeo"
- }
- ],
- "scattergl": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scattergl"
- }
- ],
- "scattermapbox": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scattermapbox"
- }
- ],
- "scatterpolar": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scatterpolar"
- }
- ],
- "scatterpolargl": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scatterpolargl"
- }
- ],
- "scatterternary": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scatterternary"
- }
- ],
- "surface": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "surface"
- }
- ],
- "table": [
- {
- "cells": {
- "fill": {
- "color": "#EBF0F8"
- },
- "line": {
- "color": "white"
- }
- },
- "header": {
- "fill": {
- "color": "#C8D4E3"
- },
- "line": {
- "color": "white"
- }
- },
- "type": "table"
- }
- ]
- },
- "layout": {
- "annotationdefaults": {
- "arrowcolor": "#2a3f5f",
- "arrowhead": 0,
- "arrowwidth": 1
- },
- "autotypenumbers": "strict",
- "coloraxis": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "colorscale": {
- "diverging": [
- [
- 0,
- "#8e0152"
- ],
- [
- 0.1,
- "#c51b7d"
- ],
- [
- 0.2,
- "#de77ae"
- ],
- [
- 0.3,
- "#f1b6da"
- ],
- [
- 0.4,
- "#fde0ef"
- ],
- [
- 0.5,
- "#f7f7f7"
- ],
- [
- 0.6,
- "#e6f5d0"
- ],
- [
- 0.7,
- "#b8e186"
- ],
- [
- 0.8,
- "#7fbc41"
- ],
- [
- 0.9,
- "#4d9221"
- ],
- [
- 1,
- "#276419"
- ]
- ],
- "sequential": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "sequentialminus": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ]
- },
- "colorway": [
- "#636efa",
- "#EF553B",
- "#00cc96",
- "#ab63fa",
- "#FFA15A",
- "#19d3f3",
- "#FF6692",
- "#B6E880",
- "#FF97FF",
- "#FECB52"
- ],
- "font": {
- "color": "#2a3f5f"
- },
- "geo": {
- "bgcolor": "white",
- "lakecolor": "white",
- "landcolor": "white",
- "showlakes": true,
- "showland": true,
- "subunitcolor": "#C8D4E3"
- },
- "hoverlabel": {
- "align": "left"
- },
- "hovermode": "closest",
- "mapbox": {
- "style": "light"
- },
- "paper_bgcolor": "white",
- "plot_bgcolor": "white",
- "polar": {
- "angularaxis": {
- "gridcolor": "#EBF0F8",
- "linecolor": "#EBF0F8",
- "ticks": ""
- },
- "bgcolor": "white",
- "radialaxis": {
- "gridcolor": "#EBF0F8",
- "linecolor": "#EBF0F8",
- "ticks": ""
- }
- },
- "scene": {
- "xaxis": {
- "backgroundcolor": "white",
- "gridcolor": "#DFE8F3",
- "gridwidth": 2,
- "linecolor": "#EBF0F8",
- "showbackground": true,
- "ticks": "",
- "zerolinecolor": "#EBF0F8"
- },
- "yaxis": {
- "backgroundcolor": "white",
- "gridcolor": "#DFE8F3",
- "gridwidth": 2,
- "linecolor": "#EBF0F8",
- "showbackground": true,
- "ticks": "",
- "zerolinecolor": "#EBF0F8"
- },
- "zaxis": {
- "backgroundcolor": "white",
- "gridcolor": "#DFE8F3",
- "gridwidth": 2,
- "linecolor": "#EBF0F8",
- "showbackground": true,
- "ticks": "",
- "zerolinecolor": "#EBF0F8"
- }
- },
- "shapedefaults": {
- "line": {
- "color": "#2a3f5f"
- }
- },
- "ternary": {
- "aaxis": {
- "gridcolor": "#DFE8F3",
- "linecolor": "#A2B1C6",
- "ticks": ""
- },
- "baxis": {
- "gridcolor": "#DFE8F3",
- "linecolor": "#A2B1C6",
- "ticks": ""
- },
- "bgcolor": "white",
- "caxis": {
- "gridcolor": "#DFE8F3",
- "linecolor": "#A2B1C6",
- "ticks": ""
- }
- },
- "title": {
- "x": 0.05
- },
- "xaxis": {
- "automargin": true,
- "gridcolor": "#EBF0F8",
- "linecolor": "#EBF0F8",
- "ticks": "",
- "title": {
- "standoff": 15
- },
- "zerolinecolor": "#EBF0F8",
- "zerolinewidth": 2
- },
- "yaxis": {
- "automargin": true,
- "gridcolor": "#EBF0F8",
- "linecolor": "#EBF0F8",
- "ticks": "",
- "title": {
- "standoff": 15
- },
- "zerolinecolor": "#EBF0F8",
- "zerolinewidth": 2
- }
- }
- },
- "width": 800,
- "xaxis": {
- "anchor": "y",
- "domain": [
- 0,
- 0.45
- ],
- "tickprefix": "£",
- "title": {
- "text": "Price"
- }
- },
- "xaxis2": {
- "anchor": "y2",
- "domain": [
- 0.55,
- 1
- ],
- "tickprefix": "£",
- "title": {
- "text": "Price"
- }
- },
- "yaxis": {
- "anchor": "x",
- "domain": [
- 0,
- 1
- ],
- "tickformat": ",.0%"
- },
- "yaxis2": {
- "anchor": "x2",
- "domain": [
- 0,
- 1
- ],
- "tickprefix": "£"
- }
- }
- }
- },
- "metadata": {},
- "output_type": "display_data"
- }
- ],
+ "## Residential purchase schedules\n\nThis model covers recent ordinary individual purchases in England and Northern Ireland. An additional-purchase input represents a transaction already classified as subject to the higher rates; the model does not derive that classification from ownership history.\n\n| Effective date | Standard nil band | First-time-buyer nil band | Inclusive first-time-buyer maximum | Additional-dwelling surcharge |\n| --- | ---: | ---: | ---: | ---: |\n| 23 September 2022–30 October 2024 | £250,000 | £425,000 | £625,000 | 3 percentage points |\n| 31 October 2024–31 March 2025 | £250,000 | £425,000 | £625,000 | 5 percentage points |\n| From 1 April 2025 | £125,000 | £300,000 | £500,000 | 5 percentage points |\n\nAbove the temporary £250,000 standard nil band, marginal rates are 5% up to £925,000, 10% up to £1.5 million and 12% thereafter. From 1 April 2025, the £125,000–£250,000 band returns at 2%; higher standard bands remain the same. First-time buyers pay 5% above their nil band **up to and including** the maximum purchase price. A purchase above that maximum loses first-time-buyer relief on the whole transaction.\n\nFor additional dwellings, the full higher-rates schedule applies when consideration is at least £40,000; below that amount the modeled additional purchase pays zero. During the temporary period its rates are 3/8/13/15%, then 5/10/15/17% from 31 October 2024. From 1 April 2025 the restored £125,000 band gives rates of 5/7/10/15/17%. There is no 7% band during the temporary £250,000 period.\n\nSources: [SDLT (Temporary Relief) Act 2023, section 1](https://www.legislation.gov.uk/ukpga/2023/2/section/1/enacted), [Finance Act 2025, sections 50–52](https://www.legislation.gov.uk/ukpga/2025/8/section/50/enacted), and [Finance Act 2003, Schedule 6ZA](https://www.legislation.gov.uk/ukpga/2003/14/schedule/6ZA).\n\n### Annual simulation convention and limits\n\nParameters retain those legal dates, but annual simulations sample **30 April** of each year. Thus 2022 uses the pre-September bands, 2023 and 2024 use the temporary bands with the three-point surcharge, and 2025 uses restored bands with the five-point surcharge. A YEAR purchase input cannot select a transaction day within that year.\n\nThe higher-rate changes protect some contracts entered into before 31 October 2024, with exclusions for specified variations, assignments, options and subsales. Substantial-performance rules can also affect liability. Existing inputs cannot select those contract protections: the schedules above describe ordinary **unprotected** purchases. Earlier 2020/2021 holiday coverage and older history remain incomplete. This purchase update does not certify rental, lease, corporate, nonresident, ownership-classification or return-rounding rules, or estimate population impacts.\n\nThe following chart illustrates the **2023** marginal schedules. Its first-home rate curve does not show the discrete loss of relief above the maximum; the cash example below does.\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "tags": [
+ "hide-input"
+ ]
+ },
+ "outputs": [],
"source": [
- "from policyengine_uk import Simulation\n",
- "\n",
- "sim = Simulation(\n",
- " situation=dict(\n",
- " households=dict(\n",
- " household=dict(\n",
- " main_residential_property_purchased_is_first_home=True,\n",
- " members=[\"person\"],\n",
- " )\n",
- " ),\n",
- " people=dict(\n",
- " person=dict(\n",
- " age=30,\n",
- " )\n",
- " ),\n",
- " axes=[\n",
- " [\n",
- " dict(\n",
- " name=\"main_residential_property_purchased\",\n",
- " min=0,\n",
- " max=5_000_000,\n",
- " count=1_000,\n",
- " )\n",
- " ]\n",
- " ],\n",
- " )\n",
- ")\n",
- "\n",
"import pandas as pd\n",
+ "import plotly.express as px\n",
+ "from policyengine_core.charts import format_fig\n",
"\n",
- "stamp_duty = sim.calculate(\"stamp_duty_land_tax\")\n",
- "home_price = sim.calculate(\"main_residential_property_purchased\")\n",
- "\n",
- "marginal_rate = (stamp_duty[1:] - stamp_duty[:-1]) / (home_price[1:] - home_price[:-1])\n",
- "home_price = home_price[:-1]\n",
- "\n",
- "df = pd.DataFrame(\n",
+ "residential_rent = pd.DataFrame(\n",
" {\n",
- " \"Home price\": home_price,\n",
- " \"Marginal SDLT rate\": marginal_rate,\n",
- " \"SDLT\": stamp_duty[:-1],\n",
+ " \"Threshold\": [0, 125000, 5200000],\n",
+ " \"Rate\": [0, 0.01, 0.01],\n",
+ " \"Label\": [\"Residential rent\"] * 3,\n",
" }\n",
")\n",
- "\n",
- "import plotly.express as px\n",
- "from plotly.subplots import make_subplots\n",
- "\n",
- "# left shows marginal rate, right shows total SDLT\n",
- "\n",
- "fig = make_subplots(rows=1, cols=2, subplot_titles=(\"Marginal SDLT rate\", \"Total SDLT\"))\n",
- "\n",
- "fig.add_trace(\n",
- " px.line(df, x=\"Home price\", y=\"Marginal SDLT rate\", title=\"Marginal SDLT rate\")\n",
- " .update_traces(line_shape=\"hv\")\n",
- " .data[0],\n",
- " row=1,\n",
- " col=1,\n",
- ").update_xaxes(row=1, col=1, title_text=\"Price\", tickprefix=\"£\").update_yaxes(\n",
- " row=1, col=1, tickformat=\",.0%\"\n",
+ "residential_purchase_main_first = pd.DataFrame(\n",
+ " {\n",
+ " \"Threshold\": [0, 425000, 625000, 925000, 1500000, 5200000],\n",
+ " \"Rate\": [0, 0.05, 0.05, 0.1, 0.12, 0.12],\n",
+ " \"Label\": [\"2023 residential purchase main (first home)\"] * 6,\n",
+ " }\n",
")\n",
- "\n",
- "fig.add_trace(\n",
- " px.line(df, x=\"Home price\", y=\"SDLT\", title=\"Total SDLT\")\n",
+ "residential_purchase_main_standard = pd.DataFrame(\n",
+ " {\n",
+ " \"Threshold\": [0, 250000, 925000, 1500000, 5200000],\n",
+ " \"Rate\": [0, 0.05, 0.1, 0.12, 0.12],\n",
+ " \"Label\": [\"2023 residential purchase main standard\"] * 5,\n",
+ " }\n",
+ ")\n",
+ "residential_purchase_additional = pd.DataFrame(\n",
+ " {\n",
+ " \"Threshold\": [0, 40000, 250000, 925000, 1500000, 5200000],\n",
+ " \"Rate\": [0, 0.03, 0.08, 0.13, 0.15, 0.15],\n",
+ " \"Label\": [\"2023 residential purchase additional\"] * 6,\n",
+ " }\n",
+ ")\n",
+ "non_residential_rent = pd.DataFrame(\n",
+ " {\n",
+ " \"Threshold\": [0, 150000, 5000000, 5200000],\n",
+ " \"Rate\": [0, 0.01, 0.02, 0.02],\n",
+ " \"Label\": [\"Non-residential rent\"] * 4,\n",
+ " }\n",
+ ")\n",
+ "non_residential_purchase = pd.DataFrame(\n",
+ " {\n",
+ " \"Threshold\": [0, 150000, 250000, 5200000],\n",
+ " \"Rate\": [0, 0.02, 0.05, 0.05],\n",
+ " \"Label\": [\"Non-residential purchase\"] * 4,\n",
+ " }\n",
+ ")\n",
+ "df_list = [\n",
+ " residential_rent,\n",
+ " residential_purchase_main_first,\n",
+ " residential_purchase_main_standard,\n",
+ " residential_purchase_additional,\n",
+ " non_residential_rent,\n",
+ " non_residential_purchase,\n",
+ "]\n",
+ "df = pd.concat(df_list)\n",
+ "# plot\n",
+ "fig = (\n",
+ " px.line(\n",
+ " df,\n",
+ " x=\"Threshold\",\n",
+ " y=\"Rate\",\n",
+ " color=\"Label\",\n",
+ " title=\"Stamp duty land tax rates over property price thresholds\",\n",
+ " )\n",
+ " .update_layout(\n",
+ " yaxis_tickformat=\",.0%\",\n",
+ " xaxis_tickprefix=\"£\",\n",
+ " legend=dict(\n",
+ " orientation=\"h\",\n",
+ " yanchor=\"bottom\",\n",
+ " y=-0.3,\n",
+ " xanchor=\"right\",\n",
+ " x=0.9,\n",
+ " title=\"\",\n",
+ " ),\n",
+ " )\n",
" .update_traces(line_shape=\"hv\")\n",
- " .data[0],\n",
- " row=1,\n",
- " col=2,\n",
- ").update_xaxes(row=1, col=2, title_text=\"Price\", tickprefix=\"£\").update_yaxes(\n",
- " row=1, col=2, tickprefix=\"£\"\n",
")\n",
- "\n",
"fig = format_fig(fig)\n",
"fig"
]
},
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Inclusive cap and loss of relief\n\nFor an otherwise qualifying first-time buyer in the 2023 annual simulation, a £625,000 purchase pays £10,000: (£625,000 − £425,000) × 5%. At £625,020 the purchase exceeds the inclusive maximum and instead pays ordinary SDLT of £18,751: (£625,020 − £250,000) × 5%. These are simple unprotected purchases with all other relief conditions satisfied.\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "tags": [
+ "hide-input"
+ ]
+ },
+ "outputs": [],
+ "source": [
+ "from policyengine_uk import Simulation\n",
+ "\n",
+ "prices = [625000, 625020]\n",
+ "situation = {\"people\": {}, \"benunits\": {}, \"households\": {}}\n",
+ "for i, price in enumerate(prices):\n",
+ " person = f\"buyer{i}\"\n",
+ " situation[\"people\"][person] = {\"age\": {2023: 30}}\n",
+ " situation[\"benunits\"][f\"family{i}\"] = {\"members\": [person]}\n",
+ " situation[\"households\"][f\"home{i}\"] = {\n",
+ " \"members\": [person],\n",
+ " \"region\": {2023: \"LONDON\"},\n",
+ " \"main_residential_property_purchased\": {2023: price},\n",
+ " \"main_residential_property_purchased_is_first_home\": {2023: True},\n",
+ " }\n",
+ "sim = Simulation(situation=situation)\n",
+ "pd.DataFrame(\n",
+ " {\n",
+ " \"Purchase price\": prices,\n",
+ " \"SDLT\": sim.calculate(\"stamp_duty_land_tax\", 2023),\n",
+ " }\n",
+ ")"
+ ]
+ },
{
"attachments": {},
"cell_type": "markdown",
diff --git a/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/additional/rate.yaml b/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/additional/rate.yaml
index e07522ab16..995f53048a 100644
--- a/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/additional/rate.yaml
+++ b/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/additional/rate.yaml
@@ -2,28 +2,36 @@ description: Stamp Duty Land Tax progressive rates for residential property tran
brackets:
- rate:
2016-09-15: 0.03
+ 2024-10-31: 0.05
threshold:
2016-09-15: 0
- rate:
2016-09-15: 0.05
2020-07-08: null
2021-03-31: 0.05
+ 2022-09-23: null
+ 2025-04-01: 0.07
threshold:
2016-09-15: 125_000
2020-07-08: null
2021-03-31: 125_000
+ 2022-09-23: null
+ 2025-04-01: 125_000
- rate:
2016-09-15: 0.08
+ 2024-10-31: 0.10
threshold:
2016-09-15: 250_000
2020-07-08: 500_000
2021-03-31: 250_000
- rate:
2016-09-15: 0.13
+ 2024-10-31: 0.15
threshold:
2016-09-15: 925_000
- rate:
2016-09-15: 0.15
+ 2024-10-31: 0.17
threshold:
2016-09-15: 1_500_000
metadata:
@@ -35,3 +43,9 @@ metadata:
href: https://www.legislation.gov.uk/ukpga/2003/14/schedule/4ZA
- title: Stamp Duty Land Tax (Temporary Relief) Act 2020
href: https://www.legislation.gov.uk/ukpga/2020/15/section/1/enacted
+ - title: Stamp Duty Land Tax (Temporary Relief) Act 2023 s. 1(3)
+ href: https://www.legislation.gov.uk/ukpga/2023/2/section/1/enacted
+ - title: Finance Act 2025 s. 50
+ href: https://www.legislation.gov.uk/ukpga/2025/8/section/50/enacted
+ - title: Finance Act 2025 s. 51
+ href: https://www.legislation.gov.uk/ukpga/2025/8/section/51/enacted
diff --git a/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/main/first/max.yaml b/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/main/first/max.yaml
index e525df8d8c..1179796e47 100644
--- a/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/main/first/max.yaml
+++ b/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/main/first/max.yaml
@@ -1,9 +1,13 @@
description: Maximum value for a first-property purchase to receive the Stamp Duty relief for first-time buyers. Increasing this value will underestimate the number of claims for FTBR, as the model will not add new claims.
values:
2018-03-15: 500_000
+ 2022-09-23: 625_000
+ 2025-04-01: 500_000
metadata:
unit: currency-GBP
label: Stamp Duty first home value limit
reference:
- title: Finance Act 2003 schedule 6ZA(1)(3)
href: https://www.legislation.gov.uk/ukpga/2003/14/schedule/6ZA/2018-03-15
+ - title: Stamp Duty Land Tax (Temporary Relief) Act 2023 s. 1(5)
+ href: https://www.legislation.gov.uk/ukpga/2023/2/section/1/enacted
diff --git a/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/main/first/rate.yaml b/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/main/first/rate.yaml
index 920d1788c0..8033317913 100644
--- a/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/main/first/rate.yaml
+++ b/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/main/first/rate.yaml
@@ -7,6 +7,8 @@ brackets:
2018-03-15: 0.05
threshold:
2018-03-15: 300000
+ 2022-09-23: 425000
+ 2025-04-01: 300000
description: Stamp Duty Land Tax progressive rates for residential property transfers.
metadata:
economy: false
@@ -16,4 +18,6 @@ metadata:
reference:
- href: https://www.legislation.gov.uk/ukpga/2003/14/schedule/6ZA/2018-03-15
title: Finance Act 2003 schedule 6ZA(4)
+ - href: https://www.legislation.gov.uk/ukpga/2023/2/section/1/enacted
+ title: Stamp Duty Land Tax (Temporary Relief) Act 2023 s. 1(5)
threshold_unit: currency-GBP
diff --git a/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/main/subsequent.yaml b/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/main/subsequent.yaml
index 8b790e52a6..f285c30842 100644
--- a/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/main/subsequent.yaml
+++ b/policyengine_uk/parameters/gov/hmrc/stamp_duty/residential/purchase/main/subsequent.yaml
@@ -8,12 +8,16 @@ brackets:
2015-02-12: 0.02
2020-07-08: null
2021-03-31: 0.02
+ 2022-09-23: null
+ 2025-04-01: 0.02
threshold:
2003-07-10: 60000
2005-04-07: 120000
2006-07-19: 125000
2020-07-08: null
2021-03-31: 125000
+ 2022-09-23: null
+ 2025-04-01: 125000
- rate:
2003-07-10: 0.03
2015-02-12: 0.05
@@ -50,4 +54,6 @@ metadata:
title: Finance Act 2003 s. 55
- href: https://www.legislation.gov.uk/ukpga/2020/15/section/1/enacted
title: Stamp Duty Land Tax (Temporary Relief) Act 2020
+ - href: https://www.legislation.gov.uk/ukpga/2023/2/section/1/enacted
+ title: Stamp Duty Land Tax (Temporary Relief) Act 2023 s. 1
threshold_unit: currency-GBP
diff --git a/policyengine_uk/tests/policy/baseline/gov/hmrc/stamp_duty/stamp_duty_land_tax.yaml b/policyengine_uk/tests/policy/baseline/gov/hmrc/stamp_duty/stamp_duty_land_tax.yaml
index 0fb76a6d56..68b1057fb6 100644
--- a/policyengine_uk/tests/policy/baseline/gov/hmrc/stamp_duty/stamp_duty_land_tax.yaml
+++ b/policyengine_uk/tests/policy/baseline/gov/hmrc/stamp_duty/stamp_duty_land_tax.yaml
@@ -20,13 +20,13 @@
main_residential_property_purchased_is_first_home: true
output:
stamp_duty_land_tax: 7_250
-- name: £500k first-time buyer (just over limit)
+- name: £500,020 first-time buyer (over the £500k limit)
period: 2022
input:
- main_residential_property_purchased: 500_000.01
+ main_residential_property_purchased: 500_020
main_residential_property_purchased_is_first_home: true
output:
- stamp_duty_land_tax: 15_000
+ stamp_duty_land_tax: 15_001
- name: £500k non-first-time buyer
period: 2022
input:
diff --git a/policyengine_uk/tests/policy/baseline/gov/hmrc/stamp_duty/stamp_duty_land_tax_history.yaml b/policyengine_uk/tests/policy/baseline/gov/hmrc/stamp_duty/stamp_duty_land_tax_history.yaml
new file mode 100644
index 0000000000..5344590020
--- /dev/null
+++ b/policyengine_uk/tests/policy/baseline/gov/hmrc/stamp_duty/stamp_duty_land_tax_history.yaml
@@ -0,0 +1,150 @@
+# Ordinary, unprotected purchases; annual parameters sample 30 April.
+# Sources: SDLT (Temporary Relief) Act 2023 s1; Finance Act 2025 ss50-51;
+# Finance Act 2003 s55 and Sch6ZA. No transaction-date or contract selector.
+- name: Annual 2022 retains the pre-September standard schedule
+ period: 2022
+ absolute_error_margin: 0.01
+ input:
+ main_residential_property_purchased: 300000
+ output:
+ stamp_duty_land_tax: 5000
+
+- name: Annual 2023 main-home purchase uses temporary standard bands
+ period: 2023
+ absolute_error_margin: 0.01
+ input:
+ main_residence_value: 300000
+ property_purchased: true
+ output:
+ stamp_duty_land_tax: 2500
+ main_residential_property_purchased: 300000
+
+- name: Temporary first-time-buyer maximum is inclusive
+ period: 2024
+ absolute_error_margin: 0.01
+ input:
+ main_residential_property_purchased: 625000
+ main_residential_property_purchased_is_first_home: true
+ output:
+ stamp_duty_land_tax: 10000
+
+- name: Restored first-time-buyer maximum is inclusive
+ period: 2025
+ absolute_error_margin: 0.01
+ input:
+ main_residential_property_purchased: 500000
+ main_residential_property_purchased_is_first_home: true
+ output:
+ stamp_duty_land_tax: 10000
+
+- name: Annual 2025 additional purchase uses restored bands with five-point surcharge
+ period: 2025
+ absolute_error_margin: 0.01
+ input:
+ additional_residential_property_purchased: 400000
+ output:
+ stamp_duty_land_tax: 30000
+
+- name: Annual 2024 still samples the three-point additional surcharge
+ period: 2024
+ absolute_error_margin: 0.01
+ input:
+ additional_residential_property_purchased: 400000
+ output:
+ stamp_duty_land_tax: 19500
+
+- name: First-time purchase above temporary maximum loses all relief
+ period: 2024
+ absolute_error_margin: 0.01
+ input:
+ main_residential_property_purchased: 625020
+ main_residential_property_purchased_is_first_home: true
+ output:
+ stamp_duty_land_tax: 18751
+
+- name: First-time purchase above restored maximum loses all relief
+ period: 2025
+ absolute_error_margin: 0.01
+ input:
+ main_residential_property_purchased: 500020
+ main_residential_property_purchased_is_first_home: true
+ output:
+ stamp_duty_land_tax: 15001
+
+- name: Northern Ireland combines independent temporary main and additional purchases
+ period: 2024
+ absolute_error_margin: 0.01
+ input:
+ region: NORTHERN_IRELAND
+ main_residential_property_purchased: 925000
+ additional_residential_property_purchased: 400000
+ output:
+ stamp_duty_land_tax: 53250
+
+- name: An additional purchase below forty thousand is outside the higher schedule
+ period: 2025
+ input:
+ additional_residential_property_purchased: 39999
+ output:
+ stamp_duty_land_tax: 0
+
+- name: An additional purchase at forty thousand pays the full higher schedule
+ period: 2025
+ absolute_error_margin: 0.01
+ input:
+ additional_residential_property_purchased: 40000
+ output:
+ stamp_duty_land_tax: 2000
+
+- name: Restored purchase schedules persist in later annual simulations
+ period: 2027
+ absolute_error_margin: 0.01
+ input:
+ main_residential_property_purchased: 300000
+ additional_residential_property_purchased: 400000
+ output:
+ stamp_duty_land_tax: 35000
+
+- name: Property stocks without a purchase do not incur SDLT
+ period: 2025
+ input:
+ main_residence_value: 600000
+ property_purchased: false
+ other_residential_property_value: 400000
+ output:
+ stamp_duty_land_tax: 0
+
+- name: Scottish purchases do not incur SDLT
+ period: 2025
+ input:
+ region: SCOTLAND
+ main_residential_property_purchased: 300000
+ additional_residential_property_purchased: 400000
+ output:
+ stamp_duty_land_tax: 0
+
+- name: Welsh purchases do not incur SDLT
+ period: 2025
+ input:
+ region: WALES
+ main_residential_property_purchased: 300000
+ additional_residential_property_purchased: 400000
+ output:
+ stamp_duty_land_tax: 0
+
+- name: Temporary first-time-buyer nil band includes its upper boundary
+ period: 2024
+ input:
+ main_residential_property_purchased: 425000
+ main_residential_property_purchased_is_first_home: true
+ output:
+ stamp_duty_land_tax: 0
+
+- name: Restored first-time-buyer tax starts above three hundred thousand
+ period: 2025
+ absolute_error_margin: 0.01
+ input:
+ main_residential_property_purchased: 300020
+ main_residential_property_purchased_is_first_home: true
+ output:
+ stamp_duty_land_tax: 1
diff --git a/policyengine_uk/tests/test_property_transaction_tax_purchase_properties.py b/policyengine_uk/tests/test_property_transaction_tax_purchase_properties.py
index 8817cb7159..5760c24a64 100644
--- a/policyengine_uk/tests/test_property_transaction_tax_purchase_properties.py
+++ b/policyengine_uk/tests/test_property_transaction_tax_purchase_properties.py
@@ -121,7 +121,7 @@ def test_main_residence_flag_never_creates_an_additional_purchase(households, ye
price = out["main_residential_property_purchased"]
first_home = np.array(
[h["main_residential_property_purchased_is_first_home"] for h in households]
- ) & (price < main.first.max)
+ ) & (price <= main.first.max)
main_rates_tax = np.where(
first_home, main.first.rate.calc(price), main.subsequent.calc(price)
)
diff --git a/policyengine_uk/tests/test_sdlt_purchase_schedules.py b/policyengine_uk/tests/test_sdlt_purchase_schedules.py
new file mode 100644
index 0000000000..49b215c0b7
--- /dev/null
+++ b/policyengine_uk/tests/test_sdlt_purchase_schedules.py
@@ -0,0 +1,158 @@
+"""Recent SDLT purchase schedules: raw legal dates versus annual sampling.
+
+Cash vectors are independent literals from FA 2003 s55/Sch6ZA, the SDLT
+(Temporary Relief) Act 2023 s1 and Finance Act 2025 ss50-51. They describe
+ordinary unprotected purchases, not contract protections or return rounding.
+"""
+
+from pathlib import Path
+
+import numpy as np
+import pytest
+from policyengine_core.parameters import ParameterNode
+
+import policyengine_uk
+from policyengine_uk import CountryTaxBenefitSystem
+
+
+PRICES = np.array([125_000, 250_000, 925_000, 1_500_000, 1_600_000])
+OLD_MAIN = [0, 2_500, 36_250, 93_750, 105_750]
+TEMPORARY_MAIN = [0, 0, 33_750, 91_250, 103_250]
+
+
+@pytest.fixture(scope="module")
+def raw_purchase_parameters():
+ # Bypass annual conversion only for raw legal-date scale tests.
+ return ParameterNode(
+ "purchase",
+ directory_path=str(
+ Path(policyengine_uk.__file__).parent
+ / "parameters/gov/hmrc/stamp_duty/residential/purchase"
+ ),
+ )
+
+
+@pytest.mark.parametrize(
+ "date,main_cash,additional_cash,thresholds,additional_rates,ftb_nil,ftb_max",
+ [
+ (
+ "2022-09-22",
+ OLD_MAIN,
+ [3_750, 10_000, 64_000, 138_750, 153_750],
+ [0, 125_000, 250_000, 925_000, 1_500_000],
+ [0.03, 0.05, 0.08, 0.13, 0.15],
+ 300_000,
+ 500_000,
+ ),
+ (
+ "2022-09-23",
+ TEMPORARY_MAIN,
+ [3_750, 7_500, 61_500, 136_250, 151_250],
+ [0, 250_000, 925_000, 1_500_000],
+ [0.03, 0.08, 0.13, 0.15],
+ 425_000,
+ 625_000,
+ ),
+ (
+ "2024-10-30",
+ TEMPORARY_MAIN,
+ [3_750, 7_500, 61_500, 136_250, 151_250],
+ [0, 250_000, 925_000, 1_500_000],
+ [0.03, 0.08, 0.13, 0.15],
+ 425_000,
+ 625_000,
+ ),
+ (
+ "2024-10-31",
+ TEMPORARY_MAIN,
+ [6_250, 12_500, 80_000, 166_250, 183_250],
+ [0, 250_000, 925_000, 1_500_000],
+ [0.05, 0.10, 0.15, 0.17],
+ 425_000,
+ 625_000,
+ ),
+ (
+ "2025-03-31",
+ TEMPORARY_MAIN,
+ [6_250, 12_500, 80_000, 166_250, 183_250],
+ [0, 250_000, 925_000, 1_500_000],
+ [0.05, 0.10, 0.15, 0.17],
+ 425_000,
+ 625_000,
+ ),
+ (
+ "2025-04-01",
+ OLD_MAIN,
+ [6_250, 15_000, 82_500, 168_750, 185_750],
+ [0, 125_000, 250_000, 925_000, 1_500_000],
+ [0.05, 0.07, 0.10, 0.15, 0.17],
+ 300_000,
+ 500_000,
+ ),
+ ],
+)
+def test_raw_purchase_schedules(
+ raw_purchase_parameters,
+ date,
+ main_cash,
+ additional_cash,
+ thresholds,
+ additional_rates,
+ ftb_nil,
+ ftb_max,
+):
+ purchase = raw_purchase_parameters(date)
+ np.testing.assert_allclose(
+ purchase.main.subsequent.calc(PRICES), main_cash, rtol=0, atol=1e-8
+ )
+ np.testing.assert_allclose(
+ purchase.additional.rate.calc(PRICES),
+ additional_cash,
+ rtol=0,
+ atol=1e-8,
+ )
+ # This also proves that null brackets disappear, rather than duplicating
+ # an active threshold during the temporary period.
+ assert purchase.main.subsequent.thresholds == thresholds
+ assert purchase.additional.rate.thresholds == thresholds
+ assert purchase.additional.rate.rates == additional_rates
+ assert purchase.main.first.max == ftb_max
+ np.testing.assert_allclose(
+ purchase.main.first.rate.calc(np.array([ftb_nil, ftb_nil + 20, ftb_max])),
+ [0, 1, 10_000],
+ rtol=0,
+ atol=1e-8,
+ )
+
+
+@pytest.fixture(scope="module")
+def annual_system():
+ return CountryTaxBenefitSystem()
+
+
+@pytest.mark.parametrize(
+ "year,main300k,additional400k,first500k",
+ [
+ (2022, 5_000, 22_000, 10_000),
+ (2023, 2_500, 19_500, 3_750),
+ (2024, 2_500, 19_500, 3_750),
+ (2025, 5_000, 30_000, 10_000),
+ (2027, 5_000, 30_000, 10_000),
+ ],
+)
+def test_annual_purchase_parameters_sample_april_30(
+ annual_system, year, main300k, additional400k, first500k
+):
+ purchase = annual_system.parameters(year).gov.hmrc.stamp_duty.residential.purchase
+ np.testing.assert_allclose(
+ purchase.main.subsequent.calc(np.array([300_000])), main300k, rtol=0, atol=1e-8
+ )
+ np.testing.assert_allclose(
+ purchase.additional.rate.calc(np.array([400_000])),
+ additional400k,
+ rtol=0,
+ atol=1e-8,
+ )
+ np.testing.assert_allclose(
+ purchase.main.first.rate.calc(np.array([500_000])), first500k, rtol=0, atol=1e-8
+ )
diff --git a/policyengine_uk/variables/gov/hmrc/sdlt_on_residential_property_transactions.py b/policyengine_uk/variables/gov/hmrc/sdlt_on_residential_property_transactions.py
index 8d12e06ad5..c9f4403b45 100644
--- a/policyengine_uk/variables/gov/hmrc/sdlt_on_residential_property_transactions.py
+++ b/policyengine_uk/variables/gov/hmrc/sdlt_on_residential_property_transactions.py
@@ -17,7 +17,7 @@ def formula(household, period, parameters):
price = household("main_residential_property_purchased", period)
residential_purchase_qualifies_as_first_buy = household(
"main_residential_property_purchased_is_first_home", period
- ) & (price < price_limit)
+ ) & (price <= price_limit)
main_residential_purchase_tax = where(
residential_purchase_qualifies_as_first_buy,
stamp_duty.residential.purchase.main.first.rate.calc(price),
From 540f4e429cb5a1f28a56cad5f1b6fd7da00e6928 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Mar=C3=ADa=20Juaristi?=
<127882282+juaristi22@users.noreply.github.com>
Date: Sat, 17 Oct 2026 11:17:13 +0100
Subject: [PATCH 2/4] Clarify validation scope of SDLT chart caption
---
docs/book/programs/gov/hmrc/stamp-duty.ipynb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/book/programs/gov/hmrc/stamp-duty.ipynb b/docs/book/programs/gov/hmrc/stamp-duty.ipynb
index c868176975..f138dfa29e 100644
--- a/docs/book/programs/gov/hmrc/stamp-duty.ipynb
+++ b/docs/book/programs/gov/hmrc/stamp-duty.ipynb
@@ -21,7 +21,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "## Residential purchase schedules\n\nThis model covers recent ordinary individual purchases in England and Northern Ireland. An additional-purchase input represents a transaction already classified as subject to the higher rates; the model does not derive that classification from ownership history.\n\n| Effective date | Standard nil band | First-time-buyer nil band | Inclusive first-time-buyer maximum | Additional-dwelling surcharge |\n| --- | ---: | ---: | ---: | ---: |\n| 23 September 2022–30 October 2024 | £250,000 | £425,000 | £625,000 | 3 percentage points |\n| 31 October 2024–31 March 2025 | £250,000 | £425,000 | £625,000 | 5 percentage points |\n| From 1 April 2025 | £125,000 | £300,000 | £500,000 | 5 percentage points |\n\nAbove the temporary £250,000 standard nil band, marginal rates are 5% up to £925,000, 10% up to £1.5 million and 12% thereafter. From 1 April 2025, the £125,000–£250,000 band returns at 2%; higher standard bands remain the same. First-time buyers pay 5% above their nil band **up to and including** the maximum purchase price. A purchase above that maximum loses first-time-buyer relief on the whole transaction.\n\nFor additional dwellings, the full higher-rates schedule applies when consideration is at least £40,000; below that amount the modeled additional purchase pays zero. During the temporary period its rates are 3/8/13/15%, then 5/10/15/17% from 31 October 2024. From 1 April 2025 the restored £125,000 band gives rates of 5/7/10/15/17%. There is no 7% band during the temporary £250,000 period.\n\nSources: [SDLT (Temporary Relief) Act 2023, section 1](https://www.legislation.gov.uk/ukpga/2023/2/section/1/enacted), [Finance Act 2025, sections 50–52](https://www.legislation.gov.uk/ukpga/2025/8/section/50/enacted), and [Finance Act 2003, Schedule 6ZA](https://www.legislation.gov.uk/ukpga/2003/14/schedule/6ZA).\n\n### Annual simulation convention and limits\n\nParameters retain those legal dates, but annual simulations sample **30 April** of each year. Thus 2022 uses the pre-September bands, 2023 and 2024 use the temporary bands with the three-point surcharge, and 2025 uses restored bands with the five-point surcharge. A YEAR purchase input cannot select a transaction day within that year.\n\nThe higher-rate changes protect some contracts entered into before 31 October 2024, with exclusions for specified variations, assignments, options and subsales. Substantial-performance rules can also affect liability. Existing inputs cannot select those contract protections: the schedules above describe ordinary **unprotected** purchases. Earlier 2020/2021 holiday coverage and older history remain incomplete. This purchase update does not certify rental, lease, corporate, nonresident, ownership-classification or return-rounding rules, or estimate population impacts.\n\nThe following chart illustrates the **2023** marginal schedules. Its first-home rate curve does not show the discrete loss of relief above the maximum; the cash example below does.\n"
+ "## Residential purchase schedules\n\nThis model covers recent ordinary individual purchases in England and Northern Ireland. An additional-purchase input represents a transaction already classified as subject to the higher rates; the model does not derive that classification from ownership history.\n\n| Effective date | Standard nil band | First-time-buyer nil band | Inclusive first-time-buyer maximum | Additional-dwelling surcharge |\n| --- | ---: | ---: | ---: | ---: |\n| 23 September 2022–30 October 2024 | £250,000 | £425,000 | £625,000 | 3 percentage points |\n| 31 October 2024–31 March 2025 | £250,000 | £425,000 | £625,000 | 5 percentage points |\n| From 1 April 2025 | £125,000 | £300,000 | £500,000 | 5 percentage points |\n\nAbove the temporary £250,000 standard nil band, marginal rates are 5% up to £925,000, 10% up to £1.5 million and 12% thereafter. From 1 April 2025, the £125,000–£250,000 band returns at 2%; higher standard bands remain the same. First-time buyers pay 5% above their nil band **up to and including** the maximum purchase price. A purchase above that maximum loses first-time-buyer relief on the whole transaction.\n\nFor additional dwellings, the full higher-rates schedule applies when consideration is at least £40,000; below that amount the modeled additional purchase pays zero. During the temporary period its rates are 3/8/13/15%, then 5/10/15/17% from 31 October 2024. From 1 April 2025 the restored £125,000 band gives rates of 5/7/10/15/17%. There is no 7% band during the temporary £250,000 period.\n\nSources: [SDLT (Temporary Relief) Act 2023, section 1](https://www.legislation.gov.uk/ukpga/2023/2/section/1/enacted), [Finance Act 2025, sections 50–52](https://www.legislation.gov.uk/ukpga/2025/8/section/50/enacted), and [Finance Act 2003, Schedule 6ZA](https://www.legislation.gov.uk/ukpga/2003/14/schedule/6ZA).\n\n### Annual simulation convention and limits\n\nParameters retain those legal dates, but annual simulations sample **30 April** of each year. Thus 2022 uses the pre-September bands, 2023 and 2024 use the temporary bands with the three-point surcharge, and 2025 uses restored bands with the five-point surcharge. A YEAR purchase input cannot select a transaction day within that year.\n\nThe higher-rate changes protect some contracts entered into before 31 October 2024, with exclusions for specified variations, assignments, options and subsales. Substantial-performance rules can also affect liability. Existing inputs cannot select those contract protections: the schedules above describe ordinary **unprotected** purchases. Earlier 2020/2021 holiday coverage and older history remain incomplete. This purchase update does not certify rental, lease, corporate, nonresident, ownership-classification or return-rounding rules, or estimate population impacts.\n\nThe purchase curves below illustrate the **2023** marginal purchase schedules. The retained rent and non-residential curves are unchanged model illustrations outside this update's legal validation. The first-home rate curve does not show the discrete loss of relief above the maximum; the cash example below does.\n"
]
},
{
From 83ac102a6b905eb04ce11384578b7a525ae1994d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Mar=C3=ADa=20Juaristi?=
<127882282+juaristi22@users.noreply.github.com>
Date: Mon, 19 Oct 2026 13:07:26 +0100
Subject: [PATCH 3/4] Fix issues from review: refresh stamp duty example
outputs
---
docs/book/programs/gov/hmrc/stamp-duty.ipynb | 1116 +++++++++++++++++-
1 file changed, 1112 insertions(+), 4 deletions(-)
diff --git a/docs/book/programs/gov/hmrc/stamp-duty.ipynb b/docs/book/programs/gov/hmrc/stamp-duty.ipynb
index f138dfa29e..a5b8fc7d46 100644
--- a/docs/book/programs/gov/hmrc/stamp-duty.ipynb
+++ b/docs/book/programs/gov/hmrc/stamp-duty.ipynb
@@ -26,13 +26,1111 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 1,
"metadata": {
"tags": [
"hide-input"
]
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stderr",
+ "text": "/Users/mariajuaristi/Documents/Codex/2026-10-15/can-x20/work/issue-2454/.venv/lib/python3.13/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n from .autonotebook import tqdm as notebook_tqdm\n"
+ },
+ {
+ "output_type": "display_data",
+ "metadata": {},
+ "data": {
+ "text/html": " \n "
+ }
+ },
+ {
+ "output_type": "display_data",
+ "metadata": {},
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "data": [
+ {
+ "hovertemplate": "Label=Residential rent
Threshold=%{x}
Rate=%{y}",
+ "legendgroup": "Residential rent",
+ "line": {
+ "color": "#636efa",
+ "dash": "solid",
+ "shape": "hv"
+ },
+ "marker": {
+ "symbol": "circle"
+ },
+ "mode": "lines",
+ "name": "Residential rent",
+ "orientation": "v",
+ "showlegend": true,
+ "x": [
+ 0,
+ 125000,
+ 5200000
+ ],
+ "xaxis": "x",
+ "y": [
+ 0.0,
+ 0.01,
+ 0.01
+ ],
+ "yaxis": "y",
+ "type": "scatter"
+ },
+ {
+ "hovertemplate": "Label=2023 residential purchase main (first home)
Threshold=%{x}
Rate=%{y}",
+ "legendgroup": "2023 residential purchase main (first home)",
+ "line": {
+ "color": "#EF553B",
+ "dash": "solid",
+ "shape": "hv"
+ },
+ "marker": {
+ "symbol": "circle"
+ },
+ "mode": "lines",
+ "name": "2023 residential purchase main (first home)",
+ "orientation": "v",
+ "showlegend": true,
+ "x": [
+ 0,
+ 425000,
+ 625000,
+ 925000,
+ 1500000,
+ 5200000
+ ],
+ "xaxis": "x",
+ "y": [
+ 0.0,
+ 0.05,
+ 0.05,
+ 0.1,
+ 0.12,
+ 0.12
+ ],
+ "yaxis": "y",
+ "type": "scatter"
+ },
+ {
+ "hovertemplate": "Label=2023 residential purchase main standard
Threshold=%{x}
Rate=%{y}",
+ "legendgroup": "2023 residential purchase main standard",
+ "line": {
+ "color": "#00cc96",
+ "dash": "solid",
+ "shape": "hv"
+ },
+ "marker": {
+ "symbol": "circle"
+ },
+ "mode": "lines",
+ "name": "2023 residential purchase main standard",
+ "orientation": "v",
+ "showlegend": true,
+ "x": [
+ 0,
+ 250000,
+ 925000,
+ 1500000,
+ 5200000
+ ],
+ "xaxis": "x",
+ "y": [
+ 0.0,
+ 0.05,
+ 0.1,
+ 0.12,
+ 0.12
+ ],
+ "yaxis": "y",
+ "type": "scatter"
+ },
+ {
+ "hovertemplate": "Label=2023 residential purchase additional
Threshold=%{x}
Rate=%{y}",
+ "legendgroup": "2023 residential purchase additional",
+ "line": {
+ "color": "#ab63fa",
+ "dash": "solid",
+ "shape": "hv"
+ },
+ "marker": {
+ "symbol": "circle"
+ },
+ "mode": "lines",
+ "name": "2023 residential purchase additional",
+ "orientation": "v",
+ "showlegend": true,
+ "x": [
+ 0,
+ 40000,
+ 250000,
+ 925000,
+ 1500000,
+ 5200000
+ ],
+ "xaxis": "x",
+ "y": [
+ 0.0,
+ 0.03,
+ 0.08,
+ 0.13,
+ 0.15,
+ 0.15
+ ],
+ "yaxis": "y",
+ "type": "scatter"
+ },
+ {
+ "hovertemplate": "Label=Non-residential rent
Threshold=%{x}
Rate=%{y}",
+ "legendgroup": "Non-residential rent",
+ "line": {
+ "color": "#FFA15A",
+ "dash": "solid",
+ "shape": "hv"
+ },
+ "marker": {
+ "symbol": "circle"
+ },
+ "mode": "lines",
+ "name": "Non-residential rent",
+ "orientation": "v",
+ "showlegend": true,
+ "x": [
+ 0,
+ 150000,
+ 5000000,
+ 5200000
+ ],
+ "xaxis": "x",
+ "y": [
+ 0.0,
+ 0.01,
+ 0.02,
+ 0.02
+ ],
+ "yaxis": "y",
+ "type": "scatter"
+ },
+ {
+ "hovertemplate": "Label=Non-residential purchase
Threshold=%{x}
Rate=%{y}",
+ "legendgroup": "Non-residential purchase",
+ "line": {
+ "color": "#19d3f3",
+ "dash": "solid",
+ "shape": "hv"
+ },
+ "marker": {
+ "symbol": "circle"
+ },
+ "mode": "lines",
+ "name": "Non-residential purchase",
+ "orientation": "v",
+ "showlegend": true,
+ "x": [
+ 0,
+ 150000,
+ 250000,
+ 5200000
+ ],
+ "xaxis": "x",
+ "y": [
+ 0.0,
+ 0.02,
+ 0.05,
+ 0.05
+ ],
+ "yaxis": "y",
+ "type": "scatter"
+ }
+ ],
+ "layout": {
+ "template": {
+ "data": {
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "white",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "white",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "#C8D4E3",
+ "linecolor": "#C8D4E3",
+ "minorgridcolor": "#C8D4E3",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "#C8D4E3",
+ "linecolor": "#C8D4E3",
+ "minorgridcolor": "#C8D4E3",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0.0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1.0,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0.0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1.0,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0.0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1.0,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0.0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1.0,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0.0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1.0,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0.0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1.0,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0.0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1.0,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0.0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1.0,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "white",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "#C8D4E3"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "white",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "#EBF0F8",
+ "linecolor": "#EBF0F8",
+ "ticks": ""
+ },
+ "bgcolor": "white",
+ "radialaxis": {
+ "gridcolor": "#EBF0F8",
+ "linecolor": "#EBF0F8",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "white",
+ "gridcolor": "#DFE8F3",
+ "gridwidth": 2,
+ "linecolor": "#EBF0F8",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "#EBF0F8"
+ },
+ "yaxis": {
+ "backgroundcolor": "white",
+ "gridcolor": "#DFE8F3",
+ "gridwidth": 2,
+ "linecolor": "#EBF0F8",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "#EBF0F8"
+ },
+ "zaxis": {
+ "backgroundcolor": "white",
+ "gridcolor": "#DFE8F3",
+ "gridwidth": 2,
+ "linecolor": "#EBF0F8",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "#EBF0F8"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "#DFE8F3",
+ "linecolor": "#A2B1C6",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "#DFE8F3",
+ "linecolor": "#A2B1C6",
+ "ticks": ""
+ },
+ "bgcolor": "white",
+ "caxis": {
+ "gridcolor": "#DFE8F3",
+ "linecolor": "#A2B1C6",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "#EBF0F8",
+ "linecolor": "#EBF0F8",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "#EBF0F8",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "#EBF0F8",
+ "linecolor": "#EBF0F8",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "#EBF0F8",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "xaxis": {
+ "anchor": "y",
+ "domain": [
+ 0.0,
+ 1.0
+ ],
+ "title": {
+ "text": "Threshold"
+ },
+ "tickprefix": "£"
+ },
+ "yaxis": {
+ "anchor": "x",
+ "domain": [
+ 0.0,
+ 1.0
+ ],
+ "title": {
+ "text": "Rate"
+ },
+ "tickformat": ",.0%"
+ },
+ "legend": {
+ "title": {
+ "text": ""
+ },
+ "tracegroupgap": 0,
+ "orientation": "h",
+ "yanchor": "bottom",
+ "y": -0.3,
+ "xanchor": "right",
+ "x": 0.9
+ },
+ "title": {
+ "text": "Stamp duty land tax rates over property price thresholds"
+ },
+ "font": {
+ "family": "Roboto Serif",
+ "color": "black"
+ },
+ "images": [
+ {
+ "sizex": 0.15,
+ "sizey": 0.15,
+ "source": "https://raw.githubusercontent.com/PolicyEngine/policyengine-app/master/src/images/logos/policyengine/blue.png",
+ "x": 1.1,
+ "xanchor": "right",
+ "xref": "paper",
+ "y": -0.15,
+ "yanchor": "bottom",
+ "yref": "paper"
+ }
+ ],
+ "height": 600,
+ "width": 800,
+ "modebar": {
+ "bgcolor": "rgba(0,0,0,0)",
+ "color": "rgba(0,0,0,0)"
+ }
+ },
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ }
+ },
+ "text/html": ""
+ }
+ }
+ ],
"source": [
"import pandas as pd\n",
"import plotly.express as px\n",
@@ -125,13 +1223,23 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 2,
"metadata": {
"tags": [
"hide-input"
]
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "metadata": {},
+ "data": {
+ "text/plain": " Purchase price SDLT\n0 625000 10000.0\n1 625020 18751.0",
+ "text/html": "\n\n
\n \n \n | \n Purchase price | \n SDLT | \n
\n \n \n \n | 0 | \n 625000 | \n 10000.0 | \n
\n \n | 1 | \n 625020 | \n 18751.0 | \n
\n \n
\n
"
+ },
+ "execution_count": 2
+ }
+ ],
"source": [
"from policyengine_uk import Simulation\n",
"\n",
From 13a4442f96629e28499f9c97b98616713429efa5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Mar=C3=ADa=20Juaristi?=
<127882282+juaristi22@users.noreply.github.com>
Date: Mon, 19 Oct 2026 18:25:03 +0100
Subject: [PATCH 4/4] Remove stored local-path warning from SDLT notebook
---
docs/book/programs/gov/hmrc/stamp-duty.ipynb | 5 -----
1 file changed, 5 deletions(-)
diff --git a/docs/book/programs/gov/hmrc/stamp-duty.ipynb b/docs/book/programs/gov/hmrc/stamp-duty.ipynb
index a5b8fc7d46..ba630963eb 100644
--- a/docs/book/programs/gov/hmrc/stamp-duty.ipynb
+++ b/docs/book/programs/gov/hmrc/stamp-duty.ipynb
@@ -33,11 +33,6 @@
]
},
"outputs": [
- {
- "output_type": "stream",
- "name": "stderr",
- "text": "/Users/mariajuaristi/Documents/Codex/2026-10-15/can-x20/work/issue-2454/.venv/lib/python3.13/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n from .autonotebook import tqdm as notebook_tqdm\n"
- },
{
"output_type": "display_data",
"metadata": {},