Skip to main content

Products & Contracts

AEX trades electricity Contracts for Difference (CFDs) on New Zealand wholesale electricity. This page explains how the market is structured — from the top-level market down to individual contracts — and what the product and contract codes mean.

Hierarchy

Market
└── Product (node × profile × duration)
└── Contract (specific expiry date)

Market — There is a single AEX market. It has open, pre-open, and closed sessions on a configurable daily schedule.

Product — A product is defined by three dimensions: which grid exit point (node) it delivers at, which trading period profile it covers, and how long each contract runs. For example, "OTA Super Peak Monthly" is one product.

Contract — A contract is a specific delivery period listed under a product. A monthly product might have six forward contracts listed at any time. Each contract has a unique code, a start date, an expiry date, and a delivery hours count.

GXP Nodes

All products are anchored to one of two Grid Exit Points (GXPs):

CodeFull NameLocation
OTAOtahuhuAuckland / upper North Island
BENBenmoreSouth Island hydro lake zone

OTA and BEN represent the two major liquidity points in New Zealand's electricity grid. Price differences between the nodes reflect transmission constraints and hydro conditions.

Trading Period Profiles

A profile defines which half-hours within a day the contract covers. New Zealand electricity markets operate in 48 half-hour trading periods per day (period 1 = 00:00–00:30, period 48 = 23:30–24:00).

KeyLabelHalf-hour periodsApproximate clock time
BASEBaseload1–48All 24 hours
PEAKPeakload15–4407:00–22:00
ONOvernight45–48 and 1–1422:00–07:00 (wraps midnight)
MPMorning Peak15–1807:00–09:00
EPEvening Peak36–4017:30–20:00
SPKSuper Peak15–18 and 36–4007:00–09:00 plus 17:30–20:00
note

The Overnight (ON) profile wraps midnight — its delivery spans half-hours 45–48 of the delivery day and half-hours 1–14 of the following calendar day. Expiry dates for Overnight contracts are set one day before the delivery start date to reflect this.

Contract Durations

Each product has a fixed duration that determines how long a single contract's delivery period lasts:

DurationDescriptionExample
daySingle calendar dayOne day of delivery
monthCalendar monthAll delivery days in a month
quarterCalendar quarterAll delivery days in a quarter (March, June, September, or December expiry)

The currently active products on AEX are monthly and quarterly Super Peak contracts. Daily products for all profiles are defined in the catalogue but are not currently listed.

Product Codes

Each product has a short alphabetic code. The code encodes the node and profile:

Product CodeLabelNodeProfileDuration
SEDOTA Super Peak MonthlyOTASPKmonth
SEHBEN Super Peak MonthlyBENSPKmonth
SEAOTA Super Peak QuarterlyOTASPKquarter
SEEBEN Super Peak QuarterlyBENSPKquarter
OONOTA Overnight DailyOTAONday
OEPOTA Evening Peak DailyOTAEPday
OMPOTA Morning Peak DailyOTAMPday
OBSOTA Baseload DailyOTABASEday
OPKOTA Peakload DailyOTAPEAKday
BONBEN Overnight DailyBENONday
BEPBEN Evening Peak DailyBENEPday
BMPBEN Morning Peak DailyBENMPday
BBSBEN Baseload DailyBENBASEday
BPKBEN Peakload DailyBENPEAKday

Contract Codes

Each listed contract has a unique code that encodes the product, period, and year.

Periodic Format (monthly and quarterly)

Monthly and quarterly contracts use a 5-character format:

[Product code][Month code][Year digit]
  • Product code — 3 characters (e.g. SED)
  • Month code — 1 character using futures-standard month codes: F=Jan, G=Feb, H=Mar, J=Apr, K=May, M=Jun, N=Jul, Q=Aug, U=Sep, V=Oct, X=Nov, Z=Dec
  • Year digit — last digit of the year (e.g. 6 for 2026, 7 for 2027)

Examples:

CodeDecodes to
SEDH6OTA Super Peak Monthly, March 2026
SEAM6OTA Super Peak Quarterly, Q2 2026 (June expiry)
SEHF7BEN Super Peak Monthly, January 2027
SEEZ6BEN Super Peak Quarterly, Q4 2026 (December expiry)

Daily Format

Daily contracts use a 7-character format:

[Node prefix][Profile code][Week][Day][Month code][Year digit]
  • Node prefixO for OTA, B for BEN
  • Profile code — 2 characters: ON, EP, MP, PK (PEAK), BS (BASE)
  • Week — week number within the month (1–5)
  • Day — day-of-week code: A=Mon, B=Tue, C=Wed, D=Thu, E=Fri, F=Sat, G=Sun
  • Month code — same single-character futures month code as periodic format
  • Year digit — last digit of the year

Examples:

CodeDecodes to
OPK1AH6OTA Peakload, Week 1 Monday, March 2026
OEP4CG6OTA Evening Peak, Week 4 Wednesday, February 2026
BBS2DK6BEN Baseload, Week 2 Thursday, May 2026

Tick Sizes

All current products share the same tick sizes:

TickSize
Price tick$0.05 NZD/MWh
Volume tick (lot size)0.1 MW

Price inputs in the order ticket and Curve Manager snap to these increments. Volume inputs snap to 0.1 MW lots.

Contract Properties

Every contract carries the following properties:

PropertyDescription
contractCodeUnique code (see above)
startDateFirst delivery date of the contract
expiryDateLast trading date (the contract ceases to accept new orders at market close on this date)
hoursTotal delivery hours covered by the contract
nodeGXP node — OTA or BEN
profileTrading period profile key
bids / asksCurrent order book ladder (aggregated volumes at each price level)

How Products Appear in the UI

Watchlist — Products appear grouped by node. Each row shows the product label and its currently listed contracts. You can mark individual contracts as favourites to pin them to the top of your watchlist.

Price Grid — Contracts are displayed in expiry order within each product group. The bid and ask ladders show aggregated volume at each price level.

Curve Manager — The contract selector shows all codes available for the active node, sorted by expiry. The profile rows correspond to all profiles defined for that node.

Compliance Dashboard — Each listed contract appears as a row showing your current bid and ask volumes and spread compliance status.

Next Steps