Skip to main content

microconventions

This package codifies conventions adopted at www.MicroPrediction.Org, a kind of AI community garden of sorts. The site effects turnkey short term forecasting and automated reuse of algorithms. See also a series of articles at https://www.linkedin.com/in/petercotton/detail/recent-activity/posts/

Dependencies

conventions
    |           

species_conventions  horizon_conventions   misc_conventions
       |               |                        |
       --------  sep_conventions  ---------------           

If you participate, it is worth a glance at this little library. It is intended to be readable code documenting some choices made.

Stream conventions (code)

Governs which names can be top level streams, as compared with derived streams involving tildes. The main thing to remember is that stream names end in .json

mystream.json

There is a small chance the author regrets the '.json' (though it keeps open various possibilities).

Key conventions (code)

Refers to the use of Memorable Unique Identifiers. This code wraps the functionality provided at www.muid.org and the MUID Python Package so that it need not be used directly. There are minor distinctions between MUIDs and write_keys. For one thing, MUIDs are often binary strings whereas write_keys are str. This mixin also provides you with conversions between private write_key's, public hashes of the same using shash() that are referred to as codes sometimes, and the spirit animals suggested by the leading characters of the codes.

Value conventions (code)

Refers to kinds of values. Generally you will not need to worry about this. A time of writing only scalar float values are the subject of community prediction. However other types of value can be stored and the manner in which this is done can depend on the size.

Horizon conventions (code)

A horizon is a combination of a data stream and a time interval measured in seconds, called a delay. Usually the combination is represented as a string with double colon separator. For example

70::mystream.json  

might reference a 1 minute (roughly) ahead forecast.

Leaderboard conventions (code)

Names for various types of leaderboards. I don't think it is important to study this but the client library needs it.

Stats conventions (code)

Not much here, just some backward compatability for norminv, default abscissa for CDFs and the like.

Z-Curve conventions (code)

Refers in part to naming conventions for derived streams. For example:

z1~mystream::70.json

is a data stream generated by computing the community implied z-score of points in the stream mystream.json. A community implied z-score is a z-score computed relative to the distribution implied by everyone's predictions. We need to choose a prediction horizon (delay) to specify this. So this particular example refers to z-scores relative to the short horizon predictions (1 minute ahead of time). On the other hand,

z1~mystream::3555.json

would refer to z-scores relative to 1 hour ahead forecasts.

Space filling curve conventions (code)

The zcurve conventions also specify maps [0,1]^2 -> R and [0,1]^3->R that are used to take pairs and triples of z-scores and create univariate data streams. These are space filling curves arrived at by interleaving the digits in the binary representations. In the case of two dimensions this is similar to geohashing. These streams are denoted as follows:

z2~bob~mary::3555.json 

refers to embeddings of z-scores from streams bob.json and mary.json. Here is a video that explains the embedding better than I can.

Miscellaneous (code)

I dare say some of these might migrate, but the code in misc_conventions provides a collection of naming conventions that you will need to know if you wish to use the fairly powerful /live API (see https://api.microprediction.org and scroll to "Live"). This API can be used to extract various quantities in the database, not all of whom have their own standalone APIs. For example you can get lagged time/value pairs in two ways:

https://api.microprediction.org/live/lagged::cop.json
https://api.microprediction.org/lagged/cop.json

however if you really just want the values you can only get it as

https://api.microprediction.org/live/lagged_values::cop.json

Similarly you can get confirms, warnings, errors, transactions and so on all using /live. This may or may not help if you want to quickly write a client in another language.

Metadata

Release files for microconventions 0.2.2

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

Source distribution (sdist)

Source distribution for microconventions 0.2.2
File Size Uploaded
microconventions-0.2.2.tar.gz 12.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for microconventions 0.2.2
File Interpreter ABI Platform
microconventions-0.2.2-py3-none-any.whl Python 3 none any Details

Total release size: 26.4 kB

Release files / microconventions-0.2.2.tar.gz

Download URL microconventions-0.2.2.tar.gz
Size 12.4 kB
Tags Source
SHA-256 checksum
How to use checksums
03380cf868401db976068b083c40b7f25b84848d82b8a522f99f75ec0c4a3bff
BLAKE2b-256 checksum
How to use checksums
a8d0f1c6d1e8e07f254b69992a4e5ff0ad0fa1b76d678c4e282a5bcf53bc3d9e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

Release files / microconventions-0.2.2-py3-none-any.whl

Download URL microconventions-0.2.2-py3-none-any.whl
Size 14.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c65de51fbf6c69880a3da8cef1b75c4fe266b53af0c3696be38fe60bcb5df182
BLAKE2b-256 checksum
How to use checksums
a25155e4bbac7c830a2fcbb256b82c07e15b9912e3d8ad63a3798b08fff2872e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

Release history Release notifications | RSS feed

1.0.0

2 release files

0.5.5

2 release files

0.5.4

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.6

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.0

2 release files

0.3.4

2 release files

0.3.0

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

This release

0.2.2 This release

2 release files

0.2.1

2 release files

0.1.3

2 release files

0.1.0

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.2

2 release files

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