Skip to main content

exsdk · 易行量化

面向期货、期权策略开发的 Python SDK,提供合约查询、实时行情、期货 K 线和直连 CTP 交易。 通过简洁的同步接口,策略可以持续读取行情、计算指标并响应数据变化。

快速开始

安装:

pip install exsdk

在 官网 获取 Token 后,连接行情和 K 线。

连接示例:

from exsdk import ExApi

with ExApi("YOUR_TOKEN") as api:
    symbol = "SHFE.au9999"  # 黄金主连,不复权,按服务更新自动换月。
    quote = api.watch_quote(symbol)
    klines = api.watch_kline(symbol, "1m", data_length=200)

    while api.wait_update():
        if quote.is_changing("last_price"):
            print("最新价", quote.data().last_price)

        if klines.is_changing("timestamp"):
            print("新 K 线", klines.data().iloc[-1].to_dict())

连接交易账户并读取资金(资金账号须与 官网 绑定的期货账号一致):

from exsdk import ExApi, CtpAccount

ctp_account = CtpAccount(
    broker_id="期货公司代码",
    user_id="资金账号",
    password="交易密码",
    front_url="tcp://期货公司提供的地址:端口",
    app_id="期货公司提供的 AppID",
    auth_code="期货公司提供的授权码",
)

with ExApi("YOUR_TOKEN", ctp_account) as api:
    account = api.watch_account()
    while api.wait_update():
        if api.trading_status() == "READY" and account.is_changing("available"):
            print("柜台可用资金", account.data().available)

交易账户同步完成后才进入 READY。行情或交易连接中断时,data() 保留最近一次快照;策略使用前应检查交易状态和行情时间戳。

系统架构

flowchart TD
    Broker[期货公司交易柜台]
    Market[官方期货、期权行情系统]
    SDK[exsdk]

    Broker <-->|直连 CTP| SDK
    Market -->|行情接口| SDK

    classDef source fill:#f3f4f6,stroke:#9ca3af,color:#111;
    classDef sdk fill:#dbeafe,stroke:#598bea,stroke-width:2px,color:#111;

    class Broker,Market source;
    class SDK sdk;
  • 策略始终运行在用户本地环境中,策略代码与交易信号计算均保留在本地。
  • 交易连接由本地 SDK 直接建立到期货公司柜台,交易账号、密码和委托不经过行情服务。

主要功能

  • 合约查询:按交易所、品种、期货/期权和是否主力筛选合约,获取合约详细信息。
  • 主力连续:以 9999 结尾的主连行情与 K 线,查询当前标的和历史换月记录;交易使用具体合约。
  • 实时行情:通过 Quote 对象读取期货、期权的最新价格、成交量、持仓量和盘口。
  • 期货 K 线序列:通过 pandas DataFrame 获取历史与实时 K 线,支持多种周期;期权暂不提供 K 线。
  • CTP 交易:读取账户资金及期货、期权的持仓、订单与成交,支持普通投机限价下单与撤单。
  • 统一更新:使用 wait_update() 推进更新,通过观察句柄的 is_changing() 判断变化、data() 读取快照。
  • 连接管理:自动连接官方数据服务,支持断线重连和订阅恢复。

完整接口、周期取值、数据字段和使用约定见 SDK 使用指南。使用前请阅读免责声明。

Metadata

Release files for exsdk 1.7

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

Built distributions (wheels)

Table of built distributions (wheels) for exsdk 1.7
File Actions
exsdk-1.7-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details for exsdk-1.7-cp314-cp314-win_amd64.whl
exsdk-1.7-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details for exsdk-1.7-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
exsdk-1.7-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details for exsdk-1.7-cp314-cp314-macosx_11_0_arm64.whl
exsdk-1.7-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for exsdk-1.7-cp313-cp313-win_amd64.whl
exsdk-1.7-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details for exsdk-1.7-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
exsdk-1.7-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details for exsdk-1.7-cp313-cp313-macosx_11_0_arm64.whl
exsdk-1.7-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for exsdk-1.7-cp312-cp312-win_amd64.whl
exsdk-1.7-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details for exsdk-1.7-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
exsdk-1.7-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details for exsdk-1.7-cp312-cp312-macosx_11_0_arm64.whl

