MCPcopy Create free account
hub / github.com/ccxt/ccxt / parse_order

Method parse_order

python/ccxt/mercado.py:617–686  ·  view source on GitHub ↗
(self, order: dict, market: Market = None)

Source from the content-addressed store, hash-verified

615 return self.safe_string(statuses, status, status)
616
617 def parse_order(self, order: dict, market: Market = None) -> Order:
618 #
619 # {
620 # "order_id": 4,
621 # "coin_pair": "BRLBTC",
622 # "order_type": 1,
623 # "status": 2,
624 # "has_fills": True,
625 # "quantity": "2.00000000",
626 # "limit_price": "900.00000",
627 # "executed_quantity": "1.00000000",
628 # "executed_price_avg": "900.00000",
629 # "fee": "0.00300000",
630 # "created_timestamp": "1453838494",
631 # "updated_timestamp": "1453838494",
632 # "operations": [
633 # {
634 # "operation_id": 1,
635 # "quantity": "1.00000000",
636 # "price": "900.00000",
637 # "fee_rate": "0.30",
638 # "executed_timestamp": "1453838494",
639 # },
640 # ],
641 # }
642 #
643 id = self.safe_string(order, 'order_id')
644 order_type = self.safe_string(order, 'order_type')
645 side = None
646 if 'order_type' in order:
647 side = 'buy' if (order_type == '1') else 'sell'
648 status = self.parse_order_status(self.safe_string(order, 'status'))
649 marketId = self.safe_string(order, 'coin_pair')
650 market = self.safe_market(marketId, market)
651 timestamp = self.safe_timestamp(order, 'created_timestamp')
652 fee = {
653 'cost': self.safe_string(order, 'fee'),
654 'currency': market['quote'],
655 }
656 price = self.safe_string(order, 'limit_price')
657 # price = self.safe_number(order, 'executed_price_avg', price)
658 average = self.safe_string(order, 'executed_price_avg')
659 amount = self.safe_string(order, 'quantity')
660 filled = self.safe_string(order, 'executed_quantity')
661 lastTradeTimestamp = self.safe_timestamp(order, 'updated_timestamp')
662 rawTrades = self.safe_value(order, 'operations', [])
663 symbol = market['symbol']
664 return self.safe_order({
665 'info': order,
666 'id': id,
667 'clientOrderId': None,
668 'timestamp': timestamp,
669 'datetime': self.iso8601(timestamp),
670 'lastTradeTimestamp': lastTradeTimestamp,
671 'symbol': symbol,
672 'type': 'limit',
673 'timeInForce': None,
674 'postOnly': None,

Callers 2

cancel_orderMethod · 0.95
fetch_orderMethod · 0.95

Calls 7

parse_order_statusMethod · 0.95
safe_stringMethod · 0.80
safe_timestampMethod · 0.80
safe_valueMethod · 0.80
safe_orderMethod · 0.80
safe_marketMethod · 0.45
iso8601Method · 0.45

Tested by

no test coverage detected