The Trade Was Fine. Power E*TRADE Was Not.

Posted by Michael S. on May 19, 2026

There is a particular kind of brokerage bug that makes you question reality for a few minutes.

Not because the market is unclear. The market was perfectly clear. I had two independent real-time feeds open, one through Fidelity and one through DxFeed, both showing me the actual bid, ask, and last price. I knew where SanDisk was trading.

The confusion was coming from E*TRADE.

I had placed a sell order at 1392.00, which is where I expected SanDisk to top out temporarily. When the order situation started looking strange inside Power E*TRADE, my first question was the obvious one: did something go wrong with the trade, or was E*TRADE just showing me bad data?

My working assumption was that the trade side was probably fine. Brokerages can have bad front ends, bad quote paths, weird account-state bugs, broken apps, and terrible session handling, but actual trade routing is usually not the first thing I assume broke. That is the part with the most regulatory weight sitting on top of it.

So I checked the tape.

Sure enough, 266 shares had traded at my exact price.

That did not prove everything by itself, but it strongly suggested that the market had gotten there and that the issue was not “the price never existed.” It was more likely that Power E*TRADE was looking at the world through a dead or delayed data path.

So I called E*TRADE.

The trader on the phone asked what I was seeing in Power E*TRADE Pro. I opened the desktop app so I could check for him.

It crashed.

Helpful.

So I kept checking Power E*TRADE on mobile instead. And then, suddenly, the shape of the problem made sense.

The Power E*TRADE relay, or whatever sits between the app and the real-time quote feed, must have been down or stuck. The trader on the phone was also seeing delayed data, and he started getting other people involved. While that was happening, I got the little gift every bug diagnosis occasionally gives you: the hypothesis validated itself almost immediately.

The desktop app let me log in. As usual with E*TRADE, logging in there immediately logged me out of the mobile app, because apparently having two sessions open is too luxurious for modern finance software. But the desktop app was now showing the correct price, updating in real time.

Then I logged back into the mobile app, which immediately kicked me out of the desktop app. I may have force-quit the mobile app first. I honestly do not remember, because force-quitting and reopening these brokerage apps has become such an automatic reflex that I sometimes do it without registering it as a discrete human action.

But when mobile came back up, prices were updating correctly there too.

So my read is this: the problem was not the trade. It was the real-time data path.

More specifically, it looks like the mobile app is mostly hard-coded native app surface area, with the quote feed plugged in separately. When the feed is bad, the app can still open and function, even if it is showing stale or delayed market data.

Power E*TRADE Pro on desktop seems different. Either it is heavily dependent on a web-connected shell, or there is a simple blocker switch that prevents it from fully loading when it does not receive the data it expects. My guess is the latter. I did not get a detailed crash error. It looked more like graceful failure than an uncontrolled exception.

“Graceful” is doing a lot of work there.

The practical lesson is simple: if Power E*TRADE looks wrong, do not use Power E*TRADE as the source of truth. Check another feed. Check the prints. Check whether shares actually traded at your price. If Fidelity, DxFeed, and the tape agree, and E*TRADE disagrees, the problem is probably not the market.

It is probably E*TRADE.

Side note

I almost never place trades through the apps, and especially not through the desktop Power E*TRADE Pro app.

When they had the old E*TRADE Pro, it was a different story. I probably still would not use it today, because the programming was not exactly inspiring, but at least it was built in a real language and the problems felt like the result of hiring practices rather than the entire modern software stack eating itself.

You can make the jump from there. Or reach out if you need me to explain it.

Enjoyed this post?

Get notified when I publish something new. No spam, unsubscribe anytime.