Add analytics risk guard and redesigned dashboard
This commit is contained in:
@@ -10,6 +10,7 @@ import websockets
|
||||
|
||||
from crypto_spot_bot.bybit import BybitClient, Instrument, websocket_subscribe_message
|
||||
from crypto_spot_bot.config import Settings
|
||||
from crypto_spot_bot.data_quality import analyze_symbol_quality, market_quality_snapshot
|
||||
from crypto_spot_bot.indicators import add_indicators
|
||||
from crypto_spot_bot.models import Candle, Ticker, utc_now
|
||||
from crypto_spot_bot.storage import Storage
|
||||
@@ -217,6 +218,12 @@ class MarketData:
|
||||
return {
|
||||
"symbols": self.symbols,
|
||||
"ws_connected": self.ws_connected,
|
||||
"quality": market_quality_snapshot(
|
||||
symbols=self.symbols,
|
||||
candles_by_symbol=self.candles,
|
||||
tickers=self.tickers,
|
||||
interval=self.settings.base_interval,
|
||||
),
|
||||
"last_rest_refresh_at": self.last_rest_refresh_at.isoformat()
|
||||
if self.last_rest_refresh_at
|
||||
else None,
|
||||
@@ -230,6 +237,12 @@ class MarketData:
|
||||
"trend_candles": [candle.as_dict() for candle in self.trend_candles.get(symbol, [])[-5:]],
|
||||
"pattern": self.patterns.get(symbol),
|
||||
"forecast": self.forecasts.get(symbol),
|
||||
"quality": analyze_symbol_quality(
|
||||
symbol=symbol,
|
||||
candles=self.candles.get(symbol, []),
|
||||
ticker=self.tickers.get(symbol),
|
||||
interval=self.settings.base_interval,
|
||||
),
|
||||
"instrument": asdict(self.instruments[symbol]) if symbol in self.instruments else None,
|
||||
}
|
||||
for symbol in self.symbols
|
||||
|
||||
Reference in New Issue
Block a user