Skip to main content

Key Features

  • Tick-level Polymarket backtesting

  • Fast execution with Numba JIT and Rust

  • Built for strategy research and exchange execution simulation

  • Compatible with the hftbacktest ecosystem

Quick Start

Installation

pip install pm-hftbacktest

Data

Polymarket data is available for free from pmdata.dev. Get an API key from pmdata.dev before running the example.

Example

from hftbacktest import (
    init_orderbook,
    polymarket_to_hbt,
    BacktestAssetPoly,
    ROIVectorMarketDepthBacktest,
    Recorder,
    GTC,
    LIMIT,
)
from hftbacktest.stats import PolyAssetRecord
import pandas as pd
from numba import njit
import numpy as np


# Endgame trading strategy.
@njit
def endgame_trading(
    hbt,
    recorder,
    up_trigger: float,
    stop_long: float,
    order_qty: float,
):
    asset_no = 0

    if not init_orderbook(hbt, asset_no):
        return

    hbt_tick_size = hbt.depth(asset_no).tick_size
    price_tick_size = 0.01

    # Strategy state: enter once and stop once to avoid repeated
    # open/close cycles in the same endgame move.
    activated = False
    # side=1 means buying UP; side=-1 means buying DOWN, represented
    # as selling the UP contract.
    side = 0
    submitted_once = False
    stop_submitted = False

    up_trigger = min(max(up_trigger, price_tick_size), 1.0 - price_tick_size)
    down_trigger = 1.0 - up_trigger

    # stop_long is the UP long stop level. The DOWN side uses the
    # symmetric stop_short level.
    stop_long = min(max(stop_long, price_tick_size), 1.0 - price_tick_size)
    stop_short = 1.0 - stop_long
    order_qty = np.float64(max(order_qty, 0.0))

    # Run strategy logic every 100ms.
    while hbt.elapse(100_000_000) == 0:
        hbt.clear_inactive_orders(asset_no)
        depth = hbt.depth(asset_no)

        # Use the mid price as the trigger price to reduce one-sided
        # order book noise.
        bid, ask = depth.best_bid, depth.best_ask
        mid = (bid + ask) / 2.0

        # Enter the endgame certainty zone: buy UP on an upside break
        # and buy DOWN on a downside break.
        if not activated:
            if mid >= up_trigger:
                activated = True
                side = 1
            elif mid <= down_trigger:
                activated = True
                side = -1

        # Submit the entry order only once after the trigger.
        if activated and (not submitted_once):
            if side > 0:
                p = up_trigger
            else:
                p = down_trigger

            p = round(p / price_tick_size) * price_tick_size
            p = max(price_tick_size, min(1.0 - price_tick_size, p))

            # For a single-submit example, use the price tick index
            # directly as the order id.
            oid = np.uint64(round(p / hbt_tick_size))

            if side > 0:
                hbt.submit_buy_order(asset_no, oid, p, order_qty, GTC, LIMIT, False)
            else:
                hbt.submit_sell_order(asset_no, oid, p, order_qty, GTC, LIMIT, False)
            submitted_once = True

        # position is the net position in the UP contract: positive means
        # holding UP, while negative can be interpreted as holding DOWN.
        pos = hbt.position(asset_no)
        if (not stop_submitted) and (pos != 0):
            need_stop = (pos > 0 and mid <= stop_long) or (
                pos < 0 and mid >= stop_short
            )
            if need_stop:
                close_qty = np.float64(np.abs(pos))
                if pos > 0:
                    px = (
                        round((bid - price_tick_size) / price_tick_size)
                        * price_tick_size
                    )
                    px = max(price_tick_size, min(1.0 - price_tick_size, px))
                    oid = np.uint64(round(px / hbt_tick_size))
                    hbt.submit_sell_order(
                        asset_no, oid, px, close_qty, GTC, LIMIT, False
                    )
                else:
                    px = (
                        round((ask + price_tick_size) / price_tick_size)
                        * price_tick_size
                    )
                    px = max(price_tick_size, min(1.0 - price_tick_size, px))
                    oid = np.uint64(round(px / hbt_tick_size))
                    hbt.submit_buy_order(
                        asset_no, oid, px, close_qty, GTC, LIMIT, False
                    )
                stop_submitted = True

        recorder.record(hbt)

    recorder.record(hbt)


slug = "btc-updown-15m-1778263200"
api_key = "<YOUR_API_KEY>"
storage_options = {"api_key": api_key, "User-Agent": "Mozilla/5.0"}

