PyMarket - A simple library for simulating markets in Python

PyMarket - A simple library for simulating markets in Python - Published in JOSS (2020)

https://github.com/kiedanski/pymarket

Science Score: 10.0%

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

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 6 committers (16.7%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.2%) to scientific vocabulary

Keywords

auctions energy game-theory market market-mechanisms simulation

Keywords from Contributors

turing-machine standardization pde mesh parallel interpretability evolutionary-algorithms ode pypi simulations

Scientific Fields

Sociology Social Sciences - 87% confidence
Last synced: 4 months ago · JSON representation

Repository

PyMarket is a python library aimed to ease the design, simulation and comparison of different market mechanisms.

Basic Info
Statistics
  • Stars: 28
  • Watchers: 1
  • Forks: 6
  • Open Issues: 8
  • Releases: 0
Topics
auctions energy game-theory market market-mechanisms simulation
Created over 6 years ago · Last pushed about 3 years ago
Metadata Files
Readme Contributing License

README.ipynb

{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {
    "tags": [
     "remove_cell"
    ]
   },
   "outputs": [],
   "source": [
    "%matplotlib inline\n",
    "import pandas as pd\n",
    "pd.set_option('display.notebook_repr_html', False)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# PyMarket"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "[![Build Status](https://travis-ci.org/gus0k/pymarket.svg?branch=master)](https://travis-ci.org/gus0k/pymarket)\n",
    "\n",
    "[![Documentation Status](https://readthedocs.org/projects/pymarket/badge/?version=latest)](https://pymarket.readthedocs.io/en/latest/?badge=latest)\n",
    "\n",
    "[![PyPI version](https://badge.fury.io/py/pymarket.svg)](https://badge.fury.io/py/pymarket)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "PyMarket is a python library designed to ease the simulation and\n",
    "comparison of different market mechanisms.\n",
    "\n",
    "Marketplaces can be proposed to solve a diverse array of problems. They\n",
    "are used to sell ads online, bandwith spectrum, energy, etc.\n",
    "PyMarket provides a simple environment to try, simulate and compare different\n",
    "market mechanisms, a task that is inherent to the process of establishing a new\n",
    "market.\n",
    "\n",
    "As an example, Local Energy Markets (LEMs) have been proposed to syncronize energy consumption\n",
    "with surplus of renewable generation. Several mechanisms have been proposed for such a market:\n",
    "from double sided auctions to p2p trading. \n",
    "\n",
    "This library aims to provide a simple interface for such process, making results reproducible."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Getting Started"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEKCAYAAAD9xUlFAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAGx1JREFUeJzt3X2UVPWd5/H3l+Y5ahx5SJSnhgiOGLDBBjQ+0Co+4sLiaFBmmBjl9OIGR9eYXTKuCfEcc3azaiCSo+moAWdB3OATeNwENyNGN0HohhYDHR6CRHok8pCIYEDA/u4f9/bdounuqq6u27e66vM6p0/XrbpV9b3Y1qd+D/d3zd0REREB6JJ0ASIikj8UCiIiElEoiIhIRKEgIiIRhYKIiEQUCiIiEoktFMxskJm9bmZ1ZrbJzO5uZp8KMztgZrXhz3fiqkdERNLrGuNrHwe+6e7rzexUoMbMXnP3zU32e9Pdb4ixDhERyVBsLQV33+3u68PbB4E6YEBc7yciIu0XZ0shYmalwBjg7WYevsjM3gE+AO5z902tvVbfvn29tLQ01yWKiBS0mpqafe7eL91+sYeCmZ0CPA/c4+4fN3l4PTDE3Q+Z2fXAS8DwZl6jEqgEGDx4MNXV1TFXLSJSWMzsj5nsF+vsIzPrRhAIS9z9haaPu/vH7n4ovP0q0M3M+jazX5W7l7t7eb9+aYNORESyFOfsIwOeAurc/dEW9vliuB9mNj6sZ39cNYmISOvi7D66GJgJvGtmteF9/wwMBnD3J4CbgDvN7DhwGLjFtWyriEhiYgsFd38LsDT7LAQWtve9jh07Rn19PUeOHGnvSxWVnj17MnDgQLp165Z0KSKSJzpk9lHc6uvrOfXUUyktLSXsjZI03J39+/dTX1/P0KFDky5HRPJEQSxzceTIEfr06aNAaAMzo0+fPmpdicgJCiIUAAVCFvRvJiJNFUT3kYhIc6qqYOnSpKvInbIymD8/3vcomJZC0kpKSigrK+O8887j/PPP59FHH6WhoSHpsgCYN28eDz/8cNJliHS4pUuhtjb9fvL/qaWQI7169aI2/Ovbs2cPM2bM4MCBA3zve99LuDKR4lZWBqtXJ11F56GWQgz69+9PVVUVCxcuxN357LPP+Na3vsW4ceMYPXo0P/nJTwBYvXo1EydO5Ktf/SojRoxg7ty5LFmyhPHjxzNq1Cj+8Ic/ALBy5UomTJjAmDFjmDRpEh9++CEQtABuv/12KioqGDZsGD/60Y+iGh566CHOOeccJk2axJYtWzr+H0FEOqXCayncc0/u24tZdOQNGzaMhoYG9uzZw8svv8znP/951q1bx6effsrFF1/M1VdfDcA777xDXV0dZ5xxBsOGDWPWrFmsXbuWBQsW8NhjjzF//nwuueQS1qxZg5nx5JNP8oMf/IBHHnkEgN///ve8/vrrHDx4kHPOOYc777yTjRs3smzZMjZs2MDx48cZO3YsF1xwQW7/TUSkIBVeKOSRxpOzV61axcaNG1m+fDkABw4cYNu2bXTv3p1x48Zx5plnAvClL30pCotRo0bx+uuvA8F5GNOnT2f37t0cPXr0hPMKJk+eTI8ePejRowf9+/fnww8/5M0332TatGn07t0bgClTpnTYMYtI51Z4oRD30HyGduzYQUlJCf3798fdeeyxx7jmmmtO2Gf16tX06NEj2u7SpUu03aVLF44fPw7AXXfdxb333suUKVNYvXo18+bNi56T+vySkpLoOZpuKiLZ0JhCDPbu3cvs2bOZM2cOZsY111zD448/zrFjxwDYunUrn3zyScavd+DAAQYMCK5PtHjx4rT7X3bZZbz44oscPnyYgwcPsnLlyuwORESKTuG1FBJy+PBhysrKOHbsGF27dmXmzJnce++9AMyaNYudO3cyduxY3J1+/frx0ksvZfza8+bN4+abb2bAgAFceOGFvPfee63uP3bsWKZPn05ZWRlDhgzh0ksvbdexiUjxsM62KGl5ebk3vchOXV0d5557bkIVdW76t5NCVlER/NaUVDCzGncvT7efuo9ERCSiUBARkYhCQUREIgoFERGJKBRERCSiUBARkYhCIYceeughzjvvPEaPHk1ZWRlvv/12Tl+/tLSUffv25fQ1RURS6eS1HPntb3/LK6+8wvr16+nRowf79u3j6NGjSZclItImainkyO7du+nbt2+0FlHfvn0566yzTvh2X11dTUV4Ns28efOYOXMmV1xxBcOHD+enP/0pEKyHdNlllzFt2jRGjhzJ7NmzT7pYzwMPPMCCBQui7fvvv/+EZbNFRLJVcC2FpFbOvvrqq3nwwQcZMWIEkyZNYvr06UycOLHV52zcuJE1a9bwySefMGbMGCZPngzA2rVr2bx5M0OG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\n",
      "text/plain": [
       "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import pymarket as pm\n", "import numpy as np\n", "\n", "r = np.random.RandomState(1234)\n", "\n", "mar = pm.Market()\n", "bids = pm.datasets.uniform_bidders.generate(20, 20, 1, 1, r)\n", "for b in bids:\n", " mar.accept_bid(*b)\n", " \n", "mar.plot()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Access the bids" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ " quantity price user buying time divisible\n", "0 0.2374 1.0234 0 True 0 True\n", "1 0.1784 1.1770 1 True 0 True\n", "2 0.6301 1.5789 2 True 0 True\n", "3 0.1600 1.8008 3 True 0 True\n", "4 0.7920 1.5478 4 True 0 True" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bids = mar.bm.get_df()\n", "bids.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Run a market algorithm" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/plain": [ " bid quantity price source active\n", "0 16 0.0000 0.0000 34 True\n", "1 34 0.0000 0.0000 16 True\n", "2 0 0.0000 0.0000 23 True\n", "3 23 0.0000 0.0000 0 True\n", "4 12 0.0786 1.3828 26 False" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "transactions, extra = mar.run('p2p', r=r)\n", "transactions = transactions.get_df()\n", "transactions.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Documentation and Examples\n", "\n", "[Docs can be found here (click me!)](https://pymarket.readthedocs.io)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Installation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "```python\n", "pip install pymarket\n", "```" ] } ], "metadata": { "celltoolbar": "Edit Metadata", "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.8" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": true, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": false } }, "nbformat": 4, "nbformat_minor": 2 }

Owner

  • Name: Diego Kiedanski
  • Login: kiedanski
  • Kind: user
  • Location: Montevideo
  • Company: Tryolabs

Director, AI Consulting | @tryolabs, Co-founder | @lanternblue

GitHub Events

Total
  • Fork event: 3
Last Year
  • Fork event: 3

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 213
  • Total Committers: 6
  • Avg Commits per committer: 35.5
  • Development Distribution Score (DDS): 0.465
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
ellguso d****i@g****m 114
gus0k g****k@p****m 79
gus0k 4****k 9
Mark Van de Vyver 1****n 8
Daniel S. Katz d****z@i****g 2
dependabot[bot] 4****] 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 7 months ago

All Time
  • Total issues: 12
  • Total pull requests: 20
  • Average time to close issues: 2 months
  • Average time to close pull requests: 21 days
  • Total issue authors: 3
  • Total pull request authors: 4
  • Average comments per issue: 4.83
  • Average comments per pull request: 0.15
  • Merged pull requests: 9
  • Bot issues: 0
  • Bot pull requests: 11
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • taqtiqa-mark (10)
  • igarizio (1)
  • 20robin06 (1)
Pull Request Authors
  • dependabot[bot] (11)
  • taqtiqa-mark (4)
  • danielskatz (3)
  • kiedanski (2)
Top Labels
Issue Labels
Pull Request Labels
dependencies (11)

Dependencies

Pipfile pypi
  • bump *
  • bumpversion *
  • matplotlib >2.2.4
  • networkx >=0.23
  • numpy >=1.12
  • pandas >=0.22
  • pulp >=1.6
  • sphinx-rtd-theme ==0.4.3
  • tox-travis >=0.12
  • twine *
Pipfile.lock pypi
  • alabaster ==0.7.12
  • appdirs ==1.4.3
  • babel ==2.8.0
  • bleach ==3.1.4
  • bump ==1.1.1
  • bumpversion ==0.5.3
  • certifi ==2019.11.28
  • chardet ==3.0.4
  • click ==6.7
  • cycler ==0.10.0
  • decorator ==4.4.2
  • distlib ==0.3.0
  • docutils ==0.16
  • filelock ==3.0.12
  • first ==2.0.2
  • idna ==2.9
  • imagesize ==1.2.0
  • importlib-metadata ==1.6.0
  • importlib-resources ==1.4.0
  • jinja2 ==2.11.1
  • kiwisolver ==1.1.0
  • markupsafe ==1.1.1
  • matplotlib ==3.0.3
  • networkx ==2.4
  • numpy ==1.17.4
  • packaging ==20.3
  • pandas ==0.25.3
  • pkginfo ==1.5.0.1
  • pluggy ==0.13.1
  • pulp ==1.6.10
  • py ==1.8.1
  • pygments ==2.6.1
  • pyparsing ==2.4.6
  • python-dateutil ==2.8.1
  • pytz ==2019.3
  • readme-renderer ==25.0
  • requests ==2.23.0
  • requests-toolbelt ==0.9.1
  • six ==1.14.0
  • snowballstemmer ==2.0.0
  • sphinx ==2.4.4
  • sphinx-rtd-theme ==0.4.3
  • sphinxcontrib-applehelp ==1.0.2
  • sphinxcontrib-devhelp ==1.0.2
  • sphinxcontrib-htmlhelp ==1.0.3
  • sphinxcontrib-jsmath ==1.0.1
  • sphinxcontrib-qthelp ==1.0.3
  • sphinxcontrib-serializinghtml ==1.1.4
  • toml ==0.10.0
  • tox ==3.14.6
  • tox-travis ==0.12
  • tqdm ==4.44.1
  • twine ==1.15.0
  • urllib3 ==1.25.8
  • virtualenv ==20.0.15
  • webencodings ==0.5.1
  • zipp ==1.2.0
requirements.txt pypi
  • matplotlib ==2.2.4
  • matplotlib >2.2.4
  • networkx >=0.23
  • networkx ==0.23
  • numpy >=1.12
  • pandas >0.23
  • pandas ==0.23
  • pulp >=1.6
  • sphinx_rtd_theme ==0.4.3
  • tox-travis >=0.12
requirements_dev.txt pypi
  • Sphinx ==1.8.1 development
  • bumpversion ==0.5.3 development
  • coverage ==4.5.1 development
  • flake8 ==3.5.0 development
  • ipykernel * development
  • matplotlib * development
  • nbsphinx * development
  • networkx * development
  • numpy * development
  • pandas * development
  • pandoc * development
  • pip ==18.1 development
  • pulp * development
  • pytest * development
  • sphinx_rtd_theme * development
  • sphinxcontrib-napoleon * development
  • tox ==3.5.2 development
  • tox-travis * development
  • twine ==1.12.1 development
  • watchdog ==0.9.0 development
  • wheel ==0.32.1 development