Skip to main content

Gridworks Marketmaker

This is the Python SDK for building MarketMakers for GridWorks. GridWorks uses distributed actors to balance the electric grid, and MarketMakers are the actors brokering this grid balancing via the markets they run for energy and balancing services.

This SDK is available as the gridworks-marketmaker pypi package. Documentation specific to using this SDK is available here. If this is your first time with GridWorks code, please start with the main GridWorks doc.

MarketMakers support grid balancing by running markets. They are geared to serve millions of coordinated and intelligent Transactive Devices, represented in their markets by AtomicTNodes. The veracity of the ex-poste energy and power data provided by AtomicTNodes to the MarketMaker is backed up via a series of GridWorks Certificates globally visible on the Algorand blockchain. These include the foundational TaDeeds that establish ownership of the underlying Transactive Device, and the TaTradingrights that give the AtomicTNode authority to represent the Transactive Device in its MarketMaker's markets.

Millinocket MarketMaker directions

These are directions for running this code as the MarketMaker in the Millinocket tutorial. These directions assume you have already started docker sandbox and the GridWorks dev rabbit broker, as described in the Demo prep.

  1. Clone this repo

  2. Using python 3.10.* or greater, create virtual env inside this repo

    python -m venv venv
    source venv/bin/activate
    pip install -e .
    

3.Run the FastAPI half of the MarketMaker:

uvicorn gwmm.rest_api:app --host localhost --port 7997 --workers 5
- http://localhost:7997/ shows market maker information
- http://localhost:7997/get-time/ shows the current time of the simulation
  1. Run the rabbit half of the MarketMaker:
python demo.py

NOTE: This requires a TimeCoordinator and at least one AtomicTNode in order for time to move forward.

Contributing

Contributions are very welcome. To learn more, see the Contributor Guide.

License

Distributed under the terms of the MIT license, Gridworks Marketmaker is free and open source software.

Issues

If you encounter any problems, please file an issue along with a detailed description.

PyPI Status Python Version License

Read the documentation at https://gridworks-marketmaker.readthedocs.io/ Tests Codecov

pre-commit Black

Credits

This project was generated from @cjolowicz's Hypermodern Python Cookiecutter template.

Metadata

Release files for gridworks-marketmaker 0.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gridworks-marketmaker 0.0.3
File Size Uploaded Provenance Actions
gridworks_marketmaker-0.0.3.tar.gz 34.7 kB Without provenance Details for gridworks_marketmaker-0.0.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for gridworks-marketmaker 0.0.3
File Interpreter ABI Platform Actions
gridworks_marketmaker-0.0.3-py3-none-any.whl Python 3 none any Details for gridworks_marketmaker-0.0.3-py3-none-any.whl

Total release size: 91.6 kB

Release files / gridworks_marketmaker-0.0.3.tar.gz

Download URL gridworks_marketmaker-0.0.3.tar.gz
Size 34.7 kB
Tags Source
SHA-256 checksum
How to use checksums
3dadc663289e3bde6d63f46997b0630e8adc9e07e869c8976a2c6b87be77245a
BLAKE2b-256 checksum
How to use checksums
6c33b0d4aeb96d5e3d5bc7abea985950f6487b8f9d73b93892a8c14098d59aaf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.1

Release files / gridworks_marketmaker-0.0.3-py3-none-any.whl

Download URL gridworks_marketmaker-0.0.3-py3-none-any.whl
Size 57.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4e1e27a3df4ffd40d7bdd9810dd825a35f1a6e0077d8d222f37d5bc210032ca0
BLAKE2b-256 checksum
How to use checksums
11464cf4c7f98dcd78198d539cc79d336fb7f92200567b25060aa666a542b024
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.1

Security for gridworks-marketmaker 0.0.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.0.3 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page