Skip to main content

Module studies

Module studies 

Source
Expand description

Technical indicators, calculation helpers and study presentation.

Implement Indicator or use CustomIndicator for a host-defined study; IndicatorRegistry calculates a group of studies without a widget. Enable studies for the built-in catalogue and IndicatorFactory. A chart owns the calculation and rendering lifecycle of studies added through Chart::add_indicator.

§Calculating a study

Outputs contain a contiguous column per line. Missing and warm-up results are NaN; IndicatorValues::value returns finite results as Option<f64>.

use egui_charts::{model::Bar, studies::{Indicator, SMA}};

let bars = vec![
    Bar::new("2024-01-01T00:00:00Z".parse().unwrap(), 100.0, 102.0, 99.0, 101.0, 10.0),
    Bar::new("2024-01-01T00:01:00Z".parse().unwrap(), 101.0, 103.0, 100.0, 103.0, 20.0),
];
let mut sma = SMA::new(2);
sma.calculate(&bars);
assert_eq!(sma.values().value(0, 1), Some(102.0));

helpers provides scalar calculations for custom studies, and Stepper provides incremental calculation state. StudyData carries auxiliary data requested from the host’s feed.

Re-exports§

pub use crate::data::StudyData;
pub use crate::data::StudyDataRequest;
pub use factory::IndicatorFactory;

Modules§

factory
Indicator factory for dynamic indicator creation by name.
helpers
Calculations on scalar series for built-in and host-defined studies.
palette
Theme-independent default colours for study plots.

Structs§

