Best Practices

Advice from someone who's
made these mistakes.

These aren't rules written by a compliance team. They're the habits that separate traders who improve from traders who keep making the same expensive errors. Most of them are harder than they sound.

1. Data Quality

Before you ask the AI anything, check that your data is actually live. Cached data can be hours old, and the AI won't tell you it's reasoning from yesterday.

Check the data source before you ask AI anything

Before opening ORACLE or running a Quant Brain analysis, look at the data source indicator in the top bar. If it shows CACHED or STALE, the AI is reasoning from old data — and it won't flag that for you. Refresh or verify the live connection first. This takes 5 seconds and saves a lot of confusion.

Look at the timestamp before you trust the panel

Every panel shows when it was last updated. During active hours, more than a few minutes old means potentially stale. The Quant Brain header will say STALE or LOW VOL when something is off. Get in the habit of reading that line before you act on a bias output — it takes one second and the stakes are real.

Cached data is for research. Live data is for trading.

The terminal can run on cached historical data or a live exchange connection — and the data strip at the top tells you which. Cached data is fine for backtesting and analysis. It's not acceptable for a live execution decision. If you're about to place a trade, you need a live feed. Don't substitute.

Zero and unavailable are not the same thing

If a panel shows dashes, zeros, or blanks, that's a signal — but it might be "no data" rather than "zero data." Delta showing 0 could mean no trades occurred, or it could mean the orderflow feed disconnected. The status labels tell you which. Always know the difference before you act on it.

High-quality data that contradicts your view is still right

Quality flags describe the reliability of the measurement, not whether the result agrees with your thesis. A HIGH-quality bearish Quant Brain reading that you disagree with isn't evidence the data is wrong. It's evidence your thesis might be wrong. Those are different problems.

Contradictions between data sources are information — don't ignore them

If Market Intelligence shows something that contradicts the on-chain signal, resist the urge to dismiss one and keep the other. Surface the contradiction explicitly in your ORACLE prompt. Conflicting signals often indicate a regime shift in progress or a data lag on one side. Either way, it matters.

2. AI Discipline

The biggest mistake with AI in trading is using it for confirmation. Ask it to argue against your position instead. That's the only way it improves your thinking rather than just making you feel better about a trade you've already decided to take.

Attach chart context before you ask anything

Before prompting ORACLE, confirm the Quant Brain context is attached. Without it, the AI is reasoning from training data about markets in general — not your market, in this moment. An answer without context is a generic answer. The "Attach Context" button is not optional.

Ask "what's wrong with this?" not "is this right?"

If you already think the market is bullish, don't ask ORACLE to confirm it. Ask: "What's the strongest case against going long here?" or "What would need to be true for this setup to fail?" The Committee is most useful when it's arguing with you, not agreeing with you. Use it that way.

AI numbers are commentary, not calculations

When ORACLE cites a price level, percentage, or ratio, treat it as qualitative commentary unless it's explicitly traced to a Dome Terminal output like "Quant Brain computed ADR at 2.3%." Language models interpolate numbers from patterns — they don't compute them. If a specific number matters for your trade, verify it in the relevant panel.

Go back to the audit trail after the trade

ORACLE logs the full Committee deliberation. After a significant trade — win or loss — compare what the Committee said to what actually happened. Not to judge the AI. To calibrate your own interpretation of AI outputs. That calibration compounds over time, and it's the difference between using AI well and using it blindly.

"The AI said it looks good" is not a reason to override a hard stop

If Session Management locks entries because your daily loss limit is breached, ORACLE cannot rationalize overriding it — and you shouldn't let it. Hard blocks are hard for a reason. The moment you start using AI confidence to justify bypassing your own rules, the rules are gone. Close the terminal.

When specialists disagree, reduce size — don't pick your favorite

When the Risk Specialist says caution and the Momentum Analyst says continue, the disagreement is itself information: the situation is ambiguous. Don't pick the specialist whose answer you prefer and tune out the rest. High specialist variance means you don't have enough edge here. Reduce size or skip the trade.

3. Risk Management

Size your trades based on where you're wrong, not on how confident you feel. Confidence isn't a position-sizing formula — and it peaks right before the trades that cost you the most.

Set the daily loss limit before you open a single chart

Open Session Management at the start of every day and confirm your daily loss limit is set and active. Don't rely on yesterday's config — verify it explicitly. Trading without a confirmed limit is trading without a stop on your entire day. This takes 30 seconds. Do it every session, not just after a bad one.

Size from where you're wrong, not from how confident you feel

Your position size is determined by your risk tolerance and the distance to your invalidation point — full stop. High conviction is not a reason to increase size. In fact, your highest-conviction trades are often the ones where you've been most reckless. Use the position size calculator. Let the math decide, not the feeling.

Check your exposure before you add anything

Before entering a new trade, open the exposure panel and look at total open exposure in dollar terms. If you're already at your intended maximum, a "great setup" doesn't change the math. You're not adding opportunity — you're adding risk to a portfolio that's already at its limit. That's a different trade entirely.

Run every new bot in paper mode — no exceptions

