Skip to content

fee-compare: signed-carry review fixes + GMX subsquid schema repair - #2224

Merged
Flotapponnier merged 1 commit into
devfrom
fix/fee-compare-signed-carry-gates
Sep 1, 2026
Merged

fee-compare: signed-carry review fixes + GMX subsquid schema repair#2224
Flotapponnier merged 1 commit into
devfrom
fix/fee-compare-signed-carry-gates

Conversation

@Flotapponnier

Copy link
Copy Markdown
Collaborator

Corrections issues de la review du commit apple-to-apple (4de0f17), plus un bug de prod découvert au test.

Review fixes

  • Gates de carry générique : fundingFees > 0.001 droppait les crédits de funding (négatifs) — un wallet côté receveur perdait son crédit projeté sur dYdX/Paradex. Passage à Math.abs, idem pour fundingProjected.
  • Proxy HL to GMX : le clamp Math.max(0, fundingFeesUsdc) annulait les crédits de funding GMX réalisés. Supprimé, le signe est conservé.
  • Fallback funding Gains : est > 0.01 jetait les estimations créditrices. Passage à Math.abs.
  • Paradex carry signé : les rates venaient de interest_rate (non signé, filtré > 0), ce qui créditait systématiquement les shorts avec le modèle signé. Bascule sur /v1/markets/summary funding_rate (signé).
  • EdgeX maker : un maker fee de 0 (promo) était traité comme donnée manquante et retombait sur le taker rate.
  • effectiveRate actual vs projected : un taux calculé sur les fills réels du wallet n'est plus écrasé par une projection venant de l'autre venue, notes explicites.

Prod bug (schema drift Subsquid GMX)

indexToken { symbol } n'existe plus sur TradeAction — la requête échouait en validation GraphQL et le wallet GMX renvoyait silencieusement 0 trades en prod. Remplacé par marketAddress mappé via GMX_MARKETS.

Tests (API locale, wallets réels)

  • HL vs Gains (whale 2000 fills), HL vs dYdX (maker-aware 4.10 vs 5.0 bps), HL vs Paradex (crédit -40$ signé), HL vs EdgeX (maker-aware), Gains vs GMX et GMX vs Gains (wallet GMX de nouveau fonctionnel, 704 trades)
  • typecheck + lint OK

@Flotapponnier
Flotapponnier merged commit 5abd8d9 into dev Sep 1, 2026
1 check failed
@Flotapponnier
Flotapponnier deleted the fix/fee-compare-signed-carry-gates branch September 1, 2026 13:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant