Troubleshooting & FAQ
Synchronicity runs your strategies on Hyperliquid. It is live on Hyperliquid mainnet, so strategies trade real funds. If you want to run the same flow without real funds at risk, practice on testnet. When a step stalls, the cause is almost always one of a handful of things, and most of them clear in a minute once you know where to look.
Signing in and approving the agent are only signatures. They move no funds. They only authorize placing trades within your account.
Work down to your problem in the order the app asks for it: connection and sign-in first, then linking your Hyperliquid account, then deploying, then the questions about where your money actually sits.
Jump to a question
- Wallet connection and sign-in
- Session expiry: “Authentication expired”
- Hyperliquid account linking and approval
- Deployment issues
- Strategy not triggering
- Exit not triggering
- Closing a position and reduce-only orders
- Your funds: where they live and what trades do
- Import and export
Wallet connection and sign-in
My wallet will not connect.
Synchronicity supports MetaMask, Rabby, and an email-created wallet. Pick one path:
- MetaMask or Rabby. Install the browser extension, unlock it, and click Connect account. If nothing happens, the extension is locked or another wallet is intercepting the request. Unlock the one you want, disable the others for this site, and try again.
- Email. Enter your email and Synchronicity creates a wallet for you behind the scenes. No extension needed. This is the simplest path if you do not already run a wallet.
If the wallet selector itself does not open, refresh the page once. A stale browser session is the usual culprit.
Sign-in failed when I tried to connect.
The first time you connect, you sign a message that proves the wallet is yours. This is only a signature: it costs nothing, moves no funds, and never touches your Hyperliquid balance.
If you reach “Sign-in failed. Try again,” one of these is in the way:
- You dismissed the wallet prompt. MetaMask or Rabby popped a request to sign and it was closed or rejected. Click connect again and approve the signature when the wallet asks.
- The wallet popup never appeared. It may be hidden behind the browser window or blocked. Open the extension manually, clear any pending request, and retry.
- A previous session is half-alive. Disconnect from inside the wallet, refresh Synchronicity, and connect fresh.
The signature signs you in. It does not yet authorize any trading on Hyperliquid. That is a separate, deliberate step, covered next.
Session expiry: “Authentication expired”
I was working and got “Authentication expired.”
Your sign-in session has a lifetime. When it lapses while you have the app open, Synchronicity flags it rather than failing silently, so you are never left guessing why a save or a Signac request stopped going through.
When you reach Authentication expired and the prompt to Re-authenticate, click it and sign the message again. It is the same signature you used at sign-in: free, instant, no funds touched. Your session refreshes and you pick up where you left off.
A session can expire mid-task, but the lapse is harmless. Only the session token went stale, and nothing in your strategy or your Hyperliquid account is affected. Deployed strategies keep running on Synchronicity whether or not your browser session is signed in.
If you reach “Sign-in failed” while re-authenticating, treat it as a fresh sign-in: clear any pending wallet request, refresh the page, and sign again.
Hyperliquid account linking and approval
Connecting your wallet signs you in. Linking your Hyperliquid account is what lets a deployed strategy actually place orders against your balance. Two approvals do that, each a signature from your wallet, both walked through in Connect to Hyperliquid.
The agent approval did not go through.
The agent approval authorizes a dedicated key, scoped to your account, to place orders on your behalf. It cannot withdraw or transfer your funds. If the approval stalls:
- Check your wallet for an unsigned request. The approval is a signature your wallet must confirm. If you closed the prompt, the agent stays unapproved. Reopen the Hyperliquid connection flow and sign when asked.
- Confirm the network. The approval is signed on the Hyperliquid network. If your wallet is on a different one, Synchronicity prompts you to switch before it can sign. Approve the switch in your wallet, then continue.
The builder-code approval did not go through.
The builder code is the second signature. It approves a capped fee that Hyperliquid lets an interface attach to the orders it submits, with a ceiling of 10 basis points (0.1%). You sign the cap once, and the rate actually applied is lower. See Trading Fees for the full breakdown.
Synchronicity checks your live agent status first. If the agent is already approved, you only sign the builder-code cap, not both. If that signature stalls, the cause is the same as the agent step: an unsigned request waiting in your wallet, or the wrong network. Clear it and sign again.
My wallet is on the wrong network.
The approvals are signed on the Hyperliquid network, so your wallet has to be on it. When it is not, the flow shows a switching-network step and asks your wallet to change. Approve the switch in the wallet, then the signature step continues on its own. If the switch is rejected, the approval cannot proceed. Reopen the flow and allow the network change.
The Approved status is not showing.
You are ready to deploy when your Hyperliquid status reads Approved, with the agent and builder code both signed. If it has not flipped to Approved:
- Confirm both signatures actually completed. A half-finished flow, where the agent is signed but the builder code is not, holds the status back.
- Reopen the Hyperliquid connection flow. Synchronicity re-checks live agent status and shows you exactly which step is outstanding.
An approval only grants permission. Signing the agent and builder code authorizes Synchronicity to place orders from your account. It never moves your funds off Hyperliquid or out of your control, and you can revoke the agent approval at any time, which stops future Synchronicity orders on that account.
Deployment issues
The Deploy button is grayed out.
The canvas has no nodes, you are viewing a deployed strategy in read-only mode, or deploying is restricted in your region. Add at least one Indicator node and one Order node, and open the strategy in edit mode. If your wallet is not connected, the toolbar shows a Log In button in place of Deploy, so connect it first. See Deploy a Strategy.
My deploy did not go through.
The Strategy Builder validates a strategy before it sends anything, so most failures surface as a named problem in the deploy modal rather than a silent stall. Work through these in order:
- Read the validation error in the modal. It names what needs fixing. The common one is “Indicator has no conditions configured or has not been deployed”: open the flagged node, add at least one condition, and deploy again.
- Check that every node is connected. Unconnected nodes are flagged during validation.
- Confirm the required fields are filled. Market, order type, size, and any exit conditions all need values.
- Confirm your Hyperliquid account is Approved and funded. A strategy cannot open a position without the agent approval signed and capital behind it.
“Indicator has no conditions configured or has not been deployed.”
An Indicator in your strategy has no conditions set. Open the flagged node, add at least one condition, and deploy again.
”Oracle registration failed.”
A data source your strategy uses could not be registered. After validation passes, the Strategy Builder deploys an oracle for each Indicator condition and inline trigger, and each one warms up against live market data before the strategy goes on-chain. If one fails to register, run the deploy again. If it keeps failing, open the flagged Indicator, simplify the condition, and redeploy. See the oracle steps in Deploy a Strategy, and Oracles for how the oracle system decides whether a condition is true.
The strategy deploys but immediately shows as Cancelled.
Synchronicity accepted the deploy, then rejected the strategy at the exchange. Common causes:
- An Order node references a market that is unavailable or in maintenance.
- Margin is too low to cover the position size you configured.
- A cycle configuration exceeds the maximum allowed loops (1,000 per connection).
Check each Order node’s market, margin, and size, then redeploy.
What happens if a node fails mid-flow?
Execution stops at the failed node, and the node shows its failure reason in canvas view mode. The strategy stays Active only while another branch is still running. Otherwise its status moves to Failed. Load it from the dashboard, correct the configuration, and deploy it as a new instance.
Strategy not triggering
My strategy is Active but never acts.
Usually the conditions in your Indicator have not been met yet. Open the strategy in canvas view. If the Indicator node is highlighted as the active node, the strategy is waiting, which is expected.
If the conditions should have been met on recent price action, check:
- The comparison operator is set correctly (greater than versus less than, crossover versus static threshold).
- The indicator period matches your intent. EMA(12) and EMA(24) on a 1-minute interval behave very differently from the same settings on a 1-hour interval.
- The combinator (AND/OR) is set the way you meant.
My limit order is not filling.
A limit order fills only when the market reaches your price and liquidity is available at that level. If the price is close but the order still has not filled, the market has not cleared at or through your limit yet.
Exit not triggering
The position is open but the close Trigger is never met.
Check:
- The condition in the Trigger is correct. Open the strategy in canvas view and confirm the node is highlighted as active.
- The comparison direction. If you meant “close when RSI > 70” but configured “RSI < 70,” it will not be met during a rally.
- Whether the stop loss or take profit already closed the position. If so, the strategy may have moved past the Trigger.
The stop loss did not trigger.
A stop loss triggers when the market reaches your configured price. The close is a market order, so in fast markets the fill price can differ from the stop price. It fills at the next available price and accepts slippage.
Closing a position and reduce-only orders
My strategy failed to close its position, or a reduce-only order was rejected.
Your strategies and any manual trades share one Hyperliquid account. What a strategy tracks as “its” position is really bookkeeping over the single net position your account holds on that coin. So when a strategy sends a reduce-only order to close, Hyperliquid can reject it for a shared-account reason:
- The exposure is already gone. Another strategy on the same coin, or a manual trade, already flattened or flipped the account-level position. A reduce-only order that would now increase net exposure is rejected. The failure reason names this: the order was rejected because it would increase the account-level position.
- The leftover is below the exchange minimum. The remaining size sits under Hyperliquid’s $10 minimum order notional, so there is nothing tradeable left to close and the exchange rejects the order at submission.
What to do: usually nothing. The engine treats this as a structural close rather than a strategy error. It waits for a fresh account snapshot, confirms the shared account no longer holds exposure on that side, and marks the strategy’s position closed in its own books at the authoritative price. The close is retryable and can resume on its own. If you reach this often, the cause is several strategies (or a manual trade) working the same coin on one account. Monitor a Live Strategy shows where a strategy’s positions and status appear.
Your funds: where they live and what trades do
Where do my funds actually sit?
In your own Hyperliquid account. Synchronicity never holds, custodies, or moves your capital. Linking your account grants permission to place orders against your balance. It does not transfer the balance anywhere. See Custody of Funds for the full breakdown of what stays with you, what you approve, and how to revoke it.
Where do orders go, and where do they settle?
On Hyperliquid. Synchronicity gives you the canvas where you compose, test, and deploy the strategy. It is not the exchange. When an Order node runs, the order routes to Hyperliquid, and the buy or sell settles there against your balance. Every fill, position, and PnL is on Hyperliquid.
What happens if my position gets liquidated?
The exchange can close a leveraged position if the market moves far enough against it, and that close is final once triggered. Liquidation references Mark Price rather than the last trade, so the mark reaching your liquidation level is enough to close you out.
The lower your leverage and the tighter your stop loss, the more room a position has before the exchange takes the exit out of your hands. The mechanics, the approximate move that exhausts your margin at each leverage level, and the levers that reduce the risk are all in Leverage, Margin, and Liquidation. Read it before you deploy with leverage.
What fees do I pay?
You pay three costs, from three different places. Hyperliquid charges the maker or taker fee on the trade, the largest line on most fills. Synchronicity adds a thin builder fee on top, by default 3 basis points on a strategy order and 1 on a direct trade (both configurable), capped at the 10 bps you approve when you link your account. Signac usage is metered separately and not charged to you. The full overview is in Trading Fees.
Is there a paper-trading or demo mode I can practice on?
Synchronicity is live on Hyperliquid mainnet, so a deployed strategy trades real funds. To practice without real funds at risk, practice on testnet, which runs against Hyperliquid testnet with test funds.
There’s no paper trading mode on mainnet, but you can test your logic before deployment:
- Backtest the logic. Replay your strategy against historical data with the built-in backtest tool to check that entries and exits land where you intended.
- Use the built-in chart. See when your strategy would have executed orders against historical price action, a quick read on whether your conditions were met at the right points.
- Start small. Start with size and leverage you would be comfortable holding through a sharp move. Watch how the strategy behaves on live fills, then scale only what you understand.
General questions
Can I edit a deployed strategy?
No. Cancel it first, make your changes, then redeploy. See Cancel or Stop a Strategy.
Does cancelling a strategy close my open positions?
It asks you. Cancellation stops the strategy flow, then prompts you to choose what happens to any open strategy positions: Close positions, Mark as closed, or Leave position open. Only Close positions sends close orders to the exchange. The other two leave the exposure on your account for you to manage. See Strategy Positions.
Can I run the same strategy multiple times at once?
Yes. You can deploy the same strategy, or several strategies with identical logic, as separate instances. Each deployment is independent.
How many cycles can a strategy run?
Each cycle connection supports up to 1,000 loops. The default when you create a cycle is 3. Raise it in the cycle config panel. See Configure a Cycle.
Import and export
Import fails with “Invalid JSON.”
The clipboard does not hold valid strategy JSON. Re-copy the exported strategy and try again. Make sure nothing was added or removed from the text after export.
After import, the strategy looks different from the original.
Node positions on the canvas can differ after import, but the configuration should be identical. If the logic itself looks different, check that the original export was not modified before importing.
Still stuck?
Ask in the community Discord , or revisit the guides below.