Table of Contents

Namespace FinanceSharp

Core FinanceSharp data types, array storage, market data structures, time conversion, and update contracts.

Use this namespace for the data passed between computation stages.

Array wrappers differ in storage ownership and lifetime. Read the selected constructor or DoubleArray.From overload before sharing buffers between stages.

Classes

ArrayRollingWindow

Serves a similar purpose to RollingWindow<T> but the data is rolled inside Current (a DoubleArray).

BusyBlockingCollection<T>

A small wrapper around BlockingCollection<T> used to communicate busy state of the items being processed

BusyCollection<T>

A non blocking IBusyCollection<T> implementation

Constants
DataStructInfo<TDataStruct>

Provides staticly cached variables about TDataStruct.

DisposableExtensions

Provides extensions methods for IDisposable

DisposerThread

A thread

DoubleArray

A block of memory of doubles represented in two dimensions.

DoubleArray2DManaged
DoubleArrayManaged
DoubleArrayPinned2DManaged
DoubleArrayScalar
DoubleArrayStructScalar<TStruct>
DoubleArrayStruct<TStruct>
DoubleArrayUnmanaged

Provides a DoubleArray implementation for Address, a double*.

EnumeratorExtensions

Provides convenience of linq extension methods for IEnumerator<T> types

Extensions

Extensions function collections - group all static extensions functions here.

Field

Provides static properties to be used as selectors with the indicator system

Log
RealTimeProvider

Provides an implementation of ITimeProvider that uses UtcNow to provide the current time

RollingWindow<T>

This is a window that allows for list access semantics, where this[0] refers to the most recent item in the window and this[Count-1] refers to the last item in the window

SlicedDoubleArray

Provides a wrapping DoubleArray to contiguously slice.

SlicedDoubleArrayUnmanaged

Provides a wrapper to DoubleArrayUnmanaged that slices by shifting Address and manipulating start and stop.

StringExtensions

Provides extension methods for properly parsing and serializing values while properly using an IFormatProvider/CultureInfo when applicable

StructInfo<TStruct>

Provides staticly cached variables about TStruct.

Time

Time helper class collection for working with trading dates

USHoliday

US Public Holidays - Not Tradeable:

Structs

BarValue

Represents a CHLO candle struct.

IndicatorValue

Represents a simple 1-valued struct.

RenkoBarValue

Represents a CHLOV candle struct.

TickValue

Represents a trade tick with quotation.

Time.DateTimeWithZone

Live charting is sensitive to timezone so need to convert the local system time to a UTC and display in browser as UTC.

TradeBarValue

Represents a CHLOV candle struct.

Interfaces

DataStruct
IIndicator

Represents an indicator that can receive data updates and emit events when the value of the indicator has changed.

IReadOnlyWindow<T>

Interface type used to pass windows around without worry of external modification

ITimeProvider

Provides access to the current time in UTC. This doesn't necessarily need to be wall-clock time, but rather the current time in some system

IUpdatable

Represents an object that can be updated.

Enums

ArrayConversionMethod

Provides options of how to convert a DoubleArray to an NDArray.

BuyStyle

Delegates

ResettedHandler

Event handler type for the IndicatorBase.Resetted event

UpdatedHandler

Event handler type for the IndicatorBase.Updated event