Skip to content
Algo Trade Analytics Docs

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.

Every term below has one meaning across the tools, the prompts, the interface and these docs.

Fixed in this order before any candidate exists, because each one constrains the next: universe, then bar interval and horizon, then target, then features.

ValueTermMeaning
instrumentInstrumentThe 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.
symbolSymbolThe ticker string the platform resolves market data with. It names an instrument without specifying one. Standard term: ticker.
universeUniverseThe 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_intervalBar intervalThe observation grid, such as 15Min or 1Hour. The platform field is named timeframe and means only this. Standard term: sampling frequency.
horizonHorizonHow 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.
targetTargetThe 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_analysisUnit of analysisWhat 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.

Four activities that share a word and do not provide the same evidence.

ValueTermMeaning
feature_engineeringFeature engineeringDesigning 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_extractionFeature extractionComputing 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_selectionFeature selectionChoosing 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_discoveryFeature discoverySearching 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_extractionTrade attribution is none of theseThe 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.

Which data a result came from decides what the result may claim.

ValueTermMeaning
training_sliceTraining sliceThe earlier part of a protocol’s scope, used to develop and fit a candidate. Standard term: in-sample / training.
validation_sliceValidation sliceThe 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.
embargoEmbargoThe 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_embargoGap versus embargoA 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_windowConfirmation windowThe reserved final period the research loop cannot read. This is the final holdout, and a result on it counts once. Standard term: final holdout.

What a closed branch asserts about the mechanism it tested.

ValueTermMeaning
supportedSupportedThe 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.
falsifiedFalsifiedA 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.
inconclusiveInconclusiveThe 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.
abandonedAbandonedThe 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.

One vocabulary for closures, verdicts and gate outcomes, so missing evidence is never read as evidence against.

ValueTermMeaning
advanceAdvanceThe declared requirements for the next stage are met on recorded evidence. Standard term: advance.
reviseReviseThe candidate is worth another version; the revision is new research with its own lineage. Standard term: revise.
rejectRejectA pre-registered rejection rule was met on an adequate sample under this protocol. Standard term: reject.
inconclusiveInconclusiveThe evidence is valid but cannot separate a useful effect from noise. Standard term: inconclusive.
blockedBlockedA required artifact, measurement or authorization is missing, so no scientific conclusion is available. Standard term: blocked.

What a candidate is measured against.

ValueTermMeaning
baselineBaselineThe 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_benchmarkPlatform benchmarkThe 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.

Words that describe what was measured, kept distinct from predictive vocabulary.

ValueTermMeaning
bar_intervalBar intervalThe 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_featuresTrade attribution featuresPer-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_auditSignal integrity auditA 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_profileMarket profileA 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.

Four different objects that must never share one unlabelled field.

ValueTermMeaning
evidenceStrengthEvidence strengthAn editorial rating of how much weight a recorded lesson deserves. Not a probability and not a statistical result.
sampleAdequacySample adequacyWhether a market profile had enough observations to be worth reading. A statement about sample size, not about the market.
confidenceLevelConfidence levelThe nominal level of a bootstrap interval, such as 0.95. A property of the interval procedure. Standard term: confidence level.
decisionConfidenceDecision confidenceHow 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.

Three objects a reader collapses into one unless they are kept apart; the platform produces two of them and not the third.

ValueTermMeaning
pValuep-valueThe 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.
confidenceIntervalConfidence intervalA 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.
predictiveProbabilityPredictive probabilityA 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 is a property of declared challenges, never of a subset found after seeing which ones survived.

ValueTermMeaning
robustnessRobustnessHow 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_robustnessSubset search is not robustnessFinding 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.

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.

