aboutsummaryrefslogtreecommitdiff
path: root/portfolio.py
diff options
context:
space:
mode:
Diffstat (limited to 'portfolio.py')
-rw-r--r--portfolio.py9
1 files changed, 4 insertions, 5 deletions
diff --git a/portfolio.py b/portfolio.py
index 65fdc6c..ed50b57 100644
--- a/portfolio.py
+++ b/portfolio.py
@@ -550,7 +550,7 @@ class Order:
550 550
551 @property 551 @property
552 def finished(self): 552 def finished(self):
553 return self.status == "closed" or self.status == "canceled" or self.status == "error" 553 return self.status.startswith("closed") or self.status == "canceled" or self.status == "error"
554 554
555 @retry(InsufficientFunds) 555 @retry(InsufficientFunds)
556 def run(self): 556 def run(self):
@@ -594,15 +594,13 @@ class Order:
594 # other states are "closed" and "canceled" 594 # other states are "closed" and "canceled"
595 if not self.finished: 595 if not self.finished:
596 self.fetch() 596 self.fetch()
597 if self.finished:
598 self.mark_finished_order()
599 return self.status 597 return self.status
600 598
601 def mark_finished_order(self): 599 def mark_finished_order(self):
602 if self.market.debug: 600 if self.status.startswith("closed") and self.market.debug:
603 self.market.report.log_debug_action("Mark {} as finished".format(self)) 601 self.market.report.log_debug_action("Mark {} as finished".format(self))
604 return 602 return
605 if self.status == "closed": 603 if self.status.startswith("closed"):
606 if self.trade_type == "short" and self.action == "buy" and self.close_if_possible: 604 if self.trade_type == "short" and self.action == "buy" and self.close_if_possible:
607 self.market.ccxt.close_margin_position(self.amount.currency, self.base_currency) 605 self.market.ccxt.close_margin_position(self.amount.currency, self.base_currency)
608 606
@@ -621,6 +619,7 @@ class Order:
621 619
622 self.fetch_mouvements() 620 self.fetch_mouvements()
623 621
622 self.mark_finished_order()
624 # FIXME: consider open order with dust remaining as closed 623 # FIXME: consider open order with dust remaining as closed
625 624
626 def dust_amount_remaining(self): 625 def dust_amount_remaining(self):