From 036a2c82ea5c3c42199f555c0433b97b4a00d895 Mon Sep 17 00:00:00 2001 From: mraniki <8766259+mraniki@users.noreply.github.com> Date: Tue, 9 Jul 2024 10:10:32 +0200 Subject: [PATCH 1/3] update handler.py --- findmyorder/handler/handler.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/findmyorder/handler/handler.py b/findmyorder/handler/handler.py index e924a77..6890b68 100644 --- a/findmyorder/handler/handler.py +++ b/findmyorder/handler/handler.py @@ -25,6 +25,9 @@ def __init__(self, **kwargs): self.name = kwargs.get("name", None) self.client = None self.enabled = kwargs.get("enabled", None) + self.library = kwargs.get("library", None) or kwargs.get( + "parser_library", "standard" + ) self.action_identifier = kwargs.get("action_identifier", "BUY SELL") self.action_identifier = self.action_identifier.lower() self.stop_loss_identifier = kwargs.get("stop_loss_identifier", None) From f8a4f4a0faf10bc323b5b9d706b5c5a4863fc949 Mon Sep 17 00:00:00 2001 From: mraniki <8766259+mraniki@users.noreply.github.com> Date: Tue, 9 Jul 2024 11:08:15 +0200 Subject: [PATCH 2/3] =?UTF-8?q?=F0=9F=94=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- findmyorder/default_settings.toml | 74 +++++++++++++++---------------- findmyorder/handler/handler.py | 4 -- findmyorder/main.py | 2 +- 3 files changed, 38 insertions(+), 42 deletions(-) diff --git a/findmyorder/default_settings.toml b/findmyorder/default_settings.toml index f5595f8..d9f0a24 100644 --- a/findmyorder/default_settings.toml +++ b/findmyorder/default_settings.toml @@ -19,44 +19,44 @@ # Module Enable/Disable findmyorder_enabled = true -[default.findmyorder.template] -parser_library = "standard" -enabled = true -# Keyword to be use to identify an order -action_identifier = "BUY SELL LONG SHORT" -# Keyword identifier for stoploss -stop_loss_identifier = "sl=" -# Keyword identifier for take-profit -take_profit_identifier = 'tp=' -# Keyword identifier for quantity -quantity_identifier = 'q=' -# Keyword identifier for order type -order_type_identifier = "spot future margin" -# Keyword identifier for leverage -leverage_type_identifier = "cross isolated" -# Keyword identifier for comments -comment_identifier = "comment=" -# Stoploss default value is none is provided -stop_loss = 1000 -# Take-Profit default value is none is provided -take_profit = 1000 -# Quantity default value is none is provided -quantity = 1 -# Settings to enable or disable -# instrument mapping -instrument_mapping = true -# instrument mapping to use and alternative -# symbol when generating the order -mapping = [ - { id = "GOLD", alt = "XAUUSD" }, - { id = "SILVER", alt = "XAGUSD" }, - { id = "BTC", alt = "WBTC" }, - { id = "ETH", alt = "WETH" }, -] +# [default.findmyorder.template] +# parser_library = "standard" +# enabled = true +# # Keyword to be use to identify an order +# action_identifier = "BUY SELL LONG SHORT" +# # Keyword identifier for stoploss +# stop_loss_identifier = "sl=" +# # Keyword identifier for take-profit +# take_profit_identifier = 'tp=' +# # Keyword identifier for quantity +# quantity_identifier = 'q=' +# # Keyword identifier for order type +# order_type_identifier = "spot future margin" +# # Keyword identifier for leverage +# leverage_type_identifier = "cross isolated" +# # Keyword identifier for comments +# comment_identifier = "comment=" +# # Stoploss default value is none is provided +# stop_loss = 1000 +# # Take-Profit default value is none is provided +# take_profit = 1000 +# # Quantity default value is none is provided +# quantity = 1 +# # Settings to enable or disable +# # instrument mapping +# instrument_mapping = true +# # instrument mapping to use and alternative +# # symbol when generating the order +# mapping = [ +# { id = "GOLD", alt = "XAUUSD" }, +# { id = "SILVER", alt = "XAGUSD" }, +# { id = "BTC", alt = "WBTC" }, +# { id = "ETH", alt = "WETH" }, +# ] -# Instrument to be ignored -# when generating an order -ignore_instrument = "US500 DOGE" +# # Instrument to be ignored +# # when generating an order +# ignore_instrument = "US500 DOGE" ######################################## ### END OF DEFAULT SETTINGS ### diff --git a/findmyorder/handler/handler.py b/findmyorder/handler/handler.py index 6890b68..c775c7b 100644 --- a/findmyorder/handler/handler.py +++ b/findmyorder/handler/handler.py @@ -67,11 +67,7 @@ async def search(self, message: str) -> bool: """ if message: order_identifier = message.split()[0].lower() - # logger.debug("Order identifier: {}", order_identifier) - # logger.debug("Action identifiers: {}", self.action_identifiers) if order_identifier in self.action_identifier: - - # logger.debug("Order identifier found in {}", order_identifier) return True return False diff --git a/findmyorder/main.py b/findmyorder/main.py index dafb0bd..fb0917d 100644 --- a/findmyorder/main.py +++ b/findmyorder/main.py @@ -42,7 +42,7 @@ def __init__( Returns: None - """ + """ self.enabled = settings.findmyorder_enabled if not self.enabled: From 69b4d94c1e70ff5bbfb832b59cea39b97fe22c5b Mon Sep 17 00:00:00 2001 From: mraniki <8766259+mraniki@users.noreply.github.com> Date: Tue, 9 Jul 2024 11:14:36 +0200 Subject: [PATCH 3/3] =?UTF-8?q?=F0=9F=94=A7=20update=20default=5Fsettings.?= =?UTF-8?q?toml=20and=20main.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- findmyorder/default_settings.toml | 74 +++++++++++++++---------------- findmyorder/main.py | 6 ++- 2 files changed, 41 insertions(+), 39 deletions(-) diff --git a/findmyorder/default_settings.toml b/findmyorder/default_settings.toml index d9f0a24..256dbfb 100644 --- a/findmyorder/default_settings.toml +++ b/findmyorder/default_settings.toml @@ -19,44 +19,44 @@ # Module Enable/Disable findmyorder_enabled = true -# [default.findmyorder.template] -# parser_library = "standard" -# enabled = true -# # Keyword to be use to identify an order -# action_identifier = "BUY SELL LONG SHORT" -# # Keyword identifier for stoploss -# stop_loss_identifier = "sl=" -# # Keyword identifier for take-profit -# take_profit_identifier = 'tp=' -# # Keyword identifier for quantity -# quantity_identifier = 'q=' -# # Keyword identifier for order type -# order_type_identifier = "spot future margin" -# # Keyword identifier for leverage -# leverage_type_identifier = "cross isolated" -# # Keyword identifier for comments -# comment_identifier = "comment=" -# # Stoploss default value is none is provided -# stop_loss = 1000 -# # Take-Profit default value is none is provided -# take_profit = 1000 -# # Quantity default value is none is provided -# quantity = 1 -# # Settings to enable or disable -# # instrument mapping -# instrument_mapping = true -# # instrument mapping to use and alternative -# # symbol when generating the order -# mapping = [ -# { id = "GOLD", alt = "XAUUSD" }, -# { id = "SILVER", alt = "XAGUSD" }, -# { id = "BTC", alt = "WBTC" }, -# { id = "ETH", alt = "WETH" }, -# ] +[default.findmyorder.template] +parser_library = "standard" +enabled = true +# Keyword to be use to identify an order +action_identifier = "BUY SELL LONG SHORT DEFAULT" +# Keyword identifier for stoploss +stop_loss_identifier = "sl=" +# Keyword identifier for take-profit +take_profit_identifier = 'tp=' +# Keyword identifier for quantity +quantity_identifier = 'q=' +# Keyword identifier for order type +order_type_identifier = "spot future margin" +# Keyword identifier for leverage +leverage_type_identifier = "cross isolated" +# Keyword identifier for comments +comment_identifier = "comment=" +# Stoploss default value is none is provided +stop_loss = 1000 +# Take-Profit default value is none is provided +take_profit = 1000 +# Quantity default value is none is provided +quantity = 1 +# Settings to enable or disable +# instrument mapping +instrument_mapping = true +# instrument mapping to use and alternative +# symbol when generating the order +mapping = [ + { id = "GOLD", alt = "XAUUSD" }, + { id = "SILVER", alt = "XAGUSD" }, + { id = "BTC", alt = "WBTC" }, + { id = "ETH", alt = "WETH" }, +] -# # Instrument to be ignored -# # when generating an order -# ignore_instrument = "US500 DOGE" +# Instrument to be ignored +# when generating an order +ignore_instrument = "US500 DOGE" ######################################## ### END OF DEFAULT SETTINGS ### diff --git a/findmyorder/main.py b/findmyorder/main.py index fb0917d..1580e2f 100644 --- a/findmyorder/main.py +++ b/findmyorder/main.py @@ -42,16 +42,18 @@ def __init__( Returns: None - """ + """ self.enabled = settings.findmyorder_enabled + self.settings = settings.findmyorder + logger.debug("Settings: {}", self.settings) if not self.enabled: logger.info("Module is disabled. No Client will be created.") return self.client_classes = self.get_all_client_classes() self.clients = [] # Create a client for each client in settings.findmyorder - for name, client_config in settings.findmyorder.items(): + for name, client_config in self.settings.items(): if ( # Skip empty client configs client_config is None