| | |
| | | } |
| | | // 如果开盘价为0,则设置为前一个价格 |
| | | if(kLine.getOpen().compareTo(BigDecimal.ZERO) == 0) { |
| | | kLine.setOpen(coinThumb.getClose()); |
| | | kLine.setClose(coinThumb.getClose()); |
| | | kLine.setLow(coinThumb.getClose()); |
| | | kLine.setHigh(coinThumb.getClose()); |
| | | // 查询前一根K线 TODO |
| | | String key = "KINE_" + symbol + "/USDT_" + period; |
| | | Object data = redisUtils.get(key); |
| | | List list = new ArrayList(); |
| | | if (data != null) { |
| | | list = (List) data; |
| | | Candlestick o = (Candlestick)list.get(list.size() - 1); |
| | | kLine.setOpen(o.getClose()); |
| | | kLine.setClose(o.getClose()); |
| | | kLine.setLow(o.getClose()); |
| | | kLine.setHigh(o.getClose()); |
| | | }else{ |
| | | kLine.setOpen(coinThumb.getClose()); |
| | | kLine.setClose(coinThumb.getClose()); |
| | | kLine.setLow(coinThumb.getClose()); |
| | | kLine.setHigh(coinThumb.getClose()); |
| | | } |
| | | |
| | | } |
| | | //logger.info("generate " + range + rangeUnit + " kline in {},data={}", df.format(new Date(kLine.getTimestamp())), JSON.toJSONString(kLine)); |
| | | service.saveKLine(symbol,period, kLine); |