Market Profile Indicator Free Download

Market Profile Indicator Free Download

Market Profile MetaTrader indicator — is a basic Market Profile implementation that may present the worth density over time, outlining very powerful value ranges, worth space, and management worth of a given buying and selling session. This indicator may be hooked up to timeframes between M1 and D1 and can present the Market Profile for every day, weekly, month-to-month, and even intraday periods. Decrease timeframes supply greater precision. Increased timeframes are advisable for higher visibility. It is usually potential to make use of a free-draw rectangle session to create a customized market profile on any timeframe. Six different color schemes can be found to attract the profile’s blocks. Drawing profiles as a plain color histogram can be potential. Alternatively, you could select to paint the profile primarily based on bullish/bearish bars. This indicator relies on naked value motion and doesn’t use any customary MetaTrader indicators. It’s obtainable for each MetaTrader Four and MetaTrader 5 platform.

A system of alerts is obtainable for value crossing the degrees of Worth Space excessive and low, Median, and Single Print zones.




Enter parameters


  • Session (default = Every day) — buying and selling session for market profile: Every day, Weekly, Month-to-month, Intraday, and Rectangle. For a rectangle session to get calculated, a rectangle chart object with the identify beginning with MPR must be added to the chart. Urgent ‘r’ on the keyboard will add a correctly named rectangle object robotically.
  • StartFromDate (default = __DATE__) — if StartFromCurrentSession is false, then the indicator will begin drawing profiles from this date. It attracts to the previous. For instance, for those who set it 2018-01-20 and SessionsToCount is 2, then it would draw the profiles for 2018-01-20 and 2018-01-19.
  • StartFromCurrentSession (default = true) — if true, then the indicator begins drawing from in the present day, else — from the date given in StartFromDate.
  • SessionsToCount (default = 2) — for what number of buying and selling periods to attract the market profiles.
  • EnableDevelopingPOC (default = false) — if true, a number of horizontal strains shall be drawn to depict how the Level of Management developed via the session.
  • ValueAreaPercentage (default = 70) — a proportion share of the session’s TPOs to incorporate within the Worth Space.

