Shadow Documentation
Shadow is a private perpetuals trading app built on Solana devnet. It combines encrypted positions, delegated sessions, and confidential compute from Arcium so trading feels practical without exposing every detail in public.
Overview
Shadow is built for people who want a more private trading experience on Solana. Trade size, direction, leverage, and margin are encrypted before they reach the program, and the sensitive calculations run through Arcium instead of being exposed in plain view.
Only the public state needed for settlement is written on chain. The goal is to avoid turning every position into public intent data.
How It Works
Each trade follows the same core path:
- Encrypt | Your browser encrypts sensitive trade inputs such as size, price, leverage, direction, and margin.
- Queue | The encrypted payload is submitted to the Solana program, which queues the computation on Arcium.
- Compute | Arcium evaluates the private trade logic, including margin checks, PnL, and liquidation conditions, without exposing the raw inputs to any single node.
- Callback | Arcium returns the verified result to the Solana program.
- Settle | Shadow updates the margin account and position state from that verified output.
After your session is approved, the relay can submit trades on your behalf. That keeps the flow smooth, because you sign once for the session instead of getting a wallet prompt for every action.
Session Trading
Shadow uses a delegated session model so the trading flow stays usable. Here is what happens the first time you start a session:
- You sign a CreateTradeSession transaction. This creates a session PDA tied to your wallet and the relay.
- You sign a short authorization message. This is not a transaction. It simply proves that the relay can act for you during the session window.
- For the rest of that session, the relay submits trades without opening a wallet popup each time.
Session Limits
| Parameter | Default |
|---|---|
| Session duration | 7 days |
| Max actions | 200 trades |
| Max margin per action | $1,000 USDC |
| Revocable | Yes, anytime on chain |
Privacy Model
Shadow relies on Arcium Multi Party Computation infrastructure. Here is the practical split between what stays private and what remains visible:
What is private
- Position size
- Entry price
- Leverage
- Direction
- Margin amount
- Unrealized PnL
What is public
- Your wallet address, which is used for the margin account and session
- Collateral deposits and withdrawals
- The fact that a trade was queued, but not the details
- Session creation and revocation
Margin and Leverage
Shadow supports two margin modes and leverage up to 50x.
Cross Margin
Your full margin balance is shared across all cross margin positions. If one position loses, the rest of the balance absorbs it, which can reduce liquidation risk on a single position but exposes more of your account to aggregate losses.
Isolated Margin
A fixed amount of margin is assigned to one position. If that position is liquidated, only that isolated margin is at risk and the rest of your balance stays untouched.
Leverage
Leverage increases both upside and downside relative to your margin. Available range: 1x to 50x.
| Leverage | Risk Level | Liquidation Sensitivity |
|---|---|---|
| 1x to 5x | Low | Large move required to liquidate |
| 10x to 15x | Medium | Moderate move liquidates |
| 20x to 30x | High | Small adverse move liquidates |
| 40x to 50x | Very High | Minimal move liquidates |
Order Types
Market Order
A market order executes against the current oracle price. The position is queued for MPC computation and opens once the Arcium callback returns successfully.
Limit Order
A limit order is queued in the browser and triggered when the market price crosses your chosen level. When that happens, the relay submits the order for you.
Take Profit / Stop Loss
Each open position can have optional TP and SL rules. These are stored locally and monitored by the client.
- Take Profit (TP) | closes the position when price reaches your target.
- Stop Loss (SL) | closes the position when price reaches your protection level.
You can set TP and SL in the trading panel before opening a position, or edit them later from the position row. Use the Save action to keep the rule.
Validation Rules
- For long positions, TP must be above entry and SL must be below entry.
- For short positions, TP must be below entry and SL must be above entry.
- TP and SL must be at least
0.10%away from entry price.
Liquidation
A position is liquidated when its health ratio falls below the maintenance threshold. The health ratio is calculated as:
Health = (Equity / Maintenance Margin) x 100%
- Maintenance margin: 5% of position value
- Liquidation threshold: 80% health
- Liquidation penalty: 5% to the liquidator, with the remainder returned to the trader
In cross margin mode, your full balance acts as equity. In isolated mode, only the position's allocated margin counts.
FAQ
Do I need to keep the browser open?
For market orders, no. Once submitted, the relay handles execution. For limit orders and TP and SL automation, yes. Those flows still run in the browser and need the tab to stay open.
How do I deposit collateral?
Click Manage in the top bar, or Deposit if your balance is zero. You can deposit USDC directly or through a delegated session. For devnet testing, use a devnet USDC faucet so the balance matches the configured mint.
Why does my position show "MPC Processing"?
The trade was submitted successfully and is waiting for the Arcium MPC cluster to compute and return the callback. This usually takes a few seconds on devnet. If it takes longer, the cluster may be delayed, but your collateral remains safe.
Is my data stored anywhere?
Position metadata such as pair, side, and leverage is stored in your browser's localStorage, keyed to your wallet address. No personal data is sent to any server other than the relay, which only receives encrypted trade inputs.
Can I use Shadow on mainnet?
Not yet. Shadow is currently devnet only. Mainnet depends on a fully verified open and close flow, stronger operational confidence, and a full audit.
Privacy Policy
Effective: March 2026
Information We Collect
Shadow does not require account registration and does not collect personally identifiable information. When you connect a wallet, your public key is used only to identify your on chain margin account and trading session. We do not store wallet addresses on any server.
The relay server receives encrypted trade inputs and your session authorization signature. These are used only to submit transactions on your behalf and are not retained after submission.
Cookies and Local Storage
Shadow stores position metadata and session information in your browser's localStorage. This data stays on your device except when specific relay requests require it. No third party tracking cookies are used.
Blockchain Data
Solana transactions are public by nature. Shadow minimizes what is written on chain by keeping position details encrypted and recording only settlement outputs. Collateral deposits and withdrawals still involve public USDC transfers.
Third Party Services
Shadow uses public APIs such as Coinbase and Binance for reference price data. No user data is sent to these services. Arcium processes encrypted trade inputs, and individual nodes do not get access to the plaintext data.
Contact
Questions about privacy can be sent to @emperoar007 on X.
Terms of Use
Effective: March 2026
Acceptance
By accessing Shadow, you agree to these terms. If you do not agree, please do not use the platform.
Prototype Status
Shadow is an experimental prototype deployed on Solana Devnet. All balances are test funds with no real monetary value. Do not send real assets to devnet addresses.
No Financial Advice
Nothing on Shadow is financial, investment, or trading advice. Perpetual futures carry meaningful risk. You are responsible for your own trading decisions.
Prohibited Use
- Using Shadow to launder funds or bypass financial regulation
- Trying to exploit, manipulate, or attack the protocol
- Reverse engineering the encrypted computation system
- Accessing Shadow from jurisdictions where this type of service is prohibited
Limitation of Liability
Shadow is provided "as is" without warranty. The developers are not liable for loss of funds, data, or opportunity arising from use of the platform, including smart contract bugs, MPC failures, or network disruptions.
Changes
These terms may be updated over time. Continued use after changes means you accept the revised terms.