From f2696c96095ffe20e10e03d3697168ac7cf8bc57 Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 25 Apr 2023 18:09:46 +0200 Subject: [PATCH] Force special exit reason for "recovered" exits --- freqtrade/enums/exittype.py | 1 + freqtrade/freqtradebot.py | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/freqtrade/enums/exittype.py b/freqtrade/enums/exittype.py index b025230ba..c21b62667 100644 --- a/freqtrade/enums/exittype.py +++ b/freqtrade/enums/exittype.py @@ -15,6 +15,7 @@ class ExitType(Enum): EMERGENCY_EXIT = "emergency_exit" CUSTOM_EXIT = "custom_exit" PARTIAL_EXIT = "partial_exit" + SOLD_ON_EXCHANGE = "sold_on_exchange" NONE = "" def __str__(self): diff --git a/freqtrade/freqtradebot.py b/freqtrade/freqtradebot.py index 444fe044a..8b877541c 100644 --- a/freqtrade/freqtradebot.py +++ b/freqtrade/freqtradebot.py @@ -470,13 +470,17 @@ class FreqtradeBot(LoggingMixin): trade.orders.append(order_obj) # TODO: how do we handle open_order_id ... Trade.commit() + prev_exit_reason = trade.exit_reason + trade.exit_reason = ExitType.SOLD_ON_EXCHANGE.value self.update_trade_state(trade, order['id'], order) logger.info(f"handled order {order['id']}") if not trade.is_open: # Trade was just closed trade.close_date = order_obj.order_filled_date Trade.commit() - continue + break + else: + trade.exit_reason = prev_exit_reason except ExchangeError: logger.warning("Error finding onexchange order")