Skip to main content

shin

A Python implementation of Shin's method [1, 2] for calculating implied probabilities from bookmaker odds.

Probabilities calculated in this way have been shown to be more accurate than those obtained by the standard approach of dividing the inverse odds by the booksum [3].

Installation

Requires Python 3.9 or above (including Python 3.13).

pip install shin

Usage

import shin

shin.calculate_implied_probabilities([2.6, 2.4, 4.3])
[0.37299406033208965, 0.4047794109200184, 0.2222265287474275]

Shin's method assumes there is some unknown proportion of bettors that are insiders, z, and this proportion along with the implied probabilities can be estimated using an iterative procedure described in [4].

Diagnostic information from the iterative procedure can be obtained by setting the full_output argument to True:

import shin

shin.calculate_implied_probabilities([2.6, 2.4, 4.3], full_output=True)
ShinOptimisationDetails(
    implied_probabilities=[0.37299406033208965, 0.4047794109200184, 0.2222265287474275],
    iterations=426,
    delta=9.667822098435863e-13,
    z=0.01694251276407055
)

The returned object contains the following fields:

  • implied_probablities
  • iterations - compare this value to the max_iterations argument (default = 1000) to check for failed convergence
  • delta - the final change in z for the final iteration. Compare with the convergence_threshold argument (default = 1e-12) to assess convergence
  • z - the estimated proportion of theoretical betting volume coming from insider traders

When there are only two outcomes, z can be calculated analytically [3]. In this case, the iterations and delta fields of the returned dict are 0 to reflect this:

import shin

shin.calculate_implied_probabilities([1.5, 2.74], full_output=True)
ShinOptimisationDetails(
    implied_probabilities=[0.6508515815085157, 0.3491484184914841],
    iterations=0.0,
    delta=0.0,
    z=0.03172728540646625
)

Note that with two outcomes, Shin's method is equivalent to the Additive Method of [5].

What's New in Version 0.2.0?

The latest version improves support for static typing and includes a breaking change.

Breaking Change To calculate_implied_probabilities() Signature

All arguments to calculate_implied_probabilities() other than odds are now keyword only arguments. This change simplified declaration of overloads to support typing the function's return value and will allow for more flexibility in the API.

from shin import calculate_implied_probabilities

# still works
calculate_implied_probabilities([2.0, 2.0])
calculate_implied_probabilities(odds=[2.0, 2.0])
calculate_implied_probabilities([2.0, 2.0], full_output=True)
## also any other combination of passing arguments as keyword args remains the same

# passing any arg other than `odds` as positional is now an error
calculate_implied_probabilibies([2.0, 2.0], 1000)  # Error
calculate_implied_probabilities([2.0, 2.0], max_iterations=1000)  # OK


calculate_impolied_probabilities([2.0, 2.0], 1000, 1e-12, True) # Error
calculate_implied_probabilities([2.0, 2.0], max_iterations=1000, convergence_threshold=1e-12, full_output=True)  # OK

See this commit for more details.

Full Output Type

The full_output argument now returns a ShinOptimisationDetails object instead of a dict. This object is a dataclass with the same fields as the dict that was previously returned.

For the read-only case, the ShinOptimisationDetails object can be used as a drop-in replacement for the dict that was previously returned as it supports __getitem__().

This change was introduced to support generic typing of the implied_probabilities, currently not supported by TypedDict in versions of Python < 3.11.

See this and this for more details.

What's New in Version 0.1.0?

The latest version introduces some substantial changes and breaking API changes.

Default Return Value Behaviour

Previously shin.calculate_implied_probabilities would return a dict that contained convergence details of the iterative fitting procedure along with the implied probabilities:

import shin

shin.calculate_implied_probabilities([2.6, 2.4, 4.3])
{'implied_probabilities': [0.37299406033208965,
  0.4047794109200184,
  0.2222265287474275],
 'iterations': 425,
 'delta': 9.667822098435863e-13,
 'z': 0.01694251276407055}

The default behaviour now is for the function to only return the implied probabilities:

import shin

