Lean  $LEAN_TAG$
QuantConnect.Python.PythonData Class Reference

Dynamic data class for Python algorithms. Stores properties of python instances in DynamicData dictionary More...

Inheritance diagram for QuantConnect.Python.PythonData:
[legend]

Public Member Functions

 PythonData ()
 Constructor for initializing the PythonData class More...
 
 PythonData (PyObject pythonData)
 Constructor for initializing the PythonData class with wrapped PyObject More...
 
override SubscriptionDataSource GetSource (SubscriptionDataConfig config, DateTime date, bool isLiveMode)
 Source Locator for algorithm written in Python. More...
 
override BaseData Reader (SubscriptionDataConfig config, string line, DateTime date, bool isLiveMode)
 Generic Reader Implementation for Python Custom Data. More...
 
override bool RequiresMapping ()
 Indicates if there is support for mapping More...
 
override bool IsSparseData ()
 Indicates that the data set is expected to be sparse More...
 
override Resolution DefaultResolution ()
 Gets the default resolution for this data and security type More...
 
override List< ResolutionSupportedResolutions ()
 Gets the supported resolution for this data and security type More...
 
bool IsOfType (Type type)
 Helper method to determine if the current instance is of the provided type More...
 
- Public Member Functions inherited from QuantConnect.Data.DynamicData
DynamicMetaObject GetMetaObject (Expression parameter)
 Get the metaObject required for Dynamism. More...
 
object SetProperty (string name, object value)
 Sets the property with the specified name to the value. This is a case-insensitve search. More...
 
object GetProperty (string name)
 Gets the property's value with the specified name. This is a case-insensitve search. More...
 
bool HasProperty (string name)
 Gets whether or not this dynamic data instance has a property with the specified name. This is a case-insensitve search. More...
 
IDictionary< string, object > GetStorageDictionary ()
 Gets the storage dictionary Python algorithms need this information since DynamicMetaObject does not work More...
 
override BaseData Clone ()
 Return a new instance clone of this object, used in fill forward More...
 
- Public Member Functions inherited from QuantConnect.Data.BaseData
 BaseData ()
 Constructor for initialising the dase data class More...
 
virtual BaseData Reader (SubscriptionDataConfig config, StreamReader stream, DateTime date, bool isLiveMode)
 Reader converts each line of the data source into BaseData objects. Each data type creates its own factory method, and returns a new instance of the object each time it is called. The returned object is assumed to be time stamped in the config.ExchangeTimeZone. More...
 
virtual bool ShouldCacheToSecurity ()
 Indicates whether this contains data that should be stored in the security cache More...
 
virtual DateTimeZone DataTimeZone ()
 Specifies the data time zone for this data type. This is useful for custom data types More...
 
void UpdateTrade (decimal lastTrade, decimal tradeSize)
 Updates this base data with a new trade More...
 
void UpdateQuote (decimal bidPrice, decimal bidSize, decimal askPrice, decimal askSize)
 Updates this base data with new quote information More...
 
void UpdateBid (decimal bidPrice, decimal bidSize)
 Updates this base data with the new quote bid information More...
 
void UpdateAsk (decimal askPrice, decimal askSize)
 Updates this base data with the new quote ask information More...
 
virtual void Update (decimal lastTrade, decimal bidPrice, decimal askPrice, decimal volume, decimal bidSize, decimal askSize)
 Update routine to build a bar/tick from a data update. More...
 
virtual BaseData Clone (bool fillForward)
 Return a new instance clone of this object, used in fill forward More...
 
override string ToString ()
 Formats a string with the symbol and value. More...
 
virtual BaseData Reader (SubscriptionDataConfig config, string line, DateTime date, DataFeedEndpoint datafeed)
 Reader converts each line of the data source into BaseData objects. Each data type creates its own factory method, and returns a new instance of the object each time it is called. More...
 
virtual string GetSource (SubscriptionDataConfig config, DateTime date, DataFeedEndpoint datafeed)
 Return the URL string source of the file. This will be converted to a stream More...
 

Properties

override DateTime? EndTime [get, set]
 The end time of this data. Some data covers spans (trade bars) and as such we want to know the entire time span covered More...
 
object? this[string index] [get, set]
 Indexes into this PythonData, where index is key to the dynamic property More...
 
- Properties inherited from QuantConnect.Data.BaseData
MarketDataType DataType = MarketDataType.Base [get, set]
 Market Data Type of this data - does it come in individual price packets or is it grouped into OHLC. More...
 
bool IsFillForward [get]
 True if this is a fill forward piece of data More...
 
DateTime Time [get, set]
 Current time marker of this data packet. More...
 
virtual DateTime EndTime [get, set]
 The end time of this data. Some data covers spans (trade bars) and as such we want to know the entire time span covered More...
 
Symbol Symbol = Symbol.Empty [get, set]
 Symbol representation for underlying Security More...
 
virtual decimal Value [get, set]
 Value representation of this data packet. All data requires a representative value for this moment in time. For streams of data this is the price now, for OHLC packets this is the closing price. More...
 
- Properties inherited from QuantConnect.Data.IBaseData
MarketDataType DataType [get, set]
 Market Data Type of this data - does it come in individual price packets or is it grouped into OHLC. More...
 
DateTime Time [get, set]
 Time keeper of data – all data is timeseries based. More...
 
