Add missing fields to json (and json parse)
This commit is contained in:
@@ -628,6 +628,7 @@ class LocalTrade:
|
|||||||
'amount_precision': self.amount_precision,
|
'amount_precision': self.amount_precision,
|
||||||
'price_precision': self.price_precision,
|
'price_precision': self.price_precision,
|
||||||
'precision_mode': self.precision_mode,
|
'precision_mode': self.precision_mode,
|
||||||
|
'contract_size': self.contract_size,
|
||||||
'has_open_orders': self.has_open_orders,
|
'has_open_orders': self.has_open_orders,
|
||||||
'orders': orders_json,
|
'orders': orders_json,
|
||||||
}
|
}
|
||||||
@@ -1788,6 +1789,10 @@ class Trade(ModelBase, LocalTrade):
|
|||||||
is_short=data["is_short"],
|
is_short=data["is_short"],
|
||||||
trading_mode=data["trading_mode"],
|
trading_mode=data["trading_mode"],
|
||||||
funding_fees=data["funding_fees"],
|
funding_fees=data["funding_fees"],
|
||||||
|
amount_precision=data.get('amount_precision', None),
|
||||||
|
price_precision=data.get('price_precision', None),
|
||||||
|
precision_mode=data.get('precision_mode', None),
|
||||||
|
contract_size=data.get('contract_size', None),
|
||||||
)
|
)
|
||||||
for order in data["orders"]:
|
for order in data["orders"]:
|
||||||
|
|
||||||
|
|||||||
@@ -1385,6 +1385,7 @@ def test_to_json(fee):
|
|||||||
precision_mode=1,
|
precision_mode=1,
|
||||||
amount_precision=8.0,
|
amount_precision=8.0,
|
||||||
price_precision=7.0,
|
price_precision=7.0,
|
||||||
|
contract_size=1,
|
||||||
)
|
)
|
||||||
result = trade.to_json()
|
result = trade.to_json()
|
||||||
assert isinstance(result, dict)
|
assert isinstance(result, dict)
|
||||||
@@ -1450,6 +1451,7 @@ def test_to_json(fee):
|
|||||||
'amount_precision': 8.0,
|
'amount_precision': 8.0,
|
||||||
'price_precision': 7.0,
|
'price_precision': 7.0,
|
||||||
'precision_mode': 1,
|
'precision_mode': 1,
|
||||||
|
'contract_size': 1,
|
||||||
'orders': [],
|
'orders': [],
|
||||||
'has_open_orders': False,
|
'has_open_orders': False,
|
||||||
}
|
}
|
||||||
@@ -1471,6 +1473,7 @@ def test_to_json(fee):
|
|||||||
precision_mode=2,
|
precision_mode=2,
|
||||||
amount_precision=7.0,
|
amount_precision=7.0,
|
||||||
price_precision=8.0,
|
price_precision=8.0,
|
||||||
|
contract_size=1
|
||||||
)
|
)
|
||||||
result = trade.to_json()
|
result = trade.to_json()
|
||||||
assert isinstance(result, dict)
|
assert isinstance(result, dict)
|
||||||
@@ -1536,6 +1539,7 @@ def test_to_json(fee):
|
|||||||
'amount_precision': 7.0,
|
'amount_precision': 7.0,
|
||||||
'price_precision': 8.0,
|
'price_precision': 8.0,
|
||||||
'precision_mode': 2,
|
'precision_mode': 2,
|
||||||
|
'contract_size': 1,
|
||||||
'orders': [],
|
'orders': [],
|
||||||
'has_open_orders': False,
|
'has_open_orders': False,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -66,6 +66,10 @@ def test_trade_fromjson():
|
|||||||
"is_short": false,
|
"is_short": false,
|
||||||
"trading_mode": "spot",
|
"trading_mode": "spot",
|
||||||
"funding_fees": 0.0,
|
"funding_fees": 0.0,
|
||||||
|
"amount_precision": 1.0,
|
||||||
|
"price_precision": 3.0,
|
||||||
|
"precision_mode": 2,
|
||||||
|
"contract_size": 1.0,
|
||||||
"open_order_id": null,
|
"open_order_id": null,
|
||||||
"orders": [
|
"orders": [
|
||||||
{
|
{
|
||||||
@@ -180,6 +184,9 @@ def test_trade_fromjson():
|
|||||||
assert isinstance(trade.open_date, datetime)
|
assert isinstance(trade.open_date, datetime)
|
||||||
assert trade.exit_reason == 'no longer good'
|
assert trade.exit_reason == 'no longer good'
|
||||||
assert trade.realized_profit == 2.76315361
|
assert trade.realized_profit == 2.76315361
|
||||||
|
assert trade.precision_mode == 2
|
||||||
|
assert trade.amount_precision == 1.0
|
||||||
|
assert trade.contract_size == 1.0
|
||||||
|
|
||||||
assert len(trade.orders) == 5
|
assert len(trade.orders) == 5
|
||||||
last_o = trade.orders[-1]
|
last_o = trade.orders[-1]
|
||||||
|
|||||||
@@ -90,6 +90,7 @@ def test_rpc_trade_status(default_conf, ticker, fee, mocker) -> None:
|
|||||||
'amount_precision': 8.0,
|
'amount_precision': 8.0,
|
||||||
'price_precision': 8.0,
|
'price_precision': 8.0,
|
||||||
'precision_mode': 2,
|
'precision_mode': 2,
|
||||||
|
'contract_size': 1,
|
||||||
'has_open_orders': False,
|
'has_open_orders': False,
|
||||||
'orders': [{
|
'orders': [{
|
||||||
'amount': 91.07468123, 'average': 1.098e-05, 'safe_price': 1.098e-05,
|
'amount': 91.07468123, 'average': 1.098e-05, 'safe_price': 1.098e-05,
|
||||||
|
|||||||
Reference in New Issue
Block a user