ADX
Avg Directional Index indicator. Draws its ADX line; +DI and -DI are computed and can be shown from its style settings.
ALMA
Arnaud Legoux Moving Avg indicator
ATR
Avg True Range indicator
AccelerationBands
Acceleration Bands (Price Headley), a price envelope that widens on wide bars.
AcceleratorOscillator
Accelerator Oscillator, with Bill Williams’ fixed lengths 5, 34 and 5.
AccumulationDistribution
Accumulation/Distribution Line indicator
AccumulationSwingIndex
Accumulation Swing Index (ASI) Developed by Welles Wilder Cumulative sum of swing index values
AdvanceDeclineRatioBars
Up bars over down bars within a window.
AdxBreakout
ADX Breakout: closes beyond the range of the last bars after a weak trend.
AnchoredVWAP
Anchored VWAP - VWAP calculated from a specific anchor bar index forward. typical_price = (high + low + close) / 3 VWAP = cumsum(volume * typical_price) / cumsum(volume) from anchor_bar onward.
Aroon
Aroon indicator
AroonOscillator
Aroon Up minus Aroon Down.
AutoDrawing
A drawing recalculated from host bars with the same pivots as ZigZag. Swings use the fixed Zig Zag percentage unless with_atr sizes them by the average true range.
AverageDailyRange
Simple average of the bar range.
AverageLine
One moving average’s formula, length, input price and colour.
AwesomeOscillator
Awesome Oscillator indicator
BBTrend
Trend strength from a short and a long Bollinger Band.
BalanceOfPower
Balance of Power (BoP): the strength of buyers against sellers, (close - open) / (high - low) per bar, smoothed with a simple average of smooth_period bars.
BollingerBands
Bollinger Bands indicator.
BollingerBandsWidth
Bollinger Bands Width - measures how wide the Bollinger Bands are. Formula: (upper_band - lower_band) / middle_band * 100 where middle = SMA(close, period), upper = middle + std_dev * stdev, lower = middle - std_dev * stdev.
BollingerBars
Bollinger Bars: full-width wick blocks under up or down bodies.
BullBearPower
Bull Power plus Bear Power.
CCI
Commodity Channel Index indicator
CVD
Cumulative Volume Delta (CVD)
CandlestickPatterns
All Candlestick Patterns: the common candlestick patterns, each with a toggle, marked and labelled at the bar that completes them.
CenterOfGravity
Center of Gravity Oscillator Developed by John Ehlers Uses a weighted moving avg to identify reversal points
ChaikinMoneyFlow
Chaikin Money Flow indicator
ChaikinOscillator
Fast minus slow EMA of the Accumulation/Distribution line.
ChaikinVolatility
Chaikin Volatility Measures the rate of change of the trading range High values indicate increased volatility
ChandeKrollStop
Chande Kroll Stop: a short (upper) and a long (lower) trailing stop.
ChandeMomentumOscillator
Chande Momentum Oscillator (CMO) Measures momentum on both up and down days Ranges from -100 to +100
ChandelierExit
Chandelier Exit Trailing stop-loss indicator: the highest high or lowest low of the last period bars, minus or plus multiplier times Wilder’s ATR over atr_period. A value needs a full window as well as an ATR value. Developed by Chuck LeBeau
ChartPatterns
Automatic chart patterns: the formations of a PatternFamily, each with a toggle, detected from swing pivots and marked on the bar that confirms them. Read the formations, with their anchors, boundaries, direction and confirmation bar, from formations.
ChartState
Backend chart state – owns bar data, time-scale coordinate system, price auto-scaling logic, and zoom history.
ChopZone
Chop Zone: unit columns coloured by the angle of the 34-bar EMA.
ChoppinessIndex
Choppiness Index Measures market trendiness vs choppiness Values close to 100 = choppy market, values close to 0 = trending market
CloseToCloseVol
Close-to-Close Volatility Standard deviation of log returns, annualized by sqrt(252)
CommoditySelectionIndex
Commodity Selection Index (CSI), J. Welles Wilder, New Concepts in Technical Trading Systems (1978).
ConfiguredStudy
A study with editable presentation, used automatically by the chart. Hosts composing their own chart can wrap built-in or custom studies the same way.
ConnorsRSI
Connors RSI (CRSI)
CoppockCurve
Coppock Curve A momentum indicator originally designed to identify buying opportunities in stock indices Uses a weighted moving avg of the sum of two ROC periods
CumulativeVolumeDelta
Volume delta from lower-interval candles added up from the start of each anchor period, as candles, in a separate pane.
CustomIndicator
An indicator defined at runtime via a calculation closure.
DEMA
Double Exponential Moving Avg indicator
DetrendedPriceOscillator
Detrended Price Oscillator, aligned with the current bar or centred on the average.
DirectionalMovement
Directional Movement Index (DMI / DI+ / DI-) Shows the positive and negative directional indicators and the ADX, Wilder’s average of DX over the ADX smoothing period (Wilder 1978)
DonchianChannels
Donchian Channels indicator
DoubleStochastic
Double Stochastic Applies the stochastic formula twice for smoother signals More responsive to overbought/oversold conditions
EMA
Exponential Moving Average indicator.
EMACross
EMA Cross, a preset of independently configurable averages.
EaseOfMovement
Ease of Movement (EoM / EMV), Richard Arms: how easily price moves for the volume traded.
EhlersFisher
Ehlers Fisher Transform (John Ehlers version) Converts prices into a Gaussian normal distribution More responsive than standard Fisher Transform
ElderImpulseSystem
Elder Impulse System Combines EMA slope and MACD histogram for trend signals Green = bullish, Red = bearish, Blue = neutral
ElderRay
Elder Ray Index (Bull Power / Bear Power) Measures buying and selling pressure Developed by Alexander Elder
ElliottWave
Elliott Wave: five-wave impulses in confirmed swing pivots.
Envelopes
Moving Average Envelopes. The band between the upper and lower lines is filled.
FisherTransform
Fisher Transform Converts prices into a Gaussian normal distribution Creates sharper turning points for identifying reversals
FootprintStudy
A level or zone beginning at one bar and optionally ending at its first revisit.
FootprintStudyConfig
What footprint_studies marks, and how. The default marks stacks of three diagonal imbalances at 300%, unfinished highs and lows, naked and delta POCs, and leaves the rest off.
ForceIndex
Force Index Measures the force behind price movements using price change and volume Developed by Alexander Elder
Formation
A detected formation, with bar indices into the calculated bars.
Gaps
Gaps: zones between consecutive bars that do not overlap, open until price fills them.
GuppyMA
Guppy Multiple Moving Average (GMMA)
HL2
HL2 - Avg of High and Low (Midpoint) Note: Same formula as MedianPrice; this variant uses the common HL2 name.
HLC3
HLC3 - Avg of High, Low, Close Note: Same formula as TypicalPrice; this variant uses the common HLC3 name.
HMA
Hull Moving Avg indicator
HammingMA
Hamming Weighted Moving Average
HigherIntervalCandles
Candles spanning the loaded bars of a higher interval, daily by default.
HistoricalVolatility
Historical Volatility (HV) Measures the annualized standard deviation of log returns Used for options pricing and risk assessment
IchimokuCloud
Ichimoku Cloud indicator
IndicatorFill
A vertical fade between an overlay line and the plot’s bottom edge.
IndicatorLineStyle
Width, optional direction colours and optional bottom fill of an overlay line.
IndicatorMarker
A shape at a study value on a source bar.
IndicatorRegistry
A registry that owns a collection of Indicator trait objects and provides batch operations (calculate all, clear, etc.).
IndicatorValues
One contiguous allocation per output line. Every column has len entries. Missing and non-finite outputs are stored as NaN. Read a line without allocating with line, or export owned rows with to_rows.
IntradayPivotPoints
Intraday Pivot Points: levels for each block of a trading session from the block before it.
KAMA
Kaufman Adaptive Moving Average indicator.
KDJ
KDJ, the stochastic oscillator as used in Chinese securities analysis.
KeltnerChannels
Keltner Channels indicator
KeyLevels
Key Levels: prices at which swing highs and lows repeatedly formed.
KlingerOscillator
Klinger Volume Oscillator, as defined by Stephen J. Klinger in “Identifying Trends With Volume Analysis”, Technical Analysis of Stocks & Commodities, V.15:12 (December 1997).
KnowSureThing
Know Sure Thing (KST) Oscillator Developed by Martin Pring Combines multiple ROC values with different smoothing periods
KnoxvilleDivergence
Knoxville Divergence: price and momentum swings that disagree at an RSI extreme.
LSMA
Least Squares Moving Average (Linear Regression Line) indicator.
LevelStyle
Editable presentation of one reference level in a study’s pane, such as 70 for RSI.
LinearRegression
Linear regression fitted to closing prices over a rolling window.
LinearRegressionChannel
Linear regression channel fitted to the closes of the last period bars.
LinearRegressionSlope
Linear Regression Slope
LunarPhase
One new or full moon.
LunarPhases
Lunar phases: a marker at the low of the bar holding each new moon and at the high of the bar holding each full moon.
MACD
Moving Average Convergence Divergence (MACD) indicator.
MAChannel
Moving Average Channel: the simple average of the highs as the upper line and of the lows as the lower line, each over its own length and drawn its own number of bars later (earlier for a negative offset), with the band between them filled. A window with a non-finite high (low) has no upper (lower) value.
MACombination
Two to fourteen independently configured averages. Two to four form a combination; longer configurations form a ribbon. Each line keeps its standalone study’s seed and warm-up. A missing line is NaN.
MACross
MA Cross, a preset of independently configurable averages.
MARibbon
Twelve evenly spaced exponential averages coloured by their individual direction.
MajorityRule
Majority Rule - counts up vs down closes over period. Outputs +1 if majority up, -1 if majority down, 0 if tie.
MarketBreadth
A ratio or cumulative difference of two market series. RATIO selects the ratio and its name. VOLUME chooses volume-series default symbols and, without RATIO, the volume-index name, so with both true the study is the “Advance/Decline Ratio” of the volume series. Hosts map the default symbol keys to their own source, or replace them using the typed inputs. Calculations require Indicator::update_data.
MarketFacilitationIndex
Market Facilitation Index (MFI / BW MFI) Developed by Bill Williams Measures price movement per unit of volume
MassIndex
Mass Index Identifies trend reversals based on range expansion Developed by Donald Dorsey
McGinleyDynamic
McGinley Dynamic: an average that speeds up when price falls away from it and slows down when price rises above it. MD = MD[1] + (close - MD[1]) / (N x (close / MD[1])^4) with N the period, starting at the first close. While MD is zero, or the divisor is zero, MD keeps its value.
Median
Median: rolling median of hl2, its EMA and ATR bands around it.
MedianPrice
Median Price (HL/2) Note: Same formula as HL2 in average_price; kept for backwards compatibility under the “MP” indicator name.
MetricStudy
A host metric, held by time on the chart’s bars and drawn in an independent pane. Its output can be selected as another study’s super::StudySource::Study.
MissedPivots
Missed Pivot Levels: swing highs and lows that price has not returned to.
MixedMACross
A simple average crossing an exponential one.
Momentum
Momentum indicator
MoneyFlowIndex
Money Flow Index indicator
MultipleMA
Simple averages of lengths 20, 50, 100 and 200, as a combination preset, without crossing markers until a pair is chosen.
NegativeVolumeIndex
Negative Volume Index (NVI)
NetVolume
Volume signed by the close against the previous close: positive, negative or zero. The first bar has no value.
OHLC4
OHLC4 - Avg of Open, High, Low, Close
OhlcVolatility
OHLC Volatility (Garman-Klass) Uses OHLC data for more efficient volatility estimation GK = 0.5 * ln(H/L)^2 - (2*ln(2)-1) * ln(C/O)^2
OnBalanceVolume
On Balance Volume indicator
OptionsVolumeProfile
Call and put turnover at strike prices on the price pane, scaled to the largest row total. The host chooses an underlying and inclusive expiry range and supplies complete snapshots. Clones share the subscription; dropping its last clone makes the feed’s sink inactive.
OrderFlowStudy
An order-flow study in a separate pane. Use the factory titles or Self::new.
ParabolicSAR
Parabolic SAR indicator
ParkinsonVol
Parkinson high-low range volatility.
PercentB
Percent B (%B) Shows where price is relative to Bollinger Bands 0 = at lower band, 1 = at upper band
PercentageVolumeOscillator
Percentage Volume Oscillator (PVO): the PriceOscillator computed from volume instead of close.
Performance
Latest close’s percentage change over six calendar periods, shown as a table.
PivotPoints
Pivot Points Standard: support and resistance levels for each calendar period from the previous period.
PivotPointsHighLow
Pivot Points High Low: swing highs and lows, each labelled with its price.
PlotStyle
Editable presentation of one output line.
PositiveVolumeIndex
Positive Volume Index (PVI)
PrettyGoodOscillator
Pretty Good Oscillator (PGO) Measures price distance from moving avg in ATR units Values > 3 or < -3 indicate potential reversal
PriceChannel
Price Channel Simple highest high and lowest low channel Also known as “N-bar high/low”
PriceMomentumOscillator
Price Momentum Oscillator: PMO and signal lines in a separate pane.
PriceOscillator
Percentage Price Oscillator (PPO): MACD taken as a percentage of the long average.
PriceVolumeTrendStudy
Price Volume Trend (Enhanced) with Signal Line PVT = prev_PVT + volume * (close - prev_close) / prev_close Signal = EMA(PVT, signal_period)
PringsSpecialK
Pring’s Special K and its doubly smoothed signal line, in a separate pane.
ProfileInput
What a volume profile was built from.
ProjectedPivotPoints
Projected Pivot Points: the next period’s pivot levels from the period so far.
Qstick
Qstick (Quantitative Candlestick) Moving avg of the open-close difference Positive = bullish, Negative = bearish
RSI
Relative Strength Index (RSI) indicator.
RainbowOscillator
Rainbow Oscillator (Mel Widner, “Rainbow Charts”, Technical Analysis of Stocks & Commodities, July 1997): the close’s distance from a stack of recursive moving averages, relative to the recent range of the close.
RankCorrelationIndex
Rank Correlation Index (Spearman) - rank correlation of prices vs time index over a rolling window, scaled to [-100, 100].
RateOfChange
Rate of Change indicator
RciRibbon
RCI Ribbon: short, middle and long Rank Correlation Index lines in a separate pane.
RefusedStudy
A study the chart refused at its study cap, handed back unchanged by into_inner.
RelativeVigorIndex
Relative Vigor Index (RVI) Measures conviction of price movement Uses the relationship between close-open vs high-low
RelativeVolatilityIndex
Relative Volatility Index, a 0 to 100 oscillator in a separate pane.
RelativeVolumeAtTime
Volume relative to its average at the same point of the previous periods, as columns around a level at 1.
Reversal
Reversal: bars that make a new extreme and close beyond the previous close.
RsiDivergence
RSI Divergence Indicator: the RSI with regular and hidden divergences against price.
SMA
Simple Moving Average indicator.
SMIErgodic
Blau’s SMI Ergodic study: the SMI and signal lines, or with OSCILLATOR their difference.
SWMA
Symmetrically Weighted Moving Average indicator.
SchaffTrendCycle
Schaff Trend Cycle (STC) Combines MACD with stochastic to create a faster, more accurate oscillator Oscillates between 0 and 100
Seasonality
Monthly projection from the average change of the same month in earlier years, drawn on the price chart.
SmoothedMA
Smoothed Moving Average (Wilder’s Smoothing)
SqueezeMomentum
Squeeze Momentum Indicator Combines Bollinger Bands and Keltner Channels to identify periods of low volatility When BB is inside KC = “squeeze” (low volatility period)
StandardDeviation
Standard Deviation indicator
StandardError
Standard Error of the linear regression of close prices over a rolling window.
StandardErrorBands
Standard Error Bands - upper/middle (linear regression)/lower bands where upper = LinReg + multiplier * StdError, lower = LinReg - multiplier * StdError.
Stepper
Runs a causal study one step per bar and keeps the state before the last bar, so a last-bar update or an append resumes instead of recomputing the whole series. calculate is run(data, 0, ..), so batch and streaming share one code path.
Stochastic
Stochastic Oscillator indicator
StochasticMomentumIndex
Stochastic Momentum Index (SMI) Enhanced stochastic that measures close relative to HL range midpoint More responsive than standard stochastic
StochasticRSI
Stochastic RSI indicator
StudyCandle
One OHLCV candle spanning an exclusive range of source bar indices.
StudyFill
A band between two plots or levels.
StudyInput
An editable input, with a stable study-local id and its current value.
StudyLabel
Text beside a study value, stored once per label instead of per bar.
StudyPane
Default layout and reference levels supplied by a study for its separate pane.
StudyProjection
A projected price band whose endpoints can fall between bar centres.
StudySettings
Host-serializable presentation settings of an applied study.
StudySettingsSnapshot
An owned settings and input snapshot without calculated study data. Used by chart history; restoring it requires recalculation on the current bars.
StudyTable
A labelled table drawn in the lower right of the study’s pane.
StudyTemplate
Serializable inputs and presentation of one study. Hosts may resolve name through their own study factory when they supply custom studies.
StudyTemplateSet
The studies of a chart, with the links between them and the panes they share, as Chart::study_template_set saves them and Chart::apply_study_template_set applies them.
StudyZone
A price band between two source bars, stored once instead of as a value on every bar.
SuperTrend
SuperTrend indicator
SymbolPair
A ratio, spread or correlation of two series, each a price source of a symbol. RATIO selects the ratio and CORRELATION the correlation; neither selects the spread. With both true, CORRELATION takes precedence and the study is the correlation.
TEMA
Triple Exponential Moving Avg indicator
TRIX
TRIX - Triple Exponential Avg A momentum oscillator that shows the rate of change of a triple-smoothed EMA Filters out insignificant price movements
TechnicalRatings
Moving-average, oscillator and summary ratings from the votes of their components.
TimePriceOpportunity
Each session’s TPO profile on the price pane, starting at the session’s first bar, with its point of control, value area and initial balance.
TimeWeightedAvgPrice
Time Weighted Average Price, restarted at each anchor period.
TradeDeltaValue
One bar’s trade-based delta, cumulative delta candle, and rolling totals.
TradeProfile
Executed volume over one session or composite, with the POC after each contributing bar.
TradeProfileRanges
Half-open session ranges. Adjacent sessions can be merged and split again by the user.
TradingSessions
Background highlight of up to three trading sessions on intraday charts.
TrendDetectionIndex
Trend Detection Index (TDI), M. H. Pee, Technical Analysis of Stocks & Commodities, October 2001.
TrendIntensityIndex
Trend Intensity Index (TII), after M. H. Pee (Technical Analysis of Stocks & Commodities, June 2002).
TrendStrengthIndex
Trend Strength Index: the Pearson correlation of the source price with bar position over the last period bars, from -1 for a straight fall to 1 for a straight rise.
TripleMA
Three simple averages with independently chosen lengths.
TrueRange
True Range (not avgd)
TrueStrengthIndex
True Strength Index (TSI), William Blau, “Momentum, Direction, and Divergence” (1995).
TypicalPrice
Typical Price (HLC/3) Simple avg of high, low, close Also known as pivot point Note: Same formula as HLC3 in average_price; kept for backwards compatibility under the “TP” indicator name.
UlcerIndex
Root mean square drawdown from the rolling highest close.
UltimateMomentum
Ultimate Momentum Oscillator Custom composite momentum indicator Combines multiple timeframes for confirmation
UltimateOscillator
Ultimate Oscillator indicator
UpDownVolume
Up and down volume from intrabars supplied by the host, in a separate pane.
VIDYA
VIDYA - Variable Index Dynamic Avg Adaptive moving avg that adjusts based on volatility Uses Chande Momentum Oscillator for volatility measurement
VWMA
Volume Weighted Moving Avg (VWMA) Moving avg weighted by volume - gives more importance to high-volume periods
VisibleAveragePrice
Average of the visible bars’ closes, recalculated when the chart pans or zooms.
VolProfileAnchored
Volume from a saved start time to the latest bar; all loaded bars until an anchor is chosen.
VolProfileAutoAnchored
Volume from the latest calendar anchor or an extreme in the chosen lookback.
VolProfileFixed
Volume between inclusive saved start and end times; all loaded bars until times are chosen.
VolProfilePeriodic
One volume profile per chosen exchange calendar period, weekly by default.
VolProfileSession
One volume profile per exchange trading day, including the whole session of visible bars.
VolProfileVisible
Volume distributed over the bars currently visible in the chart.
VolatilityStop
Volatility Stop: a trailing ATR stop that reverses with the trend.
Volume
Volume columns and a moving average, in the price pane or a separate pane.
Volume24h
Rolling volume over the last 24 hours of calendar time, in a separate pane.
VolumeDelta
Each bar’s volume delta from lower-interval candles, as a candle from zero, in a separate pane.
VolumeOscillator
Volume Oscillator Measures the difference between two volume moving avgs Similar to MACD but for volume
VolumePriceTrend
Volume Price Trend (VPT) Cumulative volume indicator that considers price changes Similar to OBV but uses percentage changes
VolumeRateOfChange
Volume Rate of Change (VROC) Measures the rate of change in volume over a specified period Helps identify volume trends and divergences
VolumeWeightedAvgPrice
Volume Weighted Average Price, restarted at each anchor period, with optional standard deviation bands.
VolumeWeightedMACD
Volume Weighted MACD indicator
VortexIndicator
Vortex Indicator (VI) Identifies trend direction and strength Uses True Range and directional movement concepts
VwapAutoAnchored
VWAP from an automatically found anchor bar to the latest bar.
WMA
Weighted Moving Avg indicator
Wedge
A rising or falling wedge found from confirmed swing pivots.
Week52HighLow
Close position in the high-low range over the inclusive last 364 days.
Week52HighLowLevels
Highest high and lowest low over the inclusive last 364 days, drawn on the price pane. Bars before 52 weeks of history have no value, regardless of the bar interval.
WeightedClose
Weighted Close
WilliamsAD
Williams Accumulation/Distribution Developed by Larry Williams Measures buying and selling pressure
WilliamsAlligator
Williams Alligator: jaw, teeth and lips lines, displaced forward.
WilliamsFractals
Williams Fractals: up fractals at swing highs and down fractals at swing lows.
WilliamsR
Williams %R indicator
WoodiesCCI
Woodies CCI: CCI 14 columns, CCI Turbo and CCI 14 lines in a separate pane.
ZLEMA
Zero Lag EMA Reduces lag in EMA by using error correction
ZeroTrendVol
Zero-mean close-to-close volatility, without subtracting the mean log return.
ZigZag
Zig Zag: the swings of at least deviation_percent (Merrill’s filtered waves), drawn as straight lines between consecutive pivots.
ZigZagPivot
One swing extreme in source-bar order. The last pivot is provisional and can move.
ZoomState
A snapshot of zoom parameters, used for undo/redo of zoom operations.

