BarsPeriod

View as Markdown

Definition

The primary Bars object time frame (period type and interval).

This property should NOT be accessed within the OnStateChange method before the State has reached State.DataLoaded

Property Value

A Bars series object representing the time frame of the Bars.

Syntax

BarsPeriod.BarsPeriodTypeThe type of bars used for the period, as well as the enumeration value under which the any of the 14 default NinjaTrader types are registered. Possible values include:
BarsPeriodType.Tick0
BarsPeriodType.Volume1
BarsPeriodType.Range2
BarsPeriodType.Second3
BarsPeriodType.Minute4
BarsPeriodType.Day5
BarsPeriodType.Week6
BarsPeriodType.Month7
BarsPeriodType.Year8
BarsPeriodType.HeikenAshi9
BarsPeriodType.Kagi10
BarsPeriodType.Renko11
BarsPeriodType.PointAndFigure12
BarsPeriodType.LineBreak13
BarsPeriodType.Volumetric14

When creating custom BarsTypes, it is recommended to pick high, unique enumeration value to avoid conflict from other BarsTypes that may be used by a single installation.

BarsPeriod = new BarsPeriod { BarsPeriodType = (BarsPeriodType)123456, BarsPeriodTypeName = “MyCustomBars”, Value = 1 };

BarsPeriod.BaseBarsPeriodTypeOnly relevant for HeikenAshi, Kagi, LineBreak, PointAndFigure and Volumetric Bars objects. Same possible values as BarsPeriod.BarsPeriodType
BarsPeriod.BaseBarsPeriodValueOnly relevant for HeikenAshi, Kagi, LineBreak, PointAndFigure and Volumetric Bars objects. Determines an integer value representing the basePeriodTypeValue parameter
BarsPeriod.MarketDataTypeThe data type used to build the bars. Possible values:
• MarketDataType.Ask
• MarketDataType.Bid
• MarketDataType.Last
BarsPeriod.PointAndFigurePriceTypeOnly relevant for PointAndFigure Bars objects. Possible values:
• PointAndFigurePriceType.Close
• PointAndFigurePriceType.HighsAndLows
BarsPeriod.ReversalTypeOnly relevant for Kagi Bars objects. Possible values:
• ReversalType.Percent
• ReversalType.Tick
BarsPeriod.ValueDetermines an integer value representing the period parameter. When using Kagi Bars objects this represents the “reversal” parameter. When using LineBreak Bars objects this represents the “lineBreakCount” parameter. When using PointAndFigure Bars objects this represents the “boxSize” parameter. When using Renko Bars objects this represents the “brickSize” parameter
BarsPeriod.Value2Only relevant for PointAndFigure Bars objects. Determines an integer value representing the “reversal” parameter.

Examples

1// Checking BarsPeriod values
2// Calculate only if there is a 100 tick chart or greater
3protected override void OnBarUpdate()
4{
5 if (BarsPeriod.BarsPeriodType == BarsPeriodType.Tick && BarsPeriod.Value >= 100)
6 {
7 // Indicator calculation logic here
8 }
9}
1// Creating a new BarsPeriod object
2protected override void OnStateChange()
3{
4 if (State == State.Configure)
5 {
6 // add a 1440 minute apple bars object using the RTH session template
7 AddDataSeries("AAPL", new BarsPeriod { BarsPeriodType = BarsPeriodType.Minute, Value = 1440 }, "US Equities RTH");
8 }
9
10 else if (State == State.DataLoaded)
11 {
12 // Print out the loaded bars period
13 Print(Instrument.FullName + " " + BarsPeriod); // MSFT 1 Minute
14 Print(BarsArray[1].Instrument.FullName + " " + BarsArray[1].BarsPeriod); // AAPL 1440 Minute
15 }
16}