Lean  $LEAN_TAG$
QuantConnect.Indicators.MarketProfile Class Referenceabstract

Represents an Indicator of the Market Profile and its attributes More...

Inheritance diagram for QuantConnect.Indicators.MarketProfile:
[legend]

Public Member Functions

override void Reset ()
 Resets this indicator to its initial state More...
 

Public Attributes

SortedList< decimal, decimal > VolumePerPrice => new SortedList<decimal
 Get a copy of the _volumePerPrice field More...
 
override bool IsReady => _totalVolume.IsReady
 Gets a flag indicating when the indicator is ready and fully initialized More...
 

Protected Member Functions

 MarketProfile (string name, int period, decimal valueAreaVolumePercentage=0.70m, decimal priceRangeRoundOff=0.05m)
 Creates a new MarkProfile indicator with the specified period More...
 
override decimal ComputeNextValue (TradeBar input)
 Computes the next value for this indicator from the given state. More...
 
abstract decimal GetVolume (TradeBar input)
 Get the Volume value that's going to be used More...
 
- Protected Member Functions inherited from QuantConnect.Indicators.TradeBarIndicator
 TradeBarIndicator (string name)
 Creates a new TradeBarIndicator with the specified name More...
 

Properties

decimal ProfileHigh [get]
 The highest reached close price level during the period. That value is called Profile High More...
 
decimal ProfileLow [get]
 The lowest reached close price level during the period. That value is called Profile Low More...
 
decimal POCPrice [get]
 Price where the most trading occured (Point of Control(POC)) This price is MarketProfile.Current.Value More...
 
decimal POCVolume [get]
 Volume where the most tradding occured (Point of Control(POC)) More...
 
decimal ValueAreaVolume [get]
 The range of price levels in which a specified percentage of all volume was traded during the time period. Typically, this percentage is set to 70% however it is up to the trader’s discretion. More...
 
decimal ValueAreaHigh [get]
 The highest close price level within the value area More...
 
decimal ValueAreaLow [get]
 The lowest close price level within the value area More...
 
int WarmUpPeriod [get]
 Required period, in data points, for the indicator to be ready and fully initialized. More...
 
- Properties inherited from QuantConnect.Indicators.IIndicatorWarmUpPeriodProvider
int WarmUpPeriod [get]
 Required period, in data points, for the indicator to be ready and fully initialized. More...
 

Detailed Description

Represents an Indicator of the Market Profile and its attributes

The concept of Market Profile stems from the idea that markets have a form of organization determined by time, price, and volume.Each day, the market will develop a range for the day and a value area, which represents an equilibrium point where there are an equal number of buyers and sellers. In this area, prices never stay stagnant. They are constantly diverging, and Market Profile records this activity for traders to interpret.

It can be computed in two modes: TPO (Time Price Opportunity) or VOL (Volume Profile) A discussion on the difference between TPO (Time Price Opportunity) and VOL (Volume Profile) chart types: https://jimdaltontrading.com/tpo-vs-volume-profile

Definition at line 39 of file MarketProfile.cs.

Constructor & Destructor Documentation

◆ MarketProfile()

QuantConnect.Indicators.MarketProfile.MarketProfile ( string  name,
int  period,
decimal  valueAreaVolumePercentage = 0.70m,
decimal  priceRangeRoundOff = 0.05m 
)
protected

Creates a new MarkProfile indicator with the specified period

Parameters
nameThe name of this indicator
periodThe period of this indicator
valueAreaVolumePercentageThe percentage of volume contained in the value area
priceRangeRoundOffHow many digits you want to round and the precision. i.e 0.01 round to two digits exactly. 0.05 by default.

Definition at line 140 of file MarketProfile.cs.

Member Function Documentation

◆ ComputeNextValue()

override decimal QuantConnect.Indicators.MarketProfile.ComputeNextValue ( TradeBar  input)
protected

Computes the next value for this indicator from the given state.

Parameters
inputThe input value to this indicator on this time step
Returns
A a value for this indicator, Point of Control (POC) price

Definition at line 162 of file MarketProfile.cs.

Here is the call graph for this function:

◆ GetVolume()

abstract decimal QuantConnect.Indicators.MarketProfile.GetVolume ( TradeBar  input)
protectedpure virtual

Get the Volume value that's going to be used

Parameters
inputData
Returns
The Volume value it's going to be used

Implemented in QuantConnect.Indicators.TimeProfile, and QuantConnect.Indicators.VolumeProfile.

Here is the caller graph for this function:

◆ Reset()

override void QuantConnect.Indicators.MarketProfile.Reset ( )

Resets this indicator to its initial state

Definition at line 350 of file MarketProfile.cs.

Member Data Documentation

◆ VolumePerPrice

SortedList<decimal, decimal> QuantConnect.Indicators.MarketProfile.VolumePerPrice => new SortedList<decimal

Get a copy of the _volumePerPrice field

Definition at line 80 of file MarketProfile.cs.

◆ IsReady

override bool QuantConnect.Indicators.MarketProfile.IsReady => _totalVolume.IsReady

Gets a flag indicating when the indicator is ready and fully initialized

Definition at line 125 of file MarketProfile.cs.

Property Documentation

◆ ProfileHigh

decimal QuantConnect.Indicators.MarketProfile.ProfileHigh
get

The highest reached close price level during the period. That value is called Profile High

Definition at line 86 of file MarketProfile.cs.

◆ ProfileLow

decimal QuantConnect.Indicators.MarketProfile.ProfileLow
get

The lowest reached close price level during the period. That value is called Profile Low

Definition at line 92 of file MarketProfile.cs.

◆ POCPrice

decimal QuantConnect.Indicators.MarketProfile.POCPrice
get

Price where the most trading occured (Point of Control(POC)) This price is MarketProfile.Current.Value

Definition at line 98 of file MarketProfile.cs.

◆ POCVolume

decimal QuantConnect.Indicators.MarketProfile.POCVolume
get

Volume where the most tradding occured (Point of Control(POC))

Definition at line 103 of file MarketProfile.cs.

◆ ValueAreaVolume

decimal QuantConnect.Indicators.MarketProfile.ValueAreaVolume
get

The range of price levels in which a specified percentage of all volume was traded during the time period. Typically, this percentage is set to 70% however it is up to the trader’s discretion.

Definition at line 110 of file MarketProfile.cs.

◆ ValueAreaHigh

decimal QuantConnect.Indicators.MarketProfile.ValueAreaHigh
get

The highest close price level within the value area

Definition at line 115 of file MarketProfile.cs.

◆ ValueAreaLow

decimal QuantConnect.Indicators.MarketProfile.ValueAreaLow
get

The lowest close price level within the value area

Definition at line 120 of file MarketProfile.cs.

◆ WarmUpPeriod

int QuantConnect.Indicators.MarketProfile.WarmUpPeriod
get

Required period, in data points, for the indicator to be ready and fully initialized.

Definition at line 130 of file MarketProfile.cs.


The documentation for this class was generated from the following file: