Trading research
What Is Quant Trading? A Worked Example, Costs & Beginner Path
Quant trading, short for quantitative trading, uses numerical models and testable rules to make decisions about financial instruments, position sizes and risk. Researchers evaluate those rules with data; traders and software turn approved decisions into orders. The essential work is checking whether a proposed advantage survives honest timing, costs and uncertainty. Automation alone does not establish an advantage.
On this page
What to know first
- Quantitative describes the decision process. Algorithmic describes the use of programmed rules; systematic describes repeatability. These dimensions overlap, and none guarantees profitability.
- Our two invented price paths use identical momentum rules. At 10 basis points one way, the rule earns 6.3284% on the trend path and loses 6.3374% on the reversal path.
- Even the winning case trails its buy-and-hold comparator. A positive result, a trading advantage and a deployable strategy are different conclusions.
- Next-period positions prevent one timing mistake, but realistic fills, point-in-time data, failed experiments and held-out evaluation still require separate checks.
- Start with return arithmetic and a reproducible report. The free QR starter and returns lab use teaching data; the momentum research project requires Pro access, and QT/QD specialist paths are planned blueprints.
What does quant trading mean?
Quant trading is the use of numerical models and testable rules to decide what to trade, how much to hold and which risks to accept. The model could rank investment opportunities, estimate a tradable price or decide when a position should change. Quantitative trading is the full name; a quant trader is a person doing some of this work.
A signal is a measured input to a decision. A strategy combines the signal with position sizing, entry and exit rules, execution assumptions and risk limits. An edge is an expected benefit that survives costs and uncertainty. A rule can be quantitative without having an edge.
Consider a rule that buys after a price rises. It is easy to implement and test. Whether it makes money depends on what happens after the buy, what price is available and what the trade costs. Adding machine learning changes the model; it does not remove those questions.
Quant, algorithmic, systematic and high-frequency trading
| Term | What it describes | Example | What the label does not establish |
|---|---|---|---|
| Quantitative trading | Numerical evidence informs trading and risk decisions | Estimate a signal, test it and choose an exposure | Reliable future profit |
| Algorithmic trading | Programs determine aspects of orders or trading decisions | Split an existing order over time, or execute a model's signals | A particular strategy or research quality |
| Systematic trading | A repeatable procedure governs decisions | Apply the same portfolio rule at each scheduled rebalance | Complete freedom from human choices |
| High-frequency trading, HFT | Very short horizons and latency-sensitive operation | Update quotes in response to rapid market changes | A synonym for all quant trading |
| Discretionary trading | A person exercises judgement over individual decisions | Adjust a position after interpreting a new event | Absence of numerical analysis |
“Quant decides what; algorithms decide how” is a useful starting distinction, but an incomplete definition. Algorithms can also choose instruments, prices, sizes and risk. The SEC staff report treats algorithmic activity broadly rather than restricting it to execution. SEC staff report, pages 5–7.
Quantitative finance is broader still. It includes valuation and risk modelling that may never generate a trading order. Humans also choose datasets, objectives and model changes. Writing rules makes these choices inspectable; it does not eliminate bias.
How quant trading works: from an idea to an accountable decision
A useful research process produces evidence someone else can challenge. At each stage, ask what the next person would need to reproduce or reject your conclusion.
| Stage | Concrete output | Question that can stop the project |
|---|---|---|
| Hypothesis | A written prediction, horizon and reason it might hold | What observation would count against it? |
| Data audit | Versioned observations, timestamps and a usable universe | Was every input available at the decision time? |
| Signal and sizing | A calculation plus an exact exposure rule | Can another person reproduce each position? |
| Historical simulation | Trades, costs, wealth and comparison results | Does the result depend on impossible fills? |
| Independent evaluation | A frozen rule tested beyond development data | Does evidence survive without more tuning? |
| Operational review | Limits, monitoring and a response to failures | What happens if a feed stops or an order duplicates? |
Suppose the idea is that recent gains tend to continue. Define “recent,” the instruments, the observation frequency and the target holding interval before running experiments. An economic explanation helps choose a useful question, but is not proof that the relationship exists.
For every input, distinguish when an event happened from when its information became available. The evaluation checklist below turns that distinction into a test; it is not enough to place a timestamp column beside the data.
The simulation then separates signal, requested position, order and fill. A buy instruction might remain unfilled; a partial fill creates a different exposure. Risk controls belong around the entire process, including limits on order size, inventory and stale inputs.
Paper trading is a subsequent observation exercise, not a certificate of readiness. It can reveal discrepancies between intended and recorded behaviour, but simulated fills still depend on assumptions. A research decision can be “reject this idea,” “collect better data” or “investigate further.” Deploying capital is a separate decision.
A worked quant trade: the same momentum rule wins and loses
The following prices are invented for this lesson. They have no ticker, calendar or claim to represent market behaviour. We deliberately include a favourable pattern and a reversal pattern so the calculation can fail visibly.
| Mark | Trend path | Reversal path |
|---|---|---|
| 0 | 100 | 100 |
| 1 | 102 | 102 |
| 2 | 104 | 100 |
| 3 | 103 | 102 |
| 4 | 105 | 100 |
| 5 | 107 | 102 |
| 6 | 109 | 100 |
| 7 | 111 | 102 |
Start with 10,000 units of equity, no position and no leverage. Cash earns zero; there are no dividends, taxes or borrowing. At each mark after the first observed change, hold 100% long for the next interval if the latest change was positive; otherwise hold cash. A flat change also means cash. The first interval is cash because no prior change exists.
This is a one-interval directional rule. It illustrates momentum mechanics; it is not a reproduction of published momentum research or a suggested trading strategy.
Timing comes before the return calculation
At mark 1 on the trend path, the observed move from 100 to 102 is +2%. That signal requests a long position for the interval 102 to 104. It cannot earn the earlier 100-to-102 move. At mark 3, the latest change is negative, so the next interval, 103 to 105, is held in cash even though its price rises.
For interval i, the asset return is price[i] / price[i−1] − 1. The position is determined using only price[i−1] and price[i−2]. One-way turnover is the absolute change in exposure: cash to fully long counts as 1; fully long to cash counts as another 1; staying long counts as 0.
Fill assumption: the requested position is established at the preceding mark's price after its signal is known. This is an idealised boundary fill. In actual close-based research, a final closing price may be known too late to trade at that close. Using the next open or a later actionable quote changes the return intervals and must be simulated separately. Lagging the signal is necessary here, but does not validate that fill.
Charge both sides of a trade
Use a cost of 10 basis points one way: 0.10%, or 0.001. Our return-space convention subtracts cost rate × turnover from each interval's portfolio return. It charges against equity at the start of that interval. This is a teaching approximation, not a share-and-cash broker ledger.
gross interval return = position × asset return
net interval return = position × asset return − 0.001 × turnover
next equity = previous equity × (1 + net interval return)
Liquidate any remaining long position at the final mark, charging another 10 basis points against the final marked equity. No signal at mark 7 opens a new position because there is no subsequent interval. The trend case therefore has four one-way exposure changes, including liquidation. The reversal case has six and already finishes in cash.
Inspect the trend path interval by interval
| Interval | Price move | Position | One-way turnover | Gross portfolio return | Net interval return |
|---|---|---|---|---|---|
| 0 → 1 | 100 → 102 | 0 | 0 | 0.0000% | 0.0000% |
| 1 → 2 | 102 → 104 | 1 | 1 | +1.9608% | +1.8608% |
| 2 → 3 | 104 → 103 | 1 | 0 | −0.9615% | −0.9615% |
| 3 → 4 | 103 → 105 | 0 | 1 | 0.0000% | −0.1000% |
| 4 → 5 | 105 → 107 | 1 | 1 | +1.9048% | +1.8048% |
| 5 → 6 | 107 → 109 | 1 | 0 | +1.8692% | +1.8692% |
| 6 → 7 | 109 → 111 | 1 | 0 | +1.8349% | +1.8349% |
| Final sale | Mark 7 | 1 → 0 | 1 | 0.0000% | −0.1000% of final marked equity |
Multiply the growth factors using full precision. Do not add the rounded percentages. The zero-cost strategy ends at 10,675.07; after costs and liquidation it ends at 10,632.84. The difference of 42.23 reflects costs and their compounding, rather than a single charge of 40 deducted at the end.
Now change only the price path
On the reversal path, every rise is followed by a fall. The lagged rule repeatedly buys before the fall and holds cash through the recovery. Its position sequence is 0, 1, 0, 1, 0, 1, 0; the trend sequence is 0, 1, 1, 0, 1, 1, 1.
| Same 10-bps cost convention | Final equity | Net total return | Observed maximum drawdown | Exposure changes |
|---|---|---|---|---|
| Momentum, trend path | 10,632.84 | +6.3284% | 1.0606% | 4 |
| Buy-and-hold, trend path | 11,078.03 | +10.7803% | 0.9615% | 2 |
| Momentum, reversal path | 9,366.26 | −6.3374% | 6.3374% | 6 |
| Buy-and-hold, reversal path | 10,179.81 | +1.7981% | 1.9608% | 2 |
The comparator enters for the first interval, remains fully long and liquidates at the last mark, using the identical cost formula. Cash would end at 10,000. The momentum winner still underperforms buy-and-hold. Positive P&L alone does not show that the signal adds value.
Maximum drawdown is the largest percentage decline from a previous equity peak. These figures include final liquidation and only observe our marks; they cannot reveal losses between marks. Eight invented prices cannot establish statistical significance, realistic capacity or a dependable Sharpe ratio.
Explore the checked example
Keep the rule. Change the prices or the cost.
Start with $10,000. Hold the next interval only when the previous price rose. All prices are synthetic; the example assumes an idealized fill at the signal close. Cash earns zero interest.
Entry and exit are separate changes. A final liquidation is included.
- Net ending equity
- $10,632.84
- Net strategy return
- 6.33%
- Buy-and-hold, after costs
- 10.78%
- Exposure changes
- 4
Inspect positions, costs and equity for every interval
| Interval | Price | Position | Asset return | Turnover | Net equity |
|---|---|---|---|---|---|
| 1 | 102 | 0 | 2.00% | 0 | $10,000.00 |
| 2 | 104 | 1 | 1.96% | 1 | $10,186.08 |
| 3 | 103 | 1 | -0.96% | 0 | $10,088.14 |
| 4 | 105 | 0 | 1.94% | 1 | $10,078.05 |
| 5 | 107 | 1 | 1.90% | 1 | $10,259.93 |
| 6 | 109 | 1 | 1.87% | 0 | $10,451.71 |
| 7 | 111 | 1 | 1.83% | 0 | $10,643.48 |
| Final exit | 111 | 0 | 0.00% | 1 | $10,632.84 |
Cost is a fraction of each interval’s opening equity on an exposure change; final liquidation uses marked ending equity. This simplified model omits financing, taxes, market impact and the delay between seeing a close and obtaining a tradable fill. The downloadable Python example uses the same convention. These two paths demonstrate accounting, not evidence of an investable strategy.
Reproduce the example with standard-library Python
Save the following as momentum_example.py and run python momentum_example.py with Python 3. No data subscription, external package or account is required. The downloadable Python file contains this complete program; the eight-mark CSV provides both synthetic paths separately.
View the complete Python program
from math import isfinite
PATHS = {
"trend": [100, 102, 104, 103, 105, 107, 109, 111],
"reversal": [100, 102, 100, 102, 100, 102, 100, 102],
}
def backtest(prices, cost_bps=10, mode="momentum"):
if len(prices) < 3 or any(not isfinite(p) or p <= 0 for p in prices):
raise ValueError("Need at least three finite, positive prices")
if not isfinite(cost_bps) or not 0 <= cost_bps <= 1000:
raise ValueError("One-way cost must be between 0 and 1000 bps")
if mode not in ("momentum", "buy-and-hold"):
raise ValueError("Unknown strategy mode")
cost = cost_bps / 10000
equity = gross = 10000.0
previous_position = changes = 0
curve = [equity]
rows = []
for i in range(1, len(prices)):
position = int(mode == "buy-and-hold" or
(i > 1 and prices[i - 1] > prices[i - 2]))
asset_return = prices[i] / prices[i - 1] - 1
turnover = abs(position - previous_position)
growth = 1 + position * asset_return - cost * turnover
if not isfinite(growth) or growth <= 0:
raise ValueError("Outside this simplified model; use a share/cash ledger")
gross *= 1 + position * asset_return
equity *= growth
rows.append((i, position, asset_return, turnover, equity))
curve.append(equity)
changes += turnover
previous_position = position
equity *= 1 - cost * previous_position # sell at the last mark
changes += previous_position
curve.append(equity)
peak = curve[0]
drawdown = 0.0
for value in curve:
peak = max(peak, value)
drawdown = max(drawdown, 1 - value / peak)
return dict(equity=equity, gross=gross, changes=changes,
drawdown=drawdown, rows=rows)
if __name__ == "__main__":
for name, prices in PATHS.items():
for mode in ("momentum", "buy-and-hold"):
result = backtest(prices, mode=mode)
net_return = result["equity"] / 10000 - 1
print(f"{name:8} {mode:12} equity={result['equity']:.2f} "
f"return={net_return:.4%} dd={result['drawdown']:.4%} "
f"changes={result['changes']}")
Expected output, verified using the downloadable program:
trend momentum equity=10632.84 return=6.3284% dd=1.0606% changes=4
trend buy-and-hold equity=11078.03 return=10.7803% dd=0.9615% changes=2
reversal momentum equity=9366.26 return=-6.3374% dd=6.3374% changes=6
reversal buy-and-hold equity=10179.81 return=1.7981% dd=1.9608% changes=2
For a timing check, inspect result["rows"]. Each row holds the interval number, position, asset return, turnover and equity before terminal liquidation. Changing a later price should not alter earlier requested positions. Inspect the first long interval by hand: 10,000 × (1 + 104 / 102 − 1 − 0.001) = 10,186.08.
For a cost check, rerun backtest(PATHS["trend"], cost_bps=50). Then use the same rate on the reversal path. Change one input at a time and record every result, including failures.
| One-way cost | Trend momentum return | Reversal momentum return |
|---|---|---|
| 0 bps | +6.7507% | −5.7678% |
| 10 bps | +6.3284% | −6.3374% |
| 50 bps | +4.6516% | −8.5872% |
| 100 bps | +2.5836% | −11.3360% |
These rates are sensitivity inputs, not estimates of a particular broker or market. If an extreme move plus the assumed fee would exhaust equity, the program rejects that interval: the approximation needs replacement with a share-and-cash ledger. It does not allow negative equity to produce an artificial liquidation credit. The program has no order routing or live-trading capability.
Why apparently good quant strategies fail
The reversal example fails before sophisticated statistics enter the picture: the rule's underlying expectation is wrong on that path. Real research adds several independent ways to obtain misleading results.
| Failure | What goes wrong | A practical investigation |
|---|---|---|
| Look-ahead bias | Today's final information earns an earlier return | Trace one input's availability, decision and fill timestamps |
| Survivorship bias | Failed or delisted instruments disappear from the sample | Rebuild the eligible universe as it existed at each date |
| Overfitting and repeated selection | Many tested variants make a lucky winner look convincing | Keep the full experiment log, including rejected variants |
| Unrealistic execution | Every order fills at an attractive historical mark | Model later quotes, spreads, partial fills and size constraints |
| Changing relationships | A pattern weakens or reverses in another period | Compare distinct chronological periods and diagnose exposures |
| Operational failure | Bad data, duplicate orders or outages alter the position | Simulate stale feeds, disconnects and reconciliation failures |
A stop-loss is an instruction, not a guaranteed fill at its trigger. Costs can also expand precisely when liquidity is weakest. A rule that looks acceptable with a fixed fee might be impractical under variable spreads or market impact.
Backtest overfitting is more than using too many model features. Selecting the best lookback, market, entry threshold or start date also selects on noise. Bailey and co-authors explain why a holdout alone does not account for the number of configurations tried. The Probability of Backtest Overfitting.
Machine learning cannot repair a contaminated target or an impossible fill. A high historical win rate also says little without payoff sizes: frequent small gains can coexist with rare large losses. Examine the return distribution, exposures and path of equity rather than optimising one headline number.
What a fair backtest must specify
The synthetic exercise checks accounting. Before testing a market hypothesis, write down these five decisions.
- Freeze the question. Specify the universe, signal, position limits, evaluation horizon and a result that would make you reject the idea. Preserve data provenance, publication times, revisions and cleaning rules.
- Separate development from evaluation. Fit preprocessing and models using the earlier period, then apply the frozen process to later observations. If outcomes span several intervals, separate overlapping labels near the boundary. A random shuffle or arbitrary gap does not establish independence.
- Keep the complete trial log. Record unsuccessful variants as well as winners. Once a held-out result influences another adjustment, that period is development data. Time order and selection bias require separate checks.
- Use achievable fills and consistent costs. Trace decisions to later actionable prices and filled positions. Include fees, spreads, slippage and impact; add borrow costs for shorts and contract-roll treatment for futures. Challenge the result with delayed fills and higher costs.
- Choose a fair comparator. Use the same universe, intervals and cost convention. Report gross/net results, drawdown, turnover and exposure. Our winning momentum path still trails buy-and-hold.
TimeSeriesSplit's official documentation illustrates chronological training and evaluation; directly comparable fold durations require equally spaced observations. A library split does not audit data availability or account for every attempted configuration.
The conclusion here remains reproducible arithmetic, path-dependent results and untested market profitability. For a full experiment specification, continue to the strategy research checklist.
Common quant trading strategies, with the assumption exposed
A strategy family names an idea about markets. A tool such as machine learning or a frequency such as HFT tells you something different. Keep the three separate when comparing descriptions.
| Family | Testable idea | A failure to investigate |
|---|---|---|
| Momentum or trend | An instrument's own recent direction contains useful information | Reversals, late entry and repeated trading in a choppy path |
| Mean reversion | A specified deviation tends to narrow | The estimated reference level changes permanently |
| Statistical arbitrage | Relationships across instruments predict relative changes | Relationships break, hedge exposure remains or shorts cannot be borrowed |
| Market making | Quoting and inventory decisions can earn revenue after costs | Adverse selection, unbalanced fills and inventory losses |
| Factor allocation | Measured characteristics help define portfolio exposure | Concentration, crowding and weak net performance after turnover |
Momentum can mean an instrument's own past return or its performance relative to other instruments. The 2012 time-series momentum study examines the former across futures and forwards over much longer horizons than our exercise. Its historical findings do not validate a one-interval rule on eight prices. Moskowitz, Ooi and Pedersen: Time Series Momentum.
Market making also involves more than collecting a quoted spread. Both sides may not fill, and a price can move against accumulated inventory. SEC staff discuss adverse selection faced by passive market makers. SEC staff report, pages 38–39.
Use this map to identify the assumption you would test. Choosing a family because its name sounds professional adds no evidence. For more detailed signal, data and failure comparisons, continue to the nine-family strategy guide. For queue position and partial fills in market making, read the worked order-book example.
Who uses quant trading, and what skills matter?
The same mathematical idea can serve different businesses. The objective determines what the team measures, which risks it accepts and how its software must behave.
Asset managers and quantitative hedge funds can use models to select instruments and construct portfolios for investors. Their research may address diversification, exposures and implementation across a portfolio. AQR describes both traditional long-only and alternative approaches; a quantitative investment organisation need not specialise in short-horizon trading. AQR's official firm description.
Market makers and proprietary trading firms may focus on prices, liquidity and inventory. Old Mission identifies its business as quantitative market making and describes proprietary valuation and trading systems. Its work connects models with the risk of holding instruments between transactions. Old Mission's official overview. Our Old Mission company and careers guide separates official employer facts, dated roles and independent preparation.
Bank and institutional execution desks can use algorithms to implement an existing investment decision. Here, a useful model may improve execution rather than predict the asset's direction. The BIS Markets Committee's FX report examines execution algorithms and the risks their users must manage. This is another reason to ask what an algorithm does before calling it a trading strategy. BIS: FX execution algorithms.
Turn a skill into an inspectable output
| Skill area | Output you should learn to produce | A beginner's check |
|---|---|---|
| Probability and statistics | An estimate with its uncertainty and evaluation method | Explain why historical win rate is insufficient |
| Linear algebra and optimisation | A portfolio calculation with explicit constraints | Identify concentration and sensitivity to inputs |
| Programming and data work | A versioned, reproducible calculation | Trace one timestamp and reject bad observations |
| Market microstructure | A justified order and fill assumption | Distinguish a quoted price from an executed trade |
| Communication | A report someone else can challenge | State a conclusion and the evidence that would change it |
This is a practical skill map, not a universal employer checklist. O*NET's quantitative-analyst tasks include portfolio analysis, software verification and written research outputs, showing why a model alone is an incomplete deliverable. O*NET occupational profile.
Use Python and plain files for this exercise. Add numerical libraries, databases or performance tooling when the problem requires them. A low-latency quoting system and a daily research report have different engineering needs; learning every technology at once is unnecessary.
Quant trader, researcher and developer: who owns what?
Trading organisations divide the work differently. Job titles are useful clues; responsibilities and deliverables are the better guide. Some researchers implement strategies, some traders conduct research, and some developers build both research and trading software.
| Role | Main responsibility in this exercise | Useful evidence of skill |
|---|---|---|
| Quantitative researcher, QR | Challenge whether the momentum idea survives fair evaluation | A reproducible report with comparators and failed tests |
| Quantitative trader, QT | Decide how the signal becomes exposure under cost and risk constraints | Explain entries, inventory, execution trade-offs and losses |
| Quantitative developer, QD | Make the calculations and data dependable | Correct timing, validated inputs, reproducible output and clear failure handling |
Jane Street's official research description includes models, datasets, trading strategies and implementation. Its trader description includes pricing opportunities and managing risk. These are employer examples, not universal boundaries. Jane Street quantitative research, quantitative trader.
Learning this exercise does not require a doctorate. Hiring requirements are specific to the job: Jane Street's trader example does not require prior finance knowledge or a particular programming language. Avoid treating a generic skills list as an employer's eligibility rule.
The stack also varies. Python is convenient for this lesson, while Jane Street describes both OCaml and Python in its engineering work. Learn the software needs of the role rather than assuming every quant uses an identical stack. Jane Street software engineer. For valuation and risk roles beyond trading, see the five-role quant comparison.
How beginners can start learning quant trading
Build enough skill to explain one result correctly before expanding the model. This four-stage sequence is a learning plan with concrete outputs, not a promise of job readiness or trading profits.
Stage 1: calculate a return and a loss. Work through prices 100, 110, 99. The interval returns are +10% and −10%, while the compounded result is −1%. Learn percentages, multiplication of growth factors and decline from a prior peak. Finish when you can explain why adding returns gives the wrong answer.
Stage 2: write and inspect a small program. Learn lists, loops, functions and input validation. Run the program above, then print each row. Identify exactly which two prices set the next position. Finish when the code agrees with your hand calculation and rejects invalid prices.
Stage 3: challenge the result. Use the reversal path, cost sensitivity and buy-and-hold comparator. Write a short report containing the question, assumptions, numerical results and limits. Finish when you can explain both a losing strategy and a profitable strategy that still trails its comparator.
Stage 4: design a separate investigation. Choose a data source and check its documentation, timestamps and permissions before importing observations. Define your hypothesis and evaluation periods before tuning. Extend the execution model and preserve every experiment. The first deliverable is a research protocol, not a live bot.
For a structured start, the free QR starter course teaches percentages, Python, returns and drawdown. Once you can calculate a return, the standalone free returns and risk lab lets you compare synthetic price paths and write an independent research brief. The trading cost sensitivity tool is another arithmetic exercise, not an execution simulator.
The momentum research project extends into signal timing, costs and a held-out period using synthetic teaching data; it requires Pro access. Signing in supports saved progress and project work. The QT and QD specialist pages currently describe planned curricula with shared foundations available. They do not offer a completed specialist course.
All calculations on this page are independent educational exercises. They do not represent employer interview questions, investment advice or evidence of future returns. The next useful action is to reproduce the losing case and write down why it loses.
Frequently asked questions
Is quant trading the same as quantitative trading?
Yes. Quant trading is the shortened name. It means using numerical models and testable rules to make trading and risk decisions. Quantitative finance is broader and also includes valuation and risk work that may not involve trading.
How is quant trading different from algorithmic trading?
Quantitative trading emphasises numerical research and decision rules. Algorithmic trading uses programs to determine orders or trading decisions, including execution. They often overlap. The simple what-versus-how distinction is useful for beginners, but algorithms can also choose instruments, prices and position sizes.
Is quant trading profitable?
The label does not tell you whether a strategy is profitable. Results depend on the hypothesis, data, positions, fills, costs and risk. Our identical synthetic rule earns 6.3284% on one path and loses 6.3374% on another at 10-bps one-way costs. Neither result estimates future market returns.
Can I learn quant trading from home?
You can learn programming, probability and research methods on an ordinary computer, including the package-free example here. Running a dependable live strategy is a separate task involving market data, execution, operational controls and risk. Our exercises do not connect to brokers or place trades.
Do beginners need machine learning or a PhD?
Neither is needed for this introductory exercise. Start with return arithmetic, basic Python and a rule you can inspect by hand. Later study depends on the work you want to do; employer education and technical requirements belong to specific vacancies. Complex models do not compensate for biased data or unrealistic fills.
Is all quant trading high-frequency trading?
No. High-frequency trading concerns very short horizons and latency-sensitive activity. Quantitative methods can also operate over longer holding periods. Strategy family, trading frequency and implementation tools describe different aspects of a system.
Why does the profitable example fail to beat buy-and-hold?
The trend path rises overall, and buy-and-hold captures gains that the lagged momentum rule misses while holding cash. Its turnover is also lower. At the same cost rate, buy-and-hold earns 10.7803% versus 6.3284% for momentum. A positive return alone does not establish useful signal value.
Does shifting positions by one period make a backtest realistic?
It prevents earning the return that created the signal in this exercise. It does not establish an achievable fill, correct data availability, unbiased instrument selection or fair model evaluation. A close-based strategy still needs a price available after its decision and a separate execution simulation.
Sources and verification
Checked October 3, 2026. Each note identifies the claim supported by that source. For a vacancy, return to the employer’s posting to confirm the current requirements and application status.
- SEC staff: Algorithmic Trading in U.S. Capital Markets
August 5, 2020 staff report. Pages 5–7 explain broad algorithmic activity; pages 38–39 discuss market-making and adverse selection. Historical market structure figures are not presented here as current statistics.
- Moskowitz, Ooi and Pedersen: Time Series Momentum
2012 research distinguishes time-series from cross-sectional momentum. Its instruments and horizons differ from the synthetic one-interval illustration; no empirical performance claim is imported into our example.
- Bailey and co-authors: The Probability of Backtest Overfitting
Primary paper on selection and backtest representativeness. Supports accounting for attempted configurations rather than treating a single holdout as conclusive.
- scikit-learn: TimeSeriesSplit documentation
Official documentation accessed October 3, 2026. Explains chronological splitting and equally spaced observations. This page does not require or execute scikit-learn.
- AQR: Our Firm
Official firm description accessed October 3, 2026. Supports the investment-manager example and diversity of strategy approaches; no return or product recommendation is made.
- Old Mission: Official overview
Official overview accessed October 3, 2026. Identifies quantitative market making and proprietary systems; the linked company guide supplies separate dated careers research.
- BIS Markets Committee: FX execution algorithms and market functioning
October 30, 2020 report. Used to illustrate execution objectives and risk, without presenting historical adoption figures as current statistics.
- O*NET: Financial Quantitative Analysts
US occupational profile updated 2026, accessed October 3. Supports the breadth of analytical, software-verification and reporting tasks; no universal hiring or pay requirement is inferred.
- Jane Street: Quantitative Research
Official employer description accessed October 3, 2026, used as one example of research responsibilities rather than an industry-wide job specification.
- Jane Street: Quantitative Trader, New York
Official role page accessed October 3, 2026. Supports the task and entry-requirement example only; job pages can change. No compensation forecast is made.
- Jane Street: Software Engineer, New York
Official role page accessed October 3, 2026. Illustrates engineering work and employer-specific languages, without implying every quant developer uses this stack.