diff --git a/Trading/Mode/trading_view_signals_trading_mode/trading_view_signals_trading.py b/Trading/Mode/trading_view_signals_trading_mode/trading_view_signals_trading.py index 82fbfc043..f551eecff 100644 --- a/Trading/Mode/trading_view_signals_trading_mode/trading_view_signals_trading.py +++ b/Trading/Mode/trading_view_signals_trading_mode/trading_view_signals_trading.py @@ -17,6 +17,7 @@ import math import typing import json +import copy import async_channel.channels as channels import octobot_commons.symbols.symbol_util as symbol_util @@ -172,6 +173,9 @@ def _adapt_symbol(cls, parsed_data): @classmethod def parse_signal_data(cls, signal_data: str, errors: list) -> dict: + if isinstance(signal_data, dict): + # already parsed: return a deep copy to avoid modifying the original data + return copy.deepcopy(signal_data) parsed_data = {} # replace all split char by a single one splittable_data = signal_data