Aggeus Market Protocol Flow

👩‍💼 Kelly

Market Maker

70% confident in Y
Stakes 10k sats

🤝 Coordinator

Non-custodial Proxy

Facilitates trades
Never holds custody

👨‍💻 John

First Buyer

Buys Kelly's position
Pays 3k sats

🎯 Tommy

Second Buyer

Buys John's position
Pays 4k sats

🔮 Oracle

Truth Source

Reveals Y or N
when event resolves

Phase 1: Market Making

Kelly creates offer: 70% confident in outcome Y, willing to bet 10k sats

Kelly's Initial Contract:
• Deposits 10k sats into smart contract
• Signs transaction allowing coordinator to change state
• Goes offline - can return later to check results
Kelly → Smart Contract: 10,000 sats

Phase 2: First Trade (John Buys)

John wants to take the opposite side of Kelly's bet

Coordinator Action:
1. Uses Kelly's pre-signed transaction
2. Sends Kelly 3k sats immediately
3. Moves Kelly's 10k to second contract state
4. Creates mirror contract with John
Coordinator → Kelly: 3,000 sats (immediate payout)
John → Coordinator: 3,000 sats (via Lightning + preimage)

Contract States After Trade:

Kelly's Contract:
If Y revealed → Kelly gets 10k
If N revealed → Coordinator gets 10k
John's Contract:
If Y revealed → Coordinator gets 10k
If N revealed → John gets 10k

Phase 3: Position Transfer (Tommy Buys from John)

John wants to sell his position for 4k sats

John's Sale Setup:
• John signs transaction: "Pay me 4k, coordinator keeps 6k"
• Coordinator finds Tommy who wants this position
• Creates new contract with Tommy (same terms as John's)
Tommy → Coordinator: 4,000 sats (via Lightning + preimage)
Coordinator → John: 4,000 sats (executes John's pre-signed tx)

John's Profit: Bought for 3k, sold for 4k = +1k sats profit!

Phase 4: Market Resolution

Oracle reveals the outcome

If Y is Revealed (Kelly was right)

Kelly: Keeps 3k + gets 10k = 13k total
Profit: +3k (30% gain)

Tommy: Loses his 4k stake
Loss: -4k sats

Coordinator: Breaks even (proxy only)

If N is Revealed (Kelly was wrong)

Kelly: Keeps only 3k sats
Loss: -7k (70% loss)

Tommy: Gets 10k for his 4k stake
Profit: +6k sats

Coordinator: Breaks even (proxy only)

Key Innovations

Non-interactive Trading: Users can go offline after creating/buying positions
Non-custodial Proxy: Coordinator never holds user funds directly
Position Trading: Users can sell positions before market resolves
Bitcoin Native: All contracts run on Bitcoin using smart contracts
Oracle Integration: Uses DLC-style oracles for event resolution