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

Method parse_trade

python/ccxt/bit2c.py:802–894  ·  view source on GitHub ↗
(self, trade: dict, market: Market = None)

Source from the content-addressed store, hash-verified

800 return newString
801
802 def parse_trade(self, trade: dict, market: Market = None) -> Trade:
803 #
804 # public fetchTrades
805 #
806 # {
807 # "date":1651785980,
808 # "price":127975.68,
809 # "amount":0.3750321,
810 # "isBid":true,
811 # "tid":1261018
812 # }
813 #
814 # private fetchMyTrades
815 #
816 # {
817 # "ticks":1574767951,
818 # "created":"26/11/19 13:32",
819 # "action":1,
820 # "price":"1,000",
821 # "pair":"EthNis",
822 # "reference":"EthNis|10867390|10867377",
823 # "fee":"0.5",
824 # "feeAmount":"0.08",
825 # "feeCoin":"₪",
826 # "firstAmount":"-0.015",
827 # "firstAmountBalance":"9",
828 # "secondAmount":"14.93",
829 # "secondAmountBalance":"130,233.28",
830 # "firstCoin":"ETH",
831 # "secondCoin":"₪"
832 # "isMaker": True,
833 # }
834 #
835 timestamp: Int
836 id: Str
837 price = None
838 amount = None
839 orderId = None
840 fee = None
841 side: str
842 makerOrTaker = None
843 reference = self.safe_string(trade, 'reference')
844 if reference is not None:
845 id = reference
846 timestamp = self.safe_timestamp(trade, 'ticks')
847 price = self.safe_string(trade, 'price')
848 price = self.remove_comma_from_value(price)
849 amount = self.safe_string(trade, 'firstAmount')
850 reference_parts = reference.split('|') # reference contains 'pair|orderId_by_taker|orderId_by_maker'
851 marketId = self.safe_string(trade, 'pair')
852 market = self.safe_market(marketId, market)
853 market = self.safe_market(reference_parts[0], market)
854 isMaker = self.safe_value(trade, 'isMaker')
855 makerOrTaker = 'maker' if isMaker else 'taker'
856 orderId = reference_parts[2] if isMaker else reference_parts[1]
857 action = self.safe_integer(trade, 'action')
858 if action == 0:
859 side = 'buy'

Callers

nothing calls this directly

Calls 9

safe_stringMethod · 0.80
safe_timestampMethod · 0.80
splitMethod · 0.80
safe_valueMethod · 0.80
safe_integerMethod · 0.80
safe_tradeMethod · 0.80
safe_marketMethod · 0.45
iso8601Method · 0.45

Tested by

no test coverage detected