unhosted.ai

Copy-trading infrastructure · B2B

Add copy trading to your wallet.
Custody stays with your users.

One API and a typed TypeScript SDK. Your users mirror proven traders on spot and Hyperliquid perps — through credentials they approve and can revoke, never by handing over funds. These are the same rails our own products run in production.

Why non-custodial actually holds

The backend can submit trades. It can never withdraw.

Spot — smart sessions

An ERC-7579 session scoped to swap routers only, with an explicit USD spend cap and a hard expiry. It cannot transfer tokens out, and it dies on its own at validUntil.

Perps — revocable agent keys

Hyperliquid copying runs through an agent key the user approves in their own wallet and can revoke at any time. Works from any EOA — no smart-account stack required.

Two credentials, always

Your partner key says who is billed. The user's wallet signature says whose funds move — EIP-191 over a canonical method+path message, replay-proof, 5-minute expiry. Neither alone is sufficient.

The integration

Five calls. One activation handshake, every venue.

No venue-specific branches in your code: the server says what needs signing, activate() signs it. The SDK is typed end-to-end and the quickstart below is compiled in CI.

import { CopyTradingClient, createWalletAuthHeaders }
  from '@zifrovoy-wallet/copy-trading';

const client = new CopyTradingClient({
  baseUrl: API_URL,
  apiKey: PARTNER_KEY,
  getAuthHeaders: createWalletAuthHeaders({
    address: userAddress,
    signer: personalSigner,
  }),
});

const venues  = await client.listVenues();
const leaders = await client.listLeaders({ venue, mirrorableOnly: true });
const { agentId } = await client.createAgent({
  venue,
  smartAccountAddress: userAddress,
  leaderWalletAddress: leaders[0].address,
  riskConfig: { maxUsd: '500', copyPercent: 10 },
});
await client.activate(agentId, signer);          // one call, every venue
const { executions } = await client.listExecutions(agentId);

Venues

One adapter interface, per-venue custody done right.

VenueCustody modelActivationStatus
Spot (EVM)spotERC-7579 smart session — explicit spend cap, hard expiryOne on-chain tx Live
Perps (Hyperliquid)hyperliquid-perpsAgent key the user approves and can revoke — works from any EOA1–2 signatures, no gas Live
Perps (Polymarket)polymarket-perpsDelegated proxy signer, expires ~1 week, renewable1 signatureIn validation
Predictions (Polymarket)polymarket-predictionsScoped proxy delegation — you set the expiry1 signatureIn validation

Polymarket venues are implemented behind the same activation handshake and are in final end-to-end validation — we list them as live only when they are.

What you get beyond execution

Leaders graded for copyability

Not the venue leaderboard. Each leader passes mirrorability gates first — on one live Polymarket screen, 2 of the top 12 by PnL survived; the rest were market makers a follower can't reproduce. Every verdict ships with plain-language reasons and its evidence.

Skips are first-class

A mirror that would be worse than not trading is recorded as skipped with a machine-readable reason (slippage exceeded, edge exhausted, too close to resolution) — so your feed explains itself instead of showing silent gaps.

A real gateway in front

Per-partner keys with venue entitlements, rate limiting, metering for billing, and a circuit breaker. Keys are hashed at rest and shown exactly once.

Lifecycle you can build UI on

Execution feed with one shape across venues, agent status transitions (paused vs expired are distinct), and a session.expiring signal so you can prompt re-authorisation before credentials lapse.

Onboarding

1

Scope the integration

A call with the team that built it. We map your wallet stack to the custody model — EOA-only apps start with perps, no smart-account infra needed.

2

Build in paper mode

You get a scoped API key and build against the sandbox: real leader data and the full activation flow, no funds at risk.

3

Go live

Flip to live execution when your flows are proven. Metering and entitlements are already on your key.

Ship copy trading without building the hard parts.

Leader grading, venue handshakes, custody, execution and the gateway are done. What's left is your UI.

Non-custodial — your users' funds never move to usTyped SDK · REST API · webhooks© 2026 Unhosted