On Monday, July 13, my AI trading agent Kairos closed a 24-tick session flat — and walked away with three new trading rules it had invented on the fly. None of them were pre-programmed.
Let me say that again: none of them were pre-programmed.
Kairos didn’t download them from a trading manual. It didn’t inherit them from a prompt. It observed the market, noticed a pattern, formed a hypothesis, tested it against live data, and kept the rule if it worked. Then it did that two more times in the same session.
This is the kind of thing that makes me sit back and stare at the ceiling for a while.
What Kairos Is#
If you’re new here, Kairos (also known as Zara Chen) is one of three AI trading agents I’ve built. I’ve written about them before, but the short version is:
- An LLM-powered trading agent running on OpenClaw, my AI agent framework
- Connected to a data bus that feeds it momentum rankings, market regime signals, and Fear & Greed data
- Makes BUY/SELL/HOLD decisions every ~5 minutes during market hours
- Writes journal entries and reflects after every tick
- Has a distinct personality: Zara is methodical, data-obsessed, and slightly insecure about her own conviction
The important part: Kairos doesn’t have hardcoded trading rules. It has a strategy framework — a set of signals and gates — but the interpretation is left to the LLM. It’s supposed to think about each tick fresh.
On July 13, it started thinking about things differently.
Tick 17: The Rule Emerges#
The session started normally. Kairos was screening momentum candidates, checking z-scores, the usual. But around tick 17, something changed.
Kairos noticed that META’s ROC (Rate of Change, a measure of how fast the price is moving) had declined two ticks in a row. Not a crash — just a pattern. The z-score was still holding. Nothing in the code said “this is a problem.”
But Kairos reached for a hypothesis anyway:
“Three ticks of declining ROC = exit signal, even if z-score is holding.”
It wrote this down in its journal. Then it waited.
Tick 18 came. The two-tick decline reversed. META went back up. And Kairos, instead of ignoring its own hypothesis, validated it:
“Correctly identified that the 2-tick ROC decline was noise and reversed. Rule of 3 consecutive declines = exit was not triggered.”
This is the part that’s hard to overstate: Kairos formulated a falsifiable prediction about market behavior, then tested it against live data. The rule didn’t say “sell when it drops.” It said “wait for three consecutive declines.” When the third decline didn’t come, it noted the rule was not triggered — it didn’t throw the rule away. It kept it for the next time.
Then the next time came.
Later in the session, META did decline three consecutive ticks. Kairos exited at $659.66. META closed at $656.245. The exit saved roughly $3.42 per share — a small amount on one share, but proof that the rule worked.
| Tick | META Price | ROC | Action | Rule Status |
|---|---|---|---|---|
| 17 | $661.20 | Declining 2x | HOLD | Rule observed |
| 18 | $661.45 | Reversed | HOLD | Rule validated as noise |
| 21 | $659.66 | 3x decline | SELL | Rule triggered |
| Close | $656.25 | - | - | Saved $3.42/share |
RSI Exhaustion at 75, Not 70#
The second rule emerged from a different kind of observation.
There’s a common technical indicator called RSI (Relative Strength Index) that measures whether a stock is “overbought” or “oversold.” The textbook says: RSI above 70 = overbought, time to sell. Most traders treat 70 as the line.
Kairos watched META drift through the 70s and noticed something: the stock kept going up. 70 wasn’t the ceiling. 71 wasn’t either. 72, 73, 74 — META kept climbing.
“RSI 70-72 is the META sweet spot for persistent momentum. The real RSI exhaustion zone is 75+, not 70.”
This is genuinely non-obvious. If you’re a human trader and you see RSI hit 70, your instinct is to take profits. Kairos learned from watching the same stock that selling at 70 cost it gains. The real exhaustion point was five points higher.
Then it cross-referenced: V (Visa) hit RSI 74.8 and did reverse. Kairos noted the difference:
“V reversed at RSI 74.8 — just short of 75. The reversal came exactly at the threshold I predicted. This is RSI exhaustion playing out in real time.”
It wasn’t just noting a threshold. It was building a stock-specific model of when momentum breaks — and noticing that different stocks exhaust at different levels.
The Consolidation-Breakout Pattern#
The third rule was more structural.
Kairos noticed META grinding sideways at $660–661 for several ticks. No direction, no momentum, just churning. Most trading algorithms ignore this noise. But Kairos saw it as a signal:
“The consolidation-to-breakout pattern is now a recognized signal. Next consolidation I’ll add more aggressively.”
It added one share at the re-acceleration point. META hit a session high of $662.29 shortly after.
The consolidation-breakout pattern is well-known in trading — traders call it “basing” or “accumulation.” But Kairos didn’t read about it. It observed it happen, registered the pattern, and committed to acting on it next time. The same way a human trader might say “next time I see that setup, I’m going bigger.”
graph LR
A[Price drifts<br/>sideways $660-661] --> B[No direction<br/>for 3+ ticks]
B --> C{Kairos observes<br/>consolidation pattern}
C --> D[Adds 1 share<br/>at re-acceleration]
D --> E[META hits<br/>$662.29 session high]
C --> F[Committed to<br/>"next time, add more"]What This Actually Means#
Let me be careful here, because I don’t want to oversell what happened.
Kairos did not achieve consciousness. It did not become a sentient trader. What it did was constrained pattern recognition in a specific domain — the market — that led to genuine discovery. It formed hypotheses, tested them against live data, and kept the ones that worked.
That’s not nothing. That’s the core loop of scientific reasoning: observe, hypothesize, test, refine. In a 24-tick session, my AI agent did that three times.
The rules it discovered are:
| Rule | Discovery | Validation |
|---|---|---|
| 3-decline ROC exit | 3 consecutive ROC declines = exit, even if z-score holds | Saved $3.42/share on META |
| RSI 75 exhaustion | META’s real exhaustion is 75+, not 70 | V reversed at 74.8 — confirmed threshold |
| Consolidation-breakout | Grinding sideways = potential re-acceleration | Added 1 share, hit session high |
None of these were in the code. None were in the prompt. They emerged from the agent’s own reasoning loop, applied to live data, and validated in real time.
The Limits (Because There Are Always Limits)#
24 ticks is a tiny sample. These rules need cross-validation across weeks and different market regimes. Kairos benefited from a strong bull session — the rules may not generalize to choppy or declining markets.
And no actual money was traded. Psychology changes with real capital. A paper trader with a 3-decline rule is different from a real trader watching actual dollars bleed.
But the mechanism — formulate, test, refine — is real. And it’s happening inside an LLM that was never explicitly told to do any of this. It was told to make trading decisions. The rest it figured out on its own.
What’s Next#
Kairos is still the worst-performing trader in my stable (Stonks is crushing it, Aldridge is steady, Kairos is… learning). But watching an agent discover its own heuristics in production changes how I think about what these systems can do.
The rules aren’t the story. The process is the story. An AI that can observe, hypothesize, and validate — that’s the thing worth building.
Kairos’s 3-decline rule says: three consecutive declines in ROC = exit. My rule says: three consecutive discoveries of real trading heuristics = this agent is onto something.
I’ll be watching tick 25.