This commit is contained in:
lz_db
2025-12-02 15:17:58 +08:00
parent 502a0c49f2
commit be4c883d62
5 changed files with 391 additions and 21 deletions

View File

@@ -772,11 +772,14 @@ class mt5(Exchange, ImplicitAPI):
else:
# 如果无法解析,使用原始 market_id
symbol = market_id
timestamp = self.parse8601(self.safe_string(order, 'openTime')) - self.diff_milliseconds
last_trade_timestamp = self.parse8601(self.safe_string(order, 'closeTime')) - self.diff_milliseconds
if last_trade_timestamp is None:
timestamp = self.safe_integer(order, 'openTimestampUTC') - self.diff_milliseconds
last_trade_timestamp = self.safe_integer(order, 'closeTimestampUTC')
if last_trade_timestamp is None or last_trade_timestamp <= 0:
last_trade_timestamp = timestamp
else:
last_trade_timestamp = last_trade_timestamp - self.diff_milliseconds
status = self.parse_order_status(self.safe_string(order, 'state'))
side = self.parse_order_side(self.safe_string(order, 'orderType'))

View File

@@ -782,9 +782,14 @@ class mt5(Exchange, ImplicitAPI):
else:
symbol = market_id
timestamp = self.parse8601(self.safe_string(order, 'openTime')) - self.diff_milliseconds
last_trade_timestamp = self.parse8601(self.safe_string(order, 'closeTime')) - self.diff_milliseconds
timestamp = self.safe_integer(order, 'openTimestampUTC') - self.diff_milliseconds
last_trade_timestamp = self.safe_integer(order, 'closeTimestampUTC')
if last_trade_timestamp is None or last_trade_timestamp <= 0:
last_trade_timestamp = timestamp
else:
last_trade_timestamp = last_trade_timestamp - self.diff_milliseconds
status = self.parse_order_status(self.safe_string(order, 'state'))
side = self.parse_order_side(self.safe_string(order, 'orderType'))
type = self.parse_order_type(self.safe_string(order, 'orderType'))

View File

@@ -620,13 +620,13 @@ class mt5(mt5Parent):
close_time = self.safe_string(order_data, 'closeTime')
is_closed = close_time and close_time != "0001-01-01T00:00:00"
timestamp = self.parse8601(self.safe_string(order_data, 'openTime')) - self.diff_milliseconds
if timestamp is None:
timestamp = self.milliseconds()
last_trade_timestamp = timestamp
if is_closed:
last_trade_timestamp = self.parse8601(close_time) - - self.diff_milliseconds
timestamp = self.safe_integer(order_data, 'openTimestampUTC') - self.diff_milliseconds
last_trade_timestamp = self.safe_integer(order_data, 'closeTimestampUTC')
if last_trade_timestamp is None or last_trade_timestamp <= 0:
last_trade_timestamp = timestamp
else:
last_trade_timestamp = last_trade_timestamp - self.diff_milliseconds
mt5_order_type = self.safe_string(order_data, 'update_type', None)
@@ -717,7 +717,7 @@ class mt5(mt5Parent):
quote = symbol[3:]
symbol = base + '/' + quote
timestamp = self.parse8601(self.safe_string(order_data, 'openTime')) - self.diff_milliseconds
timestamp = self.safe_integer(order_data, 'openTimestampUTC') - self.diff_milliseconds
contracts = self.safe_number(order_data, 'lots')
entry_price = self.safe_number(order_data, 'openPrice')