Cemil Ertürk
Cemil Ertürk is the researcher and engineer behind QuantMedia. He writes the research, builds the data pipeline that produces the site's proprietary metrics, and maintains the open implementations that accompany the papers.
Research areas
These are the areas the published work actually covers, each linked to the research itself rather than asserted:
- Market microstructure — order-flow toxicity and adverse selection (VPIN), and the components of the quoted spread (spread dynamics).
- Portfolio construction — allocation methods that avoid inverting an unstable covariance matrix (Hierarchical Risk Parity).
- Performance evaluation under multiple testing — whether a Sharpe ratio survives its own track-record length and the number of trials that produced it (PSR, DSR).
- Execution and transaction costs — spread, market impact and delay cost as separate terms rather than one flat assumption (slippage and latency).
- Systematic signal research — the confluence engine behind the daily scan and the two indices derived from it.
How the research is approached
Four working rules, each of which is enforced by something in the codebase rather than being a statement of intent:
- Published code beats a published claim. Where an implementation exists it is shipped with example data and tests. Writing the VPIN package found a real bug in the degenerate case — a perfectly one-sided tape returned zero toxicity, the opposite of correct. That is the argument for running code rather than describing it.
- State the limitations. Every paper carries a limitations section covering what it does not establish. Two proposed metrics — a VPIN toxicity index and a slippage stress index — were deliberately not built, because the pipeline collects end-of-day bars and neither can be computed honestly without tick data.
- Never present stale data as live. The pipeline publishes its own freshness at /data/status.json and the site reports a paused feed rather than quietly showing an old number.
- No backfilling. Index history accumulates one record per completed session, going forward only. Reconstructing history that was never observed would make the series look older and more validated than it is.
Built and maintained
| Component | What it is |
|---|---|
| Daily confluence scan | A 30-signal technical engine scored across a fixed 180-name liquid US universe, run after every close. |
| Signal Breadth Index | Share of the universe clearing the 22-of-30 threshold, with published formula, JSON and history. |
| Sector Confluence Index | The same scan grouped and ranked by sector. |
| VPIN implementation | Equal-volume bucketing, bulk volume classification and the tick rule. 15 tests. |
| HRP implementation | Correlation distance, linkage, quasi-diagonalisation and recursive bisection, with baselines. 13 tests. |
| PSR calculator | Client-side calculator showing every intermediate value so the result can be checked by hand. |
Selected research
- VPIN and Order Flow Toxicity — with runnable code
- Hierarchical Risk Parity — with runnable code
- The Probabilistic Sharpe Ratio — with calculator
- Slippage and Latency Modelling
- Bid-Ask Spread Dynamics
- All research papers →
Verifiable profiles
Only accounts that genuinely exist are listed here. There is no ORCID or Google Scholar profile, because no peer-reviewed publication record exists to attach one to.
- GitHub — certurk23 · the repository behind this site, including the research packages and the data pipeline
- X — @certurk23
- contact@quantmedia.io
Corrections
Errors get corrected in place and the change is recorded rather than quietly
overwritten — the editorial policy
sets out how. A published worked example for the Probabilistic Sharpe Ratio was
found to be arithmetically wrong and was corrected against
scipy; that correction is disclosed on the paper itself. If you
find a mistake, say so.