Skip to content

wrapper ¤

LetDataFeedWrapper ¤

LetDataFeedWrapper(data: DataFrame)

Wrap DataFeed

Parameters:

  • data (DataFrame) –

    DataFeed object

Raises:

Source code in lettrade/data/wrapper.py
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
def __init__(self, data: pd.DataFrame) -> None:
    """_summary_

    Args:
        data (pd.DataFrame): DataFeed object

    Raises:
        RuntimeError: _description_
    """
    # Validate new instance not load an existed wrapper
    if hasattr(data.index, __LET_WRAPPER_KEY__):
        raise RuntimeError("DataFeed.index reuses a loaded wrapper")
    for column in data.columns:
        if hasattr(data[column], __LET_WRAPPER_KEY__):
            raise RuntimeError(f"DataFeed.{column} reuses a loaded wrapper")

    self._pointer = 0
    self._data = data
    self._iloc = LetILocWrapper(self._data, self)

iloc property ¤

iloc: LetILocWrapper | _iLocIndexer

Get iloc wrapper of DataFeed

pointer property ¤

pointer

Get current pointer value

pointer_start property ¤

pointer_start

Get start pointer value

pointer_stop property ¤

pointer_stop

Get stop pointer value

go_start ¤

go_start() -> None

Move pointer to begin

Source code in lettrade/data/wrapper.py
212
213
214
def go_start(self) -> None:
    """Move pointer to begin"""
    self._pointer = 0

go_stop ¤

go_stop() -> None

Move pointer to end

Source code in lettrade/data/wrapper.py
216
217
218
def go_stop(self) -> None:
    """Move pointer to end"""
    self._pointer = len(self._data) - 1

next ¤

next(size=1)

Move pointer to next

Source code in lettrade/data/wrapper.py
208
209
210
def next(self, size=1):
    """Move pointer to next"""
    self._pointer += size

reset ¤

reset() -> None

Reset pointer to begin

Source code in lettrade/data/wrapper.py
220
221
222
def reset(self) -> None:
    """Reset pointer to begin"""
    self._pointer = 0

LetILocWrapper ¤

LetILocWrapper(data, owner)

Wrap iloc object from DataFeed

Parameters:

  • data (_type_) –

    DataFeed or pd.Series

  • owner (_type_) –

    DataFeed object

Source code in lettrade/data/wrapper.py
15
16
17
18
19
20
21
22
23
def __init__(self, data, owner) -> None:
    """_summary_

    Args:
        data (_type_): DataFeed or pd.Series
        owner (_type_): DataFeed object
    """
    self._data = data
    self._owner = owner

LetIndexWapper ¤

LetIndexWapper(data, owner)

Wrap DataFeed.index

Parameters:

  • data (_type_) –

    pandas.DatetimeIndex

  • owner (_type_) –

    DataFeed object

Source code in lettrade/data/wrapper.py
59
60
61
62
63
64
65
66
67
def __init__(self, data, owner) -> None:
    """_summary_

    Args:
        data (_type_): pandas.DatetimeIndex
        owner (_type_): DataFeed object
    """
    self._data = data
    self._owner = owner

LetSeriesWapper ¤

LetSeriesWapper(data, owner)

Wrap DataFeed column

Source code in lettrade/data/wrapper.py
108
109
110
111
def __init__(self, data, owner) -> None:
    self._data = data
    self._owner = owner
    self._iloc = LetILocWrapper(self._data, self._owner)