Files
Ichinga Samuel 4f0150a552 v3.23
2024-10-29 13:04:45 +01:00

11 KiB

History

Table of contents

History

class History

The history class handles completed trade deals and trade orders in the trading history of an account.

Attributes

Name Type Description Default
deals list[TradeDeal] Iterable of trade deals []
orders list[TradeOrder] Iterable of trade orders []
total_deals int Total number of deals 0
total_orders int Total number orders 0
group str Filter for selecting history by symbols. ""
ticket int Filter for selecting history by ticket number 0
position int Filter for selecting history deals by position 0
initialized bool check if initial request has been sent to the terminal to get history. False
mt5 MetaTrader MetaTrader instance None
config Config Config instance None

__init__

def __init__(*,
             date_from: datetime | float = 0,
             date_to: datetime | float = 0,
             group: str = "",
             ticket: int = 0,
             position: int = 0)

Parameters

Name Type Description Default
date_from datetime|float Date the deals are requested from. Set by the 'datetime' object or as a number of seconds elapsed since 1970.01.01. Defaults to twenty-four hours from the current time in 'utc' 0
date_to datetime|float Date up to which the deals are requested. Set by the 'datetime' object or as a number of seconds elapsed since 1970.01.01. Defaults to the current time in "utc" 0
group str Filter for selecting history by symbols. ""
ticket int Filter for selecting history by ticket number 0
position int Filter for selecting history deals by position 0

init

async def init(deals=True, orders=True) -> bool

Get history deals and orders

Parameters

Name Type Description Default
deals bool If true get history deals during initial request to terminal True
orders bool If true get history orders during initial request to terminal True

Returns

Name Type Description Default
bool bool True if all requests were successful else False False

get_deals

async def get_deals(self, *, date_from: datetime | int = None, date_to: datetime | int = None, group: str = '',
                        retries=3) -> list[TradeDeal]

Parameters:

Name Type Description Default
date_from datetime|float Date the deals are requested from. Set by the 'datetime' object or as a number of seconds elapsed since 1970.01.01. Defaults to twenty-four hours from the current time in 'utc' None
date_to datetime|float Date up to which the deals are requested. Set by the 'datetime' object or as a number of seconds elapsed since 1970.01.01. Defaults to the current time in "utc" None
group str Filter for selecting history by symbols. ""
retries int Number of retries if the request fails. 3

Returns:

Name Type Description Default
deals tuple[TradeDeal] A list of trade deals []

get_deals_ticket

async def get_deals_ticket(self, *, ticket: int) -> tuple[TradeDeal]

Get deals by ticket number

Parameters:

Name Type Description Default
ticket int Ticket number to get 0

Returns:

Name Type Description Default
deals tuple[TradeDeal] A list of trade deals []

get_deals_position

async def get_deals_position(self, *, position: int) -> list[TradeDeal]

Get deals by position

Parameters:

Name Type Description Default
position int Position number to get 0

Returns:

Name Type Description Default
deals tuple[TradeDeal] A list of trade deals []

deals_total

async def deals_total() -> int

Get total number of deals within the specified period in the constructor.

Returns

Name Type Description Default
total_deals int Total number of deals 0

get_orders

async def get_orders(self, *, date_from: datetime | int = None, date_to: datetime | int = None, group: str = '',
                         retries=3) -> tuple[TradeOrder]

Get orders from trading history using the parameters set in the constructor.

Parameters

Name Type Description Default
date_from datetime|float Date the deals are requested from. Set by the 'datetime' object or as a number of seconds elapsed since 1970.01.01. Defaults to twenty-four hours from the current time in 'utc' None
date_to datetime|float Date up to which the deals are requested. Set by the 'datetime' object or as a number of seconds elapsed since 1970.01.01. Defaults to the current time in "utc" None
group str Filter for selecting history by symbols. ""

Returns

Name Type Description Default
orders tuple[TradeOrder] A list of trade orders []

get_orders_position

async def get_orders_position(self, *, position: int) -> tuple[TradeOrder]

Get orders by position.

Parameters

Name Type Description Default
position int Position number to get 0

Returns

Name Type Description Default
orders tuple[TradeOrder] A list of trade orders []

get_order_ticket

async def get_order_ticket(self, ticket: int | None = None) -> TradeOrder

Get a single order by ticket number.

Parameters

Name Type Description Default
ticket int Ticket number to get 0

Returns

Name Type Description Default
order TradeOrder A single trade order None

orders_total

async def orders_total() -> int

Get total number of orders within the specified period in the constructor.

Returns

Name Type Description Default
total_orders int Total number orders 0