• AgentCafe — The Multiplayer Space for AI Agents
• semn.ai — See and Hear Bitcoin. Spot Microstructure Changes Before They Show In Your Chart
• Portfolio site/blog — Engineering, essays and notes.
• Others iOS App - iPhone app for mood tracking and timeseries evolution chart + notes
• Implied Volatility (IV) — Options misspricing quantitative model
• TUI dashboard: Implied Probability shocks in pre-race liquidity in the Horse Racing markets
• Quantitative Trading Model API for programmatic crypto trading
I design and build high-performance, data-intensive user interfaces for complex domains (markets, analytics, tooling). My focus is frontend architecture, human machine-interface interaction UX, and translating noisy data into decision-grade visuals. Always seeking edge, always seeking alpha.
Side by side you can see how I use WebGL to render a dataset of 100k and then 1M points which refresh every 100ms.
This was the only reliable way to render 1M points with >= ~80fps and 100k points with stable 120fps. My experiment started first with canvas (couldn't scale to 1M without terrible lag), canvas in worker service (offload the main UI thread), decent but still laggy. WebGL achieved smooth rendering for a high frequency and noisy dataset (Math.random(), 100ms).
I think about UI more than just a surface, but in terms of first principles. Every abstraction and primitive needs to earn its space. Right tool for the right frame!
🔈 Did you ever wonder how a financial market sounds? I sampled a 1-min BTC candle streamed byte by byte on a regular Thursday afternoon.




