Reference: Numera-Core 15m Views¶
Column-level reference for the 4 generic numera-core 15-minute power volume views. These are the migration target for users currently on the EWE wrappers — see How to migrate from EWE views.
All views in this section:
- Are views over the
fct_volume_pwr_*_aggincremental aggregates. - Are gated by the
time_series.15mfeature flag. - Apply
tran_status IN ('Validated', 'Matured')andBusiness Case IS NOT NULLupstream. - Apply no EWE-specific BU or portfolio filters — you apply those in your query.
- Guarantee 96 rows per
(combo, delivery_date_utc). See Gap-filling. - Require consumers to filter by
delivery_date_utcorbegin_utcfor partition pruning.
For the EWE wrapper equivalents, see EWE views.
fct_volume_pwr_15m¶
15-minute fixed-price volumes aggregated by business case and grid.
Path (numera-core): models/endur/volume/15m/volume_pwr_15m/fct_volume_pwr_15m.sql
Grain: business_case + grid + begin_utc (at output); the intermediate aggregate retains dim_deal_attribute_id for portfolio joins.
Source: fct_volume_pwr_15m_agg (incremental) — pivots fct_volume_15m to BC+grid grain with 96-slot volume and volume-weighted price arrays.
Columns:
| Column | Type | Description |
|---|---|---|
dim_deal_attribute_id |
INTEGER | FK to dim_deal_attribute for portfolio/instrument context |
dim_tran_info_id |
INTEGER | FK to dim_tran_info (transaction metadata SCD) |
dim_point_of_receipt_location_id |
INTEGER | FK to dim_point_of_receipt_location (buy-side delivery point) |
dim_point_of_delivery_location_id |
INTEGER | FK to dim_point_of_delivery_location (sell-side delivery point) |
dim_deal_financial_id |
INTEGER | FK to dim_deal_financial |
dim_party_internal_bu_le_attribute_id |
INTEGER | FK to internal BU / legal entity |
dim_party_external_bu_le_attribute_id |
INTEGER | FK to external BU / legal entity |
delivery_date_utc |
DATE | Delivery date (UTC) |
begin_utc / end_utc |
TIMESTAMP_TZ | Period bounds (UTC) |
begin_cet / end_cet |
TIMESTAMP_TZ | Period bounds (Europe/Berlin) |
grid |
VARCHAR | Power control area |
business_case |
VARCHAR | Trading strategy/desk |
volume_buy_mw |
NUMBER | Buy volume (MW). 0 on gap rows. |
volume_sell_mw |
NUMBER | Sell volume (MW). 0 on gap rows. |
buy_vwap_price_eur_per_mwh |
NUMBER | VWAP buy price (EUR/MWh) |
sell_vwap_price_eur_per_mwh |
NUMBER | VWAP sell price (EUR/MWh) |
volume_x_price |
NUMBER | volume_mwh × price for the period, in EUR. Provided as a precomputed cash-flow term. |
VWAP roll-ups: weight by volume_buy_mw / volume_sell_mw
To aggregate VWAP across periods, use
SUM(volume_buy_mw × buy_vwap_price_eur_per_mwh) / NULLIF(SUM(volume_buy_mw), 0)
(and the analogous expression for sell). Do not divide SUM(volume_x_price) by SUM(volume_buy_mw) — that returns one-quarter of the true VWAP because volume_buy_mw = volume_mwh × 4. The raw volume_mwh is not exposed on the view.
fct_volume_pwr_15m_deal¶
Deal-grain variant of fct_volume_pwr_15m.
Path: models/endur/volume/15m/volume_pwr_15m/fct_volume_pwr_15m_deal.sql
Grain: business_case + grid + deal_id + begin_utc
Additional column:
| Column | Type | Description |
|---|---|---|
deal_id |
INTEGER | Endur deal identifier |
All other columns match fct_volume_pwr_15m.
fct_volume_pwr_floating_15m¶
15-minute floating / index-priced volumes aggregated by business case, grid, BU, and index.
Path: models/endur/volume/15m/volume_pwr_15m/fct_volume_pwr_floating_15m.sql
Grain: business_case + grid + internal_business_unit + external_business_unit + power_index_name + begin_utc
Source: fct_volume_pwr_floating_15m_agg — pivots floating-side fct_volume_15m rows and joins core_endur_index_pricing_15m_daily for the index pricing arrays.
Upstream filter: instrument_sub_type = 'PWR Index' (applied in the agg).
Columns:
| Column | Type | Description |
|---|---|---|
dim_deal_attribute_id |
INTEGER | FK to dim_deal_attribute |
dim_tran_info_id |
INTEGER | FK to dim_tran_info |
dim_deal_financial_id |
INTEGER | FK to dim_deal_financial |
dim_point_of_receipt_location_id |
INTEGER | FK |
dim_point_of_delivery_location_id |
INTEGER | FK |
dim_party_internal_bu_le_attribute_id |
INTEGER | FK to internal BU |
dim_party_external_bu_le_attribute_id |
INTEGER | FK to external BU |
delivery_date_utc |
DATE | Delivery date (UTC) |
begin_utc / end_utc |
TIMESTAMP_TZ | Period bounds (UTC) |
begin_cet / end_cet |
TIMESTAMP_TZ | Period bounds (Europe/Berlin) |
grid |
VARCHAR | Power control area |
business_case |
VARCHAR | Trading strategy/desk |
internal_business_unit |
VARCHAR | Internal BU name |
external_business_unit |
VARCHAR | External BU name |
power_index_name |
VARCHAR | Index name (e.g. PWR EPEX_DE_INTRADAY 15min) |
volume_buy_mw |
NUMBER | Buy volume (MW). 0 on gap rows. |
volume_sell_mw |
NUMBER | Sell volume (MW). 0 on gap rows. |
power_index_price_eur_per_mwh |
NUMBER | Index price (EUR/MWh) |
No VWAP columns — the floating variant exposes power_index_price_eur_per_mwh instead, sourced from the index pricing array.
fct_volume_pwr_floating_15m_deal¶
Deal-grain variant of fct_volume_pwr_floating_15m.
Path: models/endur/volume/15m/volume_pwr_15m/fct_volume_pwr_floating_15m_deal.sql
Grain: parent grain + deal_id.
Additional column:
| Column | Type | Description |
|---|---|---|
deal_id |
INTEGER | Endur deal identifier. May be NULL on gap rows. |
Surrogate-key columns are the join point¶
Unlike the EWE wrappers, the numera-core views deliberately expose surrogate-key columns (dim_deal_attribute_id, dim_party_*_id, dim_point_of_*_location_id, dim_tran_info_id). These are the join points to dimensional context — portfolio, instrument, counterparty, location.
See How to join dimensional views for worked examples.
Output shape vs EWE wrappers¶
| Aspect | EWE wrappers | Numera-core views |
|---|---|---|
| Gap-fill (96 rows / day) | ✓ | ✓ |
delivery_date_utc, begin_utc, end_utc, begin_cet, end_cet |
✓ | ✓ |
volume_buy_mw, volume_sell_mw |
✓ | ✓ |
buy_vwap_price_eur_per_mwh, sell_vwap_price_eur_per_mwh (fixed) |
✓ | ✓ |
power_index_price_eur_per_mwh (floating) |
✓ | ✓ |
grid, business_case |
✓ | ✓ |
Surrogate-key columns (dim_*_id) |
— | ✓ |
volume_x_price helper |
— | ✓ (fixed-price variants) |
| EWE BU/portfolio filter pre-applied | ✓ (short-term desk) | — |
Related¶
- How to migrate from EWE views — view-by-view mapping
- How to join dimensional views — using the surrogate-key columns
- EWE views — the wrapper layer