https://github.com/assume-framework/emarketlib

collection of market related mechanisms, usable in assume, as well as standalone for market related analysis

https://github.com/assume-framework/emarketlib

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (6.1%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

collection of market related mechanisms, usable in assume, as well as standalone for market related analysis

Basic Info
  • Host: GitHub
  • Owner: assume-framework
  • Language: Python
  • Default Branch: main
  • Size: 166 KB
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 1
  • Open Issues: 0
  • Releases: 1
Created over 1 year ago · Last pushed over 1 year ago
Metadata Files
Readme License

README.md

emarketlib

A Python library for simulating electricity markets and market mechanisms.

Features

  • Base market implementation with configurable market mechanisms
  • Multiple clearing algorithms:
    • Pay-as-clear (uniform pricing)
    • Pay-as-bid
    • Average mechanism
    • Trade reduction mechanism
    • McAfee mechanism
    • VCG auction mechanism
  • Support for:
    • Market registration and validation
    • Order book handling
    • Market clearing
    • Result storage and querying
    • Grid topology data

Market Mechanisms

Pay-as-clear (Uniform Pricing)

  • All accepted orders receive the same clearing price
  • Clearing price determined by highest accepted supply order
  • Merit order based clearing with random tie-breaking

Pay-as-bid

  • Each accepted order is settled at its bid price
  • Merit order based clearing with random tie-breaking

Average Mechanism

  • Clearing price is average of highest accepted supply and lowest accepted demand price
  • Not incentive compatible but individually rational

Trade Reduction

  • Removes last matched trade to achieve incentive compatibility
  • Not efficient but individually rational
  • Budget balanced but not strongly budget balanced

McAfee Mechanism

  • Incentive compatible and individually rational
  • Weakly budget balanced
  • Not efficient when price conditions not met

VCG Auction

  • Incentive compatible and individually rational
  • Efficient but not budget balanced
  • Auctioneer must subsidize difference

Usage

```python from emarketlib import MarketConfig from emarketlib.clearing_algorithms.simple import PayAsClearRole

Create market config

config = MarketConfig( marketid="dayahead", # Add configuration parameters )

Initialize market with clearing mechanism

market = PayAsClearRole(config) ```

Installation

pip install emarketlib

Owner

  • Name: assume-framework
  • Login: assume-framework
  • Kind: organization

GitHub Events

Total
Last Year

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 18 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 1
  • Total maintainers: 1
pypi.org: emarketlib

Energy market toolbox

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 18 Last month
Rankings
Dependent packages count: 10.1%
Average: 33.4%
Dependent repos count: 56.6%
Maintainers (1)
Last synced: 10 months ago

Dependencies

.github/workflows/lint-pytest.yaml actions
  • actions/checkout v4 composite
  • actions/setup-python v5 composite
  • actions/upload-artifact v4 composite
pyproject.toml pypi
  • argcomplete >=3.1.4
  • mango-agents >=1.2
  • numpy >=1.26.4
  • pandas >=2.0.0
  • python-dateutil >=2.8.2
.github/workflows/release.yaml actions
  • actions/checkout v4 composite
  • actions/download-artifact v4 composite
  • actions/setup-python v5 composite
  • actions/upload-artifact v4 composite
  • pypa/gh-action-pypi-publish release/v1 composite