From 7247b761d51e15cc95f9e3e16aec0202e8d55c41 Mon Sep 17 00:00:00 2001 From: fredfortier Date: Mon, 4 Sep 2017 11:33:21 -0400 Subject: [PATCH] Fixed an issue with failed orders --- catalyst/exchange/algorithm_exchange.py | 5 +++-- catalyst/exchange/exchange.py | 9 +++++---- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/catalyst/exchange/algorithm_exchange.py b/catalyst/exchange/algorithm_exchange.py index 4fcc2517..80b1c5c5 100644 --- a/catalyst/exchange/algorithm_exchange.py +++ b/catalyst/exchange/algorithm_exchange.py @@ -401,8 +401,9 @@ class ExchangeTradingAlgorithm(TradingAlgorithm): if order_id is not None: order = self.portfolio.open_orders[order_id] self.perf_tracker.process_order(order) - - return order + return order + else: + return None def round_order(self, amount): """ diff --git a/catalyst/exchange/exchange.py b/catalyst/exchange/exchange.py index 33712813..b0d0f5e2 100644 --- a/catalyst/exchange/exchange.py +++ b/catalyst/exchange/exchange.py @@ -531,10 +531,11 @@ class Exchange: ) ) order = self.create_order(asset, amount, is_buy, style) - - self._portfolio.create_order(order) - - return order.id + if order: + self._portfolio.create_order(order) + return order.id + else: + return None @abstractmethod def get_open_orders(self, asset):