Appears to be like and colours

  • ColorScheme (default = Blue to Pink) — colour scheme for profile’s blocks:
    • blue to purple
    • purple to inexperienced
    • inexperienced to blue
    • yellow to cyan
    • magenta to yellow
    • cyan to magenta
  • SingleColor (default = clrBlue) — if ColorScheme is about to Single Shade, this colour shall be used to attract market profiles.
  • ColorBullBear (default = false) — if true, the colour of the profile blocks relies upon not on the age of the origin bar however on its course.
  • MedianColor (default = clrWhite) — the colour of the management worth (median).
  • ValueAreaSidesColor (default = clrWhite) — the colour of the worth space aspect borders.
  • ValueAreaHighLowColor (default = clrWhite) — the colour of the worth space prime and backside borders.
  • MedianStyle (default = STYLE_SOLID) — the Level of Management (median) line model.
  • MedianRayStyle (default = STYLE_DASH) — the Level of Management (median) ray line model.
  • ValueAreaSidesStyle (default = STYLE_SOLID) — the model of the worth space aspect borders.
  • ValueAreaHighLowStyle (default = STYLE_SOLID) — the model of the worth space prime and backside borders.
  • ValueAreaRayHighLowStyle (default = STYLE_DOT) — the model of the worth space prime and backside rays.
  • MedianWidth (default = 1) — the Level of Management (median) line width.
  • MedianRayWidth (default = 1) — the Level of Management (median) ray line width.
  • ValueAreaSidesWidth (default = 1) — the width of the worth space aspect borders.
  • ValueAreaHighLowWidth (default = 1) — the width of the worth space prime and backside borders.
  • ValueAreaRayHighLowWidth (default = 1) — the width of the worth space prime and backside rays.
  • ShowValueAreaRays (default = None) — may be set in order that the worth space’s Excessive and Low value ranges are projected to the best aspect of the chart. May be set to earlier session, present, earlier and present, all earlier, or all.
  • ShowMedianRays (default = None) — may be set in order that the median is projected to the best aspect of the chart. May be set to earlier session, present, earlier and present, all earlier, or all.
  • RaysUntilIntersection (default = Stop_No_Rays) — defines the best way median and worth space rays shall be minimize off after they meet the following buying and selling session’s value vary:
    • Stop_No_Rays — no rays are stopped anyplace.
    • Stop_All_Rays — all rays are stopped at an intersection with the worth of one other session.
    • Stop_All_Rays_Except_Prev_Session — all rays besides the earlier session’s rays are stopped at an intersection with the worth of one other session.
    • Stop_Only_Previous_Session — solely rays of the earlier session are stopped at an intersection with the worth of one other session.
  • HideRaysFromInvisibleSessions (default = false) — if true, rays from periods beginning behind the left fringe of the display will not be displayed till you scroll again to them.
  • TimeShiftMinutes (default = 0) — time shift for the periods, in minutes. Constructive worth will transfer the session begin to the left; unfavorable — to the best.
  • ShowKeyValues (default = true) — if true, Worth Space Excessive, Worth Space Low, and Level of Management are displayed on the left of the market profile.
  • KeyValuesColor (default = clrWhite) — the colour for Worth Space Excessive, Worth Space Low, and Level of Management printout.
  • KeyValuesSize (default = 8) — the font dimension for Worth Space Excessive, Worth Space Low, and Level of Management printout.
  • ShowSinglePrint (default = No) — may be set to Leftside or Rightside and can mark the only print profile — part of the profile, which is just one TPO huge.
  • SinglePrintRays (default = false) — if true, single print edges are marked with rays.
  • SinglePrintColor (default = clrGold) — the colour for single print marking if ShowSinglePrint is not set to No.
  • SinglePrintRayStyle (default = STYLE_SOLID) — the only print ray line model.
  • SinglePrintRayWidth (default = 1) — the only print ray line width.
  • ProminentMedianColor (default = clrYellow) — the colour for the distinguished median (PPOC) if ProminentMedianPercentage is about to 100 or much less.
  • ProminentMedianStyle (default = STYLE_SOLID) — the model for the distinguished median (PPOC) if ProminentMedianPercentage is about to 100 or much less.
  • ProminentMedianWidth (default = 4) — the width for the distinguished median (PPOC) if ProminentMedianPercentage is about to 100 or much less.
  • RightToLeft (default = false) — if true, the present session’s market profile has its histogram drawn from proper to left. In case Session is about to Rectangle, market profiles of all periods are drawn right-to-left.


  • PointMultiplier (default = 0) — the upper it’s, the broader are the profile’s value bins and the less are the chart objects. You need to use it to scale back the indicator’s load on CPU. When the worth is zero, an adaptive multiplier is used — the indicator makes an attempt to calculate the optimum worth robotically.
  • ThrottleRedraw (default = 0) — a delay in seconds that shall be utilized earlier than every redraw of the profiles. You need to use it to scale back the indicator’s load on CPU.
  • DisableHistogram (default = false) — if true, no market profile histogram is drawn, however Worth Space and Median are nonetheless marked. This makes indicator work extraordinarily quick, however is much less helpful for thorough market evaluation.


  • AlertNative (default = false) — if true, the indicator will situation the platform’s native pop-up alert when some alert situations are met.
  • AlertEmail (default = false) — if true, MetaTrader’s electronic mail alerts shall be despatched when some alert situations are met. E-mail must be correctly configured in MetaTrader through Instruments->Choices->E-mail
  • AlertPush (default = false) — if true, MetaTrader’s push notification alerts shall be despatched to your cellular gadget when some alert situations are met. Notifications must be correctly configured in MetaTrader through Instruments->Choices->Notifications.
  • AlertCheckBar (default = Present) — controls the bar to examine the alert situations on. Present — the indicator will examine the present unfinished bar; anticipate loads of alerts. Earlier — the indicator will examine the earlier (closed) bar; alerts shall be delayed however extra concise.
  • AlertForValueArea (default = false) — if true, alerts shall be issued each time a Worth Space ray (excessive or low) is crossed by the worth.
  • AlertForMedian (default = false) — if true, alerts shall be issued each time a Median ray is crossed by the worth.
  • AlertForSinglePrint (default = false) — if true, alerts shall be issued each time a Single Print ray is crossed by the worth.
  • AlertOnPriceBreak (default = false) — if true, alerts shall be issued when the worth breaks any of the set off ranges however then returns again behind it.
  • AlertOnBarClose (default = false) — if true, alerts shall be issued when the bar opens on one aspect the set off degree and closes on the opposite aspect of it.
  • AlertOnGapCross (default = false) — if true, alerts shall be issued when the set off degree seems inside a value hole between the final two bars.

