Event chart
Price drawn against events instead of clock time. Each tick has a bid and an ask; the open event grows until the reversal reaches the threshold, and the price axis moves on to the next event.
- Saw: line through the extrema
- Candles: rising hollow, falling filled, body = correction
- Open event
- Latest tick, from bid to ask
- Confirmation level, δ from the extremum
. The ticks are a random walk with a variable spread, generated in your browser for illustration. Nothing is sent to a server.
01 / An axis of events
On an ordinary chart the horizontal axis is clock time. Here it is the event number. The chart starts at event 0 on the left, and each further column is one more confirmed change of direction, however long it took on the clock. This is the author’s event time-frame; its standard-literature counterpart is intrinsic time (see the method).
While an event is open, price moves only up and down the vertical axis of its column. When the reversal reaches the threshold, the extremum stays where it was and the axis moves on to the next event.
02 / Bid, ask and the spread
Each tick has two prices: the bid and the ask; the gap between them is the spread. As with tick flags in MetaTrader, a tick can change the bid, the ask or both, so the spread keeps changing. In the author’s markup a high H is taken at the ask and a low L at the bid. A high is confirmed when the distance from H at the ask down to the current bid reaches δ; a low, when the distance from L at the bid up to the current ask reaches δ.
Both distances are measured across the spread. A wider spread therefore brings confirmation sooner: the price itself has to travel roughly δ less the spread. Move the spread sliders while the chart runs and watch the gap between ask and bid at the right edge.
03 / Saw and candles
The same chain of events can be drawn in two ways, as in the author’s script Vavilon.mq5 (2026).
- Saw. A line through the extrema in turn, one point for each: the teeth are highs H, the hollows lows L.
- Candles. One candle for each event. The shadow runs from L to H. The body is the event’s correction, its deepest counter-move smaller than the threshold, placed at the prices where it happened. Rising events are hollow (white in the author’s script), falling events filled (black).
A long candle with a short body is an event that moved far with little pullback: its strength Φ = Length : correction is high. A body close to the length of the shadow means a deep correction and low Φ.
04 / Implementation notes
- Markup follows Chain() in Vavilon.mq5. δ = Threshold · module · Price, where Price is the extremum at which the event starts: the bid of L for a rising event, the ask of H for a falling one. Confirmation is at ≥ δ.
- Event 0 is found as in the script’s FirstLink(): from the first tick, the running highest ask and lowest bid are followed until they are δ apart. It starts the markup and is left out of the measurements.
- Correction is recorded when the event renews its extremum after a pullback, as in Chain(). Length and correction are counted in whole modules, the correction at least one module; an event is mature when its correction exceeds Threshold / 3, as in the script’s Force().
- The module is fixed at 2 m% (1 m% = 10⁻⁵ of the price), the setting of Vavilon.mq5. Each tick changes the bid, the ask or both by a random step with slowly changing volatility; the spread is kept within the chosen range. The same seed and settings always give the same ticks.
- For a single price without a spread, and for replaying a path in clock time, see the threshold explorer.