Skip to content

Welcome to the GLocalFlex Marketplace Documentation

Welcome to the documentation of the GLocalFlex Marketplace! Here you can find informations about the market guidelines, Market API and examples to start trading flexibility.

If you want to start trading right away check the Getting Started guide to learn how to access the flexibility marketplace.

What is GLocalFlex Marketplace?

A global as well as local flexibility marketplace to demonstrate grid balancing mechanisms through cross-sectoral interconnected and integrated energy ecosystems enabling automatic flexibility trading

GLocalFlex Market is an energy marketplace service that provides a real-time, fair, and free market-based trading environment. The platform offers an efficient marketplace for trading energy, accommodating even single household size quantities. With GLocalFlex Market , you can access a reliable trading and information source that supports automated trading, resulting in low expenses and enhanced efficiency.

Architecture

Market Core Principles​

  • Fairness and transparency​
  • Low entry barriers​ for traders
  • Maintainability​
  • Modularity​
  • Scalability

The marketplace can aggregate and trade flexibility from different sources. Small and large flexibility providers can participate in the market

To access the energy trading platform visit the GLocalFlex Marketplace test environment. For general information about the GlocalFlex project please visit the Project Page (external website).

European Pilot Sites

This market serves the pilot sites shown on the map below:

Pilot sites

Trading Design

Matching Principle

To trade flexibility or energy, a market for setting prices and determining volumes is needed. One effective method is the double auction mechanism, where multiple sellers and buyers submit their offers to a market (auctioneer). These offers include the price they are willing to accept (ask offer for sellers) or pay (bid offers for buyers) and the amount of flexibility they want to trade.

In this market, all offers are organized in an order book based on price and receiving time. The highest buying prices are listed first, and the lowest selling prices are listed first. Sellers and buyers can see the existing offers and adjust their strategies accordingly, which allows for a dynamic negotiation process.

A transaction happens when a buyer's highest price meets or exceeds a seller's lowest price. The trade price is the average of these two prices. The order book is updated continuously until no more matches are found. This method is efficient for markets with few traders who don't have perfect information on supply and demand. It also works well in decentralized energy markets and allows for frequent, short-term trading.

Location Matching

The Location matching rules determines whether a buy order matches an sell order based on their respective locations object specified in the initial order.

A location object is defined as follows:

"location": {
    "country_code": "FI", // Optional "CZ" "DE" "ES" "FI" "FR"
    "location_id": [
        "FI_123435"
    ],  // Required, any number of strings
},

location_id and country_code identifier can be set in the initial order. The location is relevant for a buyer (buy orders) with grid managing obligations.

country_codeis an optional string that specifies the country of the flexibility location. Allowed codes are "CZ" "DE" "ES" "FI" "FR" or null.

The matching engine will match orders based on the following rules:

  • if no country_code and side is buy, match buy order with any sell order and country_code

  • if no country_code is set and side is sell , matches only with buy orders that have no country_code set

location_id is a list of one or more strings that specify the ID of flexibility provider location. One Location ID is required for each sell order. It is possible to specify multiple IDs. All IDs are case sensitive during matching and must be unique.

A buyer can specify regex pattern to match with IDs containing certain character or substrings e.g. to match with any location id specify "location_id": [".*"]. A buyer can also accept any location ID by specifying "location_id": [""].

The seller should not specify a regex pattern as a location ID as it has no affect on the matching, instead the seller sets the location ID to "location_id": [""] if there ID is not known. The sell order will only be matched with buy orders that accepts any ID.

Order Transaction Flow

Flexibility Provider / Seller

Order creation until delivery of the flexibility, the following steps are taken:

sequenceDiagram
    box Seller
    participant ems as EMS
    participant c as Market Client
    participant m as Market
    end

    Note left of c: flexibility estimation <br/> baseline estimation
    ems ->> c: 
    c->>m: create sell order

    m ->> c: response
    c->>m: submit baseline data
    m ->> c: response
    Note right of m: check baseline compatible with order
    Note right of m: add to orderbook

    c->>m: Is order matched? Get all trades! (15min before delivery)
    m->>c: response, order is filled
    c ->> ems: 
    Note left of c: flexibility activation
    Note left of c: Delivery

    c->>m: submit metering data

Flexibility Procurer / Buyer

Order creation until delivery of the flexibility:

sequenceDiagram
    box Buyer

    participant c as Market Client
    participant m as Market
    end

    c->>m: create buy order
    m ->> c: Response

    c->>m: Is order matched? Get all trades! (e.g: 15min before delivery)
    m->>c: response, order is filled

    Note left of c: awaiting flexibility activation
    Note left of c: Delivery

Market Design

GLocalFlex marketplace framework

The traded services and products on the marketplace are described here. The flexibility products and services can be categorized by their activation time to achieve a specific grid managing task. The table defines the most essential characteristics of the GLocalFlex marketplace and flexibility products.