Intraday periods

  • EnableIntradaySessionN (default = true) — if true and Session is about to Intraday, then the indicator will try and drawn the intraday market profile #N on the chart.
  • IntradaySessionNStartTime (default = “HH:MM”) — begin time in HH:MM format for the intraday session #N.
  • IntradaySessionNEndTime (default = “HH:MM”) — finish time in HH:MM format for the intraday session #N.
  • IntradaySessionNColorScheme (default = Blue_to_Red) — colour scheme for the intraday session #N.


  • SaturdaySunday (default = Regular periods) — learn how to deal with Saturday and Sunday periods:
    • Regular periods — Saturday and Sunday shall be handled as regular periods with their very own every day and intraday periods.
    • Ignore Saturday and Sunday — Saturday and Sunday candlesticks shall be ignored.
    • Append Saturday and Sunday — Saturday candlesticks shall be appended to the Friday session; Sunday candlesticks shall be appended to the Monday session.
  • DisableAlertsOnWrongTimeframes (default = false) — if true, no pop-up alerts will seem on utilizing Market Profile with unsuitable timeframe/session mixture.
  • ProminentMedianPercentage (default = 101) — proportion of TPOs out of all potential that ought to happen inside a median for it to be thought-about distinguished (PPOC). For instance, for those who set it to 50%, a median shall be marked as distinguished if it accommodates not less than 24 TPOs in a every day session on M30 timeframe. Whether it is set to 101, no distinguished median is feasible.


Every day periods

The chart screenshot reveals market profiles calculated and displayed for 2 every day Foreign currency trading periods. The timeframe is M30 and the right-hand everyday session continues to be in progress. The earliest costs are blue and the newest costs are purple. The medians and the worth areas are marked with the white strains and show very powerful value areas. Merchants are inclined to return to these areas if the amount of the breakout motion isn’t too excessive. Excessive-volume breakout out of those areas signifies an actual breakout. You’ll be able to learn extra about Market Profile on this quick e-book: Book on Market Profile.

Market Profile Indicator
Market Profile Indicator

Bullish/bearish coloring

The instance beneath demonstrates how the Market Profile may be colored in line with the course of every bar within the session reasonably than its age. That is completed when ColorBullBear is about to true.

Market Profile Indicator
Market Profile Indicator

Rectangle periods

This instance demonstrates how the indicator can show a market profile primarily based on the rectangle chart objects freely drawn by a dealer. For this to work, a rectangle object’s identify has to begin with MPR and the Session enter parameter needs to be set to Rectangle. You’ll be able to press ‘r’ on your keyboard to add such a rectangle to the chart robotically.

Market Profile Indicator
Market Profile Indicator

Proper-to-left show

Market Profile indicator also can draw histogram from proper to left. In contrast to the standard left-to-right show, it may be useful to deal with the present buying and selling session, without obscuring its chart. You’ll be able to see how this works on the chart screenshot beneath.

  GPS Forex Robot EA MT4 & MT5 (Download Indicator)
Market Profile Indicator
Market Profile Indicator

Downloads (ver. 1.18, 2022-01-12)

market profile indicator is being developed through a dedicated GitHub repository. You’re inspired to actively take part in the enhancement of this indicator by submitting your options through pull requests and reviewing current ideas, modifications, fixes, and so forth.

