From 244af88abf7c60d2e94ed9f1f44cc37ae1145948 Mon Sep 17 00:00:00 2001 From: alex101xela Date: Fri, 7 Aug 2026 08:26:05 +0400 Subject: [PATCH 1/4] Add TOB time in force support --- x10/models/order.py | 1 + x10/signing/order_object.py | 3 +++ 2 files changed, 4 insertions(+) diff --git a/x10/models/order.py b/x10/models/order.py index 4cd02f4..8b96ba7 100644 --- a/x10/models/order.py +++ b/x10/models/order.py @@ -10,6 +10,7 @@ class TimeInForce(StrEnum): GTT = "GTT" IOC = "IOC" FOK = "FOK" + TOB = "TOB" # post only must be set class OrderSide(StrEnum): diff --git a/x10/signing/order_object.py b/x10/signing/order_object.py index db64c23..4407e8f 100644 --- a/x10/signing/order_object.py +++ b/x10/signing/order_object.py @@ -209,6 +209,9 @@ def validate_tpsl_order(): if time_in_force == TimeInForce.FOK: raise ValidationError("FOK `time_in_force` value is deprecated") + if time_in_force == TimeInForce.TOB and post_only == False: + raise ValidationError("`post_only` must be true for TOB `time_in_force`") + if expire_time is None: raise ValidationError("`expire_time` must be provided") From ed2be9cd1b80f2825c285dbeb3cc7177acdc3bb9 Mon Sep 17 00:00:00 2001 From: alex101xela Date: Fri, 7 Aug 2026 08:26:30 +0400 Subject: [PATCH 2/4] Add TOB time in force support --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index af38eaa..f6e78eb 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -5,7 +5,7 @@ build-backend = "poetry.core.masonry.api" [tool.poetry] name = "x10-python-trading-starknet" -version = "2.4.1" +version = "2.5.0" description = "Python client for X10 API" authors = ["X10 "] repository = "https://github.com/x10xchange/python_sdk" From 0ce2536dd196906cef880f00c879e936d6d500b7 Mon Sep 17 00:00:00 2001 From: alex101xela Date: Fri, 7 Aug 2026 08:27:34 +0400 Subject: [PATCH 3/4] Add TOB time in force support --- x10/models/order.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/x10/models/order.py b/x10/models/order.py index 8b96ba7..c200169 100644 --- a/x10/models/order.py +++ b/x10/models/order.py @@ -10,7 +10,7 @@ class TimeInForce(StrEnum): GTT = "GTT" IOC = "IOC" FOK = "FOK" - TOB = "TOB" # post only must be set + TOB = "TOB" class OrderSide(StrEnum): From a189daf53765206eb275d6bc7516fe2a89445738 Mon Sep 17 00:00:00 2001 From: alex101xela Date: Fri, 7 Aug 2026 08:47:39 +0400 Subject: [PATCH 4/4] Add TOB time in force support --- x10/signing/order_object.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/x10/signing/order_object.py b/x10/signing/order_object.py index 4407e8f..2693af6 100644 --- a/x10/signing/order_object.py +++ b/x10/signing/order_object.py @@ -209,7 +209,7 @@ def validate_tpsl_order(): if time_in_force == TimeInForce.FOK: raise ValidationError("FOK `time_in_force` value is deprecated") - if time_in_force == TimeInForce.TOB and post_only == False: + if time_in_force == TimeInForce.TOB and not post_only: raise ValidationError("`post_only` must be true for TOB `time_in_force`") if expire_time is None: