@@ -17,6 +17,7 @@ import { Themes } from '@/styles/themes';
1717import { AppTheme , type AppColorMode } from '@/state/appUiConfigs' ;
1818
1919import { getDisplayableTickerFromMarket } from '../assetUtils' ;
20+ import { isPresent } from '../typeUtils' ;
2021
2122// Show order book candles instead of trade candles if there are no trades in that time period
2223const MAX_NUM_TRADES_FOR_ORDERBOOK_PRICES = 1 ;
@@ -42,10 +43,23 @@ const getOhlcValues = ({
4243 trades <= MAX_NUM_TRADES_FOR_ORDERBOOK_PRICES &&
4344 orderbookOpen !== undefined &&
4445 orderbookClose !== undefined ;
46+ const alsoUseTradeForHighLow = trades >= 1 ;
4547
4648 return {
47- low : showOrderbookCandles ? Math . min ( orderbookOpen , orderbookClose ) : tradeLow ,
48- high : showOrderbookCandles ? Math . max ( orderbookOpen , orderbookClose ) : tradeHigh ,
49+ low : showOrderbookCandles
50+ ? Math . min (
51+ ...[ orderbookOpen , orderbookClose , alsoUseTradeForHighLow ? tradeLow : undefined ] . filter (
52+ isPresent
53+ )
54+ )
55+ : tradeLow ,
56+ high : showOrderbookCandles
57+ ? Math . max (
58+ ...[ orderbookOpen , orderbookClose , alsoUseTradeForHighLow ? tradeHigh : undefined ] . filter (
59+ isPresent
60+ )
61+ )
62+ : tradeHigh ,
4963 open : showOrderbookCandles ? orderbookOpen : tradeOpen ,
5064 close : showOrderbookCandles ? orderbookClose : tradeClose ,
5165 } ;
0 commit comments