l2_df = pd.read_parquet(
    f"https://api.pmdata.dev/download/poly_l2/{slug}.parquet",
    storage_options=storage_options,
)
trade_df = pd.read_parquet(
    f"https://api.pmdata.dev/download/poly_trade/{slug}.parquet",
    storage_options=storage_options,
)

data = polymarket_to_hbt(l2_df, trade_df=trade_df)

asset = (
    BacktestAssetPoly()
    .data(data)
    .binary_fee_model(
        maker_fee_rate=-0.07 * 0.2,
        taker_fee_rate=0.07,
    )
)
hbt = ROIVectorMarketDepthBacktest([asset])
recorder = Recorder(hbt.num_assets, 5_000_000)

endgame_trading(
    hbt,
    recorder.recorder,
    up_trigger=0.84,
    stop_long=0.4,
    order_qty=5,
)
_ = hbt.close()

BOOK_SIZE = 100
stats = PolyAssetRecord(recorder.get(0)).resample("1s").stats(book_size=BOOK_SIZE)
print(f"earn: {stats.earn}")
stats.plot()

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pm_hftbacktest-1.0.9-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded PyPymusllinux: musl 1.2+ x86-64

pm_hftbacktest-1.0.9-pp311-pypy311_pp73-musllinux_1_2_armv7l.whl (2.2 MB view details)

Uploaded PyPymusllinux: musl 1.2+ ARMv7l

pm_hftbacktest-1.0.9-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded PyPymusllinux: musl 1.2+ ARM64

