On spot forex, first identify what a volume field actually counts. The OTC market has executed trades, but one broker’s price-change counter is not the monetary value of all of them. Two feeds can describe similar candles while returning different activity counts.

A counter has a defined source and unit

BIS describes decentralised, fragmented OTC execution. There is no single complete exchange counter for all spot FX. A dealer or venue may have transaction records within its own scope; that does not turn every displayed tick counter into executed volume. See OTC market mechanics.

MetaTrader describes its Forex Volumes measure as the number of price changes. A green bar means its activity count exceeds the previous bar’s count, not that buyers initiated that many trades. Record platform, feed, symbol, field and unit when using volume in technical analysis.

In our explicit toy counter, do not count the first quote; count subsequent unequal consecutive prices. The full sequence 100,101,100,101,100 has four changes. Sampling only the first, second and last gives 100,101,100 with two changes. Both have O = 100, H = 101, L = 100, C = 100. Matching OHLC does not prove matching event counts; this toy rule is not every platform’s tick definition.

Compare like windows before comparing activity

Use the same completed five-minute window, 09:00–09:05 UTC, on five assigned earlier days. Compute the mean for each source independently. The numbers below are fictional inputs, not typical session readings or a measured correlation.

Same clock window; separate units and five-day baselines
Source / unitEarlier readingsMeanNew / mean
Feed A price changes80,90,100,110,120100180 / 100 = 1.8
Feed B price changes120,135,150,165,180150210 / 150 = 1.4
Selected futures contracts400,450,500,550,600500450 / 500 = 0.9

A rises 80% above its baseline, B 40%, and the selected contract count is 10% below its own baseline. B’s absolute new count is larger than A’s, yet its relative increase is smaller. Neither calculation establishes who is “right” about the next price move. Do not add price changes to contracts or invent a conversion between them.

As a separate control, B = 240 gives 1.6, or +60%; futures = 540 gives 1.08, or +8%. They still measure different things. A partially completed window, missing record or changed counter specification needs its own label. MQL5’s iTickVolume can return zero on an error; check the error and data availability rather than automatically recording a genuine zero-activity interval.

Including the current reading changes the baseline

Four earlier closed windows each contain 100 updates; the new window has 200. Against the earlier mean of 100, the ratio is 2×. Include the new window in the mean and the baseline rises to 120, reducing the ratio to about 1.67×.

Scroll sideways to see the full diagram

Including a new reading in the baseline meanFour bars of 100 and a new bar of 200. The earlier four average 100; all five average 120. The new reading divided by these baselines gives 2 and 1.67.Is the new reading in its own baseline?100100100100200Earlier 4 mean = 100 · ratio 2×Mean including new = 120 · 1.67×A 1.8× threshold separates these rules.
Bar heights represent the counters. The two lines show different baselines, rather than two versions of the same transaction count.

At a threshold of at least 1.8×, the first version passes and the second fails. Both ratios can be calculated correctly after the close; they are different rules. Specify whether the current window belongs in the baseline before seeing the result.

Assumptions: A fictional counter from one source, five closed windows of equal duration and hypothetically comparable session timing. These are not broker statistics or market-test results.

Indicator arithmetic inherits the input’s meaning

A weighted average is Σ(price × weight) / Σ(weight). Assigned representative prices 1.1000 and 1.1020 with weights 100 and 300 give 1.1015. Swapping the weights gives 1.1005: a 10-pip difference. This demonstrates dependence on weights; it does not measure the accuracy gap between actual spot and futures VWAPs.

For a particular VWAP implementation, record price source, weight field, timeframe, anchor and reset clock. TradingView documents typical price (H + L + C) / 3 and cumulative weighting, with configurable source and anchor. A chart level alone does not prove that institutions will revisit it or that entering below it improves returns.

OBV adds the chosen volume when Close rises, subtracts it when Close falls, and leaves the total unchanged when Close is equal. If the input counts price changes, the output still accumulates those counts. Bar direction does not identify buyer- or seller-initiated transactions.

For Volume Profile, record data, lower-timeframe allocation and settings. TradingView describes tick data for Forex and up/down allocation using Close relative to Open, rather than actual aggressor buy/sell volume. POC is the maximum-volume row under that construction. A default 70% value area is a setting, not a promised price-containment probability or a magnetic destination.

Executed contracts are a separate, bounded record

CME volume counts contracts traded within the stated exchange scope; open interest counts outstanding contracts. A contract is counted once, not once for each side. Identify contract, expiry, session, data latency and rollover treatment before comparing records. Exchange data is not a complete census of spot FX.

The corresponding futures and spot instruments differ in quotation, pricing and execution. A futures VWAP does not automatically become the fillable spot price, and access is not necessarily free or realtime. Order flow requires the relevant execution records; a quote counter cannot reveal activity in every non-public liquidity pool.

Keep the new observation outside an earlier-only baseline

The diagram starts with four earlier readings of 100 and a new reading of 200. Relative to the earlier mean, the ratio is 2. Including the new reading changes the mean to 120 and the ratio to 5/3, about 1.67. A chosen threshold of at least 1.8 passes the first construction and fails the second.

In the quiz, two earlier readings of 100 and a new reading of 300 yield an all-three mean of 500/3 and ratio 1.8. Using only the earlier readings instead gives 3. Both calculations are valid for their stated denominator; silently changing that denominator breaks a recorded rule.

Keep source, missing-data and window changes in the log. Do not assume universal session correlations, tick-count ranges, candle-timeframe effectiveness or superiority over equities from these examples. Those claims require an identified dataset and method; no such performance study is presented here.

Make the exercise reproducible before evaluating a signal

Record completed interval, clock, feed, instrument, field, units, baseline membership and ratio. Compare future windows under the same predeclared rule, retaining low-activity and failed cases. For a trading hypothesis, specify price conditions, orders, costs and evaluation separately.

The examples teach measurement and arithmetic. A fixed observation quota, a week or a month does not certify an edge or readiness for live trading. An activity ratio can differ between sources without either one independently forecasting direction.