| | |
| | | BigDecimal vol = new BigDecimal(data.getString("v")); |
| | | BigDecimal baseVol = new BigDecimal(data.getString("a")); |
| | | String name = data.getString("n"); |
| | | long tsSeconds = data.getLong("t"); |
| | | long t = data.getLong("t"); |
| | | boolean windowClosed = data.getBooleanValue("w"); |
| | | String time = DateUtil.TimeStampToDateTime(tsSeconds * 1000); |
| | | String time = DateUtil.TimeStampToDateTime(t); |
| | | |
| | | System.out.println("========== Gate K线数据 =========="); |
| | | System.out.println("名称(n): " + name); |
| | |
| | | System.out.println("成交额(a): " + baseVol); |
| | | System.out.println("K线完结(w): " + windowClosed); |
| | | System.out.println("=================================="); |
| | | |
| | | if (windowClosed) { |
| | | MacdEmaStrategy strategy = new MacdEmaStrategy(); |
| | | |
| | | List<Kline> kline1MinuteData = getKlineDataByInstIdAndBar(CoinEnums.HE_YUE.getCode(), "1m"); |
| | | List<BigDecimal> historicalPrices1M = kline1MinuteData.stream() |
| | | .map(Kline::getC) |
| | | .collect(Collectors.toList()); |
| | | |
| | | MacdEmaStrategy.TradingOrder tradingOrderOpenOpen = strategy.generateTradingOrder(historicalPrices1M, MacdMaStrategy.OperationType.open.name()); |
| | | if (tradingOrderOpenOpen == null) { |
| | | return; |
| | | } |
| | | |
| | | } |
| | | } catch (Exception e) { |
| | | log.error("处理 K线频道推送数据失败", e); |
| | | } |