shin.calculate_implied_probabilities([2.6, 2.4, 4.3])
[0.37299406033208965, 0.4047794109200184, 0.2222265287474275]

The full output can still be had by setting the full_output argument to True:

import shin

shin.calculate_implied_probabilities([2.6, 2.4, 4.3], full_output=True)
{'implied_probabilities': [0.37299406033208965,
  0.4047794109200184,
  0.2222265287474275],
 'iterations': 425,
 'delta': 9.667822098435863e-13,
 'z': 0.01694251276407055}

Passing Mappings

A common scenario is to have a mapping between some selection identifiers and their odds. You can now pass such mappings to shin.calculate_implied_probabilities and have a new dict mapping between the selection identifiers and their probabilities returned:

import shin

shin.calculate_implied_probabilities({"HOME": 2.6, "AWAY": 2.4, "DRAW": 4.3})
{'HOME': 0.37299406033208965,
 'AWAY': 0.4047794109200184,
 'DRAW': 0.2222265287474275}

This also works when asking for the full output to be returned:

import shin

shin.calculate_implied_probabilities({"HOME": 2.6, "AWAY": 2.4, "DRAW": 4.3}, full_output=True)
{'implied_probabilities': {'HOME': 0.37299406033208965,
  'AWAY': 0.4047794109200184,
  'DRAW': 0.2222265287474275},
 'iterations': 426,
 'delta': 9.667822098435863e-13,
 'z': 0.01694251276407055}

Controlling the Optimiser

Starting in version 0.1.0, the iterative procedure is implemented in Rust which provides a considerable performance boost. If you would like to use the old Python based optimiser use the force_python_optimiser argument:

import timeit
timeit.timeit(
    "shin.calculate_implied_probabilities([2.6, 2.4, 4.3], force_python_optimiser=True)",
    setup="import shin",
    number=10000
)
3.9101167659973726
import timeit
timeit.timeit(
    "shin.calculate_implied_probabilities([2.6, 2.4, 4.3])",
    setup="import shin",
    number=10000
)
0.14442387002054602

References

[1] H. S. Shin, “Prices of State Contingent Claims with Insider traders, and the Favorite-Longshot Bias”. The Economic Journal, 1992, 102, pp. 426-435.

[2] H. S. Shin, “Measuring the Incidence of Insider Trading in a Market for State-Contingent Claims”. The Economic Journal, 1993, 103(420), pp. 1141-1153.

[3] E. Štrumbelj, "On determining probability forecasts from betting odds". International Journal of Forecasting, 2014, Volume 30, Issue 4, pp. 934-943.

[4] B. Jullien and B. Salanié, "Measuring the Incidence of Insider Trading: A Comment on Shin". The Economic Journal, 1994, 104(427), pp. 1418–1419

[5] S. Clarke, S. Kovalchik, M. Ingram, "Adjusting bookmaker’s odds to allow for overround". American Journal of Sports Science, 2017, Volume 5, Issue 6, pp. 45-49.

Metadata

