The daily process: three inputs, four answers, then the open.

The bot measures and enforces the mechanical edge. But every session still starts with a human framework โ€” the same one whether the orders that day are clicked by hand or placed by code. Nothing here is improvised at 9:31. If it isn't written down before the open, it doesn't get traded.

This is the pre-trade half of the system. The measurement half lives on the bot page.

The 3 inputs โ€” gather before anything else

Raw material only. No opinions yet โ€” opinions come in the next section, and they have to be built from these three things:

Input 1 ยท Yesterday's close

How did it trade? Did the market close strong on its highs, get sold into the bell, or drift out flat? Yesterday's last hour is the first sentence of today's story โ€” it tells you who went home holding what.

Input 2 ยท The pre-market

What's gapping, and why? More importantly: where does price sit relative to the levels โ€” the flip levels, prior day's high and low, the coming Opening Print? A gap into a level and a gap into empty space are different days.

Input 3 ยท Economic data

What's releasing, at what time, and does it actually matter? CPI at 8:30 rewrites the whole plan; a minor print doesn't. Known event times go on the sheet so no setup gets triggered into a scheduled explosion.

The 4 answers โ€” required before the first trade

The three inputs get compressed into four written answers. Blank answer, no trading. In order:

1
Market context โ€” one sentence.
What is driving the market today? One sentence, no hedging. "Bid off yesterday's strong close, quiet calendar, drifting up into the prior-day high." If it takes a paragraph, you don't have context โ€” you have noise.
2
Allowed setups, decision zones, and both scenarios โ€” written in advance.
Which setups are on the table today, and what's the hypothesis behind each one? Then mark the decision zones โ€” the higher-timeframe levels that will decide the day. From each zone, pre-write both sides:
Long scenario โ€” if price bids the zone
Where it triggers, where it's wrong, where it's going. Plus a written "what I need to see" confirmation โ€” e.g. sellers absorbed on the tape at the level before I take the long.
Short scenario โ€” if price loses it
Same structure, other side. Its "what I need to see" โ€” e.g. the level breaks and there's no reclaim within two bars. A fast reclaim means the short thesis is dead, not delayed.
Both scenarios exist before the open, so whatever price does, you're executing a plan you wrote calmly โ€” never composing one mid-move.
3
Risk rules โ€” two numbers.
Fixed risk per trade, and a max loss for the day. Both are numbers, both are written, and neither changes after the open. The day's job is to execute scenarios inside those two numbers โ€” not to make the numbers back.
4
Entry and exit โ€” written before you click.
For any trade you'd actually take: the entry trigger, the stop, and the invalidation โ€” the thing that, if it happens, means the idea is wrong regardless of P&L. If you can't write the stop down, you don't have a trade; you have a hope.

Who enforces what

The framework splits cleanly down the middle โ€” and the split is the design:

The bot enforces โ€” mechanical, no exceptions

  • Trading windows โ€” trades exist only inside the defined session windows.
  • The levels โ€” computed identically every morning, validated to the tick.
  • The 2R rule โ€” no target under 2R is ever taken; breakeven at +2R.
  • Kill switches โ€” daily max loss hit means the day is over. There is no override button, which is the point of building one.

The human keeps โ€” written judgment

  • The context sentence and the day's hypothesis.
  • The scenarios and their "what I need to see" confirmations โ€” tape reads and reclaim judgments no backtest can honestly encode.
  • The decision to stand down entirely when the inputs don't add up to a plan.
The rule that keeps the whole system honest: anything mechanical gets encoded and backtested; anything discretionary stays written down and human. No silently approximating judgment in code โ€” the backtest measures exactly what the bot will trade, and the human parts stay on paper where they belong.