The best way to use Market Profile in Foreign currency trading?

Market Profile indicator is a strong software developed by a CBOT dealer. Its authentic function was to graphically manage value and time info obtained throughout a buying and selling session in a fashion helpful to merchants. At present’s Foreign exchange market is kind of totally different from what commodity futures buying and selling were again in 1985 when Peter Steidlmayer launched his charting instrument to the general public. Can Market Profile be a great tool for Foreign exchange merchants?

Points with Foreign exchange

The principal distinction between the present day’s foreign money market and the futures market of the ’80s is the dearth of everyday buying and selling periods. Thankfully, it doesn’t produce any actual issues. The shortage of strict everyday shut and every day open may be compensated by one of many following strategies:

  • A rolling 24-hour window for Market Profile calculation. Every new bar, the Market Profile calculation window is shifted proper by one bar as effectively. This fashion, a dealer is at all times in search of the graphical profile of the latest 24 hours of buying and selling. Sadly, this could require an entire recalculation of the entire curve with each new bar arriving. Nonetheless, this may be achieved through the use of the Rectangle session kind in our Market Profile indicator.
  • Smaller geographically-bound time home windows. Forex operates via a number of well known trading sessions. Probably the most distinguished of them are: London, New York, and Tokyo. A dealer working primarily contained in the New York buying and selling session might use a 10-hour window primarily based on the NY open and near calculate and show Market Profile. A dealer working inside a mixture of New York and Asian periods might use the span of each. The nice factor is that with this methodology, the calculation course of is way less complicated than with a rolling window. The unhealthy factor is that it ignores all of the market information that’s left outdoors of the goal buying and selling periods.
  • Weekly buying and selling periods. In contrast to days, the weeks in Foreign exchange are clearly outlined. The minor distinction of Sunday/Monday open and Friday/Saturday shut between totally different brokers and liquidity providers is sufficiently small to disregard (one or two hours of thin-volume buying and selling). Weekly Market Profile is simple to calculate and presents loads of information to merchants. Nevertheless, it’s not often appropriate to short-term intraday merchants, much less so to scalpers.

It’s nonetheless potential to use Market Profile to fashionable overseas change market. Probably the most constant method appears to be the third one, which relies on weekly periods.

One other necessary situation to resolve when utilizing this indicator in evaluation is whether or not to use it to the present session — and endure from the dearth of information through the early hours — or to the earlier session, which could be primarily based on stale information. In actuality, that is no situation in any respect. As outlined within the CBOT’s A Six-Part Guide to Market Profile, a very powerful profile relies on the present session, however, the profile constructed through the earlier one can be related and must be analyzed by a dealer.

Furthermore, it’s potential (and helpful) to have a look at several earlier profiles directly, analyzing how the pattern developed throughout multiple worth spaces. The multi-session Market Profile evaluation can be a key to detecting long-term areas of stability and states of imbalance. In truth, long-term merchants must be Market Profiles for many periods to find out potential factors of entry and exits.

The next instance reveals the Market Profile calculated for six weekly periods of the EUR/USD foreign money pair:

Market Profile Indicator
Market Profile Indicator


Because the indicator’s writer acknowledged, the Market Profile shouldn’t be used as a purchase/promote sign generator. It’s software for analyzing the market and getting info that is not evident from a naked chart. Right here is how the principle elements of the Market Profile can be utilized in Foreign currency trading:

Worth space — the realm of market acceptance. The worth spent a hefty period at these ranges — the market likes it. The perimeters of the worth space type robust assist and resistance ranges.

Median — the center of the worth space presents a robust pivot point. It serves each because of the attractor for the worth and because of the bounce degree. The median can be referred to as a truthful value. If the market is beneath the extent, it’s thought-about undervalued. Whether it is above the median, it’s overvalued.

Areas of low quantity — the lengthy tails beneath and above the worth space present the worth areas rejected by the market. The underside tail is telling us of long-term consumers outperform long-term sellers at these value ranges. The highest tail is telling us concerning the long-term sellers doing higher than consumers on the respective value ranges.