Release files for shin 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 shin 0.2.2
File Size Uploaded
shin-0.2.2.tar.gz 12.7 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for shin 0.2.2
File
shin-0.2.2-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl PyPy 3.10 PyPy 3.10 7.3 Linux musl 1.1+ x86-64 Details
shin-0.2.2-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl PyPy 3.10 PyPy 3.10 7.3 Linux musl 1.1+ ARM64 Details
shin-0.2.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.10 PyPy 3.10 7.3 Linux glibc 2.17+ x86-64 Details
shin-0.2.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl PyPy 3.10 PyPy 3.10 7.3 Linux glibc 2.17+ ARM64 Details
shin-0.2.2-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl PyPy 3.9 PyPy 3.9 7.3 Linux musl 1.1+ x86-64 Details
shin-0.2.2-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl PyPy 3.9 PyPy 3.9 7.3 Linux musl 1.1+ ARM64 Details
shin-0.2.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.9 PyPy 3.9 7.3 Linux glibc 2.17+ x86-64 Details
shin-0.2.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl PyPy 3.9 PyPy 3.9 7.3 Linux glibc 2.17+ ARM64 Details
shin-0.2.2-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
shin-0.2.2-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl CPython 3.13 CPython 3.13 macOS 10.12+ universal2 (ARM64, x86-64), macOS 10.12+ x86-64, macOS 11.0+ ARM64 Details
shin-0.2.2-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
shin-0.2.2-cp312-cp312-musllinux_1_1_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.1+ x86-64 Details
shin-0.2.2-cp312-cp312-musllinux_1_1_aarch64.whl CPython 3.12 CPython 3.12 Linux musl 1.1+ ARM64 Details
shin-0.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
shin-0.2.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64 Details
shin-0.2.2-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl CPython 3.12 CPython 3.12 macOS 10.12+ universal2 (ARM64, x86-64), macOS 10.12+ x86-64, macOS 11.0+ ARM64 Details
shin-0.2.2-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
shin-0.2.2-cp311-cp311-musllinux_1_1_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.1+ x86-64 Details
shin-0.2.2-cp311-cp311-musllinux_1_1_aarch64.whl CPython 3.11 CPython 3.11 Linux musl 1.1+ ARM64 Details
shin-0.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
shin-0.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64 Details
shin-0.2.2-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl CPython 3.11 CPython 3.11 macOS 10.12+ x86-64, macOS 11.0+ ARM64, macOS 10.12+ universal2 (ARM64, x86-64) Details
shin-0.2.2-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
shin-0.2.2-cp310-cp310-musllinux_1_1_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.1+ x86-64 Details
shin-0.2.2-cp310-cp310-musllinux_1_1_aarch64.whl CPython 3.10 CPython 3.10 Linux musl 1.1+ ARM64 Details
shin-0.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
shin-0.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64 Details
shin-0.2.2-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
shin-0.2.2-cp39-cp39-musllinux_1_1_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.1+ x86-64 Details
shin-0.2.2-cp39-cp39-musllinux_1_1_aarch64.whl CPython 3.9 CPython 3.9 Linux musl 1.1+ ARM64 Details
shin-0.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details
shin-0.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ ARM64 Details

Total release size: 9.4 MB

Release files / shin-0.2.2.tar.gz

Download URL shin-0.2.2.tar.gz
Size 12.7 kB
Tags Source
SHA-256 checksum
How to use checksums
689af805af788c82a515b280ff5db59090a178e820c99e27fc2327c9cf71b4ee
BLAKE2b-256 checksum
How to use checksums
1c5f7e5e14a56cc628ab9639ba7a6f63d66bb017259c9d6de08034944ee9a69d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl

Download URL shin-0.2.2-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl
Size 402.1 kB
Tags Linux musl 1.1+ x86-64 PyPy 3.10 PyPy 3.10 7.3
SHA-256 checksum
How to use checksums
b3c6104df71e0a28e4a17837551bad9131d599814c2c3499d0b1634ab2f99df9
BLAKE2b-256 checksum
How to use checksums
19cd058e6c778cd1c183f50ebd44a85356bb9ebd72a7e2db6456b9ef46cafa85
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl

Download URL shin-0.2.2-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl
Size 412.1 kB
Tags Linux musl 1.1+ ARM64 PyPy 3.10 PyPy 3.10 7.3
SHA-256 checksum
How to use checksums
50a69637e339ecd8ae9acc54b075a19d411300531b9045d9baba2174763ee42c
BLAKE2b-256 checksum
How to use checksums
63453cc9be66932eebe7d316b73d98609787562073e727de9d759f9eedfbc456
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL shin-0.2.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 239.2 kB
Tags Linux glibc 2.17+ x86-64 PyPy 3.10 PyPy 3.10 7.3
SHA-256 checksum
How to use checksums
2d0cf83b334e3b2af1724db2829f386a5c2f201d783d03df9e4afd8d0065f02a
BLAKE2b-256 checksum
How to use checksums
8bbfa2121256765b6d13199e136637edd8a075cd4f005f6a67dac8d434d1db90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL shin-0.2.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 231.2 kB
Tags Linux glibc 2.17+ ARM64 PyPy 3.10 PyPy 3.10 7.3
SHA-256 checksum
How to use checksums
6be6e8e02b2ae1f90e5c6c6cb179c3673cb52361b66020167fc9dbffe5c30835
BLAKE2b-256 checksum
How to use checksums
1a8e39c8b6db277c48cb60d6d55ad45ac2db6654b58ddb5b9c8ef103c010ecce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl

Download URL shin-0.2.2-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl
Size 401.9 kB
Tags Linux musl 1.1+ x86-64 PyPy 3.9 PyPy 3.9 7.3
SHA-256 checksum
How to use checksums
539f323511282ec8dd18e16240da7e233731ec7a247efe221130477758a9c874
BLAKE2b-256 checksum
How to use checksums
11d728297a2f313b8dc5a22cd5f4ad879f406cc61ececeaab9c01a9857df53a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl

Download URL shin-0.2.2-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl
Size 412.0 kB
Tags Linux musl 1.1+ ARM64 PyPy 3.9 PyPy 3.9 7.3
SHA-256 checksum
How to use checksums
bc504420a2dfc44c9485b73e4495420632dafd17ee0a7698bfc4b485297f99a3
BLAKE2b-256 checksum
How to use checksums
ad28f85320b16f31935ece0e9c557bc3329a50af52fdb36a20091f4ff1685b97
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL shin-0.2.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 239.1 kB
Tags Linux glibc 2.17+ x86-64 PyPy 3.9 PyPy 3.9 7.3
SHA-256 checksum
How to use checksums
399c8347551cf337b4ca00e0a5c1fa4e1cb678f9b3816a406a8185414fc811a2
BLAKE2b-256 checksum
How to use checksums
21d0215940ab96b3b9340054f74221362eb2932ef63d1d9d6b32d504028994c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL shin-0.2.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 231.1 kB
Tags Linux glibc 2.17+ ARM64 PyPy 3.9 PyPy 3.9 7.3
SHA-256 checksum
How to use checksums
0575b3dc46ff0f2c23ef7d2d8fe2fc0ad0e7a74459469a022322e2f7993fa894
BLAKE2b-256 checksum
How to use checksums
0580cf8357e278846ed14f3aff9697955a77beb16865d1b915f3fcbae33670bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp313-cp313-win_amd64.whl

Download URL shin-0.2.2-cp313-cp313-win_amd64.whl
Size 102.7 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
2eaef166dec425fee8249a638cbf508a43bbce10ec9b7e92e39e118c8864b4b3
BLAKE2b-256 checksum
How to use checksums
f9053a829ca2adb45b5c2d74a664fb818f7acb0d6605823b34b2ef490ae48c44
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl

Download URL shin-0.2.2-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Size 406.8 kB
Tags CPython 3.13 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
7f7096c1e88d2a9d4087fa61259fc214ef73e6dd1e5c370bd637c0ed3f66644c
BLAKE2b-256 checksum
How to use checksums
aabf3e732c4e5c3a3583a12eebb20f082d492895a9d5950289365e6526fa18a7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp312-cp312-win_amd64.whl

Download URL shin-0.2.2-cp312-cp312-win_amd64.whl
Size 102.7 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
74ca4613adb5c21357b7b0e972a4bbb286cefb530a7842bf90979f9920e36bf1
BLAKE2b-256 checksum
How to use checksums
1f84d8643a8c5d9ef7ae867cbaf7151390e2974bdd64ba0831996d89cdccbda2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp312-cp312-musllinux_1_1_x86_64.whl

Download URL shin-0.2.2-cp312-cp312-musllinux_1_1_x86_64.whl
Size 400.1 kB
Tags CPython 3.12 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
b7eaf1453b2d956737f6d13909f5d2594d17bcccb9f7f0762f7ffd3da7f143eb
BLAKE2b-256 checksum
How to use checksums
4a9c4022275ed0c122cb4b94384aec7ed7e0c9232c55052020663c765e788f8e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp312-cp312-musllinux_1_1_aarch64.whl