Enums§

AnchorPeriod
A calendar period of trading days.
AtrSmoothing
Average of the true range that ATR draws. Every smoothing has its first value on the period-th true range.
AutoAnchor
How VwapAutoAnchored finds its anchor bar.
AutoDrawingKind
Construction to place on the latest Zig Zag pivots.
AverageType
Average formula used by a line of MACombination.
CVDMode
How CVD estimates a bar’s delta from its prices
CrossDirection
Direction of a crossing marker.
EnvelopeAverage
The moving average in the middle of Envelopes.
FillBoundary
One boundary of a study band, in the study’s value scale.
FootprintStudyKind
Meaning of a footprint annotation. Sells trade on the bid and buys on the ask.
FootprintStudyState
Where a level or zone stands against later trading.
FormationKind
The formation a detector looks for.
FormationStatus
Whether a formation has broken out.
ImpulseSignal
Signal state for Elder Impulse
IndicatorValue
The output value of an indicator at a single bar position.
InputKind
The accepted values of a study input.
InputValue
A study input’s current value.
KeltnerBand
How far the bands of KeltnerChannels lie from the middle line, before the multiplier.
LabelPlacement
Where the text of a StudyLabel sits relative to its point.
MoonPhase
A phase of the Moon with a published instant.
OscillatorAverage
Average formula of an oscillator’s averages and signal line, and of the middle line of KeltnerChannels.
PatternDirection
The side a confirmed formation points to.
PatternFamily
Which formations a ChartPatterns study looks for.
PatternTrend
How CandlestickPatterns decides whether a bar is in a downtrend or an uptrend.
PatternType
Which signals CandlestickPatterns marks.
PivotLabelSide
Which end of each pivot level its label sits at.
PivotMethod
The level formulas used by PivotPoints.
PivotTimeframe
The calendar period of each set of pivots.
PlotType
Geometry for one output line.
RelativeVolumeAnchor
The period at whose start RelativeVolumeAtTime restarts its comparison.
RelativeVolumeMode
The volume compared by RelativeVolumeAtTime.
StudyCell
A cell in a study table.
StudyError
Why a study was not built, edited, given a source or added.
StudyIntervalRange
Interval visibility evaluated for every interval, including custom and trade-based ones. Ordered ranges compare nominal duration for time bars and thresholds within the same trade-based family. Other families are outside the range. Only matches the exact interval.
StudyScale
Value scale in the pane selected by super::Indicator::is_overlay.
StudySource
A price series or an output of another study on the chart.
VolumeAverage
Moving average formula for volume.
VolumeColorRule
Comparison used to colour volume columns. An unchanged close is always up.
VwapAnchor
The period over which VolumeWeightedAvgPrice accumulates before it restarts.
ZigZagChange
How a Zig Zag label writes the change from the previous pivot.
ZigZagMode
ZigZag mode - what price to use

