malkhut: urgency-driven maker/taker + calibrated slippage + chase + docs

This commit is contained in:
Codex
2026-07-17 10:16:55 +02:00
parent 5c4ccdb1de
commit 8857daedfa
9 changed files with 335 additions and 145 deletions

View File

@@ -90,6 +90,11 @@ class CMAParameterCodec:
ParamSpec("toxic_counterparty_weight", "float", 0.0, 10.0),
ParamSpec("low_liquidity_weight", "float", 0.0, 10.0),
ParamSpec("latency_stress_weight", "float", 0.0, 10.0),
ParamSpec("wait_to_retry_ms", "int", 0, 2000),
ParamSpec("chase_offset_ticks", "int", 0, 10),
ParamSpec("chase_max_retries", "int", 0, 5),
ParamSpec("urgency_taker_threshold", "float", 0.1, 0.9),
ParamSpec("urgency_taker_penalty_bps", "float", 0.0, 10.0),
)
def initial_vector(self, baseline: FulfilmentPolicyParams) -> list[float]:
@@ -146,6 +151,12 @@ class CMAParameterCodec:
toxic_counterparty_weight=vals.get("toxic_counterparty_weight", 3.0),
low_liquidity_weight=vals.get("low_liquidity_weight", 2.0),
latency_stress_weight=vals.get("latency_stress_weight", 1.0),
wait_to_retry_ms=vals.get("wait_to_retry_ms", 0),
chase_enabled=vals.get("chase_max_retries", 0) > 0,
chase_offset_ticks=vals.get("chase_offset_ticks", 1),
chase_max_retries=vals.get("chase_max_retries", 0),
urgency_taker_threshold=vals.get("urgency_taker_threshold", 0.65),
urgency_taker_penalty_bps=vals.get("urgency_taker_penalty_bps", 2.0),
)