align dry_run_orders
This commit is contained in:
parent
686949b258
commit
e495ffec78
@ -283,21 +283,32 @@ class Exchange(object):
|
|||||||
price = ceil(big_price) / pow(10, symbol_prec)
|
price = ceil(big_price) / pow(10, symbol_prec)
|
||||||
return price
|
return price
|
||||||
|
|
||||||
|
def dry_run_order(self, pair: str, ordertype: str, side: str, amount: float,
|
||||||
|
rate: float, params: Dict = {}) -> Dict:
|
||||||
|
order_id = f'dry_run_buy_{randint(0, 10**6)}'
|
||||||
|
dry_order = {
|
||||||
|
"id": order_id,
|
||||||
|
'pair': pair,
|
||||||
|
'price': rate,
|
||||||
|
'amount': amount,
|
||||||
|
'type': ordertype,
|
||||||
|
'side': 'buy',
|
||||||
|
'remaining': 0.0,
|
||||||
|
'datetime': arrow.utcnow().isoformat(),
|
||||||
|
'status': 'closed',
|
||||||
|
'fee': None # should this be None or skipped?
|
||||||
|
}
|
||||||
|
return order_id, dry_order
|
||||||
|
|
||||||
|
def create_order(self, pair: str, ordertype: str, side: str, amount: float,
|
||||||
|
rate: float, params: Dict = {}) -> Dict:
|
||||||
|
pass # TODO: finish this
|
||||||
|
|
||||||
def buy(self, pair: str, ordertype: str, amount: float,
|
def buy(self, pair: str, ordertype: str, amount: float,
|
||||||
rate: float, time_in_force) -> Dict:
|
rate: float, time_in_force) -> Dict:
|
||||||
if self._conf['dry_run']:
|
if self._conf['dry_run']:
|
||||||
order_id = f'dry_run_buy_{randint(0, 10**6)}'
|
order_id, dry_order = self.dry_run_order(pair, ordertype, "buy", amount, rate)
|
||||||
self._dry_run_open_orders[order_id] = {
|
self._dry_run_open_orders[order_id] = dry_order
|
||||||
'pair': pair,
|
|
||||||
'price': rate,
|
|
||||||
'amount': amount,
|
|
||||||
'type': ordertype,
|
|
||||||
'side': 'buy',
|
|
||||||
'remaining': 0.0,
|
|
||||||
'datetime': arrow.utcnow().isoformat(),
|
|
||||||
'status': 'closed',
|
|
||||||
'fee': None
|
|
||||||
}
|
|
||||||
return {'id': order_id}
|
return {'id': order_id}
|
||||||
|
|
||||||
try:
|
try:
|
||||||
@ -331,17 +342,8 @@ class Exchange(object):
|
|||||||
def sell(self, pair: str, ordertype: str, amount: float,
|
def sell(self, pair: str, ordertype: str, amount: float,
|
||||||
rate: float, time_in_force='gtc') -> Dict:
|
rate: float, time_in_force='gtc') -> Dict:
|
||||||
if self._conf['dry_run']:
|
if self._conf['dry_run']:
|
||||||
order_id = f'dry_run_sell_{randint(0, 10**6)}'
|
order_id, dry_order = self.dry_run_order(pair, ordertype, "sell", amount, rate)
|
||||||
self._dry_run_open_orders[order_id] = {
|
self._dry_run_open_orders[order_id] = dry_order
|
||||||
'pair': pair,
|
|
||||||
'price': rate,
|
|
||||||
'amount': amount,
|
|
||||||
'type': ordertype,
|
|
||||||
'side': 'sell',
|
|
||||||
'remaining': 0.0,
|
|
||||||
'datetime': arrow.utcnow().isoformat(),
|
|
||||||
'status': 'closed'
|
|
||||||
}
|
|
||||||
return {'id': order_id}
|
return {'id': order_id}
|
||||||
|
|
||||||
try:
|
try:
|
||||||
@ -389,21 +391,11 @@ class Exchange(object):
|
|||||||
'In stoploss limit order, stop price should be more than limit price')
|
'In stoploss limit order, stop price should be more than limit price')
|
||||||
|
|
||||||
if self._conf['dry_run']:
|
if self._conf['dry_run']:
|
||||||
order_id = f'dry_run_buy_{randint(0, 10**6)}'
|
order_id, dry_order = self.dry_run_order(
|
||||||
self._dry_run_open_orders[order_id] = {
|
pair, "stop_loss_limit", "sell", amount, stop_price, rate)
|
||||||
'info': {},
|
dry_order.update({"info": {}, "remaining": amount, "status": "open"})
|
||||||
'id': order_id,
|
self._dry_run_open_orders[order_id] = dry_order
|
||||||
'pair': pair,
|
return dry_order
|
||||||
'price': stop_price,
|
|
||||||
'amount': amount,
|
|
||||||
'type': 'stop_loss_limit',
|
|
||||||
'side': 'sell',
|
|
||||||
'remaining': amount,
|
|
||||||
'datetime': arrow.utcnow().isoformat(),
|
|
||||||
'status': 'open',
|
|
||||||
'fee': None
|
|
||||||
}
|
|
||||||
return self._dry_run_open_orders[order_id]
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user