GMX's design answers a real problem: on-chain order books are expensive and shallow, so instead of matching traders against each other, it matches them against a pool. Traders get filled at the oracle price with no slippage regardless of size, and the pool earns their fees and, on average, their losses. It was the template for an entire generation of perpetual protocols.
How the pools work
In v1, the GLP pool held a basket of assets and served as counterparty to all positions. v2 replaced it with isolated GM markets — separate pools per market with their own backing assets — which contains risk far better: a problem in one market no longer threatens every liquidity provider. Providers earn a share of trading fees, borrow fees and liquidation revenue, paid in ETH or the market's base assets rather than in emissions.
The 2025 exploit
In July 2025 an attacker exploited a re-entrancy flaw in GMX v1 on Arbitrum, manipulating the accounting of the GLP pool to extract roughly $40m. A substantial portion was returned after the team offered a bounty. v2 markets were unaffected, and v1 was subsequently deprecated. It was a genuine contract failure in a protocol that had run for four years, and it is a reminder that time in production reduces risk without eliminating it.
Costs
Opening and closing each cost around 0.05% to 0.07%, plus a borrowing fee charged continuously against the pool's utilisation. That borrow rate is the thing to model: for a position held over days rather than hours, it typically dominates the entry cost, and it can make a correct directional call unprofitable.
Who should use GMX
Traders wanting large, slippage-free entries on majors for short holding periods, and liquidity providers who want fee-based yield and understand they are the house. Use v2 markets. For long-held positions, the borrow cost usually makes an order-book venue cheaper.