Rename VIP→Tier, recalculate equity curve on fee tier change
Renamed all "VIP N" to "Tier N" in config, server, and HTML dropdowns. Added recalc_equity_curve() that rebuilds the equity curve with new fee rates. Previously the equity curve was passed through unchanged when switching tiers, so the chart visually stayed identical even though PnL numbers changed. Now each tier produces its own curve. Example OBI historical: Tier 0 equity ends at 141.5, Tier 6 at 149.7 — the chart visibly shifts up as fees drop from 4.5bp to 2.4bp taker.
This commit is contained in:
+14
-14
@@ -12,24 +12,24 @@ from typing import Optional
|
||||
|
||||
# ── Perps fee tiers (base rates) ──
|
||||
PERPS_TIERS = {
|
||||
0: {"name": "VIP 0", "volume": 0, "taker": 0.00045, "maker": 0.00015},
|
||||
1: {"name": "VIP 1", "volume": 5_000_000, "taker": 0.00040, "maker": 0.00012},
|
||||
2: {"name": "VIP 2", "volume": 25_000_000, "taker": 0.00035, "maker": 0.00008},
|
||||
3: {"name": "VIP 3", "volume": 100_000_000,"taker": 0.00030, "maker": 0.00004},
|
||||
4: {"name": "VIP 4", "volume": 500_000_000, "taker": 0.00028, "maker": 0.00000},
|
||||
5: {"name": "VIP 5", "volume": 2_000_000_000, "taker": 0.00026, "maker": 0.00000},
|
||||
6: {"name": "VIP 6", "volume": 7_000_000_000, "taker": 0.00024, "maker": 0.00000},
|
||||
0: {"name": "Tier 0", "volume": 0, "taker": 0.00045, "maker": 0.00015},
|
||||
1: {"name": "Tier 1", "volume": 5_000_000, "taker": 0.00040, "maker": 0.00012},
|
||||
2: {"name": "Tier 2", "volume": 25_000_000, "taker": 0.00035, "maker": 0.00008},
|
||||
3: {"name": "Tier 3", "volume": 100_000_000,"taker": 0.00030, "maker": 0.00004},
|
||||
4: {"name": "Tier 4", "volume": 500_000_000, "taker": 0.00028, "maker": 0.00000},
|
||||
5: {"name": "Tier 5", "volume": 2_000_000_000, "taker": 0.00026, "maker": 0.00000},
|
||||
6: {"name": "Tier 6", "volume": 7_000_000_000, "taker": 0.00024, "maker": 0.00000},
|
||||
}
|
||||
|
||||
# ── Spot fee tiers (base rates) ──
|
||||
SPOT_TIERS = {
|
||||
0: {"name": "VIP 0", "volume": 0, "taker": 0.00070, "maker": 0.00040},
|
||||
1: {"name": "VIP 1", "volume": 100_000, "taker": 0.00060, "maker": 0.00030},
|
||||
2: {"name": "VIP 2", "volume": 1_000_000, "taker": 0.00050, "maker": 0.00020},
|
||||
3: {"name": "VIP 3", "volume": 10_000_000, "taker": 0.00040, "maker": 0.00010},
|
||||
4: {"name": "VIP 4", "volume": 50_000_000, "taker": 0.00030, "maker": 0.00005},
|
||||
5: {"name": "VIP 5", "volume": 200_000_000, "taker": 0.00020, "maker": 0.00000},
|
||||
6: {"name": "VIP 6", "volume": 1_000_000_000,"taker":0.00010,"maker": -0.00005},
|
||||
0: {"name": "Tier 0", "volume": 0, "taker": 0.00070, "maker": 0.00040},
|
||||
1: {"name": "Tier 1", "volume": 100_000, "taker": 0.00060, "maker": 0.00030},
|
||||
2: {"name": "Tier 2", "volume": 1_000_000, "taker": 0.00050, "maker": 0.00020},
|
||||
3: {"name": "Tier 3", "volume": 10_000_000, "taker": 0.00040, "maker": 0.00010},
|
||||
4: {"name": "Tier 4", "volume": 50_000_000, "taker": 0.00030, "maker": 0.00005},
|
||||
5: {"name": "Tier 5", "volume": 200_000_000, "taker": 0.00020, "maker": 0.00000},
|
||||
6: {"name": "Tier 6", "volume": 1_000_000_000,"taker":0.00010,"maker": -0.00005},
|
||||
}
|
||||
|
||||
# ── Staking discount multipliers ──
|
||||
|
||||
Reference in New Issue
Block a user