Download URL shin-0.2.2-cp312-cp312-musllinux_1_1_aarch64.whl
Size 410.2 kB
Tags CPython 3.12 Linux musl 1.1+ ARM64
SHA-256 checksum
How to use checksums
424bde0931230ae781641d9aaf32b75509aa04c748c803aa3ee69c496757074b
BLAKE2b-256 checksum
How to use checksums
11b6f2d2b75127943a2af6e426b37ae391c02f72e550771578a2607cffcc852f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL shin-0.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 237.4 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
aa46bc1804901311dd50c8e29fd2e48a6a3ac696816cc42e43ba88f1ac6d5bc5
BLAKE2b-256 checksum
How to use checksums
f741b575c1a443aa704855907ea2076227c48598743ce6a88f6b4e3b97b5bc5a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL shin-0.2.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 229.3 kB
Tags CPython 3.12 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
83879fe1790512d7ad337709763967aa751d27e6f642e5b49d61c41afcfab992
BLAKE2b-256 checksum
How to use checksums
8ddc93d4949cfed01517246462852cd9c9127dec50e6844ba602341f8cd0c08b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl

Download URL shin-0.2.2-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Size 406.9 kB
Tags CPython 3.12 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
de7fa3b713f3f23b7e866a288ce2e5541cee3e70e66d3fb62617c1eb5b51a867
BLAKE2b-256 checksum
How to use checksums
7eff19fba4d3693d912c0cb067c29d19e3ed34465ac9a81ab008eaf38bcd58a6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp311-cp311-win_amd64.whl

Download URL shin-0.2.2-cp311-cp311-win_amd64.whl
Size 102.7 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
dc8192693eddffcb755b154cd74ff7e7910488129123a4cccb285a60ea1e9f8e
BLAKE2b-256 checksum
How to use checksums
ad2e9a92d280390d7e4fb0bf7c035905a49f0d97db3c1f1a13d286003a04e44e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp311-cp311-musllinux_1_1_x86_64.whl

Download URL shin-0.2.2-cp311-cp311-musllinux_1_1_x86_64.whl
Size 401.0 kB
Tags CPython 3.11 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
2db8c284a328377abb5e6b1726d72d1b02f96d1027b3c7dedbcdb23a8da9c7bd
BLAKE2b-256 checksum
How to use checksums
ddd9f24d005b9343b56761b1368b33ba6d68b5d4eeb2da909269ed6a3e7071d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp311-cp311-musllinux_1_1_aarch64.whl

Download URL shin-0.2.2-cp311-cp311-musllinux_1_1_aarch64.whl
Size 411.3 kB
Tags CPython 3.11 Linux musl 1.1+ ARM64
SHA-256 checksum
How to use checksums
c87aab0a71529741b2549ee21b6696ebd1a21a09e360f17a140b6bae3f0e82bc
BLAKE2b-256 checksum
How to use checksums
ffe6910bc00b9b9e2582fc30531f6c5cdaced280f21b754e818432666ca7dfcb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL shin-0.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 238.5 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
0507f3164f326415ec6770b8fc6bf3e2236726d82c28fdcf04627617b56718f0
BLAKE2b-256 checksum
How to use checksums
6f9b0e9c9a7011e44176e2ea5c0d1d58552588017bc13b9a039dfa941a938406
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL shin-0.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 230.3 kB
Tags CPython 3.11 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
3b814b2e00310f84ec33596d140cb447f7d14bf1dd242ad0cbb672db46b7b042
BLAKE2b-256 checksum
How to use checksums
3522d091f06b453acb3499976edc9ee220c146ddb2afa6a646c054803b3152ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl

Download URL shin-0.2.2-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Size 409.9 kB
Tags CPython 3.11 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e9ab96f2f7d109e06e1d55b4bec6812fc47a5d62f2155f11cfb7d3eabc6001c4
BLAKE2b-256 checksum
How to use checksums
e0828cc1c55e7227c89aa2430b001cc4719c2253f9ce0f48a152d2de79f539ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp310-cp310-win_amd64.whl

Download URL shin-0.2.2-cp310-cp310-win_amd64.whl
Size 102.9 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
9dbd1bc3fb0a1a34a15438801f9899ce700ea8469316b66e37764af811f008ae
BLAKE2b-256 checksum
How to use checksums
35d383d828286e552c4508a3217293900070c7b25b1950d853292ba20db6728a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp310-cp310-musllinux_1_1_x86_64.whl

