1
This commit is contained in:
parent
151c9cb6fd
commit
672fea3d8e
@ -217,12 +217,32 @@ class RealtimeTrader:
|
|||||||
logger.error(f"Error loading {symbol} signal: {e}")
|
logger.error(f"Error loading {symbol} signal: {e}")
|
||||||
|
|
||||||
# 向后兼容: 使用旧格式的 latest_signal.json
|
# 向后兼容: 使用旧格式的 latest_signal.json
|
||||||
if not signals and self.signal_file.exists():
|
# 注意: 只分配给信号中指定的币种,或者根据价格推断币种
|
||||||
|
if self.signal_file.exists():
|
||||||
try:
|
try:
|
||||||
with open(self.signal_file, 'r') as f:
|
with open(self.signal_file, 'r') as f:
|
||||||
data = json.load(f)
|
data = json.load(f)
|
||||||
first_symbol = self.symbols[0] if self.symbols else 'BTCUSDT'
|
|
||||||
signals[first_symbol] = data
|
# 尝试从信号中获取币种
|
||||||
|
signal_symbol = data.get('symbol')
|
||||||
|
|
||||||
|
# 如果没有明确指定,尝试从价格推断
|
||||||
|
if not signal_symbol:
|
||||||
|
signal_price = (data.get('aggregated_signal', {})
|
||||||
|
.get('levels', {})
|
||||||
|
.get('current_price', 0))
|
||||||
|
if signal_price:
|
||||||
|
# BTC 价格通常 > $10,000,ETH 价格通常 < $10,000
|
||||||
|
if signal_price > 10000:
|
||||||
|
signal_symbol = 'BTCUSDT'
|
||||||
|
elif signal_price > 100:
|
||||||
|
signal_symbol = 'ETHUSDT'
|
||||||
|
|
||||||
|
# 只有当推断出的币种在我们的列表中,且还没有信号时才使用
|
||||||
|
if signal_symbol and signal_symbol in self.symbols and signal_symbol not in signals:
|
||||||
|
signals[signal_symbol] = data
|
||||||
|
logger.info(f"Loaded legacy signal for {signal_symbol}")
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error(f"Error loading legacy signal: {e}")
|
logger.error(f"Error loading legacy signal: {e}")
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user