Open Orders
Recent Closed
Create New Bot
Open Orders
Recent signals
Signal Decision Log
| Time | Pair | TF | Z-score | Type | Decision | Reason | Bot |
|---|
Queued Signals
Equity Curve & PnL
Position History
Reset Trading Data
Clears all positions, trade history, and stats. Exchange orders are NOT affected. This action cannot be undone.
Security
Exchange Credentials
Connection Status
Manual & FAQ
1. Go to Exchange API and add your exchange API key (Binance, Bybit, or OKX).
2. Go to Create Bot or Dashboard quick form and create a bot: pick a pair (or */* for all), timeframes, entry Z threshold, notional per leg, and TP/SL settings.
3. Enable the bot and enable trading. The bot will automatically pick up signals from the screener and execute trades.
4. Monitor positions in Positions and Dashboard tabs. View closed trades in Trade History.
| Dashboard | Health stats, quick bot creation form, open/closed positions overview |
| Positions | All open positions with live PnL, TP/SL progress sliders |
| Pair Bots | List and manage your trading bots |
| Create Bot | Full bot creation form with all settings |
| Signals | Incoming signals from the screener |
| Queue | Waiting signals — shows why a signal is pending |
| Trade History | All positions (open + closed) with full details |
| Settings | Global runtime configuration |
| Exchange API | Exchange API keys management (Binance, Bybit, OKX) |
| Account | Profile and password |
| Enabled | Master switch. When off, the bot ignores all signals. |
| Trading Enabled | When off, the bot processes signals but does not place orders. |
| Ticker A / Ticker B | The pair of assets to trade (e.g. ETH / ARB). Use */* to accept signals for any pair. |
| Exchange | Exchange to use: Binance, Bybit, or OKX. |
| Exchange Type | Spot — regular trading. Futures — USDT-M perpetual contracts with leverage. |
| Strategy | Correlation — classic pair trading based on price correlation. Cointegration — statistical arbitrage using cointegration tests. Both — accept both signal types. |
| Timeframes | Which timeframes to listen for signals (5m, 15m, 1h, 4h, 1d). The bot only reacts to signals that match selected timeframes. |
| Entry Z | Minimum Z-score to enter a position. If set to 3, the bot enters when |Z| ≥ 3. Higher values = more selective, fewer trades. Typical range: 2–5. |
| Min Abs Z | Additional filter — minimum absolute Z-score to even process the signal. Signals below this value are silently dropped. |
| Notional per Leg | How much USDT to allocate per leg of the pair. A pair trade has 2 legs, so total volume = 2 × notional. Example: 100 USDT per leg = $200 total position. |
| Leverage | Leverage multiplier (futures only). Range: 1–125x. Higher leverage = higher profit/loss per price move. |
| Use Max Leverage | Automatically set the maximum leverage available for each contract on the exchange. |
| Margin Mode | Isolated — each position has its own margin; liquidation doesn't affect other positions. Cross — all positions share the same margin pool. |
| Min Balance | Minimum USDT balance required to open new positions. If balance drops below this, new trades are blocked. |
| Max Open Positions | Maximum number of simultaneously open positions for this bot. New signals are queued once the limit is reached. |
| Max Concurrent Trades | Maximum number of trades being executed at the same time (placing orders). |
| Pair Cooldown (sec) | After closing a position on a pair, wait this many seconds before opening a new one on the same pair. |
| Allow Overlapping | If enabled, the same coin can appear in multiple open positions (e.g. ETH/ARB + ETH/FET at the same time). If disabled, a coin can only be in one position at a time (across all bots). |
| Two-Leg Slippage (%) | Maximum allowed price slippage between the two legs of a pair trade. If the actual ratio diverges more than this %, a warning is logged. Default: 0.3%. |
| Two-Leg Timeout (ms) | Maximum time to wait for both legs to fill. If exceeded, the bot checks which legs completed and handles partial fills. Default: 5000ms (5 sec). |
| TP Enabled | Enable or disable automatic take profit for this bot. |
| TP Mode: Delta Z | Close when Z-score changes by the specified amount from entry. Example: entry Z=3, deltaZ=2 → close when Z reaches 1 (i.e. Z moved 2 towards zero). |
| TP Mode: Percent (%) | Close when PnL reaches the specified % of total position volume. Example: 2% on a $200 position → close at +$4 profit. |
| TP Mode: USDT | Close when PnL reaches the specified absolute amount in USDT. Example: 5 USDT → close at +$5 profit. |
| TP Mode: Ratio % | Close when the price ratio (A/B) changes by the specified % from entry. Useful for cointegration strategies. |
| Exit Only in Profit | If enabled, TP conditions are only checked when PnL is positive. Prevents premature exits when Z-score moves but PnL is negative. |
| SL Enabled | Enable or disable automatic stop loss for this bot. |
| SL Mode: PnL (USDT) | Close when unrealized loss reaches the specified amount in USDT. Example: -10 USDT → close at -$10 loss. |
| SL Mode: Z-score | Close when Z-score moves further against the position by the specified amount. Example: entry Z=3, SL Z=2 → close if Z reaches 5 (moved 2 in the wrong direction). |
| SL Mode: Ratio % | Close when the price ratio (A/B) changes by the specified % against the position. |
| Hedge Ratio Mode | From Signal — use the hedge ratio (beta) calculated by the screener. Manual — set your own hedge ratio. |
| Manual Hedge Ratio | Custom hedge ratio (beta coefficient). Determines the proportion of leg B relative to leg A. Only used when mode is "Manual". |
| Max ADF p-value | Maximum ADF test p-value to accept a cointegration signal. Lower = stricter stationarity filter. Default: 0.05 (5%). |
| Half-Life Bars | Expected mean-reversion half-life in bars. Informational — used for filtering signals with too slow convergence. |
| Exit on Mean Reversion (Z→0) | Automatically close the position when Z-score returns to zero (the historical mean). Triggers when Z crosses zero or |Z| < 0.3. Only active when TP is set to Delta Z mode or TP is disabled. |
Connect to ws://HOST:3000/ws?token=YOUR_TOKEN for realtime events.
Send {"type":"close_position","positionId":"..."} to close positions via WS.
SSE stream is available at /api/events.
Signals are sent by the screener to POST /api/signal.
Profile
| Username | |
| Role | |
| Member since |
Change Password
Sessions
Log out from all devices and browsers. You will need to log in again.
Registered Users
| Username | Role | Subscription | Created |
|---|