Download URL shin-0.2.2-cp310-cp310-musllinux_1_1_x86_64.whl
Size 401.3 kB
Tags CPython 3.10 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
fdf6204007059206cece076750426ef90df3d07d8ab932dd576852cc81fa5c4b
BLAKE2b-256 checksum
How to use checksums
8b0a09d41fe4508443f11854fa8ec9ab849a29eab0698197ac0ce07786227f9d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp310-cp310-musllinux_1_1_aarch64.whl

Download URL shin-0.2.2-cp310-cp310-musllinux_1_1_aarch64.whl
Size 411.5 kB
Tags CPython 3.10 Linux musl 1.1+ ARM64
SHA-256 checksum
How to use checksums
94c63d7614a2e594f8b6948e987b8dcee29e624fc5bb0a66e5c4eaf06614cd27
BLAKE2b-256 checksum
How to use checksums
f72a61b6f9fd953649a8a1d18d7ec4ca7c1ea9b1a46ba20231943bcfe1308e37
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL shin-0.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 238.7 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
ae0c2e401ddf0ec82829035cef36e8370111da148d5a3fc21e5854d4a0d2fcee
BLAKE2b-256 checksum
How to use checksums
a49de9ab8b99047ed9b75bdeebe0e782a2348ef19dd0c4b7ae159fc8d11595da
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL shin-0.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 230.5 kB
Tags CPython 3.10 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
ca57e87fe8395e929ee2555ebd1ee5fb87815c15751f224756c732797d33472f
BLAKE2b-256 checksum
How to use checksums
10b9cafca8557604bdf48985be7922a12687e1dcc881d12f2570cdd82b38f4e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp39-cp39-win_amd64.whl

Download URL shin-0.2.2-cp39-cp39-win_amd64.whl
Size 103.2 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
b9e7e23e4ab52f3671e1a6bdbbd772df605040b918aeedb8b35a0b3b5fef6c26
BLAKE2b-256 checksum
How to use checksums
e8d7e9be50026c6976ba085448d9b52f3785037798a54635b8df03afa80de450
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp39-cp39-musllinux_1_1_x86_64.whl

Download URL shin-0.2.2-cp39-cp39-musllinux_1_1_x86_64.whl
Size 401.4 kB
Tags CPython 3.9 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
f93ab6a471fd7aad4d2ecd52853f02fac5f83b0b1a80f35b018f451cc6bc8ebb
BLAKE2b-256 checksum
How to use checksums
cc7681ed15d06497c8ee1233acb70c4690d36f27bb051a2fcb4754790059ed53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp39-cp39-musllinux_1_1_aarch64.whl

Download URL shin-0.2.2-cp39-cp39-musllinux_1_1_aarch64.whl
Size 411.3 kB
Tags CPython 3.9 Linux musl 1.1+ ARM64
SHA-256 checksum
How to use checksums
0562f5e65d24bc68636be940610bbc4f05df41c88965a2ecb6638e05555cef5c
BLAKE2b-256 checksum
How to use checksums
0c6c497da2497014dc9e0c6cfb12de9989e3d6e680d22941192f013b5260da92
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL shin-0.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 238.8 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
085c45977be7bbfab958bc0ac92863ca12d5b5cd9fe8f20e8b0f58a940be63b6
BLAKE2b-256 checksum
How to use checksums
9146fe8234961058cae20044eed9efc399f3401983e81351d95547e362b50b33
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release files / shin-0.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL shin-0.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 230.4 kB
Tags CPython 3.9 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
3cd6a47f5a83d90f70908bd808106df980915c6b0c893d269f2e7d637df2b0fe
BLAKE2b-256 checksum
How to use checksums
39b89616019af9e5d7db12490d62e23b6a37801756cda1886fa37fe578b0280e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.9.6

Release history Release notifications | RSS feed

This release

0.2.2 This release

33 release files

0.2.0

17 release files

0.0.2

2 release files

0.0.1

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