Average Price (AVGPRICE): Complete Guide for Algorithmic Trading

The Average Price indicator (AVGPRICE) is a price transformation tool that calculates the arithmetic mean of a bar’s four price points: open, high, low, and close. Unlike most indicators that default to the closing price alone, the average price indicator incorporates the full price range of each period, giving a more balanced representation of where price actually traded during that bar.

What Is the Average Price Indicator?

The Average Price indicator is one of the simplest price-based tools in technical analysis. It takes the four standard OHLC data points for each bar and gives each equal weight — the opening price, the highest price reached, the lowest price reached, and the closing price all contribute equally to the result.

The output is a single number per bar that represents the average of the full price range, not just its endpoint. Where the closing price captures only a single moment — the last trade of the period — the average price indicator captures the entire session. The open reflects where the market began. The high and low reflect the extremes of the range. The close reflects where it finished. AVGPRICE treats all four as equally relevant.

This makes AVGPRICE a smoother, more representative price input for other calculations. It reduces the distortion that comes from an unusual open, a spike high or low, or a volatile end-of-period close — all common occurrences in 24/7 crypto markets where there is no defined trading session.

A full overview of price transformation indicators and how they relate to typical price and related measures is covered in detail at Investopedia.

How Is the Average Price Indicator Calculated?

AVGPRICE = (Open + High + Low + Close) ÷ 4

Each price point receives equal weight. There are no lookback periods, no smoothing periods, and no configurable parameters. The calculation runs bar by bar and produces a fresh value for each period independently.

It helps to compare AVGPRICE against the related price transformation indicators:

  • Closing Price: Uses only the close — one of four price points, the most commonly used default
  • Median Price: (High + Low) ÷ 2 — ignores both the open and close entirely
  • Typical Price: (High + Low + Close) ÷ 3 — includes the close but not the open
  • Weighted Close: (High + Low + 2 × Close) ÷ 4 — gives the close double weight
  • Average Price (AVGPRICE): (Open + High + Low + Close) ÷ 4 — equal weight, all four data points

AVGPRICE sits in the middle of this spectrum. It is more complete than closing price, more balanced than weighted close, and includes the open where typical price does not. The difference between AVGPRICE and close price will be largest during high-volatility bars where the open was very different from the close, or where the high and low were significantly wider than the open-to-close range.

How to Read Average Price Indicator Signals?

AVGPRICE is not a directional signal on its own. It is a price transformation — a cleaner representation of price that feeds into other calculations. Reading it in isolation produces limited insight.

The most informative use is comparing AVGPRICE to the closing price of each bar. When the close is significantly higher than AVGPRICE, the session ended in its upper range. Buyers were active into the close. When the close is significantly lower than AVGPRICE, the session ended in its lower range. Sellers had control late in the period.

Tracking this relationship across several consecutive bars adds context. If close has been consistently below AVGPRICE for multiple bars, sellers are repeatedly finishing each session in control — a subtle bearish signal within an otherwise neutral or bullish chart. If close is consistently above AVGPRICE, buyer strength is persistent into each close.

This comparison is most useful as a secondary filter rather than a primary signal. It adds a layer of session-level information on top of a trend or momentum system.

What Are the Best Average Price Indicator Trading Strategies?

As a Moving Average Input

The most common use of AVGPRICE in systematic trading is as a price feed to other indicator calculations. Connecting an AVGPRICE block to an SMA or EMA block — instead of the default close price — produces a moving average of the full bar price rather than just its endpoint. In volatile or 24/7 markets where the close of a period is somewhat arbitrary, this substitution can reduce whipsaws and produce a more stable moving average line.

Session Sentiment Filter

Compare AVGPRICE to the closing price of each bar using a condition block. When close is above AVGPRICE, buyers finished the session in control. Use this as a filter on top of a trend signal — for example, only allowing long entries when close has been above AVGPRICE for two or more consecutive bars, confirming consistent buyer strength into each close.

Dynamic Stop Reference

Because AVGPRICE reflects the full bar range rather than just the close, it can serve as a more representative reference level for stop placement. A stop set relative to AVGPRICE — rather than the closing price alone — accounts for the full session’s price activity. This is particularly relevant for strategies holding positions across multiple periods where the full range of each bar matters for stop distance calculations.

What Are Common Average Price Indicator Mistakes to Avoid?

Treating AVGPRICE as a signal generator. AVGPRICE does not generate buy or sell signals on its own. It is a price transformation tool. Using it in isolation as an entry or exit trigger will not produce meaningful results — it needs to be combined with a directional indicator or condition.

Expecting dramatically different results from close price. In most market conditions, AVGPRICE will be close to the closing price. The difference is greatest during high-volatility bars with large ranges and unusual closes. Do not expect AVGPRICE to transform a failing strategy — the improvement is subtle and works at the margin, not as a primary fix.

Dismissing it as too simple to be useful. The opposite mistake is overlooking AVGPRICE entirely. In specific applications — particularly as an input to other indicators in volatile crypto markets — the smoothing effect meaningfully reduces noise. It is worth testing alongside close price for any indicator-based strategy, especially on shorter timeframes where individual bars can behave erratically.

How to Build Average Price Indicator Strategies in Arrow Algo?

In Arrow Algo, the AVGPRICE block is available in the price transform section of the block library. Drag it onto the canvas, connect it to your data source, and the block automatically outputs the average of open, high, low, and close for each bar. No additional configuration is required.

The most effective use in Arrow Algo is as a feed to other indicator blocks. Connect the AVGPRICE output to an SMA or EMA block instead of the default price feed. The moving average now uses the full bar average as its input, producing a smoother line. Connect this modified moving average to your entry condition blocks as normal — the rest of the strategy logic remains unchanged.

To build the session sentiment filter, connect AVGPRICE and the close price to a condition block. Set the condition to check whether close is above AVGPRICE. Feed the output into an AND gate alongside your main entry signal. The strategy only enters when bar-level sentiment aligns with the direction of your trade — configured entirely through drag-and-drop with no code required.

For more on related price-based volatility calculations and how they are used as inputs in systematic strategies, see the Arrow Algo NATR guide. For a broader reference on technical analysis and price-based indicators, Investopedia provides comprehensive coverage.

What Are the Key Takeaways?

  • AVGPRICE calculates (Open + High + Low + Close) ÷ 4, giving equal weight to all four price points per bar
  • It is a price transformation tool — not a standalone signal generator
  • AVGPRICE reduces distortion from unusual closes, making it particularly useful in 24/7 crypto markets
  • Most effective when used as an input to other indicators instead of the default close price
  • Comparing close to AVGPRICE reveals session-level buyer or seller control as a secondary filter
  • In Arrow Algo, connect the AVGPRICE block to any other indicator block with no code required

Disclaimer: This content is for educational purposes only and does not constitute financial advice. Trading involves significant risk and you should only trade with capital you can afford to lose. Past performance is not indicative of future results. Always conduct your own research before making any trading decisions.

Ready to build your own automated trading strategies without writing a single line of code? Start for free at Arrow Algo and join thousands of traders who’ve made the switch to systematic trading.

About the Author

Author Bio