Total release size: 42.3 MB

Release files / exsdk-1.7-cp314-cp314-win_amd64.whl

Download URL exsdk-1.7-cp314-cp314-win_amd64.whl
Size 2.2 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
13c2a136ec4b796c734a9192f8494edfab95bfe590558d700b96de7e8e978483
BLAKE2b-256 checksum
How to use checksums
dd2021e780dc13d99c659910f4b4282e26d4b9a04dd676d7bd4331348573dd53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Release files / exsdk-1.7-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL exsdk-1.7-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 6.8 MB
Tags CPython 3.14 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
46ab6a7379bcd26e82aeb563da359d83d76981e2d49f86a0547f3d976024ebb0
BLAKE2b-256 checksum
How to use checksums
797ff0cb4f4f6e99aa2528d284a440d56d8440833024a134bcd0cc2eaea07b23
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Release files / exsdk-1.7-cp314-cp314-macosx_11_0_arm64.whl

Download URL exsdk-1.7-cp314-cp314-macosx_11_0_arm64.whl
Size 5.1 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
95f1ab634a7858fbcb7dd597c335b0669509163799f50f848b5713ad406e5045
BLAKE2b-256 checksum
How to use checksums
40748c3d26f48d3a84e07a1ed27dea237f57a3007cdd6778b5cef7a2c9462d1a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Release files / exsdk-1.7-cp313-cp313-win_amd64.whl

Download URL exsdk-1.7-cp313-cp313-win_amd64.whl
Size 2.1 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
93f53f4647f60dba171aa2255b915d8b01d452d68ef79e5addd70c94c8832d9f
BLAKE2b-256 checksum
How to use checksums
540b03f6c74e3675c5090dbde9ca922044b5fe9ac26647f9fe89151974777813
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Release files / exsdk-1.7-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL exsdk-1.7-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 6.9 MB
Tags CPython 3.13 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7eaae5b2fcfb333e9f9a337b4a332b15889bf4cb063896531dceb359434f5903
BLAKE2b-256 checksum
How to use checksums
54aee023d645e9dce18178448fa3dc81c359f3cc40a85c953f626146feae5ced
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Release files / exsdk-1.7-cp313-cp313-macosx_11_0_arm64.whl

Download URL exsdk-1.7-cp313-cp313-macosx_11_0_arm64.whl
Size 5.1 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
9eea5a2c981140d844f43a402f72aea2873fecccef07c803a1a31626b6617e86
BLAKE2b-256 checksum
How to use checksums
f27122f402dbd839e92e32efe27f1b3c074033d33b46c760f7a34f2b204e1d61
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Release files / exsdk-1.7-cp312-cp312-win_amd64.whl

Download URL exsdk-1.7-cp312-cp312-win_amd64.whl
Size 2.1 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
c7a53d65dd46d1e742da5bf60af3231c25730ed5c4194bc7254cc8890de3ae9f
BLAKE2b-256 checksum
How to use checksums
e5d586648a37ca79e5502e62e273d09b0a5428c5156d4c84241d41dd3d580193
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Release files / exsdk-1.7-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL exsdk-1.7-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 6.9 MB
Tags CPython 3.12 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
193a070f3073c3a97056a27f7809edfc80572893b0b395f59efa31857e720a4f
BLAKE2b-256 checksum
How to use checksums
97cb8caaf3baf1bd1a26c5bec18ba87db0bf1938557261c2cb4c8a502e3d4009
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Release files / exsdk-1.7-cp312-cp312-macosx_11_0_arm64.whl

Download URL exsdk-1.7-cp312-cp312-macosx_11_0_arm64.whl
Size 5.1 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
18ef21ceffaa98b9a19ddf12c705d9e25aab82f03de600931657f2dbb492ef5b
BLAKE2b-256 checksum
How to use checksums
ad500366f41f875646fc8bfa5d13e43931bb88b5e41b7bad725e722307c26683
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Security for exsdk 1.7

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.

Full provenance

All 9 files in this release have been uploaded with provenance metadata.

Select from 9 files

Attestation for exsdk-1.7-cp314-cp314-win_amd64.whl

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

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.

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