pub struct BacktestDataConfig { /* private fields */ }Expand description
Represents the data configuration for one specific backtest run.
Implementations§
Source§impl BacktestDataConfig
impl BacktestDataConfig
Sourcepub fn builder() -> BacktestDataConfigBuilder
pub fn builder() -> BacktestDataConfigBuilder
Create an instance of BacktestDataConfig using the builder syntax
Source§impl BacktestDataConfig
impl BacktestDataConfig
Sourcepub fn catalog_backend(&self) -> CatalogBackendType
pub fn catalog_backend(&self) -> CatalogBackendType
Returns the configured catalog backend.
Sourcepub fn validate(&self) -> ConfigResult<()>
pub fn validate(&self) -> ConfigResult<()>
Validates the data configuration, collecting every field violation.
§Errors
Returns a [ConfigError] (a [ConfigError::Multiple] when more than one field is
invalid) if any field fails validation.
pub const fn data_type(&self) -> &NautilusDataType
pub fn catalog_path(&self) -> &str
pub fn catalog_fs_protocol(&self) -> Option<&str>
pub fn catalog_fs_storage_options(&self) -> Option<&AHashMap<String, String>>
pub fn catalog_fs_rust_storage_options( &self, ) -> Option<&AHashMap<String, String>>
pub fn instrument_id(&self) -> Option<InstrumentId>
pub fn instrument_ids(&self) -> Option<&[InstrumentId]>
pub fn start_time(&self) -> Option<UnixNanos>
pub fn end_time(&self) -> Option<UnixNanos>
pub fn filter_expr(&self) -> Option<&str>
pub fn client_id(&self) -> Option<ClientId>
pub fn metadata(&self) -> Option<&AHashMap<String, String>>
pub fn bar_spec(&self) -> Option<BarSpecification>
pub fn bar_types(&self) -> Option<&[String]>
pub fn optimize_file_loading(&self) -> bool
Sourcepub fn query_identifiers(&self) -> Option<Vec<String>>
pub fn query_identifiers(&self) -> Option<Vec<String>>
Constructs identifier strings for catalog queries.
Follows the same logic as Python’s BacktestDataConfig.query:
- For bars: prefer
bar_types, else construct from instrument(s) +bar_spec+ “-EXTERNAL” - For other types: use
instrument_idorinstrument_ids
Sourcepub fn get_instrument_ids(&self) -> Result<Vec<InstrumentId>>
pub fn get_instrument_ids(&self) -> Result<Vec<InstrumentId>>
Returns all instrument IDs referenced by this config.
For bar_types, extracts the instrument ID from each bar type string.
§Errors
Returns an error if any bar type string cannot be parsed.
Trait Implementations§
Source§impl Clone for BacktestDataConfig
impl Clone for BacktestDataConfig
Source§impl Debug for BacktestDataConfig
impl Debug for BacktestDataConfig
impl DerefToPyAny for BacktestDataConfig
Source§impl<'a, 'py> FromPyObject<'a, 'py> for BacktestDataConfigwhere
Self: Clone,
impl<'a, 'py> FromPyObject<'a, 'py> for BacktestDataConfigwhere
Self: Clone,
Source§impl<'py> IntoPyObject<'py> for BacktestDataConfig
impl<'py> IntoPyObject<'py> for BacktestDataConfig
Source§type Target = BacktestDataConfig
type Target = BacktestDataConfig
Source§type Output = Bound<'py, <BacktestDataConfig as IntoPyObject<'py>>::Target>
type Output = Bound<'py, <BacktestDataConfig as IntoPyObject<'py>>::Target>
Source§fn into_pyobject(
self,
py: Python<'py>,
) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
fn into_pyobject( self, py: Python<'py>, ) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
Source§impl PyClass for BacktestDataConfig
impl PyClass for BacktestDataConfig
Source§impl PyClassImpl for BacktestDataConfig
impl PyClassImpl for BacktestDataConfig
Source§const IS_BASETYPE: bool = false
const IS_BASETYPE: bool = false
Source§const IS_SUBCLASS: bool = false
const IS_SUBCLASS: bool = false
Source§const IS_MAPPING: bool = false
const IS_MAPPING: bool = false
Source§const IS_SEQUENCE: bool = false
const IS_SEQUENCE: bool = false
Source§const IS_IMMUTABLE_TYPE: bool = false
const IS_IMMUTABLE_TYPE: bool = false
Source§const RAW_DOC: &'static CStr = /// Represents the data configuration for one specific backtest run.
const RAW_DOC: &'static CStr = /// Represents the data configuration for one specific backtest run.
Source§const DOC: &'static CStr
const DOC: &'static CStr
text_signature if a constructor is defined. Read moreSource§type Layout = <<BacktestDataConfig as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<BacktestDataConfig>
type Layout = <<BacktestDataConfig as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<BacktestDataConfig>
Source§type ThreadChecker = ThreadCheckerImpl
type ThreadChecker = ThreadCheckerImpl
type Inventory = Pyo3MethodsInventoryForBacktestDataConfig
Source§type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
Source§type BaseNativeType = PyAny
type BaseNativeType = PyAny
PyAny by default, and when you declare
#[pyclass(extends=PyDict)], it’s PyDict.fn items_iter() -> PyClassItemsIter
fn lazy_type_object() -> &'static LazyTypeObject<Self>
§fn dict_offset() -> Option<PyObjectOffset>
fn dict_offset() -> Option<PyObjectOffset>
§fn weaklist_offset() -> Option<PyObjectOffset>
fn weaklist_offset() -> Option<PyObjectOffset>
Source§impl PyClassNewTextSignature for BacktestDataConfig
impl PyClassNewTextSignature for BacktestDataConfig
const TEXT_SIGNATURE: &'static str = "(data_type, catalog_path, catalog_fs_protocol=None, catalog_fs_storage_options=None, catalog_fs_rust_storage_options=None, instrument_id=None, instrument_ids=None, start_time=None, end_time=None, filter_expr=None, client_id=None, metadata=None, bar_spec=None, bar_types=None, optimize_file_loading=None, catalog_backend=None)"
Source§impl PyStubType for BacktestDataConfig
impl PyStubType for BacktestDataConfig
Source§fn type_output() -> TypeInfo
fn type_output() -> TypeInfo
§fn type_input() -> TypeInfo
fn type_input() -> TypeInfo
Source§impl PyTypeInfo for BacktestDataConfig
impl PyTypeInfo for BacktestDataConfig
Source§const NAME: &str = <Self as ::pyo3::PyClass>::NAME
const NAME: &str = <Self as ::pyo3::PyClass>::NAME
prefer using ::type_object(py).name() to get the correct runtime value
Source§const MODULE: Option<&str> = <Self as ::pyo3::impl_::pyclass::PyClassImpl>::MODULE
const MODULE: Option<&str> = <Self as ::pyo3::impl_::pyclass::PyClassImpl>::MODULE
prefer using ::type_object(py).module() to get the correct runtime value
Source§fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
§fn type_object(py: Python<'_>) -> Bound<'_, PyType>
fn type_object(py: Python<'_>) -> Bound<'_, PyType>
§fn is_type_of(object: &Bound<'_, PyAny>) -> bool
fn is_type_of(object: &Bound<'_, PyAny>) -> bool
object is an instance of this type or a subclass of this type.§fn is_exact_type_of(object: &Bound<'_, PyAny>) -> bool
fn is_exact_type_of(object: &Bound<'_, PyAny>) -> bool
object is an instance of this type.Auto Trait Implementations§
impl Freeze for BacktestDataConfig
impl RefUnwindSafe for BacktestDataConfig
impl Send for BacktestDataConfig
impl Sync for BacktestDataConfig
impl Unpin for BacktestDataConfig
impl UnsafeUnpin for BacktestDataConfig
impl UnwindSafe for BacktestDataConfig
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<'py, T> FromPyObjectOwned<'py> for Twhere
T: for<'a> FromPyObject<'a, 'py>,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
§fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
self into an owned Python object, dropping type information.§fn into_py_any(self, py: Python<'py>) -> Result<Py<PyAny>, PyErr>
fn into_py_any(self, py: Python<'py>) -> Result<Py<PyAny>, PyErr>
self into an owned Python object, dropping type information and unbinding it
from the 'py lifetime.§fn into_pyobject_or_pyerr(self, py: Python<'py>) -> Result<Self::Output, PyErr>
fn into_pyobject_or_pyerr(self, py: Python<'py>) -> Result<Self::Output, PyErr>
self into a Python object. Read more§impl<'py, T> IntoPyObjectNautilusExt<'py> for Twhere
T: IntoPyObjectExt<'py>,
impl<'py, T> IntoPyObjectNautilusExt<'py> for Twhere
T: IntoPyObjectExt<'py>,
§fn into_py_any_unwrap(self, py: Python<'py>) -> Py<PyAny>where
Self: IntoPyObject<'py, Error = !>,
fn into_py_any_unwrap(self, py: Python<'py>) -> Py<PyAny>where
Self: IntoPyObject<'py, Error = !>,
self into a [Py<PyAny>] when the underlying conversion is infallible.§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> PyErrArguments for T
impl<T> PyErrArguments for T
§impl<T> PyTypeCheck for Twhere
T: PyTypeInfo,
impl<T> PyTypeCheck for Twhere
T: PyTypeInfo,
§fn type_check(object: &Bound<'_, PyAny>) -> bool
fn type_check(object: &Bound<'_, PyAny>) -> bool
§fn classinfo_object(py: Python<'_>) -> Bound<'_, PyAny>
fn classinfo_object(py: Python<'_>) -> Bound<'_, PyAny>
isinstance and issubclass function. Read more