From 5a3de795b990bdecab7cb0942141fa8442e31599 Mon Sep 17 00:00:00 2001 From: vercel Date: Wed, 8 May 2024 20:33:07 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20k=E7=BA=BF=E5=8F=96=E5=80=BC=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../stock/market/lesg/RefinitivConsumer.java | 42 ++++++++++++++++--- 1 file changed, 37 insertions(+), 5 deletions(-) diff --git a/src/main/java/cn/stock/market/lesg/RefinitivConsumer.java b/src/main/java/cn/stock/market/lesg/RefinitivConsumer.java index 5984e1e..166a8a2 100644 --- a/src/main/java/cn/stock/market/lesg/RefinitivConsumer.java +++ b/src/main/java/cn/stock/market/lesg/RefinitivConsumer.java @@ -279,49 +279,62 @@ public class RefinitivConsumer implements ApplicationRunner { String interval = null; String resourceEndpoint = null; Date start = new Date(); + String fields = null; + Integer flag = 0; if(StringUtils.equals("1m",resolution)){ start = DateTimeUtil.getDayOfMorning(start,0); countback = 360; interval = "PT1M"; resourceEndpoint = baseURLToday + symbol; + fields = "DATE,HIGH_1,LOW_1,OPEN_PRC,TRDPRC_1,NUM_MOVES"; }else if(StringUtils.equals("5m",resolution)){ start = DateTimeUtil.getDayOfMorning(start,0); countback = 150; interval = "PT5M"; resourceEndpoint = baseURLToday + symbol; + fields = "DATE,HIGH_1,LOW_1,OPEN_PRC,TRDPRC_1,NUM_MOVES"; }else if(StringUtils.equals("10m",resolution)){ start = DateTimeUtil.getDayOfMorning(start,0); countback = 50; interval = "PT10M"; resourceEndpoint = baseURLToday + symbol; + fields = "DATE,HIGH_1,LOW_1,OPEN_PRC,TRDPRC_1,NUM_MOVES"; }else if(StringUtils.equals("30m",resolution)){ start = DateTimeUtil.getDayOfMorning(start,0); countback = 30; interval = "PT30M"; resourceEndpoint = baseURLToday + symbol; + fields = "DATE,HIGH_1,LOW_1,OPEN_PRC,TRDPRC_1,NUM_MOVES"; }else if(StringUtils.equals("H",resolution)){ start = DateTimeUtil.getDayOfMorning(start,0); countback = 60; interval = "PT1H"; resourceEndpoint = baseURLToday + symbol; + fields = "DATE,HIGH_1,LOW_1,OPEN_PRC,TRDPRC_1,NUM_MOVES"; }else if(StringUtils.equals("D",resolution)){ start = DateTimeUtil.getDayOfMorning(start,-30); countback = 30; interval ="P1D"; + fields = "DATE,HIGH_1,LOW_1,OPEN_PRC,OFF_CLOSE,NUM_MOVES"; + flag = 1; resourceEndpoint = baseURLHistory + symbol; }else if(StringUtils.equals("W",resolution)){ start = DateTimeUtil.getDayOfMorning(start,-60); countback = 30; interval ="P1W"; + fields = "DATE,HIGH_1,LOW_1,OPEN_PRC,OFF_CLOSE,NUM_MOVES"; + flag = 2; resourceEndpoint = baseURLHistory + symbol; }else if(StringUtils.equals("M",resolution)){ start = DateTimeUtil.getDayOfYear(start,-1); countback = 30; interval ="P1M"; + fields = "DATE,HIGH_1,LOW_1,OPEN_PRC,OFF_CLOSE,NUM_MOVES"; + flag = 2; resourceEndpoint = baseURLHistory + symbol; } @@ -332,6 +345,7 @@ public class RefinitivConsumer implements ApplicationRunner { .form("start",startStr) .form("count",countback) .form("interval",interval) + .form("fields",fields) .header("Authorization","Bearer " + token) .execute(); if(response.getStatus() != 200){ @@ -359,11 +373,29 @@ public class RefinitivConsumer implements ApplicationRunner { long timestampMillis = instant.getEpochSecond(); t.add(timestampMillis); } - o.add(Double.valueOf(date.get(3).toString())); - h.add(Double.valueOf(date.get(1).toString())); - l.add(Double.valueOf(date.get(2).toString())); - c.add(Double.valueOf(date.get(4).toString())); - v.add(date.get(6) == null?0:Double.valueOf(date.get(6).toString())); + if(flag == 0) { + o.add(Double.valueOf(date.get(3).toString())); + h.add(Double.valueOf(date.get(1).toString())); + l.add(Double.valueOf(date.get(2).toString())); + c.add(Double.valueOf(date.get(4).toString())); + v.add(date.get(5) == null?0:Double.valueOf(date.get(5).toString())); + } + if(flag == 1){ + o.add(Double.valueOf(date.get(4).toString())); + h.add(Double.valueOf(date.get(2).toString())); + l.add(Double.valueOf(date.get(3).toString())); + c.add(Double.valueOf(date.get(1).toString())); + v.add(date.get(5) == null?0:Double.valueOf(date.get(5).toString())); + } + if(flag == 2){ + o.add(Double.valueOf(date.get(1).toString())); + h.add(Double.valueOf(date.get(4).toString())); + l.add(Double.valueOf(date.get(2).toString())); + c.add(Double.valueOf(date.get(5).toString())); + v.add(date.get(3) == null?0:Double.valueOf(date.get(3).toString())); + } + + } result.setT(t); result.setO(o);