DateTime EndTime [get, set]
 End time of data More...
 
Symbol Symbol [get, set]
 Symbol for underlying Security More...
 
decimal Value [get, set]
 All timeseries data is a time-value pair: More...
 
decimal Price [get]
 Alias of Value. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from QuantConnect.Data.BaseData
static IEnumerable< BaseDataDeserializeMessage (string serialized)
 Deserialize the message from the data server More...
 
- Public Attributes inherited from QuantConnect.Data.BaseData
virtual decimal Price => Value
 As this is a backtesting platform we'll provide an alias of value as price. More...
 
- Static Protected Attributes inherited from QuantConnect.Data.BaseData
static readonly List< ResolutionAllResolutions
 A list of all Resolution More...
 
static readonly List< ResolutionDailyResolution = new List<Resolution> { Resolution.Daily }
 A list of Resolution.Daily More...
 
static readonly List< ResolutionMinuteResolution = new List<Resolution> { Resolution.Minute }
 A list of Resolution.Minute More...
 
static readonly List< ResolutionHighResolution = new List<Resolution> { Resolution.Minute, Resolution.Second, Resolution.Tick }
 A list of high Resolution, including minute, second, and tick. More...
 
static readonly List< ResolutionOptionResolutions = new List<Resolution> { Resolution.Daily, Resolution.Hour, Resolution.Minute }
 A list of resolutions support by Options More...
 

Detailed Description

Dynamic data class for Python algorithms. Stores properties of python instances in DynamicData dictionary

Definition at line 27 of file PythonData.cs.

Constructor & Destructor Documentation

◆ PythonData() [1/2]

QuantConnect.Python.PythonData.PythonData ( )

Constructor for initializing the PythonData class

Definition at line 67 of file PythonData.cs.

Here is the caller graph for this function:

◆ PythonData() [2/2]

QuantConnect.Python.PythonData.PythonData ( PyObject  pythonData)

Constructor for initializing the PythonData class with wrapped PyObject

Parameters
pythonData

Definition at line 76 of file PythonData.cs.

Member Function Documentation

◆ GetSource()

override SubscriptionDataSource QuantConnect.Python.PythonData.GetSource ( SubscriptionDataConfig  config,
DateTime  date,
bool  isLiveMode 
)
virtual

Source Locator for algorithm written in Python.

Parameters
configSubscription configuration object
dateDate of the data file we're looking for
isLiveModetrue if we're in live mode, false for backtesting mode
Returns
STRING API Url.

Reimplemented from QuantConnect.Data.BaseData.

Definition at line 99 of file PythonData.cs.

◆ Reader()

override BaseData QuantConnect.Python.PythonData.Reader ( SubscriptionDataConfig  config,
string  line,
DateTime  date,
bool  isLiveMode 
)
virtual

Generic Reader Implementation for Python Custom Data.

Parameters
configSubscription configuration
lineCSV line of data from the source
dateDate of the requested line
isLiveModetrue if we're in live mode, false for backtesting mode
Returns

Reimplemented from QuantConnect.Data.BaseData.

Definition at line 116 of file PythonData.cs.

Here is the call graph for this function:

◆ RequiresMapping()

override bool QuantConnect.Python.PythonData.RequiresMapping ( )
virtual

Indicates if there is support for mapping

Returns
True indicates mapping should be used

Reimplemented from QuantConnect.Data.BaseData.

Definition at line 133 of file PythonData.cs.

◆ IsSparseData()

override bool QuantConnect.Python.PythonData.IsSparseData ( )
virtual

Indicates that the data set is expected to be sparse

Relies on the Symbol property value

Returns
True if the data set represented by this type is expected to be sparse

Reimplemented from QuantConnect.Data.BaseData.

Definition at line 150 of file PythonData.cs.

◆ DefaultResolution()

override Resolution QuantConnect.Python.PythonData.DefaultResolution ( )
virtual

Gets the default resolution for this data and security type

This is a method and not a property so that python custom data types can override it

Reimplemented from QuantConnect.Data.BaseData.

Definition at line 167 of file PythonData.cs.

◆ SupportedResolutions()

override List<Resolution> QuantConnect.Python.PythonData.SupportedResolutions ( )
virtual

Gets the supported resolution for this data and security type

This is a method and not a property so that python custom data types can override it

Reimplemented from QuantConnect.Data.BaseData.

Definition at line 184 of file PythonData.cs.

◆ IsOfType()

bool QuantConnect.Python.PythonData.IsOfType ( Type  type)

Helper method to determine if the current instance is of the provided type

Parameters
typeTarget type to check against
Returns
True if this instance is of the provided type

Definition at line 219 of file PythonData.cs.

Here is the call graph for this function:

Property Documentation

◆ EndTime

override DateTime? QuantConnect.Python.PythonData.EndTime
getset

The end time of this data. Some data covers spans (trade bars) and as such we want to know the entire time span covered

This property is overriden to allow different values for Time and EndTime if they are set in the Reader. In the base implementation EndTime equals Time

Definition at line 48 of file PythonData.cs.

◆ this[string index]

object? QuantConnect.Python.PythonData.this[string index]
getset

Indexes into this PythonData, where index is key to the dynamic property

Parameters
indexthe index
Returns
Dynamic property of a given index

Definition at line 202 of file PythonData.cs.


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