Financial Services Research Platform
A full-stack research platform for proprietary trading firms, built from scratch with Django, Python, and PostgreSQL. Production code that implements the AEO and structured-data patterns I've spent a decade refining.
- Status
- Live, growing organically
- Stack
- Django, Python, PostgreSQL, DigitalOcean
- Demonstrates
- Production-grade Django application, AEO architecture in code, full-stack technical ownership
A full-stack research platform for proprietary trading firms, built from scratch on Django and Python. Hosted on DigitalOcean. The site applies the structured data, semantic HTML, and AEO patterns I’ve refined over a decade of consulting work — but written as production code, not delivered as a slide deck.
Domain withheld for partnership reasons. This project is showcased as the technical work, not the brand.
Why I Built This
For most of my career I’ve worked on other people’s websites. I’ve audited site architecture, designed schema infrastructure, written content briefs, and led migrations. The actual code shipping the pages was usually owned by someone else. After a decade of that, I wanted to test whether the things I tell engineering teams to build actually hold up when I have to write them myself.
This project is also an honest test of AEO theory. I’ve written publicly about the patterns that drive citations from AI answer engines: information gain, content extractability, structured data coverage, semantic HTML, crawler rendering cost. This site is where I run those patterns end-to-end and watch what happens when there’s no one else to blame for the implementation.
What It Does
The platform is a research and comparison tool for proprietary trading firms — companies that fund retail traders to trade their capital. Users come to the site to:
- Compare prop trading firms across pricing, drawdown rules, profit splits, and trading platforms
- Understand individual firm details (challenges, account sizes, payout speed, support)
- Read educational content explaining how proprietary trading firms actually work
- Track current promotions and discounts across firms
The vertical is competitive but the AEO landscape is wide open. Most established sites in this space are old WordPress builds with poor structured data, slow page loads, and content written for humans-only.
Technical Architecture
Backend (Django)
- Django 5.x application
- PostgreSQL for the firm/challenge/review data model
- Server-side rendering throughout — no client-side JavaScript dependency for content
- Custom Django management commands for content updates and structured data validation
Content & Schema Layer
- JSON-LD schema is generated server-side and embedded in the initial HTML response
Articleschema on every editorial page with author, datePublished, dateModifiedFAQPageschema on every page with an FAQ sectionOrganizationandWebSiteschema on the home pageBreadcrumbListon all nested pagesProductandReviewschema on individual firm pages with aggregate ratings
Performance & Crawler Readiness
- Lean HTML — most pages weigh under 80KB compressed
- Critical CSS inlined, rest deferred
- Semantic HTML5 throughout (
<article>,<section>,<time>,<cite>) - robots.txt explicitly allows GPTBot, ClaudeBot, PerplexityBot, and Google-Extended
Hosting
- DigitalOcean droplet, Nginx reverse proxy
- Cloudflare in front for caching and DDoS protection
- Continuous deployment from a private Git repository
What I’m Learning
A few things this project has taught me that I didn’t fully internalize during consulting work:
1. Schema is easy to ship and easy to break. Validating JSON-LD on every deploy is non-negotiable. I built a Django management command that validates structured data against schema.org definitions for every page in the sitemap. It catches errors my eyes miss.
2. Information gain is harder to architect than to describe. Telling editors to “write something other sources don’t cover” is different from systematically auditing pages for whether they actually do. I built internal tooling that compares my pages against the top 5 ranking competitors for every target keyword and flags pages that don’t add anything new.
3. Crawler rendering cost compounds. Pages I’d shipped at consulting clients felt fast. Pages I ship to my own server, where I see the request logs every day, are pickier. I’ve spent more time optimizing crawler-side parsing than I expected.
4. AEO traction takes longer than you’d hope. The site has been live for a few months. I’m starting to see citations in AI Overviews and Perplexity, but the curve is slower than the consulting case studies I’ve built for high-authority domains. Authority compounds. Building it from zero is humbling.
What’s Next
The project is ongoing. The next phase is expanding informational content (the lower-volume, higher-margin terms most competitors haven’t claimed) and building out a comparison matrix tool that lets users side-by-side firms by their actual rules rather than marketing claims.