| | |
| | | return yesterdayLastPrice; |
| | | } |
| | | |
| | | @Override |
| | | public List<Kline> getTimeseries(String symbol,String period,int periodType){ |
| | | List<Kline> resList = new ArrayList<>(); |
| | | int klineCount; |
| | |
| | | klineCount = 52 * 5; // 5年的1周K线 (1年52周,5年共260周) |
| | | } else if (KlineConstant.PERIOD_1MON.equals(period)) { |
| | | klineCount = 12 * 5; // 5年的1个月K线,12个月每年,乘以5年 = 60 |
| | | }else if(KlineConstant.PERIOD_ONE.equals(period)){ |
| | | klineCount = 1; |
| | | }else{ |
| | | klineCount = 2; |
| | | } |
| | |
| | | kline.setClose(result.getClose_price()); |
| | | kline.setHigh(result.getHigh_price()); |
| | | kline.setLow(result.getLow_price()); |
| | | kline.setVolume(result.getVolume()); |
| | | kline.setVolume(result.getTurnover()); |
| | | kline.setAmount(result.getVolume()); |
| | | resList.add(kline); |
| | | } |
| | | } |
| | |
| | | logger.error("延时中断: {}", e); |
| | | } |
| | | return resList; |
| | | } |
| | | |
| | | @Override |
| | | public List<Realtime> realtime24HoruData(String symbols, List<Realtime> realtimes) { |
| | | List<String> strings = Arrays.asList(symbols.split(",")); |
| | | for (int i = 0; i < strings.size(); i++) { |
| | | List<Kline> dayList = getTimeseries(strings.get(i), KlineConstant.PERIOD_ONE, AllticktradeMadeOptions.dayPeriod); |
| | | if(dayList.size()>0){ |
| | | Kline kline = dayList.get(0); |
| | | for (Realtime realtime : realtimes){ |
| | | if(realtime.getSymbol().equals(strings.get(i))){ |
| | | int decimal = itemService.getDecimal(realtime.getSymbol()); |
| | | realtime.setOpen(kline.getOpen().setScale(decimal, RoundingMode.HALF_UP)); |
| | | realtime.setHigh(kline.getHigh().setScale(decimal, RoundingMode.HALF_UP)); |
| | | realtime.setLow(kline.getLow().setScale(decimal, RoundingMode.HALF_UP)); |
| | | realtime.setAmount(kline.getAmount().setScale(decimal, RoundingMode.HALF_UP)); |
| | | realtime.setVolume(kline.getVolume().setScale(decimal, RoundingMode.HALF_UP)); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | return realtimes; |
| | | } |
| | | |
| | | public List<Kline> buildOneDayPeriod(List<AllticktradeResult> list, String currency) { |
| | |
| | | HttpResponse response = HttpHelper.getHttpclient().execute(request); |
| | | return HttpHelper.responseProc(response); |
| | | } catch (Exception e) { |
| | | logger.error("采集外汇k线图失败:{} ", e); |
| | | logger.error("采集外汇k线图失败:==={} ", symbol); |
| | | } |
| | | return null; |
| | | } |