Daily trend
Is the bigger trend healthy? Price above key daily averages is treated as a tailwind.
Newcomer guide · concepts, screens and abbreviations
SignalDesk is a self-hosted crypto buy-setup scanner. It reads public Binance spot data, scores each pair in your watchlist from 0 to 100, and turns the result into a concrete trade plan with an entry, a stop and two targets.
It is a research and education tool. It never connects to your exchange account, never places orders, and does not need an API key.
One sentence: it filters the market for possible buy setups and shows you the risk before you act.
SignalDesk watches a list of coins you choose. For every coin it combines a daily trend filter with 4-hour entry timing. If the evidence lines up, it produces a score, a verdict and a trade plan.
Is the bigger trend healthy? Price above key daily averages is treated as a tailwind.
Is the shorter timeframe offering a sensible moment — RSI, support, volume and momentum?
Where is the stop, where are the targets, and does the reward justify the risk?
From blank dashboard to your first full analysis.
Go to /. The first automatic scan starts when the page loads.
In the Watchlist panel, type BTC, eth/usdt or SOLUSDT and press Add. Start with 5–8 liquid pairs, not 50.
A scan of a small watchlist usually takes a few seconds. The status dot turns green when it finishes.
Start with Score, Signal, Entry / Stop and Target / R:R. Ignore every other column until those make sense.
A row opens the full-analysis page with the chart, evidence, score breakdown and every indicator used.
Open the Backtester, choose the pair and run the defaults. Compare the strategy with simply buying and holding.
Turn on Auto 5m in the top bar if you want the dashboard to rescan every 5 minutes. Live prices refresh every 5 seconds either way.
BTCUSDT, ETHUSDT,
SOLUSDT, BNBUSDT, XRPUSDT. Liquid pairs
have cleaner candles and more reliable indicators.
What every area on the main screen is for.
| Area | What it does |
|---|---|
| Top bar | Status, Auto 5m switch, Guide, Backtest and Rescan. The status dot shows idle, busy or error. |
| Stat cards | How many pairs are strong buys, buys or on watch, plus the average score across the watchlist. |
| Watchlist panel | Add or remove coins. Changes are saved to config.json outside Docker, or the /data volume in Docker. |
| Buy setups table | One row per pair with score, verdict, indicators and the trade plan. |
| Search & filter | Filter by symbol text or by verdict (Strong buy, Buy, Watch, Wait, Avoid). |
| Live pill | LIVE means the price feed is healthy. STALE means the feed could not be reached; analysis stays visible. |
| How the score is built | The six scoring components and the legend for every plan field. |
| Column | Meaning |
|---|---|
| Pair | The coin and its quote currency, e.g. SOL/USDT. |
| Price / 24h | Live Binance spot price and the change over the last 24 hours. Refreshes every 5 seconds. |
| Score | 0–100. Higher means more of the rule-based evidence agrees. |
| Signal | Verdict mapped from the score: Strong buy, Buy, Watch, Wait or Avoid. |
| RSI 4H | Momentum gauge from 0–100. Below 30 is oversold, above 70 is overbought. |
| Trend 1D | Daily trend structure: up, down or mixed. |
| Vol | Current volume compared with its 20-bar average. 2.0× means twice normal. |
| Support / Resist. | Nearest active LuxAlgo swing support and resistance levels. |
| Entry / Stop | The plan entry at scan time and the stop-loss below it. |
| Target / R:R | First target and the reward-to-risk ratio. Higher R:R means more reward per unit of risk. |
Two timeframes, six checks and one honest rule: only closed candles count.
| Timeframe | Job | Why it matters |
|---|---|---|
| 1D — one day | Trend filter | Stops the scanner from buying into a strong downtrend. |
| 4H — four hours | Entry timing | Catches the shorter-term setup: RSI, support, volume, momentum and divergence. |
| Component | Max points | What earns points |
|---|---|---|
| Daily trend | 25 | Price above the daily 200-EMA, 50-EMA above 200-EMA, daily RSI healthy. |
| RSI (4H) | 20 | Oversold or cooling RSI that has started turning up. |
| Support | 20 | Price close to a tested swing support, measured in ATR. |
| Volume | 15 | Volume above average on a green candle, plus buyer pressure. |
| Momentum | 12 | Breakout pressure, aligned EMAs and volume-confirmed resistance breaks. |
| Divergence | 8 | Regular bullish RSI divergence: price lower low, RSI higher low. |
Penalties reduce the score for overbought RSI, an overextended 24h move, thin volume, price far from support, price below the 4H 50-EMA and poor reward/risk. Two hard caps keep it honest:
| Score | Verdict | How to read it |
|---|---|---|
| 75–100 | Strong buy | Trend, timing and volume all agree. |
| 60–74 | Buy | Actionable setup; check the plan and the evidence. |
| 45–59 | Watch | Interesting, but wait for confirmation. |
| 30–44 | Wait | Weak or conflicting evidence. |
| 0–29 | Avoid | No edge or bearish structure. |
Every signal answers three questions: where in, where wrong, where out.
The current price when the scan ran. The live price may have moved since then.
Placed below the nearest support, with an ATR buffer. If price reaches it, the setup has failed.
The nearest resistance. Often the more realistic target and the default backtest exit.
The next resistance above T1. Further away, so fewer trades reach it.
R:R compares the money you could make with the money you are risking. The formula is:
R:R = (target − entry) ÷ (entry − stop)
Example: entry $100, stop $95, target $110. Risk is $5, reward is $10, so R:R is 2.0. A 2R trade earns twice what it risks. The scanner penalises plans below 1R because you would risk more than you stand to gain.
Click any pair to see the complete reasoning behind its score.
The analysis page repeats the important parts of the dashboard, then adds the complete indicator readout, the evidence list, the score breakdown, break history and divergence detail.
| Element | Meaning |
|---|---|
| Candles | Green means the candle closed above its open; red means it closed below. |
| EMA 20 / EMA 50 | Fast and medium exponential moving averages. Price above them is generally constructive. |
| Lux S / Lux R | Active LuxAlgo swing support and resistance levels, held until a new pivot replaces them. |
| Entry / Stop / T1 / T2 | Dashed horizontal lines showing the current trade plan. |
| Volume panel | How much was traded in each 4H candle. |
| RSI 14 panel | Momentum line with 30 / 50 / 70 reference levels. |
| Break markers | LuxAlgo volume-confirmed break labels above or below candles. |
| Action | Result |
|---|---|
| Hover / move the pointer | Crosshair and a tooltip with OHLC, change, volume, EMA values and RSI. |
| Drag left or right | Pan through older or newer candles. |
| Mouse wheel | Zoom in or out around the pointer. |
| Two-finger pinch | Zoom on touch devices. |
| Double-click | Reset to the last 96 bars. |
| Toolbar + / − / Reset | Zoom in, zoom out or reset without the mouse wheel. |
| Keyboard ← / → | Pan the chart when it has focus. |
| Keyboard + / − / Home | Zoom in, zoom out or reset. |
Fast read on trend, RSI, volume, ATR, support and resistance.
Plain-English reasons the score is high or low, plus warnings.
Exactly how many of the 100 points came from each component.
Every input used by the scanner, grouped and labelled.
A flight simulator for the scanner’s rules — not a crystal ball.
The backtester rewinds history and replays the same scoring engine used by the live scanner. It does not invent a separate strategy. For every closed 4H candle it scores the setup and simulates what would have happened if a signal had been taken.
| Control | What it changes |
|---|---|
| Pair | Which watchlist coin to replay. |
| Lookback | How many 4H bars to simulate. More bars = more trades and a more meaningful sample. |
| Min score | Only signals at or above this score are taken. Higher = fewer, more selective trades. |
| Risk / trade % | Percentage of current equity risked on each trade. Default 1%. |
| Exit target | T1 exits at the first target; T2 waits for the second and usually has a lower win rate. |
| Max hold | Close the trade after this many 4H bars even if neither stop nor target was hit. |
| Fee / side % | Exchange fee charged on entry and on exit. |
| Slippage / side % | Assumed price worsening on entry and exit. Real slippage can be worse. |
The engine scores candle i. If the score is high enough and no trade is open, the plan becomes pending.
This prevents lookahead. The engine cannot buy at a price it did not know yet.
Risk a fixed percentage of equity, capped at available cash. No leverage.
Check stop, then target, then max hold. If stop and target are both touched inside one candle, the stop is assumed first.
Fees and slippage are applied, the trade is logged, and the equity curve is updated at every close.
| Statistic | Meaning |
|---|---|
| Total return | How much the simulated account grew or shrank. |
| Buy & hold | What would have happened by simply holding the coin for the same window. |
| Max drawdown | The worst fall from an equity peak. Smaller is easier to live with. |
| Trades | How many simulated trades happened. Fewer than ~20 is a small sample. |
| Win rate | Percentage of trades that ended profitable. It says nothing about size of wins versus losses. |
| Profit factor | Gross profits ÷ gross losses. Above 1.0 is profitable before other costs; higher is better. |
| Average R | Average trade result measured in risk units. +1R means you made the amount risked. |
| Exposure | Percentage of bars with an open position. Low exposure means the strategy was mostly in cash. |
| Best / worst trade | The largest percentage winner and loser. |
R is your risk unit. If you risk $100 on a trade, then +2R means you made $200 and −1R means you lost $100. R lets you compare trades fairly regardless of coin price.
Every shorthand used across the dashboard, chart and backtester.
config.json or the Docker /data volume.config.json./api/health returns a small OK response so Docker can tell the app is alive.| URL | What it opens |
|---|---|
/ | Dashboard and watchlist |
/coin/SOLUSDT | Full analysis for SOL/USDT |
/backtest | Strategy backtester |
/guide | This page |
/api/prices | Live JSON price feed |
/api/backtest/SOLUSDT | Backtest JSON for one pair |
Short answers to the questions new users ask first.
How to use the tool without pretending it is magic.
Add a handful of liquid pairs and run your first scan.
02Open a full analysis and read the evidence and score breakdown.
03Run the defaults, then change one setting at a time.
SignalDesk is not financial advice. It is a self-hosted, rule-based technical analysis tool that reads public Binance spot data. Past results do not guarantee future returns.