Even for those who aren’t a daily consumer of Market Profile indicator and your predominant buying and selling technique relies on a unique idea or in case your methods are both automated with expert advisors or use basic indicators, you may nonetheless seek the advice of the long-term market profiles in instances of the doubt when missing correct info on the place to place an entry order, take-profit, or stop-loss.


Warning! Should you have no idea learn how to set up this indicator, please learn the MetaTrader Indicators Tutorial.

Do you have got any ideas or questions concerning this indicator? You’ll be able to at all times discuss Market Profile with the opposite merchants and MQL programmers on the indications boards.


1.18 — 2022-01-12

  • Added alerts for crossing Median (Level of Management), Worth Space, and Single Print zones.
  • Added a brand new ray drawing mode (through the HideRaysFromInvisibleSessions enter parameter) the place rays usually are not proven on the chart if their supply periods are behind the left fringe of the display. This helps to scale back chart litter when working with many periods directly.
  • Improved efficiency in each MT4 and MT5 model of the indicator.
  • Fastened a bug with session colours in newest MT5 builds.
  • Fastened Worth Space lowest edge — it’s now drawn at its actual degree.
  • Fastened a bug when all rays might disappear when a brand new session began.

1.17 — 2021-07-17

  • Added a creating POC choice to indicate how the Level of Management (median) developed through the session.
  • Added model and width enter parameters for all strains and rays.
  • Added a hotkey (r) to position a correctly named rectangle chart object within the Rectangle session mode.
  • Added an enter parameter (ValueAreaPercentage) to manage what number of TPOs (the profile’s constructing blocks) must be captured by the Worth Space.
  • Added an choice for Single Print rays to mark the perimeters of single print profile ranges.
  • Fastened time zone shift parameter (TimeShiftMinutes) to work correctly with Intraday periods.

1.16 — 2020-12-07

  • Added an enter parameter (DisableHistogram) to stop the indicator from drawing profile histograms (TPO’s). Worth space and level of management are nonetheless drawn on this mode.
  • Added an enter parameter (RightToLeft) for right-to-left histogram show. Works for the present buying and selling session for non-Rectangle session varieties, and for all buying and selling periods for Rectangle session kind.
  • Added adaptive level multiplier choice through setting the PointMultiplier enter parameter to 0 (which is now default).

1.15 — 2020-07-14

  • Added Rectangle session kind to show market profile primarily based on rectangle objects added to the chart. It really works on any timeframe. A rectangle ought to have a reputation beginning with MPR to be detected by the indicator.
  • Added single print highlighting (ShowSinglePrint and SinglePrintColor enter parameters).
  • Added distinguished median (PPOC) highlighting (ProminentMedianPercentage and ProminentMedianColor enter parameters).

1.14 — 2020-01-26

  • Changed ValueAreaColor enter parameter with two separate parameters: ValueAreaSidesColor and ValueAreaHighLowColor to offer extra management over how the worth space is proven on the chart.
  • Modified RaysUntilIntersection enter parameter to offer extra management over which worth space or level of management (median) rays are minimize off at intersection with different periods.
  • Fastened a rounding error in MT5 model, which resulted in worth areas being biased in the direction of greater costs.
  • Fastened a bug in MT5 model, which resulted in profile blocks being displayed in white colour reasonably than not displayed in any respect when Single_Color scheme is used and SingleColor parameter is about to clrNone.
  • Bypassed a coloring bug in MT4 model that might trigger the chart discoloring and blinking together with seen gaps displaying within the profile.

1.13 — 2019-10-18

  • Added ColorBullBear enter parameter to paint the market profile in line with bars’ instructions.
  • Added DisableAlertsOnWrongTimeframes enter parameter to disable popup alerts when Market Profile is utilized to a unsuitable timeframe.
  • Added optionally available printouts for Worth Space Excessive, Worth Space Low, and Level of Management charges for every profile.
  • Added grouping for enter parameter in MT5 model of the indicator.

