malkhut(fix): CORRECT FEE BUG — taker 0.5→5.0, maker -0.2→+2.0
Fable's spec (SPEC_MALKHUT_ACTUALS_INTAKE.md) confirmed 10x fee error from our own fills (dolphin.trade_execution_quality). Fixed: - BingX taker: 0.5 → 5.0 bps - BingX maker: -0.2 → +2.0 bps (POSITIVE on BingX, not a rebate) - Binance taker: 0.4 → 4.5 bps - Bybit taker: 0.06 → 5.5 bps - All 13 per-asset profiles: maker=-0.2 taker=0.5 → maker=2.0 taker=5.0 Source of truth: dolphin.trade_execution_quality (8006 rows, avg taker=5.016 bps). Every policy trained before this fix was at 10x too-cheap fees. Re-measurement at correct fees is required.
This commit is contained in:
@@ -297,8 +297,8 @@ class TestBTCProfile:
|
||||
|
||||
def test_fees(self):
|
||||
p = get_asset_profile("BTCUSDT")
|
||||
assert p.maker_fee_bps == -0.2
|
||||
assert p.taker_fee_bps == 0.5
|
||||
assert p.maker_fee_bps == 2.0
|
||||
assert p.taker_fee_bps == 5.0
|
||||
|
||||
def test_orderbook(self):
|
||||
p = get_asset_profile("BTCUSDT")
|
||||
@@ -455,8 +455,8 @@ class TestBNBProfile:
|
||||
|
||||
def test_lower_fees(self):
|
||||
p = get_asset_profile("BNBUSDT")
|
||||
assert p.maker_fee_bps == -0.1
|
||||
assert p.taker_fee_bps == 0.4
|
||||
assert p.maker_fee_bps == 2.0
|
||||
assert p.taker_fee_bps == 5.0
|
||||
|
||||
def test_is_gas(self):
|
||||
assert get_asset_profile("BNBUSDT").is_gas_token
|
||||
@@ -738,8 +738,8 @@ class TestProfileFieldValidation:
|
||||
|
||||
def test_fee_bps_reasonable(self):
|
||||
for p in ASSET_PROFILES.values():
|
||||
assert -1.0 <= p.maker_fee_bps <= 1.0
|
||||
assert 0.0 <= p.taker_fee_bps <= 2.0
|
||||
assert 0.0 <= p.maker_fee_bps <= 10.0
|
||||
assert 0.0 <= p.taker_fee_bps <= 10.0
|
||||
assert p.taker_fee_bps >= p.maker_fee_bps
|
||||
|
||||
def test_depth_usd_positive(self):
|
||||
|
||||
Reference in New Issue
Block a user