FamilyWhat it does
filter-trend-qualityTake signals only when a trend-quality measure (efficiency ratio, ADX) is above a stated level
filter-volatilityTake signals only when volatility (ATR, range) is inside a stated band
filter-regimeTake signals only in a classified market regime (trending, ranging, risk-on)
filter-session-timeTake signals only during stated sessions or hours
filter-news-blackoutSuppress signals around scheduled news or events
filter-liquidityTake signals only when volume or spread conditions are met
entry-trend-breakoutEnter on a break of a prior high, low or channel in the trend direction
entry-mean-reversionEnter against a stretched move expecting a return to a mean
entry-momentumEnter in the direction of recent strong returns or rate of change
entry-range-fadeEnter at the edge of a range expecting rejection
entry-patternEnter on a candlestick or chart pattern
entry-crossoverEnter on an indicator crossover (moving averages, MACD)
entry-calendarEnter 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-stopExit at a fixed price or percentage stop
exit-trailing-stopExit on a trailing stop that follows favourable movement
exit-atr-stopExit at a volatility-scaled (ATR) stop
exit-time-basedExit after a fixed number of bars or at a time of day
exit-signal-reverseExit when the entry signal reverses
exit-target-levelExit at a profit target level or R multiple
sizing-fixedEvery position uses the same size or notional, independent of volatility or conviction
sizing-volatility-targetSize positions to a volatility target
sizing-kellySize positions by a Kelly-style fraction
sizing-equal-riskSize positions so each risks the same amount at its stop

A profile mixes four kinds of claim. Read as a flat object they look equally factual.

StatusMeaning
MeasuredCounted or computed directly from the observed bars. Its accuracy is the data’s accuracy.
ProxyComputed 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 labelThe 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.
InterpretationAdvice or narrative derived from the values above. It carries every uncertainty they carry, plus the judgement that produced it.
FieldStatusWhat it is
barCountMeasuredHow many bars the profile was computed over.
marketStyleModel labelA classifier’s single-word summary of the window, chosen from a fixed set.
volatilityRegimeModel labelWhether 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.
regimeProfileModel labelThe regime classification and its supporting shares. A description of the window that may motivate testing a mechanism family and never authorizes one.
structure.directionalEfficiencyMeasuredNet movement divided by total path length over the window.
structure.choppinessMeasuredThe choppiness index computed from the bars.
structure.atrPctMeasuredAverage true range as a percentage of price.
structure.rangeExpansionRatioProxyRecent 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.volumeExpansionRatioProxyRecent 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.autocorrelationLag1MeasuredFirst-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.reversalTendencyMeasuredThe share of bars that reversed the prior bar’s direction.
structure.halfLifeCloseModel labelAn 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.halfLifeDeviationModel labelThe same fitted half-life applied to the close minus its moving average, with the same dependence on the assumed process.
sessionBehavior.windowsMeasuredPer-session bar counts, returns, realized volatility, average range and directional efficiency.
sessionBehavior.bestWindowModel labelThe 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.worstWindowModel labelThe same ranking rule read from the other end, with the same selection risk.
sessionBehavior.openCloseRiskInterpretationWritten notes about session open and close behaviour.
strategyImplicationsInterpretationWhat the profile suggests trying. Suggestions, never permissions.
recommendedMutationFamiliesInterpretationMechanism families the profile suggests are worth testing. A recommendation to test, never evidence that one works.
hypothesisInterpretationA sentence proposing what might be exploitable here. A starting point for research, not a finding.
  • 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.
Not usedUse insteadWhy
holdout slicevalidation sliceThe research loop adapts to the protocol’s later slice on every step, which makes it development data. The confirmation window is the holdout.
holdout tradesvalidation-slice tradesSame partition, same reason.
controlbaselineOne word for the comparison strategy. ‘Control’ also reads as a negative control, which the platform does not yet run.

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.

FeatureUnitsWarmupWhat it measures
trailing_return_5fraction5 barsReturn over the last 5 bars, as a fraction of the price 5 bars ago.
realized_volatility_20fraction20 barsStandard deviation of the last 20 per-bar returns.
atr_normalized_distance_from_ema_20ratio21 barsHow 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_20z_score21 barsThe 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_20ratio20 barsThis bar’s volume against the mean of the last 20 bars’ volume.
minutes_since_session_openminutes0 barsMinutes 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_returnfraction1 barThe 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_monthsessions0 bars1-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_endcalendar_days0 barsCalendar 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+.
weekdayweekday0 barsWeekday 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.