pm_hftbacktest-1.0.9-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl (1.7 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ x86-64

pm_hftbacktest-1.0.9-pp311-pypy311_pp73-manylinux_2_28_armv7l.whl (1.9 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ ARMv7l

pm_hftbacktest-1.0.9-pp311-pypy311_pp73-manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ ARM64

pm_hftbacktest-1.0.9-cp314-cp314t-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

pm_hftbacktest-1.0.9-cp314-cp314t-musllinux_1_2_armv7l.whl (2.2 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARMv7l

pm_hftbacktest-1.0.9-cp314-cp314t-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

pm_hftbacktest-1.0.9-cp314-cp314t-manylinux_2_28_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ x86-64

pm_hftbacktest-1.0.9-cp314-cp314t-manylinux_2_28_armv7l.whl (1.9 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARMv7l

pm_hftbacktest-1.0.9-cp314-cp314t-manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

pm_hftbacktest-1.0.9-cp314-cp314-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.14Windows x86-64

pm_hftbacktest-1.0.9-cp314-cp314-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

pm_hftbacktest-1.0.9-cp314-cp314-musllinux_1_2_armv7l.whl (2.2 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARMv7l

pm_hftbacktest-1.0.9-cp314-cp314-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

pm_hftbacktest-1.0.9-cp314-cp314-manylinux_2_28_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

pm_hftbacktest-1.0.9-cp314-cp314-manylinux_2_28_armv7l.whl (1.9 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARMv7l

pm_hftbacktest-1.0.9-cp314-cp314-manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

pm_hftbacktest-1.0.9-cp314-cp314-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

pm_hftbacktest-1.0.9-cp314-cp314-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

pm_hftbacktest-1.0.9-cp313-cp313-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.13Windows x86-64

pm_hftbacktest-1.0.9-cp313-cp313-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

pm_hftbacktest-1.0.9-cp313-cp313-musllinux_1_2_armv7l.whl (2.2 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARMv7l

pm_hftbacktest-1.0.9-cp313-cp313-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

pm_hftbacktest-1.0.9-cp313-cp313-manylinux_2_28_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

pm_hftbacktest-1.0.9-cp313-cp313-manylinux_2_28_armv7l.whl (1.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARMv7l

pm_hftbacktest-1.0.9-cp313-cp313-manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

pm_hftbacktest-1.0.9-cp313-cp313-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pm_hftbacktest-1.0.9-cp313-cp313-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

pm_hftbacktest-1.0.9-cp312-cp312-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.12Windows x86-64

pm_hftbacktest-1.0.9-cp312-cp312-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

pm_hftbacktest-1.0.9-cp312-cp312-musllinux_1_2_armv7l.whl (2.2 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARMv7l

pm_hftbacktest-1.0.9-cp312-cp312-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

pm_hftbacktest-1.0.9-cp312-cp312-manylinux_2_28_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

pm_hftbacktest-1.0.9-cp312-cp312-manylinux_2_28_armv7l.whl (1.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARMv7l

pm_hftbacktest-1.0.9-cp312-cp312-manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

pm_hftbacktest-1.0.9-cp312-cp312-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pm_hftbacktest-1.0.9-cp312-cp312-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

pm_hftbacktest-1.0.9-cp311-cp311-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.11Windows x86-64

pm_hftbacktest-1.0.9-cp311-cp311-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

pm_hftbacktest-1.0.9-cp311-cp311-musllinux_1_2_armv7l.whl (2.2 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARMv7l

pm_hftbacktest-1.0.9-cp311-cp311-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

pm_hftbacktest-1.0.9-cp311-cp311-manylinux_2_28_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

pm_hftbacktest-1.0.9-cp311-cp311-manylinux_2_28_armv7l.whl (1.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARMv7l

pm_hftbacktest-1.0.9-cp311-cp311-manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

pm_hftbacktest-1.0.9-cp311-cp311-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pm_hftbacktest-1.0.9-cp311-cp311-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

Details for the file pm_hftbacktest-1.0.9-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d11f3fac6b9c56a0f4e737cb8dae130eb756ef5e8f2bbc130e0e522875c6a4a9
MD5 174a626988f5a025b2b701097b7e87ce
BLAKE2b-256 7b05d2f634f38490dcbddd0bb4ec9e9bd78f8a5ca340bd14ad7a24944cec32f8

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-pp311-pypy311_pp73-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-pp311-pypy311_pp73-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 94b5bed68699576292353626abb5bea3ceb28c1722959c92e6196706d6273ead
MD5 7471c4dc6b8224807cd555561c603ef2
BLAKE2b-256 6fa38238663e8a0303c4afddff85eb3c4b13476928c2fd406e94f37fba7dcc79

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 5a7ac08e53bc3c3f6d6407e9617ab3101a8f8caba8fc6214fc47a5aef9fd6fbc
MD5 b2b83ed55693b77998694bf5a8f4e39d
BLAKE2b-256 d6798d8555239370ddacefb192ca17152b77c32f648d0f74cbb58f8660ff584e

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b4a876800a08b571842635aca566f4df188ec1396f0a4f6d9a8a69e3adacc0ad
MD5 bd0b1fde7dde5c91939d23bcca8c8157
BLAKE2b-256 6fdf234533af4282e448ead0085b26b172e78e6de1eada217243e48661c5b3a5

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-pp311-pypy311_pp73-manylinux_2_28_armv7l.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-pp311-pypy311_pp73-manylinux_2_28_armv7l.whl
Algorithm Hash digest
SHA256 3e69e2c3e804463ddf37e1c09b56844520ed20b33b75935faaa1c0ae50461d4d
MD5 a37079d4d3440b3562f51f0d33889446
BLAKE2b-256 590c2543c7aa161b0d2ee2b2d83813e76ebb5dee682138ae8f8a73177ab0a9eb

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-pp311-pypy311_pp73-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-pp311-pypy311_pp73-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a3edeb0cc444a9cae469374c85b98024491c7e161d3ffa9c912a0ebaba610808
MD5 1e2437d105d6c3e2d70093ba4769d626
BLAKE2b-256 b7a274c8ce6a47a1816c80777df9b592d7c920acf62ec73308f64dd4cd7ae1a5

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 88bc3e2ae22cdc4f677f24e5b81a948fbcbe3b0b55ddfe12230e6e3d59cd75bd
MD5 040bfc684e7b9525c6a4d2b5c4fdc926
BLAKE2b-256 1ccb9c417809656d7d650f5b82acac60dde1182c239d5770fe7bf83f075e3d79

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314t-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314t-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 5ecf79f383ad0d989f1a61fc31aa10b65a22d1b6734cef05d18d30f2b891fc4f
MD5 33d60b3d8dfe848d9edf271d295ee335
BLAKE2b-256 820ecbb6ce1ae17b6f4a23ba0c1d86f1fe17e857ed64b24f3e20a615b4e46006

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 48d7b75d3153397e525eb5f4541bf5b57982209cd29691eadaceab3ee0e67567
MD5 a5ad662bbc67a553703d541a5fa7326b
BLAKE2b-256 5e22a02109950e7b80bb3940fcdfb80305fbb7727fd34eb7f24801b1de49421f

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314t-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e5fb9d22dcfe2012d1281735593ff6b6e56aabe22a4a51f93cf2e2b21d9f6863
MD5 4435598a0f730f6c3c0593022bdd8aa6
BLAKE2b-256 1900411168e6dcf163e7f0ba4d97581589146b1d711dbf094b7a7dc20b6556c1

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314t-manylinux_2_28_armv7l.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314t-manylinux_2_28_armv7l.whl
Algorithm Hash digest
SHA256 bb3ab5a362e1d5a811379392036077e2808271c0efb13ee2aab80a2ac6107f7a
MD5 7f53c35f2f737b98d9af9ed405643b98
BLAKE2b-256 bb552f71645d5dcd26b68e117d52ceb2321e5256673eb4a6692eef033252fd76

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314t-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8efce63bd251412c18f2135cae6ceee901d9546ca284aa880e7b58fe78c6d5f4
MD5 36c0d62e16803a5e969387273aeccbca
BLAKE2b-256 161d9ce0e5f0eaa8a7fe21b7c764065f73da3649be4d3da773dd97f8f1b82555

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 8dc476eb4d7a2d030e56c1c2beba8d649b990a0ffba72c49f71ef2ef247f6031
MD5 7034f4872c60a559afdc7cb168b74191
BLAKE2b-256 86d38b8c4f2fe9609071dc5842b499a00264fea073adba729b31b00437bf0686

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 906e2dd638e3c4b8f7962cd320de813bcfaa2ec55bf91e7247f9acf252a7b40b
MD5 6dcd6dcf7ead6df2823c6fc9ccf446c4
BLAKE2b-256 e08eaaf585da1619f232b59a6b678218f913f1e30e8f07119fe44e544e665172

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 f159f7d989d620287a2c1f715c707f4ebcc28efa358f4482e0abbd8aa4a00d4b
MD5 cd1557ca7b1a8acd2b772edfb30e6b4e
BLAKE2b-256 39245a494ab7792982ce2d31a7e375f370690366657fa445772199435441bdc7

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 5e8f732e927600a2990cb023259e83e63d2fc4d3d72d61c7e015b9e8b9e2ee19
MD5 4acbee95977312fe9e8b293285a1fe3c
BLAKE2b-256 16e4d52ec594c3ef50f3f3b1918e4d1503b9c6117ae467c8b1ab1f9fbc37f10e

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 755dd97a95fcf371d266a92ffdccad470624e9ce64e72014cbc5f5c258db3167
MD5 afeb8934cbde1d06d30e0d1329528ce9
BLAKE2b-256 45cad44aaa6f080c24c44a6e902de861d32a4c9072afed6d6e2923a3706332b7

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314-manylinux_2_28_armv7l.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314-manylinux_2_28_armv7l.whl
Algorithm Hash digest
SHA256 b19ca33876c16cd6820f4dfda031cffc90a84d6384a2828f9e31668b785f82b3
MD5 45f82ea33e3a755771272aa91b42540d
BLAKE2b-256 2a8749de8b2a779b93b1766d9f453379cacb451b7936b00b7642029b4ed966b5

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 39b82cbf81224ed6ad60e739948d7718a0fd54c0bb6317e088f4265a95b5ac61
MD5 5212ad9634601c489a2018e8629bc458
BLAKE2b-256 8d61407aa7b0f5214c273ce12c1d0d62f23c195ccfeb726decec7e67a146a529

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7d98026afcb602759a82b6f28b965e25511461aaf687deeddf7786569b438d48
MD5 e75e397660493ebbc18f8b9f605b129b
BLAKE2b-256 435028b32cda3a72cd13d4f0aee4d22c88f59fcd0daa36554c29a544759b8300

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b1054f4302dcf555f307594e2868dcf6d32cd53178124dd23a6fd71aaef1ba71
MD5 e9ccab032a4804724f6ee807d826e49b
BLAKE2b-256 0c8bb0a97e4257c4a8cb9e985cedbe6c805c7d1c95cd96f6c9ed5881ab2df049

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 3872eb8125c6715bac1cfe3d89b12a3274bfe03c4ee57c00f6babd1c09023702
MD5 7b82f58988b1448bdb0e48fcf3d32f8d
BLAKE2b-256 75c0a3a21bab28ae3d4387558f02eb2a014ceb26ccb78522c28a4b08eca45654

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6b1535263993ffc6e00df1e5ce86dffea3d59631d9c62195e1b9fb59a8cfa8f7
MD5 1ceda6b8bfe3ef2122d53c491f176095
BLAKE2b-256 3f14df3bdd597e263c804fe7f7e2eafd9ec756462acd2a59d31bba6fe759d73c

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp313-cp313-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp313-cp313-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 5b98012e72885f0e1f8d44dc288ee036a359cf7ab9e32be6ed24c904bdf05b7e
MD5 857c80b84539989b6c62bfe12cf0b12b
BLAKE2b-256 12afc436b8fb1c4f9b7ae78698ecc2fb05b10b709b6877ebaeb5d323ed6daead

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 c7915115c9bfcd08e50f337b217381ee6ad8a141d80d87902ca0d24439773414
MD5 fe4b689264430768ecfd632af9ef6a7a
BLAKE2b-256 d97242b856c9e6f839b5f72589ca8d4b1461c9600b24bcf51705c65d0cdced3b

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3fe42555bc9621cdb45a44e55a82bbb1bfa0ef38c4bcc14cbdc04351cd17720d
MD5 44d2c7ec5fd2d79b4dc7cb183dc9d859
BLAKE2b-256 4f66e3a8f8612327c440cdfe449ce5aa2e63eaa94c304df4677099a8ee8dce3c

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp313-cp313-manylinux_2_28_armv7l.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp313-cp313-manylinux_2_28_armv7l.whl
Algorithm Hash digest
SHA256 085beb698e01144a305df6188852595c6f41e39b52ebda951235fa6e593a89de
MD5 7cfdbdf129e089e5e52d18e7b3c99435
BLAKE2b-256 fe5c1c2fc776d5c72d9993ef59dfa58f77f26d901bba7dac0038e02b421753c1

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5ae1cd683d2f1e1093e9db5ad68e80b76659ba4f21c01c5f79716cab89d7e071
MD5 f577cd42082dfb831efeb33e8722cc80
BLAKE2b-256 ff464b011108376584ecc46c1b516e56c69c146c4db47bf90ffcf49ad9c39152

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3d80442865c9533cc5e255c8e9585a49759221b8bf591379a0fc392a6a894777
MD5 5ac754d558e050a3a3015bbf2b826719
BLAKE2b-256 de1620ade8ea921866caee96278bd7127daa5c6ae32e8474da7a67a538b1101f

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 959e90a208a11b21b409fba6d89bc33a5ee08e9e7968e62e30b752f905dfa726
MD5 e2da283e86acce94f34ec101b0302d5d
BLAKE2b-256 31e5acab3563dadbf9aa8ea78982b4f85162acd7449c3fdbc0f9528162102007

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 32f5628c02f470bd7d2b539940981f3c144de8253976ae9fdccedd2712a17472
MD5 814bdfc7818bca92e2fbf1270ed3eabf
BLAKE2b-256 0017d08022a7020d875fdcea8573e4e66bb80143052fefba83eb43e54f324c83

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 361b74fd1e699c7cd194ea6facdadb767011a4207ae6bff0f5842a9ded9d3085
MD5 0e5711e22c0761953a64aec304c48e20
BLAKE2b-256 9d98e17cdd047993a62b6c7cc44112f5a673555e030515a44c9c0a05547da3c3

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp312-cp312-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp312-cp312-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 cb9a2753971994711fe8201f9560b6c052df6fd9cf3005326a12a0f806672237
MD5 8ec046f188f62975e2cacae3ab745207
BLAKE2b-256 ff2aa6640e61a4027ce689cd89aaa0ccadc81c23eba1fac0dfbe8c90ada441ee

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 be463ea5d518534c8a3f848d87e4cc129415debb151e10a2eabd617b45318956
MD5 e0c74634f5bffa0107141580071b4022
BLAKE2b-256 dc8b02f69443eddf1fc12efb94a8af3d8c452171aad101ad4e9137ffef78aa81

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c8cdf3b76f7816b6c069ef785f496394d0328c836271b2a82c394045cae17841
MD5 bfee3223403efb236bff5c0502629118
BLAKE2b-256 1d21c2e4652769af06aa117c75ec7293388bad9df52630daff62550a7a055209

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp312-cp312-manylinux_2_28_armv7l.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp312-cp312-manylinux_2_28_armv7l.whl
Algorithm Hash digest
SHA256 94c26cc4ce46c56603f073abe6ceac16ea9123276d50afaa6d31754b4fc727d7
MD5 41099294434ce1ac20281dd4ddcae48a
BLAKE2b-256 93a9c562fb13736c2581b93f6f895c6fbb2551379bb7e7360a9154461ad7036e

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4f084baf85ec7d1df702be1e13afd7b562477b274cc1827b37ed55da3d07184c
MD5 c76643e2912cfc32b4062b08d3336b24
BLAKE2b-256 c672b2e3c842bc49ed041139df59f65c2a8f96362b655ba9b48be19d25a1db7e

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b96d616a4b80ae78b6d2aa04c5dca2b874c018a3a5622600b69adbb95323556f
MD5 c8be9e62017e2fe7b60785ff58b1b825
BLAKE2b-256 656804bb622110cf960a952003c8101bf5f344f6e5e062908a8f3a3f0e32b6c5

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e7da6542b9684820f26a17b41b9322c8b3fbbaf1b04588ff20902c46cba039e2
MD5 151c5b56ee31e0bcbcaadbf23f65ca60
BLAKE2b-256 88513727c0e91a96e80a11c84e82cb25ebe21875f44a8b5587a610ded5614604

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 de0021517558bcac7a4559dde065ac4cdf7824786e931d866a4defc64765bbac
MD5 ff59ed55a5873aa6eb5106c3aa93750c
BLAKE2b-256 e389153084bd46a749817d2f644d616f5df6674182db3f39327948422a8023bf

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 96420df4e8375e8955ab3c7e31ccaa406fb7e68481204670a39db65aa985eae9
MD5 c2f2bbd6a2a17e6f298f78b8d0782485
BLAKE2b-256 a5ef247e8ee265e91723c42283c320d9744f926dade621bfefafcd4e6fca7fc3

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp311-cp311-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp311-cp311-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 0f7c1755ab193158f48552082903d73c330c516d8d6e85d809ab6f2e37f66f5a
MD5 7dbfec9764c363fbad27ded155ae4fc7
BLAKE2b-256 8766f37c95bdf088ed5c1673bbf844c26071ed85684d4a06cbc9e3f538319be0

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 eb0139855aaf8d898bc4de2ced6ceefe4190e0af1f7cae6e4acd302d53b353f3
MD5 b6f3016a68219e7262f047859ec7d946
BLAKE2b-256 eb734f909292f8b4c1e55a1e7131d959eca618bb70334fae7efb1e92ae21c397

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a5df68c396658e54d186cb7514062300ec6cbe8d3930f434dbf2a46af1ee4f25
MD5 ec649fc34217efe1c1d7d957a52db53c
BLAKE2b-256 1be791addb5aad022d337351ae32567db6a8622289999d4fb78e3efce1f7c474

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp311-cp311-manylinux_2_28_armv7l.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp311-cp311-manylinux_2_28_armv7l.whl
Algorithm Hash digest
SHA256 515765b73b89bcc44559aa7afba0fe4eca1851b901a07916b1334fed09bc3a12
MD5 3428a16fb90720d0281dd901182f704c
BLAKE2b-256 8493b25c445da21e68b6bfc70b457974251d4ed1343618f327f8ce6bc978c7bb

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5a56ab112bfe90e6da31ac208b7878d3e646678799702d5cdf1332aa67a9e1c9
MD5 57a386bcaa73ec7d31b409b4b3a6a4dc
BLAKE2b-256 0aed8ddd97d6b98cfde0f1510105e348e986b5bc6ba430bc1e7d7e9ababfc100

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 145c1b6691961d9cae4cb6265c4fd2b11faa42c23c379fb916dc7374506800c2
MD5 b762b5e5d2fda9bc3722d9469cdaf868
BLAKE2b-256 fc19df8d9148ba338c58c17dfcb58ec4c4cf9955f229b8e386ea270b0d2817d5

See more details on using hashes here.

File details

Details for the file pm_hftbacktest-1.0.9-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pm_hftbacktest-1.0.9-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 18df2474c229aa04a3b269f3419d8eca89217e8006b40127e2e2e15a4a9aeb80
MD5 0cb03cf8ff6ac6fb264278bbcb2fd96e
BLAKE2b-256 3ed2f819abc42cca66cbb16a0b2ab1f203e7a14c38ce3630643b906890b16c70

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.9 This release

48 files

1.0.8

48 files

1.0.7

52 files

1.0.6

52 files

1.0.5

52 files

1.0.4

52 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