General Design Characteristic
Market product Flexibility services
Market type Continuous trading, pay as bid
Minimum settlement period Default 15 min
Settlement time slots Multiple of the settlement period e.g., 30 min, 1h15min etc. Max. 24h*
Minimum tradable power Default 1 kW (configurable)
Maximum tradable power No limit, technical limits apply
Trading time horizon Short term (days, hours or minutes)
Locational organization Based on metering ID or location ID
Gate closing 15 min*
Activation Flexibility providers responsibility
Network operators’ coordination Not included
Long term contracts No
Open market data Yes
Metering Default metering point (sub-metering possible)
Verification principle Consumption and baseline-based
Compensation, payment condition Full - above a certain percentage
Zero – below a certain percentage

GLocalFlex marketplace has several low barrier design principles.

Firstly, the minimum power of tradable flexibility is low in order to bring a large number of flexibility providers into the market. Secondly, providers may act independently at the market without a contract with an additional aggregating party when entering the GLocalFlex marketplace.

The flexibility provider offers a asset directly to the marketplace and gets compensated after a successful trade, that includes activation and verification of the flexibility delivery. To keep the entry barrier low in the project, prequalification process will be kept as simple as possible. Flexibility delivery and verification rely on trustworthy metering between the project partners.

Trading Rules and Guidelines

1. Introduction

The facilitation of a fair and transparent market an efficient framework is essential. The aim of this guidelines is to set the entry barrier as low as possible for all participants while ensuring the integrity of the market. Adapted to fit the project environment, the framework primarily supports the project’s pilot sites. Some simplifications have been made to keep complexity at a manageable level. However, if a marketplace operator aiming to commercialize this platform will require a more complex framework, one that is adapted to the specific needs of the market.

2. Terminology

In the flexibility market, participants have the option to place either an ask order (selling) or a bid order (buying) based on their requirements.

  • Baseline: Energy consumption / generation at a specific metering point if flexibility has not been activated

  • Clearing: Process immediately after matching trades are found, i.e., trade closes, in where trading terms e.g., amounts, and available funds are confirmed and committed to deliver

  • Delivery: Activation of the flexibility.

  • Flexibility: Is a change in energy consumption during a period of time that deviates from the baseline.

  • Price: Total Price of an order

  • Power: Power of the flexibility in kW

  • Settlement: Process after clearing in where payments is transferred to receiver

  • Unit Price: Euro/kWh

  • Verification: Data based process to confirm the flexibility delivery.

3. Market Rules

3.1 Trading Principle

The tradeable flexibility in this marketplace is defined by two key factors: power and time, which denotes the duration the flexibility is available. These factors together with the price determine a basic order being traded.

3.2 Market Clearing Mechanism

Marketplace applies a continuous trading strategy. In a continuous trading environment orders are matched as they arrive with the existing orders in the order book. The orders are sorted by price inside the order book.

3.3 Market Lead Time

The marketplace operates strictly as real-time market. Long-­term, mid-­term, or short-­term lead times are not distinguished. Orders can be placed for any time horizon.

3.4 Market Open Time

The market operates continuously 24/7/365.

3.5 Order Processing

Trading order messages are processed in the arriving order at the trading environment according to the rules of trading.

3.6 Order Cancellation

Submitted orders are cancelled if the order is part of the active order book which means that the order has not yet matched.

3.7 Order Expiration

Orders expiry at the defined expiration time set in the order. If no expiration time is set the order expires a default time unit, specified in Flexibility Duration, before delivery start time set in the order.

3.8 Order Type

The market accepts only Limit Orders.

3.9 Orderbook

The orderbook contains all active bid and ask offers. The order book is available through the marketplace API.

3.10 Marketplace Time

The global platform time is set to Coordinated Universal Time (UTC).

3.11 Flexibility Power Granularity

The minimum tradable power of flexibility is 1 kW. The maximum power is not defined by the market rules but limited by the electrical capacity of the connection point.

3.12 Grid Capacities

Capacities limits are defined by the grid operator that cannot be exceeded. At the moment, the marketplace does not support a dedicated interface to communicate capacities limits.

3.13 Flexibility Duration

  • The minimum delivery duration is 15 min.
  • The duration is specified by delivery start and end time.
  • Durations must be multiples of 15 min (30min, 45min, 1h and so on).
  • The maximum duration is 24 hours.

3.14 Flexibility Activation

The flexibility provider is responsible for the uninterrupted availability of the traded flexibility by the start time set in the cleared sell order.

3.15 Flexibility Provisioning

Registering of the flexibility asset to the marketplace is not required. The flexibility provider has the full responsibility to provide the flexibility asset within the agreed terms in the trade confirmation. The flexibility provider is responsible for the activation of the flexibility in time based agreed in the trade confirmation.

3.16 Flexibility Procurer (Buyer)

The buyer is responsible for consuming the traded flexibility to the amount agreed in the trade confirmation.

3.17 Metering

The metering point is not registered to the marketplace. The flexibility provider submits a unique metering identifier when an order is placed. The flexibility provider has to send metering logs to the marketplace API after the delivery is ends. The submitted metering logs contain the same metering point identifier specified in the initial order.

3.18 Verification of Flexibility Delivery

Consumption data has to be submitted through the market interface to verify the delivery of the flexibility. The consumption data has to present a sufficient time interval before, during and after the delivery event. Submitting a baseline schedule before delivery to the marketplace.

3.19 Payment Release Rules

Over delivery of flexibility is not remunerated. A delivery is considered completed if a minimum of 80% flexibility was delivered and has been verified.