Every new bot runs in paper mode for at least 30 signals before going live — ideally 100. Walk-forward validation gives you statistical confidence. Paper mode tests what backtesting can't: execution behavior, slippage assumptions, and feed reliability in your actual environment. Skipping paper mode costs more than the time it saves.

Compare paper performance to live performance every month

Once a bot is live, compare actual PnL against paper projections monthly. A significant gap — in either direction — is a signal to investigate. The most common causes: execution slippage, data feed differences, and overfitting that didn't show up until real capital was on the line. Investigate the gap; don't explain it away.

The risk gate is not negotiable when you're down

After a bad day, the urge to keep going until you "make it back" is one of the most predictable ways traders destroy accounts. The risk gates exist for exactly this moment. A CRITICAL lock is not a suggestion. If you're sitting there thinking about how to bypass it, that's your answer: close the terminal. The market will still be there tomorrow.

4. Journal Discipline

Log your emotion during the trade, not after. After, everything feels more rational than it was. That's the whole problem with retrospective journaling — your memory rewrites itself to match the outcome.

Log while the trade is open — not after it closes

The Trade Journal overlay is designed for use while the position is live. Log your entry reason, stop placement logic, and emotional state before the outcome is known. Once the trade closes, your memory of "why you entered" has already started to change to match the result. Post-outcome journaling records a story, not the truth.

Use the same tags every time — inconsistent tagging creates noise

The standard mistake tags (FOMO, Revenge, Oversize, Early Exit, Late Entry, Rule Break) only produce useful analytics if you apply them consistently every session. "Kind of FOMO" applied half the time is data corruption. If the tag fits, use it. That consistency is what lets Python Lab show you real behavioral patterns instead of random noise.

Review weekly — individual trade entries are just inputs

The insight comes from reviewing 5–7 sessions together, not one trade at a time. Look at what patterns repeat, which emotion tags show up on your losing trades, which setups actually have expectancy vs. which ones just feel good. Skip the weekly review and the journal is a diary. Do the review and it becomes a feedback system.

When you spot a recurring mistake, go find the lesson for it

When your weekly review surfaces a pattern — FOMO on breakouts, say — link it to the relevant Academy lesson. The journal tells you what to work on. The Academy gives you the framework to actually improve it. They're designed to connect. A recurring mistake without a deliberate correction plan just keeps recurring.

Don't edit the journal entry after the trade closes

"I always knew it was going to fail" is something you only know after it fails. Going back to update your journal entry to match the outcome doesn't improve your process — it destroys the record. The value of the pre-outcome entry is that it captures what you actually thought. Lock entries after close. Review them honestly, even when they're embarrassing.

Run the behavioral analysis monthly — patterns hide in single sessions

Pull your journal into Python Lab every month and run the emotion tag analysis. Look for correlations between emotional state and trade outcomes. Between time-of-day and win rate. Between market regime and your setup success rate. A month of data surfaces patterns that individual session reviews will never show you. This is where the compounding insight lives.

5. Backtesting

A good backtest result means you have a hypothesis worth testing further — not a strategy you can trade live tomorrow. The gap between those two things is where most systematic traders lose money.

Walk-forward validation is not optional

A strategy optimized on a single period and tested on that same period is not validated — it's memorized. Walk-forward validation is the minimum honest test: train on one window, test on the next, roll forward. Python Lab includes the framework. There's no acceptable substitute. Without it, you don't know if you have edge or just found a pattern in old data.

Model realistic costs — the difference is often the whole strategy

Include exchange fees, estimated slippage, funding rates for perpetuals, and spread costs in your backtest. Strategies that look profitable at zero cost turn unprofitable at realistic transaction costs — especially scalping approaches. The Python Lab cost model template covers standard fee tiers for major exchanges. Use it before you get excited about the equity curve.

Check every indicator for lookahead bias — it's the most common mistake

Lookahead bias — where a signal accidentally uses data that wasn't available when it would have fired — is the single most common source of inflated backtest results. Verify every indicator uses only data up to bar N, not bar N+1. Python Lab's data API has a strict lookahead guard mode. Enable it by default. If your results look too good, this is often why.

A strategy that only works in one regime isn't an edge — it's a bet

Most strategies perform well in the regime where they were developed and fail when the regime changes. Use the regime classifier to tag your backtest periods and check whether your edge is concentrated in one condition. If your strategy only works in trending markets, you're not trading a system — you're betting on the market staying trending. Know which one you're doing.

Watch for edge decay — it happens to every strategy eventually

Quantitative edges decay as they get crowded. Use the rolling Sharpe analysis in Python Lab to monitor live performance against your backtest baseline monthly. If the 60-day rolling Sharpe drops below 50% of the backtest benchmark, treat that as a signal to re-validate the whole thing — not a normal drawdown to wait out. The edge may simply be gone.

Paper mode before live — even after great walk-forward results

A strategy with excellent walk-forward results should still run in paper mode for at least 4 weeks before going live. Backtesting can't test execution latency on your network, feed reliability on your machine, or signal timing under real conditions. Paper mode catches the gap between how it performed in research and how it performs in the real world. Every time. Don't skip it.

Good habits beat good tools.

Dome Terminal is built to enforce discipline — but the intention behind how you use it matters more than any feature. Start with the tutorials, build the habits, then add complexity when you're ready.