Everyone built hands, eyes, and ears. We built the brain
Ocean Agent is an AI native trading layer for Pacifica. Tell it what to trade; it fixes the tick, lot, and min order, then executes correctly.
It doesn't debate. It doesn't guess. It measures, then studies its own results.
Community & Support
Discord
Join the community. Get help, share progress, and build on Pacifica.
Twitter / X
Follow @pacifica_fi on X for the latest news and updates.
Office Hours
KST 09:00 to 18:00
UTC 00:00 to 09:00
US Eastern (ET) 20:00 to 05:00
What Ocean Agent is
An AI native trading layer for Pacifica. It comes in two parts: an MCP server your AI client calls on demand, and a 24/7 autonomous entity that trades on its own inside a policy you set.
The official Pacifica MCP passes the API through as is: your AI has to compute exact prices and sizes, and a wrong tick or lot gets rejected. Ocean Agent adds the layer above that: tick, lot, and min order correction, risk based sizing, a confirm gate, measured statistics, and self learning.
| At a glance | |
|---|---|
| Exchange | Pacifica (Solana perpetual futures) |
| Interface | MCP server + standalone 24/7 autonomous process |
| Signing | Ed25519 API key, signed locally, never sent to us |
| Markets | Every Pacifica market: crypto, stocks, commodities, FX |
| Decision basis | Measured edge (backtest matrix + live win rates), not a model's guess |
| Status | Live on mainnet with small size since July 2026, building the public track record |
From zero to running
Live on PyPI. Nothing to preinstall, one command sets everything up. The autonomous bot is optional.
| Step | What you do |
|---|---|
| 1 · Desktop app | Install the Claude desktop app first. The browser version cannot reach a program on your own machine, which is the whole point: your keys never leave it. |
| 2 · One command | Paste the installer command. A form opens in your browser for your wallet address and API key, and the installer sets up everything else including Python and Claude's config. |
| 3 · Chat | Restart Claude and the trading tools appear, analyze charts, check positions, trade by talking. No bot required. |
| 4 · Run the bot (optional) | Only if you want autonomous trading: start the entity and it reads the market, enters only setups that clear every gate, and manages stops around the clock. |
Start in dry mode until you understand exactly what it does.
Install
First install the Claude desktop app, then take either route below: paste the line into PowerShell yourself, or hand it to Claude in the Code tab and let it run. Both end the same way, with a form in your browser for your wallet address and API key; everything else, including Python and Claude's config, is set up for you.
irm https://oceanagent.fi/install.ps1 | iexThe window dresses itself as Claude and installs in place. You type nothing else, anywhere.
Install Ocean Agent: irm https://oceanagent.fi/install.ps1 | iexClaude runs it for you and reports each part as it lands, so no terminal to look at. The Code tab only comes with a paid plan, and only for this one install: afterwards you talk to Ocean Agent in the normal chat tab.
A form then opens in your browser for your wallet public address and a key from app.pacifica.fi/apikey (used only to sign orders, revocable any time). Claude restarts itself and the trading tools appear in chat. No bot required.
Getting that key, sixteen seconds.
Works in your language. You chat with your AI in any language: English, 中文, 日本語, 한국어, Tiếng Việt, Español and more. It drives the tools and explains every result in your language, and new version notices arrive in it too.
sh -c "$(curl -LsSf https://oceanagent.fi/install.sh)"Quit Claude completely and open it again. Closing the window is not enough on Windows: right click the icon in the system tray, next to the clock, and quit from there. The installer writes Claude's config, and Claude only reads it at start. When you asked Claude itself to run the install it will not restart on its own, because doing so would close the very conversation running the install.
Still nothing? Ask Claude to run the check for you, in the Code tab: "run the Ocean Agent doctor". Or paste the line below where you pasted the installer, PowerShell on Windows and Terminal on macOS. It names whatever is missing.
uv run --with ocean-agent python -m ocean_agent.doctoruv run --with ocean-agent python -m ocean_agent.autonomous --dryOnly for hands off trading. --dry decides but places no orders; drop it when you trust it.
Manual setup (any MCP client)
.env file with your keysADDRESS=your_wallet_address
PACIFICA_API_KEY=your_agent_key
PACIFICA_BASE_URL=https://api.pacifica.fi{ "mcpServers": { "ocean-agent": {
"command": "uvx", "args": ["ocean-agent@0.4.76"],
"env": { "PACIFICA_ENV_FILE": "/absolute/path/to/.env" } } } }The pinned version is the one the installers on this page use, so every client runs the exact build that was tested. When a newer release lands, a running session tells you once in chat and you change the number here to move. Your local data and keys are never touched by updates.
uv run --with ocean-agent python -m ocean_agent.doctorOcean Agent Approve
Mobile: your bot in Telegram
Everything Ocean Agent does can be driven from your phone through a Telegram bot that belongs to you alone. Your computer keeps running the engine; the bot is the private line between your phone and that machine. One bot serves one owner and we never see it, which is why you create your own in a minute instead of sharing anyone else's.
Do the Install step first, then these three.
In Telegram, open @BotFather, send /newbot, pick any name. Copy the token it hands back.
The install opens a page in your browser for your wallet address and API key; it also has a Telegram bot token box. Paste the token there. The bot starts by itself and comes back after every reboot: no file to edit, no window to keep open.
Skipped it during install? Add one line, TELEGRAM_BOT_TOKEN=your_token, to ~/.ocean-agent/.env and run uv run --with ocean-agent python -m ocean_agent.telebot once. On Windows the .env file will not open with a double click: right click it → Open with → Notepad, add the line, save.
Open your bot on your phone and send this one message first:
/startThat first /start is required: it registers this chat as the bot's owner and locks it to you. The bot then walks you through the rest right in the chat: pick your language, paste your wallet address, paste your API key from app.pacifica.fi/apikey. It checks both, saves them to your machine, and deletes the key message from the chat. That is the whole setup.
Hourly picks and Print opportunity alerts with a guided "execute?" flow. Orders in plain words, like BTC long $100 5x: the bot previews everything, attaches the mandatory take profit and stop loss, and acts only on an explicit yes. One word starts or stops auto trading. Finished 24h Print cycles settle themselves and ask whether to go again. Eleven languages, and a free local model answers questions even with no AI key at all.
Collect funding, cancel the price
Perpetual futures settle funding every hour, with one side of the market paying the other. A carry holds opposite positions on two venues: the price moves cancel out, and the funding spread is what you collect.
Delta neutral is not risk free. Spreads decay, often within hours of appearing. Fees and slippage on two venues eat thin edges. If one leg is underfunded it can be liquidated while the other stays open, which turns a neutral position into a directional one. And every venue you touch adds its own platform risk.
What works out of the box
scan_funding and funding_alerts read funding across venues with no extra keys, and the hedged open places the Pacifica leg with the agent key you already have. Nothing new to set up, nothing to trust.
What automating the second leg needs
To have the bot place the hedge on another venue, that venue needs its own API key, created by you, with trade only permission and withdrawals off. Keys live in your local .env file and are never transmitted anywhere by Ocean Agent. Never share a key with anyone, including us. The guides below cover each venue the funding watcher tracks.
Per venue: creating a trade only key
Pacificahome venue
Ocean Agent places this leg today.
The leg Ocean Agent already trades.
- Open app.pacifica.fi/apikey and connect your Solana wallet.
- Generate an agent key. There are no permission checkboxes to get wrong. Ocean Agent signs orders with it and never sends a withdrawal. What the key itself is permitted to do is set by Pacifica, not by us.
- Copy the key. You can revoke it on the same page at any time.
You get one agent key, used together with your wallet's public address. The installer already wrote both into your local .env, the only place Ocean Agent reads keys from:
ADDRESS=your_wallet_address
PACIFICA_API_KEY=your_agent_key
Asterperp dex
Key guide ready; automated leg support coming.
A Binance style perpetuals DEX.
- Open asterdex.com, connect your wallet, and go to the API Management page.
- Click Create API and give the key a label. Note: since March 25, 2026 new classic API keys are discontinued, and new keys go through the Pro API path described in the docs.
- In the key's settings, keep permissions to read and trade, and bind an IP whitelist.
You get an API key and a secret. They belong in your local .env, the only place Ocean Agent reads keys from:
ASTER_API_KEY=...
ASTER_API_SECRET=...
Backpackexchange
Key guide ready; automated leg support coming.
A centralized exchange with spot and perpetual futures.
- Log in at backpack.exchange and open Settings, then API Keys, inside your portfolio.
- Generate a new key. The Read Only toggle is for view keys; a trading key on Backpack is account wide, so protect the secret accordingly and start with small balances.
- Save both values when shown: the base64 public key is your API key, the base64 seed is your secret.
Both values belong in your local .env, the only place Ocean Agent reads keys from:
BACKPACK_API_KEY=...
BACKPACK_API_SECRET=...
Binanceexchange
Ocean Agent places this leg today.
The deepest perp books, a natural hedge leg for majors.
- Log in, open Profile, then Account, then API Management, and click Create API.
- Choose the system generated key type (HMAC) unless you already manage your own Ed25519 pair.
- Tick Enable Futures (your futures account must be activated first). Leave Enable Withdrawals unchecked.
- Under IP access restrictions, add the IP of the machine that runs the bot.
You get an API key and a secret; the secret is shown once. They belong in your local .env, the only place Ocean Agent reads keys from:
BINANCE_API_KEY=...
BINANCE_API_SECRET=...
Bitgetexchange
Ocean Agent places this leg today.
A centralized derivatives exchange.
- Log in, open API Management from your account menu, and click Create New API.
- Choose the system generated key, write a note, and set the passphrase. It cannot be recovered later, only recreated.
- Grant read write on Futures only, nothing else, and bind your IP address.
You get a key, a secret, and your passphrase; all three belong in your local .env, the only place Ocean Agent reads keys from:
BITGET_API_KEY=...
BITGET_API_SECRET=...
BITGET_API_PASSPHRASE=...
Bybitexchange
Ocean Agent places this leg today.
A centralized exchange with liquid perps, and the first supported hedge leg.
- Log in, click the profile icon top right, choose API, then Create New Key.
- Pick System generated API Keys. That is the HMAC type Ocean Agent signs with.
- Grant read write for orders and positions only. There is a withdrawal permission on the same form: leave it off. Confirm with 2FA.
- Bind an IP allowlist. Bybit expires keys that have no IP restriction after about three months.
You get an API key and a secret; the secret is shown once. They belong in your local .env, the only place Ocean Agent reads keys from:
BYBIT_API_KEY=...
BYBIT_API_SECRET=...
Coinbaseexchange
Key guide ready; automated leg support coming.
Perpetual futures at Coinbase are region gated, so check availability before creating keys.
- Log in to the Coinbase Developer Platform at portal.cdp.coinbase.com and open Access, then API keys.
- Create a key: pick the portfolio and set the permission level to Trade. Do not grant Transfer. Confirm 2FA.
- The key downloads as a JSON file holding a key name and a private key, shown once.
Both values belong in your local .env, the only place Ocean Agent reads keys from:
COINBASE_API_KEY=...
COINBASE_API_SECRET=...
Extendedperp dex · wallet
Key guide ready; automated leg support coming.
A perpetuals DEX built by ex Revolut engineers, settling on Starknet.
- Open extended.exchange and onboard by signing with your wallet; the account and its keys are derived from that signature.
- From your account, note the API key used for read calls and the private Stark key that signs orders. The Stark key is the account: never share it.
- There is no withdrawal permission to disable, because funds move only through your own wallet on Starknet.
The Stark key takes the place of an API secret. Both values belong in your local .env, the only place Ocean Agent reads keys from:
EXTENDED_API_KEY=...
EXTENDED_STARK_PRIVATE_KEY=...
Hyperliquidperp dex · wallet
Key guide ready; automated leg support coming.
A perpetuals DEX with a wallet model instead of classic API keys.
- Open app.hyperliquid.xyz, connect your wallet, and go to the API page at app.hyperliquid.xyz/API.
- Create an agent wallet (also called an API wallet) and name it, then approve it with one signature from your main wallet.
- Save the agent's address and private key; the private key is shown once. Ocean Agent uses it to sign orders only. What the agent wallet itself may do is set by Hyperliquid, and you can deauthorize it in the same UI.
- Give the bot only the agent's private key, never your main wallet's seed.
The agent wallet key replaces a key and secret pair. It belongs in your local .env, the only place Ocean Agent reads keys from:
HYPERLIQUID_AGENT_KEY=...
Lighterperp dex · wallet
Key guide ready; automated leg support coming.
A zk rollup perpetuals DEX with zero fee trading.
- Log in at app.lighter.xyz with your wallet, then open the API Keys page at app.lighter.xyz/apikeys.
- Generate a key. Every key gets an index; the low indexes are reserved for the official interfaces, so yours starts from 3.
- Save the key index and the private key it generates. The key signs orders only; funds stay under your wallet's control.
The index and signing key replace a key and secret pair. They belong in your local .env, the only place Ocean Agent reads keys from:
LIGHTER_KEY_INDEX=...
LIGHTER_PRIVATE_KEY=...
OKXexchange
Ocean Agent places this leg today.
A centralized exchange with deep perp liquidity.
- Log in, click the profile icon, choose API keys, then Create V5 API key.
- Name the key and set the passphrase. It cannot be viewed again after creation.
- Grant Read and Trade only. Withdrawal is a separate permission on the same form: leave it off. Confirm 2FA.
- Bind an IP allowlist; each key accepts up to 20 addresses.
You get a key, a secret, and your passphrase; all three belong in your local .env, the only place Ocean Agent reads keys from:
OKX_API_KEY=...
OKX_API_SECRET=...
OKX_API_PASSPHRASE=...
Paradexperp dex · wallet
Key guide ready; automated leg support coming.
A perpetuals exchange on Starknet.
- Open the Paradex app and sign the onboarding message. Your Paradex keys are derived from that wallet signature and stay in your browser; they are never sent to Paradex servers.
- For a bot, create a subkey from the Key Management dashboard rather than exporting your main key. The subkey signs orders and can be revoked or rotated there.
- Requests authenticate with a short lived JWT obtained from the subkey; the SDK handles that from the private key.
The subkey private key replaces a key and secret pair. It belongs in your local .env, the only place Ocean Agent reads keys from:
PARADEX_PRIVATE_KEY=...
Variationalperp dex · wallet
No trading API yet; nothing to configure.
The protocol behind Omni, a zero fee perpetuals app.
- Omni is used through a wallet; there are no exchange API keys to create.
- A public read API exists, but per the docs the trading API is not yet available; the docs offer a sign up to be notified when it is.
- Nothing goes in your .env yet. The funding watcher already tracks Omni's rates read only.
How Ocean Agent compares
Seven AI trading agents in one table. Every other one either lets a model guess or debate, or piles on rules. Here is what actually separates them, unpacked.
How it decides the one that makes money
Most agents let a language model read the chart and form an opinion, or run several personas that debate. Ocean Agent trades on a measured edge: for each coin, timeframe, and signal it holds an expected value net of fees, from a matrix of past measurements. If that number is not positive, it does not trade. A guess can be confident and wrong; a measured edge is just a number that either clears the bar or does not.
Self learning unique here
Backtests go stale as the market changes character. On a schedule, Ocean Agent re measures the full matrix of coins, timeframes, and signals, and updates which ones it trusts. In one measurement an 8 hour band showed no edge at all; weeks later it was the best. No competitor re measures its own edge, so their parameters quietly rot.
Meta learning unique here
It tracks how often its own predicted win rate actually held. When it was too optimistic, it corrects the next estimate down. In other words it learns how wrong it tends to be and fixes it. Nothing else in this set does this.
Win / loss attribution unique here
Every closed trade is graded: did the signal work, or did the market just drift your way? A lucky win is not counted as a good signal, and a good signal that lost to a broad move is not thrown away. This is how it avoids learning the wrong lesson from noise.
Market & custody
Leverage perpetuals on crypto, stocks, commodities, and FX, all on Pacifica. It is non custodial: your funds stay in your own wallet on Pacifica, and Ocean Agent never withdraws. Several competitors are spot only, stocks only, or custodial.
Autonomy & control
It runs 24/7 as its own process, so it holds positions and manages stops even with the AI offline. Take profit and stop loss are exchange native and trail automatically. Alerts go to Telegram, with two way control on the roadmap.
Where we are honestly behind
Setup is a config file and a key, not a single click. There is no regulation or insurance wrapper. The live mainnet track record is still young, it trades small until the numbers justify more. And it is a solo open source project, not a funded company. The table below shows those gaps in the same view as the wins.
| Ocean AgentPacifica | Coinbasefor Agents | RobinhoodAgents | Minaramulti chain | TradingAgents | EVAProtocol | Virtualson chain | |
|---|---|---|---|---|---|---|---|
| Decision quality | |||||||
| How it decides | Measured stats | Model guess | Model guess | User rules | Model debate | Model debate | Templates |
| Self learning | re measures | ✕ | ✕ | ✕ | reflection | ✕ | ✕ |
| Meta learning | unique | ✕ | ✕ | ✕ | ✕ | ✕ | ✕ |
| Win/loss attribution | unique | ✕ | ✕ | ✕ | ✕ | ✕ | ✕ |
| Market and custody | |||||||
| Instrument | Leverage perps | Spot | Spot stocks | Perps and spot | Stocks | Multi | Perps |
| Stocks and commodities | yes | soon | stocks only | ✕ | stocks only | ✕ | ✕ |
| Non custodial | yes | ✕ | ✕ | yes | optional | yes | yes |
| Autonomy and control | |||||||
| Runs 24/7 with AI offline | own process | ✕ | ✕ | rules | yes | ✕ | yes |
| Native TP/SL and trailing | auto | manual | manual | manual | ✕ | ✕ | yes |
| Telegram two way control | alerts now | ✕ | ✕ | ✕ | ✕ | ✕ | yes |
| Where we are behind | |||||||
| Ease of setup | config + key | 1 login | 1 command | simple | docker | self host | self host |
| Regulation and insurance | none | KYC | SIPC | ✕ | ✕ | ✕ | ✕ |
| Live track record | live · small | live | live | live | ✕ | ✕ | ✕ |
| Brand and capital | solo OSS | public co | public co | funded | OSS | token | token |
Measured edge, not opinion
A signal only trades if it beats the market's own drift, on that specific coin and timeframe, net of fees. Everything a decision touches is a measured number.
| Input | What it contributes |
|---|---|
| Baseline subtracted edge | The signal must beat unconditional market drift, not just win often. |
| Look ahead prevention | The unclosed candle is dropped, so no signal reads a bar still forming. |
| Backtest matrix | Expected value per coin, timeframe, and signal, net of fees. |
| Live win rate | Observed win rate from the agent's own trades, weighted higher as it grows. |
| Regime read | Fear and Greed context; flags signals whose edge flips in the current regime. |
| Conviction | One score that fuses the above and sets entry order and size. |
It studies its own results
The loop that makes it better over time. It learns only from its own signal trades, so nothing else pollutes the measured edge.
| Layer | What it does |
|---|---|
| Re measurement | On a schedule it re measures the full matrix of coins, timeframes, and signals, and updates which it trusts. Regimes change, so fixed parameters go stale. |
| Meta learning | Tracks how often its predicted win rate actually held, and corrects its own overconfidence once enough samples exist. |
| Post mortem | Grades each closed trade as skill or luck, so a lucky win is not mistaken for a good signal. |
| Adaptation | Bans signals that lose in live grading, trims size in drawdown, restores it on recovery, always within policy bounds. |
Runs while you sleep, never runs blind
A separate always on process governed by a policy file, a delegation contract it cannot act outside of.
Capital split across trading, carry, and a cash reserve, rebalanced each cycle.
Enters only setups that pass its win rate gates. Every position gets native TP and SL.
Rotates through every Pacifica market, building a win rate database at zero risk.
Moves the stop to breakeven when ahead, trails it as profit grows, takes partial profit at target.
Pauses new entries on a bad day, and flattens fully on a deep drawdown.
It acts only inside the policy file. Nothing outside those bounds.
Thirteen things the passthrough doesn't have
Each one answers a question a trader actually asks, with data instead of an opinion.
Funding scan
Ranks every market by funding APR.
One command carry
Spot buy and perp short in one atomic batch.
Carry unwind
Closes both legs together. No half open exposure.
OI hedge design
Sizes a cross exchange hedge with fees and funding included.
Bracket entry
Entry plus exchange native TP and SL in one call.
Protect position
Adds native TP and SL to any open position.
Chart analysis
Four timeframes with a measured hit rate per signal.
Top setups
Live ranking by expected value, win rate, and sample size.
Market regime
Reads Fear and Greed, blocks bad trades for the regime.
Print verdict
Tells you whether a Print offer is worth taking.
Learned win rates
A win rate database grown from live observation.
Prediction grading
Past calls against what actually happened.
Safety layer
Confirm gate, automatic price correction, separate testnet and mainnet keys, and a hard order size ceiling.
The plays it can run
Every strategy is measured and gated. If it can't beat the existing logic, it doesn't ship.
| Strategy | What it does · when it fits |
|---|---|
| Statistical setup | The main engine. Enters signals that clear a measured win rate and expected value gate for the current regime. |
| Bracket entry | Entry plus exchange native take profit and stop loss in one call. The stops live on the exchange and fire even with your machine off. |
| Funding carry | Delta neutral: spot buy plus perp short, filled atomically. Best on larger capital; small accounts skip it. |
| Regime filter | Flags setups whose historical edge flips sign in the current market regime. |
| OI hedge | Sizes an open interest position with its cross exchange hedge, fees and funding included. |
One policy file governs everything
The autonomous entity acts only inside these bounds. Widen them carefully.
| Setting | Meaning |
|---|---|
| Capital | Fixed amount, or live to size to your actual wallet balance. |
| Risk per trade | How much of capital a single stop may cost. |
| Max leverage | A ceiling the policy enforces over the market maximum. |
| Max concurrent | How many positions may be open at once. |
| Soft / final stop | Pause new entries on a bad day; full flatten on a deep drawdown. |
| Allocations | Split between trading, carry, and cash reserve. |
| Mode | Aggressive (harvest data) or careful (proven setups only). A one line switch. |
Built so mistakes are structurally hard
The safety layer sits under every money moving action.
| Guard | What it prevents |
|---|---|
| Two step confirm | Every money moving tool previews first and executes only on explicit confirmation. |
| Local keys | Keys stay in your local .env. The Software never moves funds off the Exchange. What the key may do is set by the Exchange; revoke it there any time. |
| Key separation | Testnet and mainnet keys and data are kept apart. |
| Hard sizing guard | An order whose notional cannot be priced is rejected outright, and a notional ceiling applies once you set order_cap_usd in your policy. Chat orders carry no fixed dollar cap by default. |
| Liquidity gate | Skips markets where your own order would be a large share of daily volume. |
| Native stops | Exchange native TP and SL on every entry, so they fire with your machine off. |
Risk. This is trading software. Leveraged perpetuals can lose more than the margin you post. Measured win rates come from historical data and are regime dependent. Nothing here is financial advice. Only risk what you can afford to lose.
Capability grows only as live evidence earns it
Correctness and risk first. Each phase unlocks only when a live data gate is met.
Where we win, and where we honestly don't
Where we win
- A statistics brain that measures its edge
- Grades its own trades: skill or luck
- Corrects its own overconfidence
- Live leverage perps on stocks and commodities
Where we are behind
- Setup is config and a key, not one click
- No regulation or insurance
- Live track record is still young (mainnet since July 2026)
- A solo open source project
Common questions
Ocean Agent never moves funds off the exchange. It opens and closes positions, and the only withdrawal call in the code brings a finished Print deposit back to your own account. What the API key itself is permitted to do is set by Pacifica, not by us. Keep the key on your own machine and revoke it any time.
Yes: live on mainnet with small size since July 2026. Sizes stay small until the live track record justifies more.
Yes. You chat with your AI in any language; it drives the tools and explains the results in that language. Raw tool reports and this site are in English, but your AI translates as it goes.
The autonomous entity needs its own process running, but stops are exchange native and fire even if your machine goes offline.
Every Pacifica market: crypto, stocks, commodities, and FX, as leverage perpetuals.
Not until the live track record is real. That is the one number it will never fake.
What changed, and what we measured
Every entry states the change and the measurement behind it. When a measurement said the current setting was already better, we kept it and wrote that down too. Backtest figures assume perfect fills and exclude funding. They describe past regimes, not forecasts.
Open beta begins
Ocean Agent is open to everyone from today. Install it, connect your own account, and run the same engine we run, with the same picks and the same rules. No invitation, no waitlist, and nothing of yours held on our side.
One thing we would rather say now than have you find out: keep the auto trader small. It runs on live orders and its record is still young, and we are still changing it as measurements come in, including twice this week. Use an amount you would not mind losing while those numbers build. Everything else is yours to use in full: the hourly picks, the Print judgments, the bot in eleven languages, and the free local model that answers without an API key.
0.4.76: One less step when you install
A prompt that used to wait on a page you had to go and find now comes up on its own while you are installing. Nothing to click and nothing to look for. If there is no wallet in that browser the install carries on exactly as before.
0.4.75: The next trade could go in at an old price
After a trade closed, the next one in that same coin could go in at the old price instead of the price right now. Fixed. Live and being watched.
0.4.74: A rules file can let a held seat go
Your own rules file could choose what to open and which way. It can now also ask for a position already open to be closed. It can only ask for a close, never an open, and it is off unless you write the hook.
0.4.73: The board is ranked on the book the order goes to
Coins were ranked on bars from a different exchange than the one they trade on. Every bar on the trading path now comes from one venue.
0.4.72: Repeat alerts fold into one
An alert that fires on a loop is sent once with a count instead of every few seconds. The setup check no longer fails someone who runs the bot without Claude, and the licence is named correctly.
0.4.71: A close that fails puts the stop back
A failed close used to leave the position with no stop behind it. The loop also survives an unexpected error instead of ending on it.
0.4.70: The board builds without stopping the loop
Building the board took minutes and nothing else ran while it did. It now builds on its own thread.
0.4.69: The setup check is in English
Its output is read by the person who ran it, not by Claude, and it had been in Korean.
0.4.68: An empty board is an answer
An empty board used to read as a broken file, and the bot went back to an older one. The installer also stopped printing chat phrases where a shell prompt is.
0.4.67: The stop rests at the exchange
The line that closes a losing trade is held by the exchange, so it does not need the bot awake.
0.4.66: A rules file of your own, if you want one
The bot can now be pointed at a plain Python file of your own, kept outside the package. Before each order it asks that file whether to skip the trade, and when the board is built it asks whether you have picks that should lead. Set operator_rules in your policy, or the OCEAN_OPERATOR_RULES environment variable. Point at nothing and nothing changes: this is off unless you turn it on, and a file that errors is ignored rather than obeyed.
Two smaller capabilities exist to serve it. A pick can pin its own side, so the direction rules that normally overwrite a side leave that one alone. And a pick can claim a seat when the book is full, which closes the worst performing holding with a resting order at the mark, the same patient exit the bot already uses, and takes the seat once it is empty. Both are neutral machinery. What decides to use them lives in your file, not in the shipped code, and no default behaviour moved.
0.4.62: A release check that cannot read the wrong file
Nothing in the trading code changed here. Every package on PyPI is scanned before it is published, and one of those scans reads the built archive rather than the source tree. If the archive on disk was left over from the previous release, the scan answered about that older code and printed a pass. The build mismatch was reported on its own line, but the passes kept printing underneath it.
The mismatch now stops the run. Nothing below it is attempted, because a pass against the wrong file is worse than no check at all: it reads as assurance. This was found the honest way, by rebuilding and watching seven internal notes appear in a scan that had been reporting clean. Those notes were comments, not behaviour, and they have been rewritten to keep what they explained. The rule the file already applied to its other gates, that a check which cannot run has not passed, now applies to itself.
0.4.61: Ninety days of history decide the order
Seats are filled in order of how much a symbol usually moves. That reading was taken over the last thirty days, which is long enough that the same handful of names held the top places for weeks at a time. Eight window lengths were replayed with position sizing held fixed, and ninety days came out ahead of thirty in both test windows.
The margin is small and sits inside its own error bar, and it always will: the day to day spread of this book is wide enough that separating the two with confidence would take decades of trading rather than years of history. What decided it was that four independent readings all leaned the same way. Only the ordering changed. Position size, direction, the number of seats and the early exit are all untouched, and each pick now records which window ranked it, because a symbol listed eighty six days ago is ranked on eighty five. Loading changed with it: history is read from the local cache and only new bars are fetched, so a longer window costs no extra requests. Backtest figures assume perfect fills and exclude funding. They describe past regimes, not forecasts.
0.4.60: The stop sells at its own price too
A take profit rests in the order book from the moment a position opens, and it is lifted at the price you set. A stop cannot rest there: an order to sell below the market would fill immediately, so the exchange holds it back and creates it only once price arrives, behind everyone already queued. That difference, not the fee, is what a stop costs.
The stop now triggers into a limit at its own price. When the market moves through it and leaves the order behind, a reduce only limit follows the mark and is moved every ten seconds until it fills. Nothing on the way out takes liquidity any more. The exchange stop is deliberately left standing while that runs, so a price that comes back finds it still there, and neither order can flip the position because both only reduce. This is a change we have not yet seen enough live stops to score, and the honest reason it shipped is that the alternatives were measured and rejected: insisting on one price with no follow up, stacking several stops underneath, cutting losses at a fixed small distance, and leaving when the direction turns all lost to what is here, or won in one window and lost in the other.
Entries gave up a seat too easily in the other direction. The entry price is held for the whole hour on purpose, because chasing the book lost that comparison, but a name whose price had walked away was retried and missed every five minutes for the rest of the hour with the seat sitting empty. After three misses the name is now dropped and the seat goes to the next pick. Telegram gained a language command, so the flag keyboard is reachable again rather than only at first run, and picking a flag a second time changes the language without asking for a wallet or a budget again.
0.4.58: A shorter horizon for direction, and a wider bracket
Direction was being read off a 24 hour statistic while trades were resolving in a few hours. It now reads the horizon the trade actually lives in, and the bracket moved with it.
Take profit sits at 1.0 times the expected move and the stop at 1.3, replacing 1.5 and 1.0. Expect to win less often and win more when you do: the old pair was picked when the side carried no information, and once it does the best pair moves. Expiry exits now rest as a limit and re post until filled rather than taking the market, with the exchange stop live throughout. Asking the bot to stop now kills every engine and confirms each one is gone instead of reporting success on the request. And installing from this site had been fetching an old build no matter what was published; it now follows the current release.
0.4.38: The first ask now answers
We installed 0.4.37 the way a stranger would, on a clean machine, and watched where it got stuck. This release fixes what we found.
Asking for today's picks now answers without an account, as the site always said it would. The connect window reports its address immediately instead of waiting on the browser. The setup scanner returns what it has scanned instead of hanging on a cold cache. And starting the bot before connecting now says "connect first" rather than a confusing network error. Nothing in the trading engine changed.
0.4.37: Wording, docs, and packaging
A cleanup release. Nothing in the trading engine changed.
The setup pages and terms describe key handling more precisely. The install videos were re-recorded to match. Every install path now points at the same version. Some leftover files were dropped from the package.
Testers go live on real orders
A small group of testers started running the engine on live orders, at sizes chosen to make a mistake cheap. Their week is what the open beta is built on.
Ask your AI for today's picks and it answers without an account: the ranked list, each symbol's expected 24 hour move, the odds of reaching plus or minus 3 percent, and the entry price. Connecting a wallet takes a form in your browser rather than a terminal, and from there one sentence starts the engine. Direction now follows the asset class, take profit sits at 1.5 times the expected move, and every position carries its exit on the exchange, so the plan holds even with your computer off. We publish what we measure, including the days it loses.
0.4.2: Crash recovery that checks its facts, and a Telegram bot in 11 languages
A second independent review pass focused on what happens when things go wrong mid trade. Recovery after a crash now verifies direction and size against the exchange before adopting any position, records trades that finished while the bot was down, and a failed entry pass cools down instead of retrying in a tight loop.
Also in 0.4.2: chat orders no longer carry a fixed dollar cap, since account sizes differ; a cap applies only if you set one in your own policy file. Grading now measures exactly the stated 24-hour horizon. And the new Telegram bot answers in 11 languages: add it, pick your language, paste a public wallet address, and ask about your balance, trades, or the day's setups.
0.4.0: A measured trading engine
Version 0.4.0 ships a new bracket trading engine built the way everything here gets built: by measurement. We tested roughly 430 strategy variants against causal replays and live sealed predictions. Three survived, and together they are the engine.
The surviving design: trade the top three of the daily sealed picks, exit at a near take profit or a wide stop placed on the exchange itself, hold at most 24 hours. In replay it wins about four trades in five. We are honest about why: most of that win rate comes from the bracket geometry itself, and the measured edge on top of it is a few points. Those few points are the difference between making and losing money, which is why the next step is not marketing, it is validation.
So it trades our own funds first, under pre registered stop conditions that halt it loudly if reality disagrees with the measurements. The daily scorecard, wins and misses both, is public on Telegram. Nothing opens wider until the forward numbers hold.
Also in 0.4.0: seals now record their bracket prices and trade ranks before the outcome exists, so every day of validation is pre registered and auditable after the fact.
0.4.1: Twenty eight review findings, fixed and verified
An independent line by line review of the new bracket engine came back with 28 findings. All fixed and re verified the same day.
The highlights: trades are now graded from the exchange's own realized profit, not a price feed guess; sizing reads spendable margin; and the engine refuses to start if another bot is using the account. Nothing about the strategy changed, only what happens when reality misbehaves. Forward validation continues on Telegram.
Routine security review
Version 0.3.6. We ran a full security review against the current landscape of crypto and supply chain attacks, and tightened a few things as a result. No issue was ever exploited.
The design principles that keep funds safe were confirmed intact: Ocean Agent never sends a withdrawal, every order that moves money passes an explicit confirmation and a hard size ceiling, and the agent only ever signs requests it built itself. Your keys stay on your machine and are never transmitted to us.
We review security on an ongoing basis and fold any hardening into the next release. The best thing you can do is stay current: a running session tells you once in chat when a newer version is on PyPI, and rerunning the installer moves the pin.
Wider stops, measured; and a consent based developer fee
Version 0.3.4. The stops were sitting inside the noise band and cutting winning trades, so they are now twice as wide. Installs also ask, once, about a small developer fee. Nothing is approved silently.
What changed
| Change | Measured basis |
|---|---|
| Stop width doubled | 24h horizon picks swing about 3% against entry before going the right way, and the old stops sat inside that noise. The replay that first argued for a wider stop turned out to have a look-ahead bug: take profits filled at prices from before the entry. With it fixed the same seven years ended at a fraction of the figure, so those numbers are withdrawn and are not quoted here. The wider stop stays for now on the reasoning above, and is being re-measured forward. Position size halves with it because sizing is stop based, so risk per trade is unchanged. |
| Harness parity bug fixed | The backtest harness still carried a fixed swing stop block that the live bot withdrew on Aug 5. It was removed before the sweep above, so measurements now replay exactly what the bot runs. The default harness reproduces the live config to the cent. |
| Terms acceptance at install | The installer asks once, in your OS language, whether you have agreed to the Terms of Use. Accepting continues the install and signs the builder fee approval the Terms describe (0.01%, 1 bps, section 11); declining cancels the installation, the standard EULA behavior. AI client only users get the same one time question in chat, in the conversation language. Nothing is ever approved without your explicit answer, and an approval can be revoked anytime in your Pacifica account. |
| Install page terms gate | The install commands unlock after the full scrollable Terms of Use (18+, unregulated software, total loss risk, fees). Agreeing also offers the commands to copy right in the window. |
Tried and rejected, on the numbers
Four plausible ideas were measured this round and kept out. Fixed take profit exits cut the 30-day pick total from +16.6% to +5.4% by amputating the big winners. Break even floors after a partial move did worse than holding. Dropping in progress bars changed accuracy by 0.1 points, noise. And the popular idea that the 4-hour bar should veto smaller ones inverted on our data: picks that fought the 4h bar hit 55.2% against 49.4% for picks that agreed with it. Each rejection is recorded so we do not walk into the same temptation twice.
Existing installs pick this up on the next client restart. The bot applies the new stops from its next start.
Ocean Agent is live on PyPI
The agent is now a public package. One command installs it, registers it with Claude, and keeps it updated.
Until now the only way to run it was to clone the repository. It now ships on PyPI as ocean-agent, currently at version 0.4.76. Install with the one line installer on this site, which sets up uv, Python, your keys and Claude's MCP config in a single paste, or with pip install ocean-agent if you already have a Python environment.
What is in this release
| Change | Measured basis |
|---|---|
| Renamed: mustache-mcp is now ocean-agent | Existing user data migrates automatically on first run. |
| Win rate gate 52% → 45% | Walk forward measurement put a ceiling on composite-vote win rate, so the 52% per signal gate was starving entries: two days, zero trades. A 7-year replay argued for the lower floor, and that replay was later found to have a look-ahead bug. The pure edge +2%p gate stays, so the floor holds. |
| Volume and liquidity filters removed, scan widened to all 100 markets | Measurement showed the filters were not what was blocking entries. |
| Regime filter off by default | 30-day A/B: clearly better with it off, and lower drawdown. |
| Margin checked before every entry | Fail closed: if the check cannot run, the entry does not go out. |
| Defense line ratchets with equity peaks | The stop trading floor now follows new highs instead of sitting at its starting value. |
| Seed data bundled | The 9-year matrix and the calibration curve ship inside the package, so a new install starts with measured gates rather than empty ones. |
Reliability and plumbing
Seven fund moving tools are now marked destructive in the MCP layer, so your client asks before they run. Errors are standardized, rate limits back off on 429, and remeasured timeframes hot reload into a running session instead of waiting for a restart. A timezone bug in prediction grading is fixed, expired predictions stop retrying after a cap, orphan positions raise an alert, and a project wide lint sweep removed 13 dead code findings.
You are told when an update lands
Installs pin an exact version, so a client restart keeps running the build that was tested rather than whatever is newest that minute. A session that is already running shows a one time in chat notice when a newer version appears on PyPI.
Full backtest harness, and seven bugs it found
We replayed the entire trading pipeline over eight years of price history and let the agent grade itself.
Until now the agent could measure whether a signal predicted direction, and what a signal's average edge was. Neither answered the question that matters: what happens to the account. Stops, trailing, concurrency and budget change the answer completely.
Roughly half the trades, more total profit. Fewer fees, better entries.
Bugs found and fixed
| What was wrong | Why it mattered |
|---|---|
| Stops judged on closing price only | A bar that pierced the stop and recovered was scored a win. Stop out rate read 55% when it was really 68%. |
| Timeframes ranked by average edge | The agent only trades its best signals, so ranking by the average picked nearly the reverse order. |
| Gate used a different stop than the trade | Setups cleared the expected value gate on one stop distance, then traded with a wider one. |
| Swing stop applied to every timeframe | A 1.5% stop tuned on hourly bars was applied to daily bars, where a day moves 3–5%. |
| Risk setting never reached sizing | The policy file could be edited freely and nothing changed. |
| Scan universe hardcoded to 12 | 29 markets passed the liquidity floor; 17 were never looked at. |
| Re measurement never reached the agent | Timeframe selection was computed once at startup and never refreshed. |
Settings changed
| Setting | Before → after | Measured basis |
|---|---|---|
| Path judgment | close → high / low | Stop out rate rises once intrabar wicks count |
| Timeframe selection | average → top 3 | Daily ranked last by average, first by top-3 |
| Timeframes traded | 5m/15m/1h → 8h/12h/1d | Hourly lost money per trade |
| Partial take profit | on → off | More profit and less drawdown |
| Binance history | 12 → 18 markets | Sample counts grew several times over |
| Position cap | $150 → $250 | More total profit |
| Minimum margin | none → $25 | Skips positions too small to be worth the round trip |
| Scan universe | 12 → 40 markets | The liquidity floor already filters |
Tested and deliberately not changed
Nine ideas measured worse than what was already there. Recording them matters as much as the changes, because it stops us re litigating settled questions.
| Idea | Result |
|---|---|
| Fixed 1.5% stop / 5% target | Negative even under the most generous fill assumption |
| Volume spike entry filter | Entering on volume spikes was worse by 1.8pp |
| Lower the sample requirement | 30 samples beat 20, 15, 10 and 5 |
| Cap holding time | A 6-hour cap erased 85% of profit |
| Size as a % of equity | Compounding blow up: impressive on paper, impossible in practice |
| Tighten the entry gates | Worse at three consecutive thresholds |
| Shrink targets to correct bias | Narrower targets removed the room trailing stops need |
What actually produces the returns
| Prediction | Accuracy | Role |
|---|---|---|
| Direction, up or down | near a coin flip | Essentially none. Gone entirely one week out. |
| Magnitude, how far | weak but present | Enough to place the target and the stop. |
Direction is close to a coin flip. Knowing how far price tends to travel is what lets the agent place an asymmetric target and stop, and the trailing stop converts that asymmetry into profit. Disable trailing and most of the returns disappear, while drawdown grows sharply.
It is not a forecaster. It is a trend follower with a measured sense of scale.
MCP server audit, and Print closed out
The MCP server had been pointed at testnet. Print was measured across every structure and set aside.
The MCP server was pointed at testnet
Tools reported a play money balance while the agent traded real funds, and logged predictions into the wrong network's files. One line in the config; the consequences were not small.
MCP tools now share the agent's policy
The setup scanner was sizing with the exchange's maximum leverage instead of the policy's, so its margin figures were an order of magnitude away from what the agent would actually do.
Print evaluated and set aside
Pacifica's Print product pays a premium while a target order waits. We measured every structure we could think of: single side, both sides, perp hedged, distance sweeps, leverage sweeps, BTC+ETH mixes, signal timing. All negative.
The reason is one line: implied volatility sits below realised volatility. Selling that is a losing trade regardless of structure. A narrow calm-market condition flips it, but the window is open a small fraction of the time, so the agent watches for it instead of trading it.
Separating what it knows from what it hopes
Trade results were attributed to the wrong trade, and risk sizing was running 12× smaller than intended.
Profit and loss attributed to the wrong trade
A symbol's lifetime P&L was being read as the result of the most recent trade. One winning BTC position was recorded as a $7.30 loss. Re grading the history turned 1 win / 7 trades into 4 wins / 7 trades, which finally matched the account.
Risk sizing was 12× off
The scanner computed margin using the exchange's leverage cap while the executor placed orders at the policy cap. Intended risk of 2% per trade was operating at 0.17%.
Auto bans are no longer permanent
Five samples and a 45% floor was killing genuinely-52% signals 46% of the time, with no way back. Bans now expire.
Terms of use
Last updated: August 7, 2026 · Effective immediately for all users. Please read these terms carefully before downloading, installing, or using the Ocean Agent software or this site. By doing any of those things you agree to be bound by these terms. If you do not agree, do not use the software.
1 · Introduction and definitions
These Terms of Use ("Terms") govern your use of the Ocean Agent software and of this website. In these Terms:
- "Software" means the ocean-agent package published on PyPI, including its MCP server, its autonomous trading process, its command line utilities, its bundled measurement data, and this website's install scripts;
- "Authors" means the developers and contributors of the Software;
- "Exchange" means Pacifica, the third party trading venue the Software connects to;
- "Agent Key" means the API key you create at the Exchange and supply to the Software;
- "AI Client" means any MCP compatible application (such as Claude) that you connect to the Software;
- "Autonomous Mode" means the optional always on process that scans markets and places orders without per order confirmation;
- "You" means the person installing or using the Software.
The Software is source available software released under the Business Source License 1.1, converting to the MIT License on 2030-08-25. It is a tool that runs entirely on your own computer. The Authors do not operate a service, do not run servers that touch your funds or orders, and have no ongoing relationship with you beyond publishing the code. The Software is not affiliated with, endorsed by, or operated by the Exchange.
2 · Unregulated software: no protections
No financial regulator in any jurisdiction has licensed, reviewed, or approved the Software or the Authors. The Authors are not a bank, exchange, broker dealer, investment adviser, fund manager, money transmitter, or wallet provider. Using the Software gives you none of the protections that apply to regulated financial services: no deposit insurance, no investor compensation scheme, no segregation of client assets, and no financial ombudsman or complaints tribunal you can escalate to. If something goes wrong, the realistic remedies are limited to those in Section 15.
3 · Eligibility
You may use the Software only if all of the following are true:
- you are at least 18 years old and legally able to enter into binding contracts;
- you are not located in, and do not access the Exchange from, a jurisdiction where trading leveraged cryptocurrency derivatives is restricted or prohibited, including any jurisdiction the Exchange itself blocks or restricts (the Exchange's own list, which may change at any time, controls);
- you are not a resident or citizen of, and are not accessing from, any country subject to comprehensive sanctions, and you are not on any sanctions or restricted party list (including OFAC, UN, and EU lists);
- you will not use VPNs or other means to disguise your location in order to access the Exchange from a restricted jurisdiction;
- your use of the Software and of the Exchange is lawful where you live.
Determining all of the above is solely your responsibility. The Software performs no identity verification and cannot check any of it for you.
4 · No accounts, no registration, no data collection
The Software has no sign up, no login, and no user database. The Authors do not collect, store, or transmit your personal data, your keys, your balances, or your trading history, everything the Software records lives in files on your own computer. This site is a static page and sets no tracking of its own. The only parties that see your activity are the Exchange (which you have a direct relationship with under its own terms) and, if you use an AI Client, that client's provider.
5 · Non custodial design: wallets and keys
The Software never holds your funds and never sees your wallet's seed phrase. It signs requests locally with the Agent Key you supply and sends them straight to the Exchange. The Software never moves your funds off the Exchange or to any address other than your own; its one withdrawal call returns a finished Print deposit to your own account. The permissions the Agent Key itself carries are set by the Exchange, and you can revoke it there at any time. Signed requests go directly from your computer to the Exchange, there is no intermediate server.
Because of this design, the Authors cannot: access your account, freeze or unfreeze anything, recover keys you lose, cancel or reverse orders, or return funds. There is no support desk that can undo a trade. Anyone who obtains your Agent Key can trade your account until you revoke it; keeping it secret, and keeping the computer it lives on secure, is entirely your responsibility.
6 · The MCP server and AI clients
The Software's MCP server exposes trading and analysis tools to the AI Client you connect. You acknowledge that:
- AI language models can misunderstand instructions, make mistakes, and state wrong things confidently. Review what your AI Client is about to do before confirming orders;
- tools that move money require an explicit confirmation parameter, but your AI Client controls how that confirmation is presented to you;
- the quality of decisions made through an AI Client depends on that client and its model, neither is under the Authors' control;
- analysis tools output measurements of past data. They are not predictions and not advice (Section 14).
7 · Autonomous Mode
If you start Autonomous Mode with a trading key, the Software will place real, leveraged orders by itself, around the clock, without asking you first, that is its purpose. It operates inside a policy file you control (capital, risk per trade, leverage cap, stop rules), but within those bounds its decisions are its own. You are responsible for every order placed under your key, including orders you never personally reviewed. Run it in dry mode (decisions logged, no orders) until you understand exactly what it does, keep the policy file conservative, and check on it regularly. The Software adapts parameters within policy bounds; it never rewrites its own code.
8 · Experimental features and undocumented endpoints
Some features, notably Print, rely on Exchange endpoints that are not officially documented. They may change or stop working at any time without notice, and their behavior in edge cases is not guaranteed by anyone. Features marked experimental are provided for evaluation only; using them with real funds is at your own heightened risk.
9 · Orders are irreversible: no refunds
Orders executed on the Exchange are final. Cryptocurrency transactions cannot be recalled, and leveraged positions can be liquidated before you have a chance to react. Because the Software never holds funds, the Authors have nothing to refund from and cannot issue refunds, reimbursements, or compensation under any circumstances, including losses caused by bugs, misconfiguration, compromised keys, or fraud by third parties.
10 · Access is controlled by the Exchange, not the Authors
The Authors have no power to suspend or terminate your trading, and equally no power to restore it. The Exchange may restrict, suspend, or close your account under its own terms at any time, may delist markets, change fees, or halt trading. None of that is within the Authors' control, and the Software may stop working, in whole or in part, whenever the Exchange changes its API.
11 · Fees
The Software itself is free to install and use. All trading fees, funding payments, and spreads are set and collected by the Exchange under its own schedule, which can change. The Software's expected value calculations account for fees as measured at the time; actual fees may differ.
Developer fee (builder code). During installation you are asked whether to approve a builder fee of 0.01% (1 bps) of each filled order's notional value, paid to the Authors through the Exchange's builder code program. Approval is optional and takes effect only with your own cryptographic signature; the Software never approves it silently. Declining does not change any functionality. You can revoke an approval at any time in your Exchange account settings, and the Exchange rejects any order whose builder fee would exceed the cap you signed.
12 · Taxes
Trading profits and losses may create tax obligations where you live. Determining, reporting, and paying any such taxes is solely your responsibility. The Software's records are kept for its own learning loop and are not tax documents; do not rely on them as complete or authoritative for tax purposes.
13 · Privacy
Everything the Software learns (trade history, win rate databases, measurement matrices, logs) is stored locally on your machine and never transmitted to the Authors. There is no telemetry, no analytics, and no phone home. Your network traffic goes to the Exchange (to trade) and to public package registries (to install). If you optionally configure notifications, those go to the provider you configure.
14 · Disclaimers and risk statement
No advice
Nothing the Software or this site outputs is investment advice, a recommendation, an offer, or a solicitation to trade. Win rates, expected values, backtests, forecasts, and "recommended settings" are measurements of past price data produced by code, not predictions, and not tailored to you. The Authors are not licensed financial advisors and know nothing about your circumstances. If you need advice, consult a licensed professional.
Market risk
Cryptocurrency prices are extremely volatile and trade around the clock. Leveraged perpetual futures amplify both gains and losses: positions can lose more than the margin posted and can be liquidated entirely. Stop loss orders are not guarantees, in a fast market or a price gap the fill can be far worse than the stop price, or the stop may not fill at all. Thin order books add slippage that can exceed the edge being traded.
Strategy risk
The Software's measured edges are small, measurement puts the realistic directional ceiling in this market only slightly above a coin flip, and backtested figures above that did not survive out of sample testing. Edges that small are fragile: they can vanish when the market regime changes and are easily erased by fees and slippage. Past measurement does not guarantee future results. A period of profits is not proof the system works; a period of losses is possible at any time.
Technical risk
Software has bugs. The Software may miscalculate, crash, lose connectivity, or behave unexpectedly after an Exchange API change. Your own machine may fail, sleep, lose power, or be compromised. The Exchange may go down while you hold positions. Exchange native stops remain on the Exchange's servers if your machine goes offline, but everything else the Software manages stops with it.
As is
The Software and this site are provided "as is" and "as available", without warranty of any kind, express or implied, including merchantability, fitness for a particular purpose, accuracy, non infringement, or uninterrupted operation.
15 · Limitation of liability
To the maximum extent permitted by applicable law, the Authors and contributors shall not be liable for any loss or damage of any kind arising out of or in connection with the Software or this site, including, without limitation, trading losses, lost profits, liquidations, losses caused by software defects, incorrect calculations, stale data, Exchange outages or API changes, network failures, misconfiguration, compromised credentials, actions taken by an AI Client, or security incidents on your machine, whether in contract, tort, or otherwise, even if advised of the possibility of such damage. Where liability cannot be excluded by law, it is limited to the amount you paid for the Software, which is zero. Nothing in these Terms excludes liability that cannot lawfully be excluded, such as liability for fraud.
16 · Your representations and warranties
By using the Software you represent and warrant that:
- you meet the eligibility conditions in Section 3;
- the funds you trade were acquired lawfully;
- you have the technical ability to install, configure, and supervise the Software, or accept the consequences of not supervising it;
- you understand leveraged derivatives and the risks in Section 14;
- you are acting for yourself, not on behalf of another person or entity;
- you will not use the Software for market manipulation, money laundering, sanctions evasion, or any unlawful purpose.
17 · Term and stopping use
These Terms apply from your first use of the Software until you stop using it. You can stop at any time: close positions, revoke your Agent Key at the Exchange, and uninstall. Revoking the key immediately removes the Software's ability to trade your account. Sections that by their nature should survive (disclaimers, limitation of liability, and governing terms) survive termination.
18 · Security obligations
You are responsible for: keeping your Agent Key and .env file secret and out of version control and chat messages; securing the computer the Software runs on; reviewing the policy file before running Autonomous Mode with real funds; revoking keys promptly if you suspect compromise; and monitoring positions the Software opens. If your key leaks, revoke it at the Exchange immediately, that invalidates it at once.
19 · Force majeure
The Authors are not responsible for any failure or delay caused by events beyond reasonable control, including natural disasters, war, civil unrest, labor disputes, power or internet outages, actions of governments or regulators, Exchange failures, blockchain congestion or forks, or failures of third party infrastructure.
20 · Changes to these Terms and to the Software
These Terms may be updated as the Software evolves, to reflect new features, removed features, legal requirements, or clarity improvements. The current version always lives on this page with the date above; material changes will be reflected in the project changelog. Continuing to use the Software after a change means you accept the updated Terms. The Software itself may change at any time: features can be added, altered, or removed, and published measurement data can be revised as new measurements replace old ones.
21 · Open source license and intellectual property
The Software's source code is licensed under the Business Source License 1.1, which governs your rights to use, copy, modify, and redistribute the code, and which converts to the MIT License on 2030-08-25. Under BUSL you may read, modify and run the code for your own trading, research and other non-production use; offering it as a competing commercial trading service is not permitted before the change date. These Terms do not restrict rights that license grants you; they govern your use of the Software against a live exchange account and your use of this site. Trademarks, names, and logos of the Exchange and of AI Client providers belong to their respective owners. You are encouraged to read the source before connecting real funds, it is public precisely so you can verify what it does.
22 · General
Entire agreement. These Terms and the Business Source License 1.1 are the entire agreement between you and the Authors concerning the Software, replacing any prior statements. Severability. If any part of these Terms is found unenforceable, the rest remains in effect. No waiver. Not enforcing a provision is not a waiver of it. Assignment. You may not assign these Terms; the license travels with the code. No relationship. Nothing here creates a partnership, agency, fiduciary, or advisory relationship between you and the Authors. Disputes. Before pursuing any formal claim, contact the project through its public repository or package page and allow 30 days for an informal resolution. Any dispute shall be resolved on an individual basis; to the extent permitted by law, you waive participation in class or representative actions against the Authors. Language. These Terms are written in English; translations are provided for convenience and the English text prevails.
One sentence version: this is free, unregulated, open source software that trades real money with real leverage under your own key. If you are not prepared to lose the funds in the connected account, do not connect it.