What EPT Does For You
EPT is your claim on exchange points earned during the epoch. Deposit USDC, get EPT. Use the flash loop to multiply your exposure: deposit, sell the ST you receive, re-deposit the proceeds, repeat.
EPT is an ERC20 with a built-in credit accrual system. Each epoch creates a new EPT per exchange per strategy, e.g., EPT-Pacifica-E007 for Pacifica points from Epoch 7. Think of it as a pre-market futures contract on exchange loyalty points.
Multi-EPT: If a strategy earns points on multiple exchanges, you receive a separate EPT for each. A $100 deposit into Pacifica-Extended Funding Arb gives you 1 ST + 99.50 EPT_Pacifica + 99.50 EPT_Extended.
EPT is deposit-only. No secondary market. You get it by depositing USDC, and the flash loop is how you stack more of it.
The Credit System
The credit formula:
credits=balance×creditRate×Δt
Your credits grow continuously while you hold EPT. The rate, creditRate, is set by ArcX’s Credits Oracle and reflects strategy activity:
| Strategy Type | What creditRate reflects | Why |
|---|
| Funding arb | Current open interest (OI) | More OI = more exchange points |
| Market making | Trading volume throughput | More volume = more activity points |
Why variable rate? If the strategy was idle for 3 weeks then ramped up for 5 weeks, a constant rate would distribute credits equally across the epoch. Variable creditRate concentrates credit accrual during high-activity periods, aligning with when points were actually generated.
Fallback: If the Credits Oracle goes down, credits accrue at the last known rate. If creditRate were constant, it cancels out in the final ratio, as proven in Credit Mathematics.
Credit Checkpointing
Every time EPT moves (transfer, mint), the contract checkpoints both sender and receiver:
- Compute sender’s accrued credits since last checkpoint
- Lock those credits to the sender
- Do the same for the receiver
- Execute the transfer
Lazy evaluation. Same result as continuous tracking, fraction of the gas.
| Action | Effect on your credits |
|---|
| Hold for the full epoch | Maximum credit accrual |
| Deposit mid-epoch | Credits start from your deposit time |
| Transfer EPT to another wallet | Credits locked at checkpoint. You keep what you earned. |
| Claim points after finalization | Credits settled, gross points computed, redemption fee deducted, net PointsTokens minted. alreadyClaimed updated to prevent double-claiming. |
| Hold through multiple epochs | Each epoch has its own EPT contract. Credits do not carry over. You must claim from each epoch separately. |
Worked Example: Two Depositors at Different Times
This example uses a simplified 8-week epoch. The math works identically for any epoch length.
Alice deposits $100 on Day 0. Bob deposits $100 on Day 3 (mid-epoch). CreditRate = 10 (constant for simplicity).
Day 0 onwards: Alice holds 100 EPT → accruing credits immediately
Day 3: Bob deposits $100 → receives 100 EPT → starts accruing credits
Full epoch (604,800 seconds):
| Duration (seconds) | Credits | Share | Points (of 1,000) |
|---|
| Alice | 604,800 (full epoch) | 604,800,000 | 63.6% | 636 |
| Bob | 345,600 (Day 3 onward) | 345,600,000 | 36.4% | 364 |
Alice gets more because she deposited earlier and accrued credits for 3 extra days. The credit system correctly weights amount × duration.
For variable creditRate examples, see Credit Mathematics.
The Flash Loop: Leveraged EPT
The flash loop multiplies your EPT exposure: deposit USDC, sell the resulting ST on the ArcX AMM, re-deposit the proceeds, repeat. After 3 iterations with a 10% ST discount, $100 produces ~270 EPT at ~$0.10 each. See Protocol Overview for step-by-step mechanics and EPT Pricing for the convergence formula.
All EPT from the flash loop accrues credits from the moment of each deposit. Earlier loop iterations earn more credits than later ones (more time remaining). So run the flash loop early.
Claiming Points
After finalization, the Final Points Oracle reports totalPoints. The contract computes:
pointsPerCredit=totalCreditstotalPoints
yourPoints=yourCredits×pointsPerCredit−alreadyClaimed
When you call claimPoints(): credits settled → gross PointsTokens computed → redemption fee deducted → net PointsTokens minted to your wallet.
No expiry. Claim incrementally; the contract tracks what you’ve already received.
What Determines Your EPT’s Value
Since EPT has no secondary market, its value is determined by the implied cost through the flash loop:
| Factor | Effect | Mechanism |
|---|
| ST discount on ArcX AMM | ↑ discount → ↓ EPT cost | Deeper ST discounts mean cheaper EPT via the flash loop |
| Expected creditRate | ↑ activity → ↑ EPT value | More active strategy = more credits per EPT |
| Time remaining | ↓ time left → ↓ EPT value | Less credits to earn for new deposits |
| Expected points value | ↑ TGE expectations → ↑ EPT demand | More deposits → more flash loops → more ST selling |
| Minting parity | Caps combined ST+EPT at $1 | EPT_implied_cost = 1 - X/R |
The minting parity equation:
EPTfair=1−RX
Where X = ST market price and R = exchange rate. Full derivation in EPT Pricing.
The one-way arb: If the combined value of ST + EPT from a $1 deposit exceeds $1, anyone can deposit and sell both at a profit. This caps the upside. But there is no early redemption to correct underpricing. See EPT Pricing for the full analysis.
- Depositing late: You accrue fewer credits than early depositors. Same capital, fewer points per dollar.
- creditRate drops: Strategy goes idle → credits accrue slower.
- Points are worthless: No TGE or negligible airdrop → EPT value approaches zero.
- Flash loop at bad timing: If ST discount widens after your loop, later depositors get EPT cheaper.