Traits§

Indicator
The core trait that every technical indicator must implement.

Functions§

footprint_studies
Finds stacked imbalances, unfinished highs and lows, naked POCs, delta POCs, clusters, single prints and bars whose delta percentage or bid/ask ratio reaches a threshold, in the bars from Footprint::complete_from on.
lunar_phases
The new and full moons in from..to, in time order, over 1900-01-01 to 2100-01-01 UTC; see the module documentation for the time basis and accuracy.
trade_delta
Computes one value per supplied bar, with zero delta for bars without executions.
trade_profiles
Builds exact profiles from footprint rows. No OHLC volume is distributed across prices. Ranges select whole bars, so session and split boundaries must align with the footprint’s bar clock. Unknown aggressor volume remains separate and contributes only to total volume. Bars before Footprint::complete_from, whose executions are not all held, are left out; TradeProfile::complete tells whether a range starts before it.

Type Aliases§

AdvanceDeclineLine
Running total of advancing minus declining issues.
AdvanceDeclineRatio
Advancing issues divided by declining issues.
Correlation
Rolling Pearson correlation of the two series.
CumulativeVolumeIndex
Running total of advancing volume minus declining volume.
FallingWedge
A wedge that slopes down and narrows, confirmed by a close above its upper line.
Ratio
The first series divided by the second.
RisingWedge
A wedge that slopes up and narrows, confirmed by a close below its lower line.
SMIErgodicIndicator
SMI and signal lines of the SMI Ergodic Indicator.
SMIErgodicOscillator
Histogram of the SMI minus its signal, the SMI Ergodic Oscillator.
Spread
The first series minus the second.