1.12 — 2019-03-27

  • Added RaysUntilIntersection enter parameter, which helps to cover the rays of the earlier periods’ median and worth space which have already been violated by newer buying and selling periods.
  • Fastened a bug with TPO show when the image’s TickSize is greater than _Point × PointMultiplier.

1.11 — 2019-01-20

  • Fastened a bug when empty holes might seem within the profile when the present session was constructed.
  • Fastened a bug that prevented present session profile from drawing from the primary bar.
  • Fastened some potential ‘array out of vary’ errors.

1.10 — 2018-12-25

  • Fastened potential array out of vary error when outdated chart with Market Profile indicator is reopened.

1.09 — 2018-12-24

  • Added two various choices for coping with Saturday and Sunday candlesticks.
  • Added extra flexibility to displaying Median and Worth Space rays.
  • Modified Median to attract as a single line inside the worth space.
  • Decreased the dimensions of the working arrays considerably, which ought to make MP calculation on some buying and selling devices quicker.

1.08 — 2018-05-28

  • Added sensible colour commencement relying on timeframe and session kind.
  • Added an choice to venture the Median (Level of Management) of the earlier session to the best aspect of the chart.
  • Added single colour scheme.
  • Added PointMultiplier enter parameter to permit merchants to set wider profile field, serving to with indicator’s efficiency.
  • Added ThrottleRedraw enter parameter to delay indicator’s show updates, serving to to scale back its load on the CPU.
  • Fastened a possible bug when incorrect chart object naming routine might trigger glitchy show of the market profile.
  • Modified exhausting initialization failure to a gentle one — it will forestall enter parameters from resetting when incorrect timeframe and session kind mixture is used.

1.07 — 2018-02-06

  • Added assist for as much as 4 intraday periods.
  • Added three new colour schemes for drawing the market profile.
  • Some minor code tweaks and enhancements.

1.06 — 2017-11-30

  • Added correct object cleanup when Market Profile is used with chart templates.

1.05 — 2017-11-23

  • Added optionally available show for the earlier session’s Worth Space Excessive/Low strains.
  • Added time shift enter parameter to maneuver the periods throughout time zones.

1.04 — 2016-11-07

  • Fastened “Array out of vary” errors.

1.03 — 2016-01-25

  • Added assist for 3 periods: every day, weekly, and month-to-month.
  • Fastened chart object deletion to solely delete indicator’s personal objects.
  • Optimized execution pace.
  • Elevated the vary of supported timeframes.
  • Added inline indicator description.
  • Improved interface (enumerated enter parameters).
  • Fastened some potential “Array out of vary” errors.
  • Code rewritten utterly to adjust to the present MQL4 and MQL5 requirements.

1.01 — 2011-12-11

  • Fastened compatibility points resulting from new coding conventions in MQL5.

1.00 — 2010-07-23

  • Authentic model of Market Profile launched for MT4 and MT5.


Market Profile is an expert instrument, which assesses the public sale course. Alternate buying and selling is only a two-sided public sale of consumers and sellers, isn’t it? An analyst can assess dynamics of buying and selling improvement each throughout a day and through long-term intervals utilizing numerous strategies of constructing the Market Profile.

  • Watch the breakout of the Preliminary Stability space attentively;
  • Analyze who’s on prime – consumers or sellers – via monitoring VA and POC actions;
  • Management potential reversals utilizing the Virgin Level Of Management;
  • Calculate take revenue beforehand relying on what day develops;
  • Use the 80/20 rule when the worth comes again to yesterday VA.

We provide concepts and our analytical platform. You modify these concepts to your buying and selling technique and enhance your revenue.

The Market Profile Indicator uses because it calculates the many accurate tick data – every move of the market. In other words, the histogram is created by the Economy Profile index. The histogram shows at Cost Action is currently happening and what prices and zones heavy trading activity. You will always know the main price levels and zones for future price movements in virtually any market.

⬇ ⬇ ⬇ ⬇ ⬇

Drop your queries here! ↴ we will answer you shortly.