Files
aiomql/docs/core/backtesting/get_data.md
T
Ichinga Samuel 2e7aa73aec v4
2024-11-15 21:13:19 +01:00

5.9 KiB

Get Data

Table of Contents

Cursor

class Cursor(NamedTuple)

A cursor to iterate over the data. Marks the current position in time.

BackTestData

@dataclass
class BackTestData

The data class to store the backtesting data.

Attributes:

Name Type Description
name str The name of the backtest data
terminal dict The terminal information
version tuple The version of the terminal
account dict The account information
symbols dict The symbols information
ticks dict The ticks data
rates dict The rates data
span range The range of the data
range range The range of the data
orders dict The orders data
deals dict The deals data
positions dict The positions data
open_positions set The open positions
cursor Cursor The cursor to iterate over the data
margins dict The margins data
fully_loaded bool A flag to indicate if the data is fully loaded

set_attrs

def set_attrs(**kwargs)

Set the attributes of the class on the instance.

fields

@property
def fields()

A list of the fields of the class.

GetData

class GetData

A class to get the backtesting data from the MetaTrader5 terminal.

Attributes:

Name Type Description
start datetime The start date of the data
end datetime The end date of the data
symbols Iterable[str] The symbols to get the data for
timeframes Iterable[TimeFrame] The timeframes to get the data for
name str The name of the backtest data
range range The range of the data
span range The span of the data
data BackTestData The backtesting data
mt5 MetaTrader The MetaTrader5 instance
task_queue TaskQueue The task queue to handle the requests

_init_

def __init__(*, start: datetime, end: datetime, symbols: Sequence[str],
             timeframes: Sequence[TimeFrame], name: str = "")

Get the backtesting data from the MetaTrader5 terminal.

Parameters:

Name Type Description
start datetime The start date of the data
end datetime The end date of the data
symbols Sequence[str] The symbols to get the data for
timeframes Sequence[TimeFrame] The timeframes to get the data for
name str The name of the backtest data

pickle_data

@classmethod
def pickle_data(cls, *, data: BackTestData, name: str | Path)

Pickle the data to a file.

Parameters:

Name Type Description
data BackTestData The data to pickle
name str | Path The name of the file

load_data

@classmethod
def load_data(cls, *, name: str | Path) -> BackTestData

Load the data from a file.

Parameters:

Name Type Description
name str | Path The name of the file

save_data

def save_data(*, name: str | Path = "")

Save the data to a file.

Parameters:

Name Type Description
name str | Path The name of the file

get_data

async def get_data(workers: int = None)

Use the task queue to get the data from the MetaTrader5 terminal.

Parameters:

Name Type Description
workers int The number of workers to use in the task queue