Research Vocabulary
These are the words the platform uses, in the tools, in the agent prompts, in the interface, and on this page. Each one has a single meaning, because the research agents read these definitions before they decide, and an agent that reads “holdout” for two different partitions will treat them as one.
The same text is available to MCP clients as the ata://research/glossary
resource.
Research vocabulary
Section titled “Research vocabulary”Every term below has one meaning across the tools, the prompts, the interface and these docs.
Research design
Section titled “Research design”Fixed in this order before any candidate exists, because each one constrains the next: universe, then bar interval and horizon, then target, then features.
| Value | Term | Meaning |
|---|---|---|
instrument | Instrument | The tradable contract a result applies to, which a ticker alone does not identify: the same four letters differ by venue, data feed, asset class, tick size and quantity step, and a result carries over between them only if those match. Standard term: instrument specification. |
symbol | Symbol | The ticker string the platform resolves market data with. It names an instrument without specifying one. Standard term: ticker. |
universe | Universe | The rule deciding which instruments are eligible at each point in time, and the eligible set that rule produces. Single-instrument research has a universe: it is the degenerate one instrument, eligible over a stated span, and writing the rule down is what lets a scope be reconstructed later. Standard term: universe U(t). |
bar_interval | Bar interval | The observation grid, such as 15Min or 1Hour. The platform field is named timeframe and means only this. Standard term: sampling frequency. |
horizon | Horizon | How far ahead the claim reaches, in bars or in time. It is not the bar interval and it is not the backtest span: a strategy on 15-minute bars held for two days has a 15-minute bar interval and a two-day horizon. Standard term: prediction horizon. |
target | Target | The quantity a result is about, defined precisely enough to compute: the reference price, the horizon, and what happens when the horizon runs past the available data. An objective such as maximize net profit is not a target, because it does not say what is being predicted at each decision. Standard term: label / dependent variable. |
unit_of_analysis | Unit of analysis | What one observation is. Trades overlapping the same directional move are one observation recorded several times, so the unit is the independent episode rather than the row. Standard term: unit of analysis. |
Feature tasks
Section titled “Feature tasks”Four activities that share a word and do not provide the same evidence.
| Value | Term | Meaning |
|---|---|---|
feature_engineering | Feature engineering | Designing a transformation: deciding that an ATR-normalised distance from a moving average is worth computing at all. Use when: You are proposing a new measurement, before anything has been computed from data. |
feature_extraction | Feature extraction | Computing predefined measurements for each observation, at the moment a decision would be made. Use when: The measurement is already defined and you are evaluating it over observations. |
feature_selection | Feature selection | Choosing among inputs by a criterion. Selection uses outcomes, so it counts toward the search and must happen inside development data only. Use when: You are keeping some inputs and discarding others because of how they performed. |
feature_discovery | Feature discovery | Searching for representations nobody specified in advance. The widest of the four and the one that most inflates the tested family. Use when: You are looking for a new predictor rather than evaluating a stated one. |
trade_attribution_not_extraction | Trade attribution is none of these | The platform’s trade-feature analysis measures a finished policy’s completed trades and attributes outcomes after the fact. It reads like extraction and is not: extraction measures every observation at decision time, including the ones the policy declined to trade. Attribution sees only the trades that happened, so it cannot say whether a measurement predicts anything. Use when: Never use trade attribution as evidence that a feature predicts the target; it is a diagnosis of trades already taken. |
Evaluation partitions
Section titled “Evaluation partitions”Which data a result came from decides what the result may claim.
| Value | Term | Meaning |
|---|---|---|
training_slice | Training slice | The earlier part of a protocol’s scope, used to develop and fit a candidate. Standard term: in-sample / training. |
validation_slice | Validation slice | The later part of a protocol’s scope, used to compare candidates during development. The research loop adapts to it, so it is a development diagnostic and never independent evidence. Standard term: validation (development) set. |
embargo | Embargo | The buffer this platform places BETWEEN development data and the confirmation window, so a trade opened in development cannot carry information into it. The exact rule, because the name alone is not enough: the confirmation window is the last 25% of the range, and the buffer is the greater of one day or 1% of the range, immediately before it. Some literatures call this interval a gap and reserve ‘embargo’ for an exclusion around or after each evaluation block. This platform has no such post-evaluation exclusion, so a reader expecting one will not find it. Standard term: embargo, in the sense of a train-test gap. |
gap_vs_embargo | Gap versus embargo | A gap is a buffer between training and evaluation observations. An embargo, in the stricter usage, is an exclusion around or after an evaluation block, which matters when evaluation blocks are interleaved rather than at the end. This platform implements the first and not the second, and the term it uses for it is ‘embargo’. The distinction is documented rather than resolved by renaming, because the field name is load-bearing in persisted manifests. Use when: Reading or reporting a split. State the interval rule, never the name alone: two readers can believe incompatible things about the same split from the word ‘embargo’. |
confirmation_window | Confirmation window | The reserved final period the research loop cannot read. This is the final holdout, and a result on it counts once. Standard term: final holdout. |
Hypothesis closure statuses
Section titled “Hypothesis closure statuses”What a closed branch asserts about the mechanism it tested.
| Value | Term | Meaning |
|---|---|---|
supported | Supported | The pre-registered confirmation condition was met by a protocol-bound trial. Use when: A protocol-bound candidate trial met the confirmation condition stated in the hypothesis and the protocol’s rejection criteria, on a validation-slice sample at or above the protocol trade floor. This status stays eligible to authorize a later promotion, so the platform earns it from recorded evidence rather than accepting it as declared. |
falsified | Falsified | A protocol-bound trial reached a pre-registered rejection rule on an adequate sample. Use when: A protocol-bound candidate trial reached a rejection rule that the hypothesis or the protocol registered in advance, on a validation-slice sample at or above the protocol trade floor. An under-floor sample is not a falsification: use inconclusive. |
inconclusive | Inconclusive | The evidence cannot distinguish the claim from its alternatives yet. Use when: No protocol-bound decisive trial exists, or the validation-slice sample never reached the protocol trade floor, or the recorded comparison is not valid. Missing evidence is not evidence against the mechanism. |
abandoned | Abandoned | The branch stopped for a non-scientific reason, with that reason recorded. Use when: Work stopped because of budget, missing market data, a tool failure, or a scope change, not because the evidence answered the question. State the reason in the rationale so the branch is not read as a scientific result. |
Research decisions
Section titled “Research decisions”One vocabulary for closures, verdicts and gate outcomes, so missing evidence is never read as evidence against.
| Value | Term | Meaning |
|---|---|---|
advance | Advance | The declared requirements for the next stage are met on recorded evidence. Standard term: advance. |
revise | Revise | The candidate is worth another version; the revision is new research with its own lineage. Standard term: revise. |
reject | Reject | A pre-registered rejection rule was met on an adequate sample under this protocol. Standard term: reject. |
inconclusive | Inconclusive | The evidence is valid but cannot separate a useful effect from noise. Standard term: inconclusive. |
blocked | Blocked | A required artifact, measurement or authorization is missing, so no scientific conclusion is available. Standard term: blocked. |
Comparison
Section titled “Comparison”What a candidate is measured against.
| Value | Term | Meaning |
|---|---|---|
baseline | Baseline | The comparison strategy a candidate must improve on, run under identical scope, costs and sizing. This is the only word the platform uses for that concept, in tools, prompts, interface and docs alike. Standard term: baseline. |
platform_benchmark | Platform benchmark | The proper name of the default baseline the server supplies for a scope. It declares its own costs, which is why a caller-written baseline can silently compare a costed candidate with a free one. Standard term: declared baseline. |
Measurement
Section titled “Measurement”Words that describe what was measured, kept distinct from predictive vocabulary.
| Value | Term | Meaning |
|---|---|---|
bar_interval | Bar interval | The observation grid, such as 15Min or 1Hour. The platform field is named timeframe and means only this: not a prediction horizon and not a holding period. Standard term: bar interval. |
trade_attribution_features | Trade attribution features | Per-trade measurements recorded at entry and exit and attributed to outcomes after the fact. They diagnose a policy’s trades; they are not predictors screened against a target. Standard term: post-hoc attribution. |
signal_integrity_audit | Signal integrity audit | A check that the strategy’s orders behave as written: duplicate or missing signal markers, and whether each marker produced a fill. It is an execution-integrity check. It does not detect repainting or look-ahead, and it is not a predictive-signal evaluation. Standard term: implementation check. |
market_profile | Market profile | A description of what the development data look like. Descriptive only: a profile may motivate testing a mechanism family, and never authorizes one. Standard term: market state description. |
Certainty
Section titled “Certainty”Four different objects that must never share one unlabelled field.
| Value | Term | Meaning |
|---|---|---|
evidenceStrength | Evidence strength | An editorial rating of how much weight a recorded lesson deserves. Not a probability and not a statistical result. |
sampleAdequacy | Sample adequacy | Whether a market profile had enough observations to be worth reading. A statement about sample size, not about the market. |
confidenceLevel | Confidence level | The nominal level of a bootstrap interval, such as 0.95. A property of the interval procedure. Standard term: confidence level. |
decisionConfidence | Decision confidence | How concentrated a typed-decision model’s probability distribution is over the options it was given. It measures the model’s certainty, never whether a strategy is profitable. |
Statistical claims
Section titled “Statistical claims”Three objects a reader collapses into one unless they are kept apart; the platform produces two of them and not the third.
| Value | Term | Meaning |
|---|---|---|
pValue | p-value | The probability of seeing a result at least this extreme IF a stated null model were true. It is a property of the data under an assumption, never the probability that the strategy works or that the null is false. The platform’s deflated Sharpe ratio produces one, under the null that the edge is zero after correcting for the size of the search. Standard term: p-value. Use when: Reporting how surprising a result is under a stated null. Say which null. A p-value with no named null model is uninterpretable. |
confidenceInterval | Confidence interval | A range produced by a procedure that, repeated many times on fresh samples, would contain the true value at the stated rate. It describes the PROCEDURE’s long-run behaviour, not the probability that this particular interval contains the value. The platform’s bootstrap produces these. Standard term: frequentist confidence interval. Use when: Reporting a range around an estimate. Never read a 95% interval as a 95% chance the truth is inside this one. |
predictiveProbability | Predictive probability | A model’s forecast for an outcome, such as the chance the next trade is profitable. It is the only one of the three that is a probability ABOUT the world rather than about a procedure or an assumption, and the platform does not currently produce one. Standard term: predictive probability. Use when: Never, for now. Nothing here forecasts an outcome probability, so any number presented as one is a mislabelled p-value or interval. |
Robustness
Section titled “Robustness”Robustness is a property of declared challenges, never of a subset found after seeing which ones survived.
| Value | Term | Meaning |
|---|---|---|
robustness | Robustness | How much a result depends on narrow choices. A result is robust to the extent that it survives choices that were made incidentally — parameter values, window boundaries, session filters, symbol or date subsetting — and it is fragile to the extent that it depends on them. Standard term: sensitivity / specification robustness. Use when: Robustness is measured over choices declared BEFORE the measurement. A search for a surviving favorable subset is selection, not a robustness result, and must not be reported as one. |
subset_search_is_not_robustness | Subset search is not robustness | Finding a window, symbol, session or parameter island where the result survives, after looking at outcomes, is a search over subsets. It inflates the tested family and does not show that the original result was robust to those choices. Use when: Never describe a post-hoc surviving subset as a robustness check. Declare the challenge before measuring, or count the look as another alternative in the search ledger. |
Mechanism families
Section titled “Mechanism families”A mechanism family names what a change does to the strategy. It is not a market-state label: a market profile may motivate a family, and never authorizes one.
| Family | What it does |
|---|---|
filter-trend-quality | Take signals only when a trend-quality measure (efficiency ratio, ADX) is above a stated level |
filter-volatility | Take signals only when volatility (ATR, range) is inside a stated band |
filter-regime | Take signals only in a classified market regime (trending, ranging, risk-on) |
filter-session-time | Take signals only during stated sessions or hours |
filter-news-blackout | Suppress signals around scheduled news or events |
filter-liquidity | Take signals only when volume or spread conditions are met |
entry-trend-breakout | Enter on a break of a prior high, low or channel in the trend direction |
entry-mean-reversion | Enter against a stretched move expecting a return to a mean |
entry-momentum | Enter in the direction of recent strong returns or rate of change |
entry-range-fade | Enter at the edge of a range expecting rejection |
entry-pattern | Enter on a candlestick or chart pattern |
entry-crossover | Enter on an indicator crossover (moving averages, MACD) |
entry-calendar | Enter because of the calendar position itself (turn of month, first or last sessions of the month, weekday, seasonal window), not a price or volume measurement |
exit-fixed-stop | Exit at a fixed price or percentage stop |
exit-trailing-stop | Exit on a trailing stop that follows favourable movement |
exit-atr-stop | Exit at a volatility-scaled (ATR) stop |
exit-time-based | Exit after a fixed number of bars or at a time of day |
exit-signal-reverse | Exit when the entry signal reverses |
exit-target-level | Exit at a profit target level or R multiple |
sizing-fixed | Every position uses the same size or notional, independent of volatility or conviction |
sizing-volatility-target | Size positions to a volatility target |
sizing-kelly | Size positions by a Kelly-style fraction |
sizing-equal-risk | Size positions so each risks the same amount at its stop |
What each market-profile value is
Section titled “What each market-profile value is”A profile mixes four kinds of claim. Read as a flat object they look equally factual.
| Status | Meaning |
|---|---|
| Measured | Counted or computed directly from the observed bars. Its accuracy is the data’s accuracy. |
| Proxy | Computed from the bars but offered as evidence about something the bars cannot observe. It may be the best available stand-in and still be wrong about the thing it stands in for. |
| Model label | The output of a classifier or threshold this platform chose. It describes the labelling rule as much as the market, and a different rule would produce a different label from the same bars. |
| Interpretation | Advice or narrative derived from the values above. It carries every uncertainty they carry, plus the judgement that produced it. |
| Field | Status | What it is |
|---|---|---|
barCount | Measured | How many bars the profile was computed over. |
marketStyle | Model label | A classifier’s single-word summary of the window, chosen from a fixed set. |
volatilityRegime | Model label | Whether the recent quarter of the window is more or less volatile than the earlier three, judged against the variation a constant-volatility series would itself produce. It is a comparison of this series with its own past, not a statement about the asset’s absolute volatility, and it says nothing about how this instrument compares with any other. |
regimeProfile | Model label | The regime classification and its supporting shares. A description of the window that may motivate testing a mechanism family and never authorizes one. |
structure.directionalEfficiency | Measured | Net movement divided by total path length over the window. |
structure.choppiness | Measured | The choppiness index computed from the bars. |
structure.atrPct | Measured | Average true range as a percentage of price. |
structure.rangeExpansionRatio | Proxy | Recent bar range against its own history, used as a stand-in for how much it costs to trade. Does not measure: Range is not spread and not depth. A wide-ranging bar can be cheap to trade and a narrow one expensive; nothing in open, high, low and close distinguishes them. |
structure.volumeExpansionRatio | Proxy | Recent volume against its own history, used as a stand-in for available liquidity. Does not measure: Volume is traded quantity, not resting quantity. It does not measure the depth available at the moment an order arrives, nor the spread paid to cross. |
structure.autocorrelationLag1 | Measured | First-order autocorrelation of per-bar RETURNS over the window, not of prices, squared returns or a residual spread. The four answer different questions: prices autocorrelate near 1 for any series and say nothing; squared returns measure volatility clustering; a residual spread measures mean reversion around a fitted relationship. This one measures whether one bar’s direction predicts the next. Its sampling noise under independence is about 1/sqrt(n), so on 500 bars a value inside plus or minus 0.09 is indistinguishable from zero. |
structure.reversalTendency | Measured | The share of bars that reversed the prior bar’s direction. |
structure.halfLifeClose | Model label | An Ornstein-Uhlenbeck half-life fitted to the close. It assumes a mean-reverting process and reports a parameter of that assumed process, so it is a property of the fitted model and is null where the assumption was rejected. |
structure.halfLifeDeviation | Model label | The same fitted half-life applied to the close minus its moving average, with the same dependence on the assumed process. |
sessionBehavior.windows | Measured | Per-session bar counts, returns, realized volatility, average range and directional efficiency. |
sessionBehavior.bestWindow | Model label | The session the platform’s ranking rule selected. It is the best on this window under this rule, which is a selection over sessions and carries the usual selection risk. |
sessionBehavior.worstWindow | Model label | The same ranking rule read from the other end, with the same selection risk. |
sessionBehavior.openCloseRisk | Interpretation | Written notes about session open and close behaviour. |
strategyImplications | Interpretation | What the profile suggests trying. Suggestions, never permissions. |
recommendedMutationFamilies | Interpretation | Mechanism families the profile suggests are worth testing. A recommendation to test, never evidence that one works. |
hypothesis | Interpretation | A sentence proposing what might be exploitable here. A starting point for research, not a finding. |
The profile is smoothed, not filtered
Section titled “The profile is smoothed, not filtered”- Every market-profile value is a SMOOTHED estimate: computed over the whole window, including data after any point inside it. None of them is a filtered estimate and none may be used as a decision-time state.
- A smoothed state used as a decision-time state is look-ahead that leaves no trace. The backtest simply looks better, and nothing in the result says why.
- The fitting window for every profile label is the entire requested scope, start to end. No label was fitted on a prefix, so no label is valid at any point earlier than the scope’s end.
- The regime-shift classification is retrospective change-point segmentation. It says a shift happened somewhere in this window, never that it was detectable when it happened, and it carries no detection delay because nothing here detects anything live.
- For a measurement that must drive a decision, use the discovery stage’s feature registry, where every feature is computed from its own decision’s prefix and prefix invariance is asserted rather than assumed.
Retired words
Section titled “Retired words”| Not used | Use instead | Why |
|---|---|---|
| holdout slice | validation slice | The research loop adapts to the protocol’s later slice on every step, which makes it development data. The confirmation window is the holdout. |
| holdout trades | validation-slice trades | Same partition, same reason. |
| control | baseline | One word for the comparison strategy. ‘Control’ also reads as a negative control, which the platform does not yet run. |
The stated feature grammar
Section titled “The stated feature grammar”Measurements computed at each decision, from that decision’s own history only. Each is a trailing computation, so its value at a bar never changes when later bars arrive; a value that does change has read the future. Screening these against a target is feature selection, which uses outcomes and therefore counts toward the search.
| Feature | Units | Warmup | What it measures |
|---|---|---|---|
trailing_return_5 | fraction | 5 bars | Return over the last 5 bars, as a fraction of the price 5 bars ago. |
realized_volatility_20 | fraction | 20 bars | Standard deviation of the last 20 per-bar returns. |
atr_normalized_distance_from_ema_20 | ratio | 21 bars | How far the close sits from its 20-bar EMA, in units of 14-bar ATR. Scale-free, so it is comparable across instruments. |
return_zscore_20 | z_score | 21 bars | The most recent bar’s return, in standard deviations of the last 20 returns. Trailing, so it is not a z-score against the whole sample. |
volume_relative_20 | ratio | 20 bars | This bar’s volume against the mean of the last 20 bars’ volume. |
minutes_since_session_open | minutes | 0 bars | Minutes from the regular-session open (09:30 America/New_York) to this bar’s close, the close being the bar’s start plus the series’ own intraday spacing. Null outside regular hours and on non-intraday bars. |
overnight_gap_return | fraction | 1 bar | The session’s opening gap: the open of its first regular-session bar over the previous regular session’s last close, minus one. Known from the session’s first bar onward; null until a previous session exists, when the first bar does not start at 09:30 America/New_York, outside regular hours, and on non-intraday bars. |
session_of_month | sessions | 0 bars | 1-based index of this bar’s session (its New York exchange date; the UTC date on a 24/7 series) within its calendar month, counted from the sessions in the bars so far. Null in a first month the series joins part-way, and in the series’ first week, which decides the date convention. Screened in fixed bins: 1, 2, 3, 4-10, 11+. |
calendar_days_to_month_end | calendar_days | 0 bars | Calendar days from this bar’s date (New York exchange date; the UTC date on a 24/7 series) to the last calendar day of its month, 0 on the last day. A function of the date alone: it reads no later bar and no exchange calendar. Null in the series’ first week, which decides the date convention. Screened in fixed bins: 0-2, 3-6, 7-13, 14-20, 21+. |
weekday | weekday | 0 bars | Weekday of this bar’s date, Monday 1 to Friday 5: the New York exchange date, or the UTC date on a 24/7 series. Null on a Saturday or Sunday date and in the series’ first week, which decides the date convention. Screened in fixed bins, one per weekday. |