Course contents
The smallest possible first trade
Going live is a threshold to cross slowly, not a button to press. This chapter gives the checklist for the transition, start at an absurdly small size, keep a human hand on a kill switch, watch every order by hand at first, and treat the first live weeks as a test of the plumbing, not a search for profit. It is the most cautious chapter in the course.
- List the preconditions for going live and the smallest-size rule
- Keep a manual kill switch and human oversight in the early live phase
- Frame the first live period as verifying the system, not proving the strategy
Everything in this course so far has been safe, because it ran against a simulator. This chapter is about the one irreversible step, connecting the same program to a real broker and a real account, and it is written to slow you down. Most strategies should never reach this step at all, because they do not survive honest testing. For the rare one that does, going live is not a moment of triumph but a careful, boring, closely watched procedure, done at the smallest size that is real.
The preconditions
Before a single live order, every part you have built must be in place and proven. You should have a strategy with a tested edge, not just one that runs. You should have forward-tested the whole program in the sandbox until it handled normal days cleanly. You should have the risk controls of the next part in place, the gate that can refuse an order and the kill switch that can stop everything. You should have reconciliation on startup and logging of every action. Going live is the moment all of that has to already exist, not a thing you add later. A short preflight check makes the gate explicit.
# A preflight check before any live trading. Going live is not a switch you flip;
# it is a gate every item must pass. If a single check fails, you do not go live.
# This one deliberately fails one item, to show the gate doing its job.
checks = {
"forward_test_passed": True,
"risk_gate_in_place": True,
"reconciliation_on_startup": True,
"logging_enabled": True,
"starting_at_smallest_size": True,
"kill_switch_reachable": False, # not ready yet
}
print("Preflight checklist:")
ready = True
for name, ok in checks.items():
print(f" [{'PASS' if ok else 'FAIL'}] {name}")
ready = ready and ok
print()
if ready:
print("All checks pass. You MAY go live, at the smallest possible size.")
else:
failed = [name for name, ok in checks.items() if not ok]
print(f"NOT READY. Do not go live. Fix first: {', '.join(failed)}")Preflight checklist: [PASS] forward_test_passed [PASS] risk_gate_in_place [PASS] reconciliation_on_startup [PASS] logging_enabled [PASS] starting_at_smallest_size [FAIL] kill_switch_reachable NOT READY. Do not go live. Fix first: kill_switch_reachable
The check is deliberately simple and deliberately strict: if a single item fails, you do not go live. Here the kill switch is not yet reachable, so the answer is a flat NOT READY, whatever the other passes say. That is the correct spirit. Going live is not a weighing of pros and cons; it is a gate, and a gate with one broken bar is shut.
Start absurdly small
When you do cross, cross with the smallest position the market allows, smaller than makes any economic sense. One share. One lot. An amount whose entire loss you would not notice. The first live period is not for making money; it is for discovering the difference between the sandbox and reality: the fills that come back slightly worse, the timing that is a little off, the broker quirk your simulator did not model. You want to learn those lessons on one share, not on a real position. Size up only later, slowly, and only once the live system has behaved for long enough that its behaviour is boring.
Keep a human in the loop
In the early days, watch it. Sit with the program while it trades, read every order it sends, and keep your hand near the kill switch, the manual off-switch that flattens positions and halts the program at once. The whole promise of automation is that you can eventually walk away, but you earn that by first not walking away, by confirming with your own eyes that the program does what you believe it does when real money is live. A program you have never watched trade is a program you do not yet know.
The first weeks test the plumbing
Hold the right expectation for the first live stretch. You are not testing whether the strategy is profitable; the sample is far too small to tell you that, as the Risk and Psychology course showed when it counted how many trades it takes to tell an edge from luck. You are testing whether the machinery behaves live as it did in the sandbox. Do the fills match roughly what you expected. Does reconciliation stay clean. Does nothing surprising happen at the open or the close. Judge the first weeks by the plumbing, not the profit, and let the strategy prove itself over a much longer horizon, at a size you increase only grudgingly.
What to carry forward
Going live is a threshold to cross slowly and rarely, and it is a gate: every part must already be in place, a tested edge, a clean forward test, the risk gate and kill switch, reconciliation, and logging, or you do not go, as the preflight check made plain by failing on a single missing item. When you do cross, start at the smallest real size, watch every order by hand, and keep the kill switch in reach, because the first live period exists to prove the plumbing, not the profit. The kill switch and the risk gate you kept invoking are the subject of the final part. First, one more piece of running reliably: doing it on the market's schedule, every day, without your hand on it.