I’ve got experience and sparkling wit—ChatGPT has infinite memory and zero ego. Let’s see who analyses OCC data better.
- OCC data reveals market sentiment shifts: The April 2025 spike in SPX Put premiums—driven by political volatility—shows clearly in OCC’s rich dataset.
- LLMs need structure to perform: ChatGPT struggled when fed raw, unstructured data from OCC, but showed real insights when guided by clean inputs and specific prompts.
- Modular architecture helps: The ActrixFT team built a four-part pipeline. Dividing work into stages are key to making vibe coding with AI successful, especially as ambitions scale.
Since last week’s blog, the team at ActrixFT helped develop four modular scripts to turn OCC data into a working dashboard. Their professional approach was instructive for my vibe coding adventures:
- Thinking in terms of projects (not prompts) really helps.
- Breaking a workflow into modules improves clarity.
I’m now ready to dig into the OCC data via a new app that we built.
ChatGPT vs Chris Barnes
Let’s make things interesting – can my own analysis out-perform ChatGPT for this data? I have experience and good looks on my side, ChatGPT has everything else going for it. Will I get out-analyzed by a large language model?
An ActrixFT app to analyse OCC data is now up and running (see below). If you’d like a walkthrough, just shout. In the meantime, here’s how I stacked up against ChatGPT.

Q1: What Is This Data Anyway?
Chris’ Take
The OCC publishes detailed monthly stats for US-listed equity options. I’m focused on options on indices (like SPX and VIX), which are:
- Cleared at OCC
- Measured in both contracts and premiums
- Single-counted, i.e. volumes are reported pre-novation — a plus for clean data
- Split by underlying index, exchange, option type (Puts/Calls, Buys/Sells), and account type
- Reported with exercises and Open Interest at month-end
It’s a rich dataset for monitoring trends in index-linked equity options, even if it lacks details like strikes, greeks, or maturities.
ChatGPT’s Take
I prompted the LLM:
“From the perspective of an experienced derivatives trader, describe what the data is behind this dashboard”
Within the ActrixFT dashboard, ChatGPT responds with the following:

Cut the waffle will you? Too descriptive of the page rather than the input data. I think that prompt engineering can go a long way to addressing the weakness in this answer – one to explore in future iterations.
Score: 3/10. Waffle, not substance.
Q2: What are the stand-out features?
Chris’ Take
- SPX (options on the S&P500 traded at CBOE) and VIX (volatility index based on S&P500 options) are the dominant contracts, accounting for ~90% of OCC volumes in the Index space.

This is highlighted elsewhere on the dashboard with a leaderboard of top contracts:

We track the Put/Call premium split each month:

- April 2025 stands out, with 63% of premiums spent on Puts – compared to just 20% back in November. Recall that April saw extreme volatility as a result of Trump’s “Liberation Day”, and the subsequent birth of the TACO trade (Trump Always Chickens Out). The market was clearly bearish, but that balance had already swung back by May 2025, when 60% of premiums were spent on Calls.
ChatGPT’s Take
The LLM appears to have tripped over our 1,500-line summary table. Its response contained fabricated narratives — plausible, but disconnected from the actual data:

Let’s give the LLM a bit of a hint here.

These obvious hallucinations remind us that LLMs are great summarisers of data if we pre-aggregate data in an efficient way. You need to keep the context window lean.
Score: 1/10. Hallucinations don’t count.
Q3: What is the single most interesting thing in the data?
Chris’ Take
The standout for me is a chart showing SPX Put vs Call premiums.

Showing;
- Prior to April 2025, premiums spent on Calls consistently exceeded that on Puts.
- And yet, when we look at a volume chart in terms of number of contracts, they are relatively consistent – the put-call ratio varies only from 1.2 to 1.3 over the past two years:

- This suggests that the average price paid for Puts in April 2025 was significantly higher than at any other time. And guess what? We have a chart for that too!

- The average price of a put was $5,400, compared to $3,278 in March and just $1,793 in February – a 3X increase in less than sixty days. The price of volatility laid bare.
- I love to see market events play out in the volume data that we monitor. This seems to be a clear expression of market sentiment – the market hated Liberation Day and portfolio insurance got a whole lot more expensive.
- But wait, there is more! There were more Puts exercised in April than ever before (over 2.5 million of them) – quelle surprise! But also check out the Open Interest chart below. We used to have more than 67% of OI in Puts on the SPX. This has now fallen to a 60/40 mix of Puts/Calls. That must be unusual with the S&P so close to all time highs?

ChatGPT’s Summary
Surprisingly solid:
It’s observed that the average premium per contract for Calls is generally higher than for Puts, indicating that investors are willing to pay a higher premium to buy (or sell) future stocks at a given price. This could signify bullish market sentiment.
Lastly, despite the rising trading volumes, the open interest at the end of the month is not consistently increasing, suggesting that the rise in trading volumes is driven mostly by intraday trades or short holding periods. Overall, the data suggests a highly active options market with increasing activity and evolving investor behavior.
This is a really nice summary. I am disappointed that it doesn’t explicitly mention Liberation Day or the growth in 0DTE call options for retail investors.
Score: 7/10. Good start, needs to work on the narrative/context and needs charts.
Conclusion
A solid win for the human—this time.
This project showed me that there is a lot of work involved to extract value from LLMs. We need to provide AI the structure it needs to excel. Pre-aggregated data, achieved via modular workflows, can lead to LLMs adding serious value – see the answer to Q3 for proof.
Just don’t ask them to read a 1,500-line summary table and expect magic.


Leave a Reply