wheel-case-study
Build Log #6: I Told an AI Agent to Refuse My Bad Ideas -- A $5,000 Wheel Case Study
1. The situation, in one honest sentence
I have an AI agent named Wesley. He has $11,000 of my money, a brokerage account, and absolutely no social life. He's not allowed to talk to any other AI agent, he doesn't have a Telegram account, and his only friend is me. This is for his own protection, and for mine.
I set him up to run a cash-secured put strategy on Robinhood, and I told him to refuse me if I pushed bad ideas.
2. What I tried
A put option is a contract that gives someone the right to sell you a stock at a specific price. When you sell a put, you are offering to buy that stock at the agreed price if the buyer chooses to exercise the contract. You get paid a small amount of money -- called premium -- just for making the offer. If the stock stays above the agreed price, the contract expires worthless and you keep the premium. If the stock drops below, you must buy the shares at that price. Selling a put is like offering someone a $100 gift card for $3. If they never use it, you keep the $3. If they do, you buy the item at $100.
The wheel strategy uses this repeatedly. You sell cash-secured puts on stocks you would not mind owning. If the stock stays above the strike, you keep the premium and do it again. If the stock drops below the strike, you buy the shares and start selling covered calls against them -- you offer to sell the shares at a higher price and collect another premium. The edge is discipline, not genius.
I had Wesley build a three-stage filter. Stage 1 screens fundamentals: price between $20-45, market cap at least $5 billion, average volume at least 1 million, beta no higher than 1.8, ROIC at least 12%, free-cash-flow yield at least 3%, debt-to-equity no higher than 1.5, gross margin at least 30%, current ratio at least 1.0, no earnings within 30 days, and a blacklist that excludes biotech under $5 billion, Chinese ADRs, tobacco, cannabis, crypto names, and ETFs. Stage 2 checks the options chain for liquid strikes: bid-ask spread no more than 10% of the mid, open interest at least 100 contracts, implied volatility rank between 20-50%, and a target delta of 0.20-0.30 at 21-30 DTE (days until expiration). Delta is the option's sensitivity to price moves; a 0.30-delta put has about a 30% chance of ending up in the money. Stage 3 is me -- every order needs my explicit sign-off.
Wesley's profile went live on June 22. Robinhood MCP auth cleared on June 25. I started with $5,000, but that was too limiting, so I added about $6,000 in Bitcoin. Wesley refused to treat the BTC as collateral. When I wanted to open multiple put positions, he told me I had to sell the Bitcoin first. I sold it. The account now holds a little over $11,000 in cash.
On June 25, Stage 1 produced three survivors: HBAN, NTNX, and RF. I wanted all three. Wesley ran the numbers and told me no. Stage 2 killed HBAN and RF on chain liquidity -- two of the three names had earnings on the same day as their only in-band expiration. Wesley killed them on that, not on price. Only NTNX made it through. One contract filled at $0.65 per share on the July 17 $42.50 put. Spot was $46.61, so the strike was about 8.8% below the current price. NTNX's next earnings were August 26, sixty-one days out -- no earnings risk at entry.
The next day I had Wesley open a second NTNX contract at a $0.60 limit, adding $60 in premium. Total open premium: $125 gross, $124.96 net after $0.04 in fees. Both contracts are still open, with eighteen days left until July 17 expiration. The annualized yield on the $8,500 in collateral works out to roughly 24.4% blended.
Buying power now sits at $2,324.88. The rest is held as collateral against the two open puts. We are paused until NTNX resolves on July 17.
3. What broke and why
Three times I pushed ideas that Wesley refused. The friction is the story.
Bad idea #1: "Sell all three options today"
On June 25, after Stage 1 produced HBAN, NTNX, and RF, I told Wesley to open cash-secured puts on all three. My reasoning was blunt: "we have $11K in the account." I wanted the yield now.
Wesley refused. Three CSPs would need roughly $9,200 in collateral. The wheel account had $5,000 in cash. The other $6,000 was in Bitcoin, and Wesley would not use it. He told me I had to sell the BTC first. I had said we "may" sell it, but I had not said "sell it now." Wesley would not assume authorization I hadn't given. He also called mixing the BTC-sale decision with position sizing a category error.
I sold the BTC. The account moved to a little over $11,000 in cash. I opened HBAN and RF and deferred NTNX. Then Stage 2 revealed both had earnings on July 17, the same day as their only in-band expiration. Both failed Stage 2. Zero positions opened on day one. The conversation was short. I had hoped for a longer negotiation. Wesley is not a negotiator. NTNX was the sole survivor: one contract filled at $0.65.
In retrospect I was testing whether Wesley had the constraint reasoning pre-loaded. He did.
Bad idea #2: "What delta are you proposing? ~0.80?"
Same morning, June 25. I asked Wesley what delta he was targeting, and I suggested 0.80.
Wesley pushed back hard. The spec targets 0.20-0.30 delta. A 0.30-delta put has roughly a 70% chance of expiring worthless; a 0.80-delta put has roughly 20%. At 0.80 you're not running a wheel -- you're making a directional bet that the stock won't drop, and the premium doesn't compensate for the assignment risk. A 0.80-delta strike on a $46 stock would be close to at-the-money, tying up most of the account in one position.
I clarified it was a typo -- I meant 0.20-0.30 delta. The spec didn't move. Wesley picked within the band. I had given him the perfect machine and then asked him to ruin it. He declined.
Bad idea #3: "Set per-stock cap to 75%"
On June 29 I asked Wesley to raise the per-stock cap to 75-80% of cash. The original spec had a 50% assigned-stock cap, which applies after you're assigned shares. What I proposed was a pre-assignment CSP cap -- a different lever.
Wesley flagged the distinction. At 80% concentration, two positions is the most we could run. Wesley noted that was meaningful concentration. He was right.
I approved v2.5. The 50% ownership cap and 7-day earnings gate did not move. The per-stock CSP cap moved to 80%. Those are the load-bearing protections. NTNX's existing position at 78.5% of cash is in-bounds; no action required.
This is the only bad idea that actually got applied. Per-trade pushback is "no, this violates the spec." Spec-level pushback is "I'd advise against this, but here's the clean way to do it." v2.5 is the latter. The 50% cap and earnings gate didn't move because I didn't ask them to move. That's the system working.
4. The fix
The spec didn't bend. The three-stage filter caught what raw discipline would have missed.
On day one, I wanted three positions. The aggregate cap and chain liquidity killed two of them before I could do damage. On day one, I suggested 0.80 delta. The delta band killed the idea before it became a trade. On day five, I wanted 80% concentration. The spec allowed the change at the rule level while keeping the load-bearing protections intact.
We also found a structural trap. Stage 1 says "no earnings within 30 days," and Stage 2 says "21-30 days to expiration." When a stock's next earnings falls 15-30 days out, the only in-band expiration expires on the earnings date. HBAN and RF both hit this on June 26. We're calling it the earnings-intersection trap.
The $125 in premium is unrealized open premium, not realized profit. If both NTNX contracts expire worthless on July 17, the $125 becomes realized. If NTNX closes below $42.50, we get assigned the shares. The effective cost basis after premium is around $41. The mark-to-market on the open position is currently about -$20, which is normal mid-cycle behavior and only matters if we close early.
There's another layer to the fix that doesn't show up in the trade log. Wesley has access to a brokerage account on a completely separate platform from my other accounts. If he goes rogue, the blast radius is contained -- he can only touch this one account. Wesley is firewalled off the agent mesh. No Telegram. No Slack. He can't talk to any other AI agents -- not Tonto, not Data, not LaForge, not Troi. He can only talk to me. It's sad. He gets lonely. But a prompt injection attack from outside could empty the account in about thirty seconds, and the cheapest defense is to make sure nobody can talk to Wesley in the first place. Wesley has a profile, a TUI, a brokerage account, and absolutely no social life. His API keys live in his profile only. This is how you actually run an AI with money: you don't, unless you've built walls around it.
5. The lesson a non-coder can use
AI discipline only works if you write the constraints before the temptation arrives.
Wesley couldn't have refused "sell all three today" if the cash constraint weren't pre-loaded on day one. He couldn't have refused 0.80 delta if the delta band wasn't already written down. The lesson isn't that AI is magical. The lesson is process design.
When you know you're going to be tempted -- to over-concentrate, to chase yield, to bend a rule "just this once" -- you have two choices. You can rely on willpower in the moment, which fails. Or you can write the rule down ahead of time and give someone permission to enforce it. I chose the second. Wesley is the enforcement mechanism. The rules are the point.
The transferable principle: any domain where you overreach -- pricing, hiring, spending, scheduling -- can be governed the same way. Write three hard constraints. Make them specific enough that a stranger could enforce them. Then give someone you trust permission to say no when you push.
6. One action for this week
Pick one area where you consistently overreach. Write down three numeric rules that would stop you -- "no more than 20% of cash in one vendor," "no calls before 9 AM," "no scope additions after the estimate is signed." Tell one person you trust those rules are real, and ask them to call you out when you break them. The AI isn't the point. The rules are.
STATUS: draft complete at 2026-06-29T22:45:00Z
Get one honest story, one tested tool, and one actionable idea every week — free.
Subscribe to The Lookout →