Struct Periodicity
- Namespace
- Balsam
- Assembly
- Balsam.Backtester.dll
A structure that encapsulates periodicity information.
[ProtoContract]
public struct Periodicity : IComparable<Periodicity>, IEquatable<Periodicity>
- Implements
- Inherited Members
Constructors
Periodicity(BarUnit)
Initializes a new Periodicity structure using the specified bar size.
public Periodicity(BarUnit units)
Parameters
units
BarUnit
Periodicity(BarUnit, double)
Initializes a new Periodicity structure with the specified bar size and periods.
public Periodicity(BarUnit units, double periods)
Parameters
Fields
CalendarDays
Calendar days periodicity.
public static readonly Periodicity CalendarDays
Field Value
Daily
Daily periodicity.
public static readonly Periodicity Daily
Field Value
Hourly
1 hour periodicity.
public static readonly Periodicity Hourly
Field Value
Minute
1 minute periodicty.
public static readonly Periodicity Minute
Field Value
Monthly
Monthly periodicity.
public static readonly Periodicity Monthly
Field Value
Periods
The number of periods in a bar.
[ProtoMember(1)]
public readonly double Periods
Field Value
Quarterly
Quarterly periodicity.
public static readonly Periodicity Quarterly
Field Value
Units
The unit of measurement.
[ProtoMember(2)]
public readonly BarUnit Units
Field Value
Unknown
Unknown periodicity.
public static readonly Periodicity Unknown
Field Value
Weekly
Weekly periodicity.
public static readonly Periodicity Weekly
Field Value
Yearly
Yearly periodicity.
public static readonly Periodicity Yearly
Field Value
Methods
CompareTo(Periodicity)
For time based bar sizes, converts periods to seconds to allow for comparison.
public int CompareTo(Periodicity other)
Parameters
other
Periodicity
Returns
Equals(Periodicity)
Returns true if all fields are equal to the specified periodicity. Use CompareTo to compare disparate units (i.e. 60 Min != 1 Hour).
public bool Equals(Periodicity other)
Parameters
other
Periodicity
Returns
Equals(object)
Returns true if the specified object is equal to this instance.
public override bool Equals(object obj)
Parameters
obj
object
Returns
EstimatePeriodicity(IEnumerable<DateTime>)
Returns the estimated periodicity of the specifed enumerable of dates.
public static Periodicity EstimatePeriodicity(IEnumerable<DateTime> dates)
Parameters
dates
IEnumerable<DateTime>
Returns
FromMinutes(int)
Returns a new periodicity of the specified minutes.
public static Periodicity FromMinutes(int minutes)
Parameters
minutes
int
Returns
GetAnnualizationFactor()
Returns the number of periods per year for use in annualization calculations.
public int GetAnnualizationFactor()
Returns
GetAnnualizationFactor(Periodicity)
Returns the number of periods per year for use in annualization calculations.
public static int GetAnnualizationFactor(Periodicity periodicity)
Parameters
periodicity
Periodicity
Returns
GetHashCode()
Returns a hash code for this instance.
public override int GetHashCode()
Returns
ToString()
Returns a string representation of this periodicity.
public override string ToString()
Returns
ToTimeSpan()
Returns the Periodicity as a TimeSpan. Only valid for second, minute, hourly or daily units.
public TimeSpan ToTimeSpan()
Returns
Operators
operator ==(Periodicity, Periodicity)
Returns true if the left periodicity is equal to the right.
public static bool operator ==(Periodicity left, Periodicity right)
Parameters
left
Periodicityright
Periodicity
Returns
operator >(Periodicity, Periodicity)
Returns true if the left periodicity is greater than the right.
public static bool operator >(Periodicity left, Periodicity right)
Parameters
left
Periodicityright
Periodicity
Returns
operator >=(Periodicity, Periodicity)
Returns true if the left periodicity is greater than or equal to the right.
public static bool operator >=(Periodicity left, Periodicity right)
Parameters
left
Periodicityright
Periodicity
Returns
implicit operator BarUnit(Periodicity)
Implicity converts periodicity to BarUnit.
public static implicit operator BarUnit(Periodicity p)
Parameters
Returns
operator !=(Periodicity, Periodicity)
Returns true if the left periodicity is not equal to the right.
public static bool operator !=(Periodicity left, Periodicity right)
Parameters
left
Periodicityright
Periodicity
Returns
operator <(Periodicity, Periodicity)
Returns true if the left periodicity is less than the right.
public static bool operator <(Periodicity left, Periodicity right)
Parameters
left
Periodicityright
Periodicity
Returns
operator <=(Periodicity, Periodicity)
Returns true if the left periodicity is less than or equal to the right.
public static bool operator <=(Periodicity left, Periodicity right)
Parameters
left
Periodicityright
Periodicity