Position protected Triggered protection check No action · stop already advanced Protection failed
Showing related position
Position
Direction
Status
Fills
Entry / Exit qty
Fees
Net P&L
Bot
Backtesting
Replay historical signals with either independent per-entry protection or one aggregate DCA position, using the selected entry limits, guards and execution assumptions.
Replay setup
Settings used by the next run
Dataset
Local signals
Selected date window
Exits
SL and take-profit ladder
Maximum holding period
Portfolio
Account-risk sizing
Per-entry protection
Execution
Configured costs
Entry guards enabled
Dataset & exits
Choose the evidence window and base SL/TP profile used by the replay.
LOCAL · ARCHIVED
USDT
%
hours
TargetPrice MovePosition Allocation
Execution Assumptions
%
%
%
%
Portfolio Replay Lab
Test the selected bot as a portfolio, search bounded TP/SL alternatives, and validate the strongest result out of sample.
LOCAL · ARCHIVED
Replay datasetLocal signals
Uses the selected local bot and its local signal history.
Compare the same production entriesObserved production is the factual baseline. Replayed settings reuse each real entry, then simulate alternative TP/SL exits.
Core portfolio modelSizing and protection applied to every simulated entry.
%
bps
Advanced controlsEntry guards, capacity, cooldowns, daily stops and opposite-signal behaviour.
×
USDT
sec
min
%
%
%
%
Run experimentChoose a direct comparison or train-and-validate search.
USDT
sets
%
Uses the date range, signals, notional, fees and slippage above.
Which replay mode should I use?See the difference in plain language
Complete strategy test
Counterfactual portfolio
Selected mode
“What would have happened if the bot had traded every historical signal using these settings?”
It simulates which signals become entries, entry prices and quantities, entry limits, cooldowns and maximum entries, plus every SL, TP, profit-lock and opposite-protection exit.
Use this when: testing a complete strategy against local or imported signal history.
Real-entry exit test
Production entries · simulated exits
Selected mode
“For trades that really opened on the exchange, what would have happened with different exit settings?”
It reuses the actual production entry time, fill price, quantity and entry fee. It then simulates SL/TP exits, profit-lock, opposite protection and exit fees. Rejected or missed signals do not become positions.
Use this when: comparing the real bot with alternative SL/TP settings or diagnosing real trades.
Important: Neither mode perfectly duplicates production exits. Replay exits use one-minute candles, not the exchange’s exact order, queue and trade sequence.
Controls changed after this result was generated. Run the replay again before comparing these figures.
Experiment complete
Profile
TP / SL
All filled entries
Status
Result explorer
Inspect the conservative validation path. Switch profiles without rerunning the experiment.
Trade economics
How much an average win earns versus an average loss, and the win rate needed to break even.
--
Actual win rate --Required --
Intrabar uncertaintyComparing both supported one-minute price paths--
First affected
Signal
High-first outcome
Low-first outcome
P&L gap
Risk diagnosticsRisk-adjusted consistency, streaks and price-path excursion.
No excursion data for this result
Full-period equity
Conservative OHLC path
No validation equity points
Position summaryExecution basis shown per position
Closed full-period positions
Opened / basis
Side
Signal price
Fill price
Exit price
Exit reason
Targets
MAE
MFE
Costs
Simulated P&L
Observed P&L
Difference
Protection audit
Held
Candidate leaderboard
Rank
Configuration
Training P&L · earlier
Validation P&L · later
Validation DD
Positions
Evidence
Model limits
Saved experiments
Open previous Portfolio Replay results or compare two to four runs from the same engine.
Experiment
Period
Scope
Positions
Net P&L
Win rate
Profit factor
Drawdown
Return / DD
Expectancy
Sharpe
Legacy independent replayThis preserved result uses the retired isolated-signal model and cannot be compared with Portfolio Replay experiments.
Net P&L
--
--
Win Rate
--
--
Profit Factor
--
--
Maximum Drawdown
--
--
Return / Drawdown
--
--
Expectancy
--
--
Sharpe / trade
--
--
Avg MAE / MFE
--
--
Simulated Equity
No completed trades in this run
Data Quality
Risk & Distribution
Breakdown
Excursion Scatter
One dot per trade: how far it ran against you before resolving, against how far it ran in your favour. Winners green, losers red.
This run has no excursion data
Simulated Trades
Signal
Action
Entry
Exit
Reason
Targets
MAE
MFE
Fees
Net P&L
Return
Run Comparison
Run
Period
Signals
Trades
Net P&L
Win Rate
Profit Factor
Drawdown
Return / DD
Expectancy
Sharpe
Webhook manager
Configure authenticated signal sources, validate payloads, and inspect every delivery from receipt to protection.
TradingView access is not enabledAn administrator must enable it before this account can receive TradingView signals.
Endpoint status--Checking HTTPS ingress
Deliveries today0Loading delivery outcomes
Median submission--Webhook receipt to exchange
Authentication failures0Last 24 hours
Delivery path
MMTStrategy alert fires
Webhook POSTJSON → your endpoint
Bot EngineValidates · risk checks · routes
Exchange APIOrder submitted and reconciled
NotifyTelegram / Discord / dashboard
Webhook security
Account defaults applied before payload parsing
Enforced
/ sec
/ min
KB
Replay protectionReject duplicate alert keys and stale timestamps.
Unique bearer secret per botA leaked secret cannot expose another bot.
IP allowlistAvailable after trusted provider ranges are configured.
Delivery health
Public endpoint and execution worker status
Checking
Public HTTPS endpoint
Checking
Deliveries loaded
0
Last delivery received
Never
Last HTTP response
--
Execution workers
Checking
Exchange clock drift
--
Timing begins at webhook receiptProvider-to-SignalPilot network travel is outside the execution timeline.
Bot endpoint & credentials
Each bot has an isolated URL token and bearer secret
MMT webhook endpoint
Paste this into the destination field for both alert directions.
Create or select a bot to get its URL
Webhook bearer secret
The complete secret is only shown after creation or rotation.
Hidden after creation
SignalPilot checks both the unguessable URL token and the separate payload secret.
Payload format
Preview the payload or send a genuine Demo/Testnet order
Test orders reach the exchangeThis sends a genuine order through the full route on Demo/Testnet. SignalPilot always blocks it on Live.
MMT alert template
Copy the exact provider configuration
Uses the exact confirmed price sent by a typed V3 alert payload.
Confirmed candle closeCreate separate Long and Short alerts using Once per bar close.
Webhook Event Log
Latest redacted deliveries · UTC timestamps
Time
Method
Source IP
Payload
Authentication
Status
Reason
Execution timeline
Settings
Exchange access, account-wide trading safeguards, notifications, security, and recoverable data controls.
Exchange connection--Loading connection
Position mode--Loading futures configuration
Risk safeguards--Loading account safeguards
Notifications--Loading notification channels
BloFin API Connection
Credentials and account capabilities
NOT TESTED
Demo tradingDemo and Live use separate credentials and connections
Enable Spot TradingRequired for spot pairs
Enable Futures TradingUSDⓈ-M futures
Capabilities come from the selected exchange environment. Unavailable data is shown as unverified.
Risk Management
Bot safeguards with optional account-wide limits
CAPS OFF
Account-Wide Safety Limits Optional hard caps across all bots · New Entry Orders remains active separately
USDT
%
Calculated from start-of-day account equity
0 disables · resets at 00:00 UTC
min
USDT
×
/ min
Always active · duplicate/order-storm protection
Advanced safeguards
0 disables · tracked separately for each bot
Kill-switch on daily account lossPause all bots when the percentage limit is hit
Reject signals outside trading hoursConfigured UTC window
Reject orders exceeding available balanceSanity check against live account balance/margin before sending
Include unrealized P&L in daily account lossOpen losses can trigger the percentage kill switch
Fee Reporting
Reporting preference only · exchange records and execution stay unchanged
Actual API fees
Simulate trading feesUse configured maker and taker rates when reviewing performance.
%
%
Telegram Notifications
Bot credentials and delivery preferences
Not connected
Signal received
Order filled
Daily P&L report
Backend crash / service down
Automatic safety pauses and recoveryImmediate alert when protection or risk logic stops/resumes a bot
Webhook authentication failures
Discord Notifications
Webhook credentials and delivery preferences
Not connected
Signal received
Order filled
Daily P&L report
Backend crash / service down
Automatic safety pauses and recoveryImmediate alert when protection or risk logic stops/resumes a bot
Webhook authentication failures
Access Control incidentsAlert the admin Discord about each new operational incident or unhandled error. Repeated occurrences stay grouped unless severity increases.
Account & Security
Access--
Protected by an HttpOnly session and CSRF token
The dashboard signs out after the selected period without authenticated activity.
Authenticator MFA
Protect your account with Google Authenticator or another TOTP app.
OFF
Scan this QR code
In Google Authenticator, tap + and choose Scan a QR code. You can also enter this setup key manually:
Save these recovery codes now
Each code works once. They will not be shown again.
Require re-auth for Emergency Stop & credential rotationAlways enforced by the server
Data & Backups
Last verified backupNever
Automatic local backups
min
Reset trading history
Start statistics, trades, signals, equity and user logs from zero. Bots, credentials and every setting stay unchanged.
The immutable exchange ledger is retained for reconciliation and recovery.
Emergency Stop
Immediately pauses every bot and cancels pending SignalPilot entry orders. Open positions and their protective orders stay active.
Bot Logs
Operational incidents, automatic pauses, exchange errors, and confirmed recovery.
Critical / errors0Loading critical incidents
Warnings0Loading warnings
Unacknowledged0Loading review status
Paused bots0Loading safety pauses
Incident timeline
No operational incidents
Access Control
Activation keys and user accounts for this deployment
Diagnostics
Account
Users
Bots
Paused
Incidents
Access
Operational Incidents
Last seen
Severity
Account / Bot
Incident
Count
Unhandled Errors
Last seen
Type
Path
Count
Account
Request
Access Expiry
Pause bots when access expiresRecommended. When off, bots keep opening positions that the signed-out user cannot see or stop.
Create Activation Key
days
days
Copy this now — it is shown once and cannot be recovered.
Activation Keys
Key
Duration
Uses
Note
Created
Status
No activation keys yet
User Accounts
Username
Role
Status
MFA
Access until
TradingView
Created
No users
Disconnect notifications
Confirm Password
Reset Trading History
This creates a clean reporting baseline. Bots, webhook credentials, exchange settings and risk settings will not change.
Loading reset preview…
Import Bot Settings
Import a SignalPilot preset from a file or paste its JSON. Credentials, webhook secrets, positions, and trading history are never part of a preset.
No file selected
Imported bots use your credentials on this connection. Select another exchange or environment in Settings before importing.
Create New Bot
Imported preset — starts pausedReview every value for this account. A fresh webhook secret will be created, and the bot cannot trade until you start it.
Future signals onlyTP/SL values and the break-even slippage buffer saved here will not alter open positions. Use Positions & Orders > Modify for eligible live protection.
×
%
Price MovePosition Allocation
%
USDT
bps
Trailing Exit continually moves protection as price advances
Profit-Lock Ladder Advance each position's stop after its completed profit targets
Opposite-Side Profit Protection Partial profit and protected net break-even for each Multi-Position entry
%
Webhook TriggerRequired and always enabled for the Webhook Signal strategy
Close position on opposite signal Controls how opposite signals affect an open position
Keep adding after a take profit Allow new entries once a target has filled
Advanced Settings
USDT
Applies to every new entry. If several entries are open, each can lose this amount. Fees, slippage, or price gaps may increase the actual loss.
%
%
/ sec
Reduce-Only ModeSignals can only close positions, never open new ones
Telegram Alerts for this BotNotify on execute, reject, and error
Discord Alerts for this BotNotify on execute, reject, and error
Modify TP / SL
Live position onlyChanges are sent to this position on the exchange. Bot defaults for future signals stay unchanged.