From b75a9054211154b25eba2fc8c76a525e4049ac39 Mon Sep 17 00:00:00 2001 From: Character004 Date: Sat, 6 Jun 2020 16:22:29 +0200 Subject: [PATCH 1/2] Lab 4 done --- DecisionMaker.java | 134 ++++++++++++ Exchange.java | 221 ++++++++++++++++++++ JSONParser.java | 39 ++++ LICENSE | 21 -- Main.java | 113 ++++++++++ Offer.java | 37 ++++ README.md | 2 - Wallet.java | 111 ++++++++++ bitcoin_stats.csv | 510 +++++++++++++++++++++++++++++++++++++++++++++ l1 | 6 - l2 | 2 - 11 files changed, 1165 insertions(+), 31 deletions(-) create mode 100644 DecisionMaker.java create mode 100644 Exchange.java create mode 100644 JSONParser.java delete mode 100644 LICENSE create mode 100644 Main.java create mode 100644 Offer.java delete mode 100644 README.md create mode 100644 Wallet.java create mode 100644 bitcoin_stats.csv delete mode 100644 l1 delete mode 100644 l2 diff --git a/DecisionMaker.java b/DecisionMaker.java new file mode 100644 index 00000000..a33ba58f --- /dev/null +++ b/DecisionMaker.java @@ -0,0 +1,134 @@ +import java.util.ArrayList; +import java.io.BufferedReader; +import java.io.FileReader; +import java.time.LocalDate; + +public class DecisionMaker +{ + private ArrayList historical; + private double expAverage; + + public class Quotation { + + private String date; + private double close, volume; + + public Quotation(String date, double close, double volume) { + this.date = date; + this.close = close; + this.volume = volume; + } + + public String getDate() { + return date; + } + + public double getClose() { + return close; + } + + public double getVolume() { + return volume; + } + + @Override + public String toString() { + return String.format("%s kurs: %.2f wolumen: %.2f", date, close, volume); + } + } + + //tworzenie agenta decyzyjnego w oparciu o dane historyczne i analizowany przedzial czasowy (data w formacie rrrr-mm-dd) + public DecisionMaker(String csvFile, String dateToAnalyzeFrom) throws Exception { + historical = new ArrayList<>(); + LocalDate today=LocalDate.now(), since = LocalDate.parse(dateToAnalyzeFrom); + + if(today.isBefore(since)) throw new IllegalArgumentException("Podana data musi by wczeniejsza od dzisiejszej!"); + else if (since.isBefore(LocalDate.of(2019, 1, 1))) throw new IllegalArgumentException("Podana data musi by pniejsza ni 1 stycznia 2020r."); + else { + + try { + BufferedReader buffer = new BufferedReader(new FileReader(csvFile)); + String [] dane; String line=""; + + while( (line=buffer.readLine()) != null) { + + dane = line.replaceAll("[^0-9.;-]", "").split(";"); + historical.add(new Quotation(dane[0], Double.parseDouble(dane[1]), Double.parseDouble(dane[2]))); + if(line.contains(dateToAnalyzeFrom)) break; + } + + buffer.close(); + } + catch (Exception e) { + System.out.println("Nie mona odnale pliku!"); + } + + expAverage=exponentialAverage(); + } + + } + + public ArrayList getHistorical() { + return historical; + } + + public double getExpAverage() { + return expAverage; + } + + public int makeDecision(double currentPrice) { + + double currentAverage = exponentialAverage(currentPrice); + + // jesli wykres sredniej exponencjalnej przecina sie z wykresem kursu waluty od dolu wysylany jest sygnal kupna + + if(expAverage=currentPrice && currentPrice > currentAverage) { + System.out.println("SPRZEDAJ"); + return -1; + } + + else { + System.out.println("CZEKAJ"); + return 0; + } + } + + // wyliczanie sredniej wazonej eksponencjalnej na podstawie danych historycznych + private double exponentialAverage() { + + int N = historical.size(); + double sum = 0, weights = 0; + + for(int i=0; i bids, asks; + + public Exchange(String name, String currency1, String currency2, int quantity) { + this.name = name; + this.currency1 = currency1; + this.currency2 = currency2; + this.bids = new ArrayList(); + this.asks = new ArrayList(); + createParser(); + fillData(quantity); + } + + public ArrayList getBids() { + return bids; + } + + public ArrayList getAsks() { + return asks; + } + + public void printOrderbook() { + + System.out.println("\n------------------------------------------------\n"+ name + " Exchange\t("+currency1+" - "+currency2+")"); + System.out.println("\nBIDS\n------------------------------------------------"); + + for(Offer bid : bids) { + System.out.println("BID: " + bid); + } + System.out.println("------------------------------------------------\n\nASKS\n------------------------------------------------"); + + + for(Offer ask : asks) { + System.out.println("ASK: " + ask); + } + System.out.println("------------------------------------------------"); + } + + public void update(int quantity) { + parser.updateData(); + fillData(quantity); + } + + private void fillData(int quantity) { + switch(name) { + case "BitBay": + bitbayData(quantity); + break; + case "CEX.IO": + cexioData(quantity); + break; + case "WhiteBit": + whitebitData(quantity); + break; + case "Ftx": + ftxData(quantity); + break; + default: + System.out.println("Nie obsugiwane rdo!"); + } + } + + private void bitbayData(int quantity) { + + String [] tab = parser.getData(); + int i=0, counter=0; + + tab[0]=tab[0].replace("bids", ""); + + for(; !tab[i].contains("asks"); i+=2) { + + if(counter < quantity) { + if(bids.size()==counter) bids.add(new Offer(Double.parseDouble(tab[i]),Double.parseDouble(tab[i+1]))); + else bids.set(counter, new Offer(Double.parseDouble(tab[i]),Double.parseDouble(tab[i+1]))); + counter++; + } + } + + counter = 0; + tab[i]=tab[i].replace("asks", ""); + + for(; i=0.01) { + + System.out.println(String.format("Na giedzie %s mona kupi %.8f %s za %s po kursie %.2f i sprzeda na giedzie %s po kursie %.2f zyskujc %.2f%s.", + names[j], current.getAmmount(), currency[2*i], currency[2*i+1], current.getPrice(), names[k], analyze.getPrice(), influence-cost, currency[2*i+1])); + + if(influence-cost>best) best=influence-cost; + } + } + } + + System.out.println(); + if(best>0)portfel.add(currency[2*i+1], best); + } + } + } + + private static void zadania1_3(double tax) { + + Exchange[][] gieldy = new Exchange[4][4]; + Wallet portfel = new Wallet(); + + for(int i=0; i0) gielda.update(1); + Offer buy=gielda.getAsks().get(0), sell=gielda.getBids().get(0); + + // decyzja jest podejmowana w oparciu o cene potencjalnego zakupu + int decision = agent.makeDecision(sell.getPrice()); + + if(decision==1) { + + double price = sell.getPrice()*sell.getAmmount()*(1+tax); + if(portfel.sell("USD", price)) { + portfel.add("BTC", sell.getAmmount(), price); + System.out.println(String.format("Zakupiono %.8fBTC", sell.getAmmount())); + } + } + else if(decision==(-1)) { + + double price = buy.getPrice()*sell.getAmmount()*(1-tax); + + if(portfel.sell("BTC", price)) { + + portfel.add("USD", sell.getAmmount()); + System.out.println(String.format("Sprzedano %.8fBTC", buy.getAmmount())); + + if(portfel.profitable(price, sell.getAmmount())) System.out.println("Sprzedano z zyskiem"); + else System.out.println("Sprzedano ze strat"); + } + } + Thread.sleep(5000); + } + System.out.println(portfel); + gielda.update(1); + portfel.getCurrentValue("BTC",gielda.getAsks().get(0).getPrice()); + } + + public static void main(String[] args) throws Exception { + + //zadania1_3(0.005); + zadanie4(10, 0.005); + } +} \ No newline at end of file diff --git a/Offer.java b/Offer.java new file mode 100644 index 00000000..0059ab24 --- /dev/null +++ b/Offer.java @@ -0,0 +1,37 @@ +public class Offer +{ + private double price; + private double ammount; + + public Offer() { + price = 0; + ammount = 0; + } + + public Offer(double price, double ammount) { + this.price = price; + this.ammount = ammount; + } + + public double getPrice() { + return price; + } + + public void setPrice(double price) { + this.price = price; + } + + public double getAmmount() { + return ammount; + } + + public void setAmmount(double ammount) { + this.ammount = ammount; + } + + @Override + public String toString() { + return String.format("[CENA: %-15.2f ILOSC: %-12.8f]", price, ammount); + } + +} diff --git a/README.md b/README.md deleted file mode 100644 index 6661a2ed..00000000 --- a/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# MSiD -System Analysis and Decision Support Methods diff --git a/Wallet.java b/Wallet.java new file mode 100644 index 00000000..10b28f34 --- /dev/null +++ b/Wallet.java @@ -0,0 +1,111 @@ +import java.util.ArrayList; + +public class Wallet { + + private class Fund { + + String currency; + double ammount; + + private Fund(String currency, double ammount) { + this.currency = currency; + this.ammount = ammount; + } + + @Override + public String toString() { + if(currency.equals("USD")) return String.format("%.2f", ammount)+currency; + else return String.format("%.8f", ammount)+currency; + } + } + + ArrayList funds; + ArrayList bought; + + public Wallet() { + funds = new ArrayList(); + bought = new ArrayList(); + } + + public Wallet(String currency, double startingFunds) { + + funds = new ArrayList(); + bought = new ArrayList(); + add(currency, startingFunds); + } + + public void add(String currency, double ammount) { + + boolean added = false; + for(Fund f : funds) { + + if(f.currency.equals(currency)) { + + f.ammount+=ammount; + added = true; + break; + } + + } + if(!added) funds.add(new Fund(currency, ammount)); + } + + public void add(String currency, double ammount, double boughtPrice) { + + add(currency, ammount); + bought.add(new Offer(boughtPrice,ammount)); + } + + public boolean sell(String currency, double ammount) { + + for(Fund f: funds) { + + if(f.currency.equals(currency) && f.ammount >= ammount) { + + f.ammount-=ammount; + System.out.println("\nSprzedano "+ammount+currency); + return true; + } + } + + System.out.println("Brak rodkw na wykonanie transakcji!"); + return false; + } + + public boolean profitable(double price, double ammount) { + + double sum = 0; + + for(Offer o : bought) { + + if(o.getPrice()<=price) sum+=o.getAmmount(); + } + + return sum>=ammount; + } + + public double getCurrentValue(String currency, double price) { + + double value=0.0; + + for(Fund f : funds) { + + if(f.currency=="USD") value+=f.ammount; + else if(f.currency=="BTC") value+=(f.ammount*price); + } + + return value; + } + + @Override + public String toString() { + + String output="WALLET\n"; + for(Fund f : funds) { + + output+=f+"\n"; + } + + return output; + } +} \ No newline at end of file diff --git a/bitcoin_stats.csv b/bitcoin_stats.csv new file mode 100644 index 00000000..5803bf84 --- /dev/null +++ b/bitcoin_stats.csv @@ -0,0 +1,510 @@ +2020-06-05;9829.9;12.35 +2020-06-04;9800.8;214.15 +2020-06-03;9665.4;177.46 +2020-06-02;9520;332.9 +2020-06-01;10194;241.85 +2020-05-31;9446.9;173.13 +2020-05-30;9700.1;180.32 +2020-05-29;9428.6;209.62 +2020-05-28;9564.3;392.57 +2020-05-27;9200;301.05 +2020-05-26;8855.4;196.89 +2020-05-25;8909.6;268.88 +2020-05-24;8721.9;266.73 +2020-05-23;9198.7;159.72 +2020-05-22;9178.4;185.93 +2020-05-21;9044.8;424.84 +2020-05-20;9527.6;429.66 +2020-05-19;9799.8;388.46 +2020-05-18;9742.2;358.04 +2020-05-17;9682.9;491.97 +2020-05-16;9384.8;250.0 +2020-05-15;9319.9;502.33 +2020-05-14;9788.1;725.74 +2020-05-13;9327.4;461.62 +2020-05-12;8837.4;334.94 +2020-05-11;8569.4;1042.46 +2020-05-10;8748.2;962.3 +2020-05-09;9544.5;387.93 +2020-05-08;9822.5;440.52 +2020-05-07;9996.6;754.32 +2020-05-06;9168.6;481.59 +2020-05-05;9035.3;329.31 +2020-05-04;8904;295.17 +2020-05-03;8916.9;392.66 +2020-05-02;8993.3;231.28 +2020-05-01;8838.1;366.96 +2020-04-30;8626.9;1101.0 +2020-04-29;8778.3;1160.99 +2020-04-28;7772.9;202.11 +2020-04-27;7786.9;286.61 +2020-04-26;7700;214.73 +2020-04-25;7541;204.3 +2020-04-24;7526.4;226.03 +2020-04-23;7492.8;513.86 +2020-04-22;7140.3;236.58 +2020-04-21;6872.9;242.28 +2020-04-20;6848.7;359.21 +2020-04-19;7136.5;172.12 +2020-04-18;7258.1;231.42 +2020-04-17;7036.4;255.56 +2020-04-16;7122;791.79 +2020-04-15;6647.4;201.44 +2020-04-14;6888.2;167.14 +2020-04-13;6863.1;328.5 +2020-04-12;6917.2;180.92 +2020-04-11;6900;110.59 +2020-04-10;6877.7;388.77 +2020-04-09;7310.9;296.88 +2020-04-08;7378.1;195.82 +2020-04-07;7214.7;380.09 +2020-04-06;7356.4;394.76 +2020-04-05;6792.9;232.16 +2020-04-04;6880.5;270.97 +2020-04-03;6743;323.53 +2020-04-02;6813.5;529.44 +2020-04-01;6635.8;336.31 +2020-03-31;6441.5;241.75 +2020-03-30;6403.6;375.3 +2020-03-29;5895.8;231.69 +2020-03-28;6271.6;317.48 +2020-03-27;6383.2;263.85 +2020-03-26;6771.4;232.07 +2020-03-25;6709.7;333.64 +2020-03-24;6781;435.3 +2020-03-23;6483.1;374.14 +2020-03-22;5849.9;347.26 +2020-03-21;6212.2;325.75 +2020-03-20;6220.9;653.28 +2020-03-19;6220.4;627.04 +2020-03-18;5411;405.8 +2020-03-17;5381.4;479.13 +2020-03-16;5057.4;1047.09 +2020-03-15;5422.9;383.12 +2020-03-14;5250;372.17 +2020-03-13;5686.9;1281.48 +2020-03-12;4920.5;1440.79 +2020-03-11;7942.1;177.14 +2020-03-10;7904.8;238.66 +2020-03-09;7947.7;313.55 +2020-03-08;8059.2;245.95 +2020-03-07;8923.1;115.26 +2020-03-06;9159.7;92.16 +2020-03-05;9086;193.33 +2020-03-04;8797.8;76.41 +2020-03-03;8796.1;74.65 +2020-03-02;8926.5;121.13 +2020-03-01;8572.8;80.52 +2020-02-29;8559;51.5 +2020-02-28;8698.3;164.31 +2020-02-27;8849.8;153.84 +2020-02-26;8821.3;234.45 +2020-02-25;9333.8;123.46 +2020-02-24;9690.6;138.25 +2020-02-23;9999.9;88.53 +2020-02-22;9700.7;42.52 +2020-02-21;9721;80.65 +2020-02-20;9606.2;114.64 +2020-02-19;9617.3;229.99 +2020-02-18;10178.8;199.58 +2020-02-17;9745.1;160.14 +2020-02-16;9950.9;91.13 +2020-02-15;9905;149.31 +2020-02-14;10375;68.63 +2020-02-13;10241;153.15 +2020-02-12;10381.6;101.27 +2020-02-11;10288.5;147.74 +2020-02-10;9879.5;134.78 +2020-02-09;10179.8;118.68 +2020-02-08;9928.9;83.28 +2020-02-07;9834.9;62.79 +2020-02-06;9773.2;115.93 +2020-02-05;9616;129.8 +2020-02-04;9193.6;89.85 +2020-02-03;9313.7;99.75 +2020-02-02;9350.9;74.96 +2020-02-01;9395;55.11 +2020-01-31;9356.7;109.44 +2020-01-30;9540.8;103.16 +2020-01-29;9306.5;113.94 +2020-01-28;9359.7;143.71 +2020-01-27;8912.1;121.7 +2020-01-26;8600;90.68 +2020-01-25;8367.7;46.5 +2020-01-24;8456.9;93.28 +2020-01-23;8424;137.09 +2020-01-22;8681.9;83.0 +2020-01-21;8760.7;86.41 +2020-01-20;8663.6;86.29 +2020-01-19;8718;184.58 +2020-01-18;8939.9;69.92 +2020-01-17;8914.8;135.28 +2020-01-16;8747.1;96.37 +2020-01-15;8818.2;166.11 +2020-01-14;8847.6;253.32 +2020-01-13;8133;56.19 +2020-01-12;8190;66.13 +2020-01-11;8053.8;106.28 +2020-01-10;8200;149.45 +2020-01-09;7855;104.68 +2020-01-08;8069.9;187.28 +2020-01-07;8189.5;176.67 +2020-01-06;7795.3;105.03 +2020-01-05;7387.4;69.14 +2020-01-04;7379.8;40.88 +2020-01-03;7351.3;174.0 +2020-01-02;6984.8;122.34 +2020-01-01;7238.2;64.92 +2019-12-31;7258.7;66.87 +2019-12-30;7277.3;60.2 +2019-12-29;7412.7;58.83 +2019-12-28;7326.2;69.62 +2019-12-27;7277;82.51 +2019-12-26;7231.7;77.39 +2019-12-25;7234.3;54.69 +2019-12-24;7268.1;116.83 +2019-12-23;7362.2;139.99 +2019-12-22;7537;125.15 +2019-12-21;7218.2;33.67 +2019-12-20;7236.8;71.08 +2019-12-19;7214.5;110.28 +2019-12-18;7331;355.05 +2019-12-17;6707.2;212.21 +2019-12-16;6956.5;159.85 +2019-12-15;7166.8;50.65 +2019-12-14;7136.7;80.33 +2019-12-13;7291.9;97.24 +2019-12-12;7264;86.03 +2019-12-11;7280.2;78.18 +2019-12-10;7309.3;114.16 +2019-12-09;7408;106.2 +2019-12-08;7584.9;61.27 +2019-12-07;7575.5;48.24 +2019-12-06;7599.9;108.96 +2019-12-05;7455.9;134.65 +2019-12-04;7258;220.98 +2019-12-03;7372.1;112.65 +2019-12-02;7392.9;145.15 +2019-12-01;7475.7;133.71 +2019-11-30;7617.9;160.03 +2019-11-29;7827.9;136.14 +2019-11-28;7517.2;114.76 +2019-11-27;7560;275.02 +2019-11-26;7249.9;148.63 +2019-11-25;7156.9;411.48 +2019-11-24;6985.2;202.48 +2019-11-23;7377.3;127.32 +2019-11-22;7339.9;617.5 +2019-11-21;7683.4;374.93 +2019-11-20;8147.8;68.05 +2019-11-19;8158;145.35 +2019-11-18;8240;130.96 +2019-11-17;8549.4;36.94 +2019-11-16;8510.2;32.12 +2019-11-15;8522.6;134.5 +2019-11-14;8693.3;80.8 +2019-11-13;8828.1;76.39 +2019-11-12;8849.9;93.53 +2019-11-11;8783.9;101.63 +2019-11-10;9068.3;72.98 +2019-11-09;8833.7;79.02 +2019-11-08;8838.3;233.15 +2019-11-07;9244.1;96.54 +2019-11-06;9402.9;55.82 +2019-11-05;9349.4;89.44 +2019-11-04;9408.8;97.72 +2019-11-03;9250.8;45.67 +2019-11-02;9332.7;52.95 +2019-11-01;9262.5;83.29 +2019-10-31;9183.2;177.2 +2019-10-30;9208.9;159.89 +2019-10-29;9439.3;137.59 +2019-10-28;9236.8;192.53 +2019-10-27;9538.8;296.38 +2019-10-26;9227;562.1 +2019-10-25;8652.3;302.31 +2019-10-24;7450;90.53 +2019-10-23;7487.5;285.17 +2019-10-22;8072.9;84.1 +2019-10-21;8249.5;90.1 +2019-10-20;8250;63.12 +2019-10-19;7984;61.72 +2019-10-18;7991.1;85.37 +2019-10-17;8106;87.8 +2019-10-16;8023.5;92.84 +2019-10-15;8189.2;95.11 +2019-10-14;8354.4;105.74 +2019-10-13;8320;83.33 +2019-10-12;8333.1;40.54 +2019-10-11;8292.6;100.67 +2019-10-10;8601.9;109.24 +2019-10-09;8613.1;143.36 +2019-10-08;8206.1;70.31 +2019-10-07;8208.9;191.99 +2019-10-06;7924.3;133.78 +2019-10-05;8154.9;46.02 +2019-10-04;8179.7;101.74 +2019-10-03;8267.4;128.15 +2019-10-02;8386.9;63.24 +2019-10-01;8347.5;147.57 +2019-09-30;8321.3;186.13 +2019-09-29;8080;71.0 +2019-09-28;8233.1;82.87 +2019-09-27;8222.5;134.79 +2019-09-26;8051.6;271.71 +2019-09-25;8467.3;174.09 +2019-09-24;8592;531.67 +2019-09-23;9712;97.62 +2019-09-22;10061.4;50.4 +2019-09-21;9999.3;70.02 +2019-09-20;10195.9;49.73 +2019-09-19;10280.4;193.1 +2019-09-18;10182.1;85.71 +2019-09-17;10192;73.48 +2019-09-16;10292.4;83.98 +2019-09-15;10299.9;26.35 +2019-09-14;10368.2;54.31 +2019-09-13;10373.4;86.13 +2019-09-12;10406.9;85.66 +2019-09-11;10170;123.14 +2019-09-10;10137.7;91.03 +2019-09-09;10311.4;98.71 +2019-09-08;10401.9;58.56 +2019-09-07;10468.4;85.1 +2019-09-06;10326.6;194.59 +2019-09-05;10575;74.23 +2019-09-04;10592.4;136.78 +2019-09-03;10647.2;172.68 +2019-09-02;10390;162.55 +2019-09-01;9755.3;53.69 +2019-08-31;9620.3;48.78 +2019-08-30;9603.9;66.27 +2019-08-29;9506.9;164.43 +2019-08-28;9741;208.05 +2019-08-27;10191.4;69.18 +2019-08-26;10356.7;135.09 +2019-08-25;10145;73.67 +2019-08-24;10143;109.25 +2019-08-23;10405.5;80.12 +2019-08-22;10154.3;124.96 +2019-08-21;10169.3;153.16 +2019-08-20;10742.4;130.19 +2019-08-19;10925.8;136.98 +2019-08-18;10338.9;75.63 +2019-08-17;10230;88.25 +2019-08-16;10365.5;227.55 +2019-08-15;10324.4;246.52 +2019-08-14;10054;227.97 +2019-08-13;10847.1;123.04 +2019-08-12;11418;75.34 +2019-08-11;11568.3;58.6 +2019-08-10;11316.5;157.02 +2019-08-09;11866.8;130.47 +2019-08-08;11995.1;120.95 +2019-08-07;11927;243.72 +2019-08-06;11471.2;325.41 +2019-08-05;11795.2;307.06 +2019-08-04;10995.3;212.41 +2019-08-03;10803.5;126.61 +2019-08-02;10536.2;144.57 +2019-08-01;10400.8;168.46 +2019-07-31;10094.7;155.91 +2019-07-30;9593.3;147.3 +2019-07-29;9520.6;129.18 +2019-07-28;9536.4;108.91 +2019-07-27;9485;317.53 +2019-07-26;9869.8;118.83 +2019-07-25;9905.3;126.11 +2019-07-24;9800;212.02 +2019-07-23;9870.3;221.41 +2019-07-22;10370;210.44 +2019-07-21;10574.4;192.17 +2019-07-20;10724.8;181.33 +2019-07-19;10547.3;204.44 +2019-07-18;10659.6;377.93 +2019-07-17;9693.9;382.02 +2019-07-16;9450.8;397.06 +2019-07-15;10846.8;467.9 +2019-07-14;10239.4;404.66 +2019-07-13;11346.7;298.26 +2019-07-12;11813.7;265.87 +2019-07-11;11378.4;399.77 +2019-07-10;12135.4;712.67 +2019-07-09;12578.1;460.64 +2019-07-08;12300.3;355.26 +2019-07-07;11450.1;164.17 +2019-07-06;11287.8;176.73 +2019-07-05;11016;277.4 +2019-07-04;11282.8;332.76 +2019-07-03;11988.6;542.14 +2019-07-02;10789.7;623.91 +2019-07-01;10579;746.14 +2019-06-30;10773.1;591.01 +2019-06-29;11891.2;675.48 +2019-06-28;12430.1;822.78 +2019-06-27;11235.2;1250.37 +2019-06-26;13140.3;1434.87 +2019-06-25;11805.7;486.81 +2019-06-24;10968.7;214.68 +2019-06-23;10869.6;285.61 +2019-06-22;10728.8;805.43 +2019-06-21;10169.2;430.91 +2019-06-20;9504.4;224.64 +2019-06-19;9278.7;170.62 +2019-06-18;9095.2;298.85 +2019-06-17;9290.4;246.72 +2019-06-16;8980.8;524.71 +2019-06-15;8820.5;177.88 +2019-06-14;8711.6;219.82 +2019-06-13;8298.2;149.22 +2019-06-12;8184.9;237.97 +2019-06-11;7962.9;161.21 +2019-06-10;8064.9;241.87 +2019-06-09;7697.3;185.55 +2019-06-08;7985;104.06 +2019-06-07;8084.8;212.61 +2019-06-06;7859;259.68 +2019-06-05;7866.9;306.4 +2019-06-04;7749.9;764.4 +2019-06-03;8224.1;327.74 +2019-06-02;8735;202.67 +2019-06-01;8633.9;148.48 +2019-05-31;8647.8;330.5 +2019-05-30;8377;497.69 +2019-05-29;8707.6;233.07 +2019-05-28;8702.2;159.32 +2019-05-27;8663.6;307.39 +2019-05-26;8613.8;438.96 +2019-05-25;8060;130.33 +2019-05-24;8021;248.34 +2019-05-23;7929.4;254.39 +2019-05-22;7686.8;253.82 +2019-05-21;7949.6;221.51 +2019-05-20;7950;450.56 +2019-05-19;8171.5;521.58 +2019-05-18;7380.4;300.99 +2019-05-17;7470.7;807.91 +2019-05-16;8020.6;778.76 +2019-05-15;8175.4;306.9 +2019-05-14;8005.3;685.5 +2019-05-13;7907.1;903.51 +2019-05-12;6944.9;774.82 +2019-05-11;7057.2;872.2 +2019-05-10;6421.1;412.76 +2019-05-09;6249.8;261.92 +2019-05-08;5982.6;167.14 +2019-05-07;5949.9;220.93 +2019-05-06;5760;263.08 +2019-05-05;5794.6;167.37 +2019-05-04;5821.5;379.94 +2019-05-03;5693.7;467.57 +2019-05-02;5436.6;169.0 +2019-05-01;5354.2;143.73 +2019-04-30;5317.1;289.57 +2019-04-29;5255.8;233.24 +2019-04-28;5272.5;137.7 +2019-04-27;5281;83.18 +2019-04-26;5243.3;310.15 +2019-04-25;5216.9;357.23 +2019-04-24;5497.7;297.32 +2019-04-23;5574.2;226.3 +2019-04-22;5405.8;223.53 +2019-04-21;5348.5;109.22 +2019-04-20;5365.4;110.37 +2019-04-19;5328.7;221.46 +2019-04-18;5355.7;150.95 +2019-04-17;5307.4;116.87 +2019-04-16;5287.3;490.85 +2019-04-15;5142.1;318.08 +2019-04-14;5247.8;69.43 +2019-04-13;5169;90.22 +2019-04-12;5166.7;134.71 +2019-04-11;5142;245.69 +2019-04-10;5396.2;200.01 +2019-04-09;5282.2;154.84 +2019-04-08;5345;224.49 +2019-04-07;5209.7;145.01 +2019-04-06;5117.7;164.93 +2019-04-05;5079.9;139.19 +2019-04-04;4950.4;250.37 +2019-04-03;4980;792.81 +2019-04-02;4962.1;794.67 +2019-04-01;4212;171.5 +2019-03-19;4038.7;3.91 +2019-03-18;4036.4;220.58 +2019-03-17;4033.1;116.24 +2019-03-16;4038.3;163.21 +2019-03-15;3980.7;147.86 +2019-03-14;3931;165.9 +2019-03-13;3932;175.98 +2019-03-12;3933.7;183.07 +2019-03-11;3921.8;158.48 +2019-03-10;3953.9;126.52 +2019-03-09;3973.2;140.98 +2019-03-08;3893;179.08 +2019-03-07;3898.9;161.85 +2019-03-06;3903.8;141.21 +2019-03-05;3915.2;233.57 +2019-03-04;3785.5;473.09 +2019-03-03;3865.4;99.75 +2019-03-02;3876;73.92 +2019-03-01;3860.2;133.19 +2019-02-28;3847.9;156.01 +2019-02-27;3850.8;203.5 +2019-02-26;3850.9;139.46 +2019-02-25;3869.8;226.1 +2019-02-24;3765.5;836.87 +2019-02-23;4111;242.37 +2019-02-22;3943.5;6.4 +2019-02-21;3928.6;311.49 +2019-02-20;3994.8;155.82 +2019-02-19;3945.6;230.36 +2019-02-18;3904.1;578.5 +2019-02-17;3668;482.65 +2019-02-16;3697.2;99.96 +2019-02-15;3682.3;133.62 +2019-02-14;3677.2;159.07 +2019-02-13;3684.9;110.31 +2019-02-12;3696;140.44 +2019-02-11;3698.9;169.32 +2019-02-10;3751.9;143.12 +2019-02-09;3709.5;176.33 +2019-02-08;3722.3;413.35 +2019-02-07;3481.8;143.79 +2019-02-06;3482.3;179.22 +2019-02-05;3525;95.88 +2019-02-04;3505.9;94.5 +2019-02-03;3495.1;136.25 +2019-02-02;3544.6;95.27 +2019-02-01;3501.6;159.65 +2019-01-31;3493.6;180.29 +2019-01-30;3505.5;182.88 +2019-01-29;3459.4;167.94 +2019-01-28;3493;360.92 +2019-01-27;3598.8;199.62 +2019-01-26;3613.5;248.4 +2019-01-25;3612;182.38 +2019-01-24;3613;183.25 +2019-01-23;3590;208.28 +2019-01-22;3623.6;351.52 +2019-01-21;3597.9;175.1 +2019-01-20;3602;294.65 +2019-01-19;3738.5;252.97 +2019-01-18;3682.4;493.8 +2019-01-17;3709.8;552.9 +2019-01-16;3672.6;396.3 +2019-01-15;3670.7;252.59 +2019-01-14;3721.8;349.0 +2019-01-13;3590.5;271.68 +2019-01-12;3720;155.34 +2019-01-11;3751.9;267.32 +2019-01-10;3715;478.57 +2019-01-09;4048.8;173.79 +2019-01-08;4044.4;230.58 +2019-01-07;4045.3;374.03 +2019-01-06;4086.1;312.46 +2019-01-05;3865.1;191.18 +2019-01-04;3911.7;178.48 +2019-01-03;3883.1;206.13 +2019-01-02;3971.5;271.87 +2019-01-01;3942.7;191.01 \ No newline at end of file diff --git a/l1 b/l1 deleted file mode 100644 index 76140c26..00000000 --- a/l1 +++ /dev/null @@ -1,6 +0,0 @@ -1) Sforkować repozytorium na Wasze konto -2) Przejść na Waszego forka -3) Ściągnąć wasze repo na dysk i powiązać z repozytorium zdalnym (remote) -4) Napisać sortowanie liczb w dwoma znanymi Wam metodami(język jak ustalaliśmy na laboratorium). Starajcie się napisać funkcje w sposób zwarty, bez żadnych komentarzy czy śmieci w kodzie, w sposób optymalny, z użyciem najlepszych, znanych Wam struktur danych i metod przeglądania ich. Tworząc rozwiązania pracujcie z gitem- dodawajcie na stage, twórzcie commity. Pracujcie na branchu, stwórzcie na potrzeby zadania brancha i nazwijcie go np SortingMethods -5) wypchnijcie zmiany lokalne na repo zdalne -6) utwórzcie merge requesta z brancha SortingMethods do brancha master mojego repo (oryginalnego repo, z którego powstał fork) i nazwijcie go L1. diff --git a/l2 b/l2 deleted file mode 100644 index 89f8155e..00000000 --- a/l2 +++ /dev/null @@ -1,2 +0,0 @@ -Rozwinięcie zadania z listy 1. Do wybranych algorytmów sortowania z listy 1 dobrać 2 inne i zaimplementować je. Napisać funkcję służącą do porównywania algorytmów sortowania, która przyjmuje funkcję i mierzy czas / czasy sortowania. Za jej pomocą porównać algorytmy sortowania. -Pracujcie z gitem, proponuję zrobić osobnego brancha, nazwać go SortingComparison i w nim pracować. Na koniec - jak poprzednio - wysłać na repozytorium remote i wystawić pull request do mojego repozytorium, z którego pierwotnie forkowaliście. Nie akceptuję plików dodanych do gita przez „upload”. Wysyłanie plików na wasze remote repo odbywa się poprzez git push. From 38b65d7bb124f5a3ee4f0f766f0633681d4609fa Mon Sep 17 00:00:00 2001 From: Character004 Date: Sat, 6 Jun 2020 16:32:41 +0200 Subject: [PATCH 2/2] Lab6 --- 100sim_chart.png | Bin 0 -> 30984 bytes Daily.java | 72 + DecisionMaker.java | 134 -- Exchange.java | 221 -- JSONParser.java | 39 - Main.java | 140 +- Offer.java | 37 - Simulator.java | 197 ++ Wallet.java | 111 - bitcoin_stats.csv | 510 ----- btc_history.csv | 1933 +++++++++++++++++ ...0-08-31_100based_2020-06-01_2020-01-01.csv | 86 + ...020-08-31_1based_2020-06-01_2020-01-01.csv | 86 + single_sim_chart.png | Bin 0 -> 25685 bytes wykresy_symulacji.xlsx | Bin 0 -> 41663 bytes 15 files changed, 2419 insertions(+), 1147 deletions(-) create mode 100644 100sim_chart.png create mode 100644 Daily.java delete mode 100644 DecisionMaker.java delete mode 100644 Exchange.java delete mode 100644 JSONParser.java delete mode 100644 Offer.java create mode 100644 Simulator.java delete mode 100644 Wallet.java delete mode 100644 bitcoin_stats.csv create mode 100644 btc_history.csv create mode 100644 sim_to_2020-08-31_100based_2020-06-01_2020-01-01.csv create mode 100644 sim_to_2020-08-31_1based_2020-06-01_2020-01-01.csv create mode 100644 single_sim_chart.png create mode 100644 wykresy_symulacji.xlsx diff --git a/100sim_chart.png b/100sim_chart.png new file mode 100644 index 0000000000000000000000000000000000000000..a26d358e162699730eb516818bc1e2fc7b361508 GIT binary patch literal 30984 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 Mp00i_>zopr0NY8tV*mgE literal 0 HcmV?d00001 diff --git a/Daily.java b/Daily.java new file mode 100644 index 00000000..7fac68bc --- /dev/null +++ b/Daily.java @@ -0,0 +1,72 @@ + +public class Daily { + + private String date; + private double volume, open, max, min, close; + + public Daily(String date, double volume, double open, double max, double min, double close) + { + this.date = date; + this.volume = volume; + this.open = open; + this.max = max; + this.min = min; + this.close = close; + } + + public String getDate() { + return date; + } + + public double getVolume() { + return volume; + } + + public double getOpen() { + return open; + } + + public double getMax() { + return max; + } + + public double getMin() { + return min; + } + + public double getClose() { + return close; + } + + public void combine(Daily other) { + + if(date.equals(other.date)) { + + volume += other.volume; + open += other.open; + max += other.max; + min += other.min; + close += other.close; + } + else throw new IllegalArgumentException("Notowania musza dotyczyc tego samego dnia!"); + } + + public void getAvg(int size) { + volume /= size; + open /= size; + max /= size; + min /= size; + close /= size; + } + + public String toCSV() { + return String.format("%s;%.2f;%.2f;%.2f;%.2f;%.2f", date, volume, open, max, min, close); + } + + @Override + public String toString() { + return String.format("%-14s Wolumen: %-10.2f Otwarcie: %-10.2f Max: %-10.2f Min: %-10.2f Zamkniecie: %-10.2f", date, volume, open, max, min, close); + } + + +} diff --git a/DecisionMaker.java b/DecisionMaker.java deleted file mode 100644 index a33ba58f..00000000 --- a/DecisionMaker.java +++ /dev/null @@ -1,134 +0,0 @@ -import java.util.ArrayList; -import java.io.BufferedReader; -import java.io.FileReader; -import java.time.LocalDate; - -public class DecisionMaker -{ - private ArrayList historical; - private double expAverage; - - public class Quotation { - - private String date; - private double close, volume; - - public Quotation(String date, double close, double volume) { - this.date = date; - this.close = close; - this.volume = volume; - } - - public String getDate() { - return date; - } - - public double getClose() { - return close; - } - - public double getVolume() { - return volume; - } - - @Override - public String toString() { - return String.format("%s kurs: %.2f wolumen: %.2f", date, close, volume); - } - } - - //tworzenie agenta decyzyjnego w oparciu o dane historyczne i analizowany przedzial czasowy (data w formacie rrrr-mm-dd) - public DecisionMaker(String csvFile, String dateToAnalyzeFrom) throws Exception { - historical = new ArrayList<>(); - LocalDate today=LocalDate.now(), since = LocalDate.parse(dateToAnalyzeFrom); - - if(today.isBefore(since)) throw new IllegalArgumentException("Podana data musi by wczeniejsza od dzisiejszej!"); - else if (since.isBefore(LocalDate.of(2019, 1, 1))) throw new IllegalArgumentException("Podana data musi by pniejsza ni 1 stycznia 2020r."); - else { - - try { - BufferedReader buffer = new BufferedReader(new FileReader(csvFile)); - String [] dane; String line=""; - - while( (line=buffer.readLine()) != null) { - - dane = line.replaceAll("[^0-9.;-]", "").split(";"); - historical.add(new Quotation(dane[0], Double.parseDouble(dane[1]), Double.parseDouble(dane[2]))); - if(line.contains(dateToAnalyzeFrom)) break; - } - - buffer.close(); - } - catch (Exception e) { - System.out.println("Nie mona odnale pliku!"); - } - - expAverage=exponentialAverage(); - } - - } - - public ArrayList getHistorical() { - return historical; - } - - public double getExpAverage() { - return expAverage; - } - - public int makeDecision(double currentPrice) { - - double currentAverage = exponentialAverage(currentPrice); - - // jesli wykres sredniej exponencjalnej przecina sie z wykresem kursu waluty od dolu wysylany jest sygnal kupna - - if(expAverage=currentPrice && currentPrice > currentAverage) { - System.out.println("SPRZEDAJ"); - return -1; - } - - else { - System.out.println("CZEKAJ"); - return 0; - } - } - - // wyliczanie sredniej wazonej eksponencjalnej na podstawie danych historycznych - private double exponentialAverage() { - - int N = historical.size(); - double sum = 0, weights = 0; - - for(int i=0; i bids, asks; - - public Exchange(String name, String currency1, String currency2, int quantity) { - this.name = name; - this.currency1 = currency1; - this.currency2 = currency2; - this.bids = new ArrayList(); - this.asks = new ArrayList(); - createParser(); - fillData(quantity); - } - - public ArrayList getBids() { - return bids; - } - - public ArrayList getAsks() { - return asks; - } - - public void printOrderbook() { - - System.out.println("\n------------------------------------------------\n"+ name + " Exchange\t("+currency1+" - "+currency2+")"); - System.out.println("\nBIDS\n------------------------------------------------"); - - for(Offer bid : bids) { - System.out.println("BID: " + bid); - } - System.out.println("------------------------------------------------\n\nASKS\n------------------------------------------------"); - - - for(Offer ask : asks) { - System.out.println("ASK: " + ask); - } - System.out.println("------------------------------------------------"); - } - - public void update(int quantity) { - parser.updateData(); - fillData(quantity); - } - - private void fillData(int quantity) { - switch(name) { - case "BitBay": - bitbayData(quantity); - break; - case "CEX.IO": - cexioData(quantity); - break; - case "WhiteBit": - whitebitData(quantity); - break; - case "Ftx": - ftxData(quantity); - break; - default: - System.out.println("Nie obsugiwane rdo!"); - } - } - - private void bitbayData(int quantity) { - - String [] tab = parser.getData(); - int i=0, counter=0; - - tab[0]=tab[0].replace("bids", ""); - - for(; !tab[i].contains("asks"); i+=2) { - - if(counter < quantity) { - if(bids.size()==counter) bids.add(new Offer(Double.parseDouble(tab[i]),Double.parseDouble(tab[i+1]))); - else bids.set(counter, new Offer(Double.parseDouble(tab[i]),Double.parseDouble(tab[i+1]))); - counter++; - } - } - - counter = 0; - tab[i]=tab[i].replace("asks", ""); - - for(; i generated) { - for(int i=0; i=0.01) { - - System.out.println(String.format("Na giedzie %s mona kupi %.8f %s za %s po kursie %.2f i sprzeda na giedzie %s po kursie %.2f zyskujc %.2f%s.", - names[j], current.getAmmount(), currency[2*i], currency[2*i+1], current.getPrice(), names[k], analyze.getPrice(), influence-cost, currency[2*i+1])); - - if(influence-cost>best) best=influence-cost; - } - } - } - - System.out.println(); - if(best>0)portfel.add(currency[2*i+1], best); + try { + BufferedWriter buffer = new BufferedWriter(new FileWriter(filename)); + for(int i=0; i 0) + { + Simulator simulator = new Simulator("btc_history.csv", learnFrom, learnTo); + simulator.showModificators(); + System.out.println("Symulacja nr"+1); + simulator.simulate(date, printOutput); - if(i>0) gielda.update(1); - Offer buy=gielda.getAsks().get(0), sell=gielda.getBids().get(0); + ArrayList predictions = simulator.getGenerated(); + double predSize = predictions.size(); - // decyzja jest podejmowana w oparciu o cene potencjalnego zakupu - int decision = agent.makeDecision(sell.getPrice()); - - if(decision==1) { - - double price = sell.getPrice()*sell.getAmmount()*(1+tax); - if(portfel.sell("USD", price)) { - portfel.add("BTC", sell.getAmmount(), price); - System.out.println(String.format("Zakupiono %.8fBTC", sell.getAmmount())); + for(int i=1; i notowania; + private ArrayList generated; + private int dataSize; + private double volumeModificator; + private double closeValueMod, closeDistrFunction; + private double minModificator; + private double maxModificator; + + public Simulator(String csvFile, String fromDate, String toDate) throws Exception { + notowania = new ArrayList<>(); + generated = new ArrayList<>(); + dataSize=0; + LocalDate today=LocalDate.now().plusDays(1), since = LocalDate.parse(fromDate).plusDays(1); + + if(today.isBefore(since)) throw new IllegalArgumentException("Podana data musi byc wczesniejsza lub rowna dzisiejszej!"); + else if (since.isBefore(LocalDate.of(2016, 1, 1))) throw new IllegalArgumentException("Podana data musi by pozniejsza ni 1 stycznia 2016r."); + else { + + try { + BufferedReader buffer = new BufferedReader(new FileReader(csvFile)); + String [] dane; String line=""; + + while( (line=buffer.readLine()) != null) { + + dane = line.replaceAll("[^0-9.;-]", "").split(";"); + + if(current==null) current = new Daily(LocalDate.now().toString(), Double.parseDouble(dane[1]), Double.parseDouble(dane[2]), + Double.parseDouble(dane[3]), Double.parseDouble(dane[4]), Double.parseDouble(dane[5])); + + if(LocalDate.parse(dane[0]).isBefore(since)) { + notowania.add(new Daily(dane[0], Double.parseDouble(dane[1]), Double.parseDouble(dane[2]), + Double.parseDouble(dane[3]), Double.parseDouble(dane[4]), Double.parseDouble(dane[5]))); + dataSize++; + + if(line.contains(toDate)) break; + } + } + + buffer.close(); + } + catch (Exception e) { + System.out.println("Nie mona odnalezc pliku!"); + } + } + calcModificators(); + } + + public ArrayList getNotowania() { + return notowania; + } + + public void showModificators() + { + System.out.println("\nPARAMETRY SYMULACJI:"); + System.out.println("VolumeModificator: "+volumeModificator); + System.out.println("CloseValueMod: "+closeValueMod + "\tcloseDistrFunction: " + closeDistrFunction); + System.out.println("MinModificator: "+minModificator); + System.out.println("MaxModificator: "+maxModificator + "\n"); + } + + public void simulate(String toDate, boolean printOutput) + { + LocalDate target = LocalDate.parse(toDate); + if(LocalDate.now().plusDays(1).isAfter(target)) throw new IllegalArgumentException("Data do symulacji musi byc w przyszlosci!"); + else + { + generated = new ArrayList(); + generated.add(makePrediction(current)); + int daystoTarget = (int)ChronoUnit.DAYS.between(LocalDate.now(), target); + + for(int i=1; i getGenerated() { + return generated; + } + + private void calcModificators() + { + double volMod=0.0, closeVal=0.0, closeDistr=0, minMod=0.0, maxMod=0.0; + + for(int i=0; i notowania.get(i+1).getClose()) closeDistr++; + volMod += Math.abs(notowania.get(i).getVolume() - notowania.get(i+1).getVolume()); + closeVal += Math.abs(notowania.get(i).getClose() - notowania.get(i+1).getClose()); + minMod += notowania.get(i).getOpen() - notowania.get(i).getMin(); + maxMod += notowania.get(i).getMax() - notowania.get(i).getOpen(); + } + minMod += notowania.get(dataSize-1).getOpen() - notowania.get(dataSize-1).getMin(); + maxMod += notowania.get(dataSize-1).getMax() - notowania.get(dataSize-1).getOpen(); + + volumeModificator = volMod/(dataSize-1); + closeValueMod = closeVal/(dataSize-1); + closeDistrFunction = closeDistr/(dataSize-1); + minModificator = minMod/dataSize; + maxModificator = maxMod/dataSize; + } + + private Daily makePrediction(Daily previous) + { + Random rand = new Random(); + String date; + double volume, open, max, min, close; + + date = LocalDate.parse(previous.getDate()).plusDays(1).toString(); + volume = Math.max(0, previous.getVolume() + ((double)Math.round((rand.nextGaussian()+0.072)*volumeModificator*100)/100)); + open = previous.getClose(); + max = Math.max(0, open + ((double)Math.round(Math.abs(rand.nextGaussian()*0.7)*maxModificator*100)/100)); + min = Math.max(0, open - ((double)Math.round(Math.abs(rand.nextGaussian()*0.7)*maxModificator*100)/100)); + + double tendention = rand.nextDouble(), change = ((double)Math.round(Math.abs(rand.nextGaussian()*0.8)*closeValueMod*100)/100); + + if(tendention<=closeDistrFunction) + { + close = Math.max(0, previous.getClose() + change); + } + else + { + close = Math.max(0, previous.getClose() - change); + } + + return new Daily(date, volume, open, max, min, close); + } + +} diff --git a/Wallet.java b/Wallet.java deleted file mode 100644 index 10b28f34..00000000 --- a/Wallet.java +++ /dev/null @@ -1,111 +0,0 @@ -import java.util.ArrayList; - -public class Wallet { - - private class Fund { - - String currency; - double ammount; - - private Fund(String currency, double ammount) { - this.currency = currency; - this.ammount = ammount; - } - - @Override - public String toString() { - if(currency.equals("USD")) return String.format("%.2f", ammount)+currency; - else return String.format("%.8f", ammount)+currency; - } - } - - ArrayList funds; - ArrayList bought; - - public Wallet() { - funds = new ArrayList(); - bought = new ArrayList(); - } - - public Wallet(String currency, double startingFunds) { - - funds = new ArrayList(); - bought = new ArrayList(); - add(currency, startingFunds); - } - - public void add(String currency, double ammount) { - - boolean added = false; - for(Fund f : funds) { - - if(f.currency.equals(currency)) { - - f.ammount+=ammount; - added = true; - break; - } - - } - if(!added) funds.add(new Fund(currency, ammount)); - } - - public void add(String currency, double ammount, double boughtPrice) { - - add(currency, ammount); - bought.add(new Offer(boughtPrice,ammount)); - } - - public boolean sell(String currency, double ammount) { - - for(Fund f: funds) { - - if(f.currency.equals(currency) && f.ammount >= ammount) { - - f.ammount-=ammount; - System.out.println("\nSprzedano "+ammount+currency); - return true; - } - } - - System.out.println("Brak rodkw na wykonanie transakcji!"); - return false; - } - - public boolean profitable(double price, double ammount) { - - double sum = 0; - - for(Offer o : bought) { - - if(o.getPrice()<=price) sum+=o.getAmmount(); - } - - return sum>=ammount; - } - - public double getCurrentValue(String currency, double price) { - - double value=0.0; - - for(Fund f : funds) { - - if(f.currency=="USD") value+=f.ammount; - else if(f.currency=="BTC") value+=(f.ammount*price); - } - - return value; - } - - @Override - public String toString() { - - String output="WALLET\n"; - for(Fund f : funds) { - - output+=f+"\n"; - } - - return output; - } -} \ No newline at end of file diff --git a/bitcoin_stats.csv b/bitcoin_stats.csv deleted file mode 100644 index 5803bf84..00000000 --- a/bitcoin_stats.csv +++ /dev/null @@ -1,510 +0,0 @@ -2020-06-05;9829.9;12.35 -2020-06-04;9800.8;214.15 -2020-06-03;9665.4;177.46 -2020-06-02;9520;332.9 -2020-06-01;10194;241.85 -2020-05-31;9446.9;173.13 -2020-05-30;9700.1;180.32 -2020-05-29;9428.6;209.62 -2020-05-28;9564.3;392.57 -2020-05-27;9200;301.05 -2020-05-26;8855.4;196.89 -2020-05-25;8909.6;268.88 -2020-05-24;8721.9;266.73 -2020-05-23;9198.7;159.72 -2020-05-22;9178.4;185.93 -2020-05-21;9044.8;424.84 -2020-05-20;9527.6;429.66 -2020-05-19;9799.8;388.46 -2020-05-18;9742.2;358.04 -2020-05-17;9682.9;491.97 -2020-05-16;9384.8;250.0 -2020-05-15;9319.9;502.33 -2020-05-14;9788.1;725.74 -2020-05-13;9327.4;461.62 -2020-05-12;8837.4;334.94 -2020-05-11;8569.4;1042.46 -2020-05-10;8748.2;962.3 -2020-05-09;9544.5;387.93 -2020-05-08;9822.5;440.52 -2020-05-07;9996.6;754.32 -2020-05-06;9168.6;481.59 -2020-05-05;9035.3;329.31 -2020-05-04;8904;295.17 -2020-05-03;8916.9;392.66 -2020-05-02;8993.3;231.28 -2020-05-01;8838.1;366.96 -2020-04-30;8626.9;1101.0 -2020-04-29;8778.3;1160.99 -2020-04-28;7772.9;202.11 -2020-04-27;7786.9;286.61 -2020-04-26;7700;214.73 -2020-04-25;7541;204.3 -2020-04-24;7526.4;226.03 -2020-04-23;7492.8;513.86 -2020-04-22;7140.3;236.58 -2020-04-21;6872.9;242.28 -2020-04-20;6848.7;359.21 -2020-04-19;7136.5;172.12 -2020-04-18;7258.1;231.42 -2020-04-17;7036.4;255.56 -2020-04-16;7122;791.79 -2020-04-15;6647.4;201.44 -2020-04-14;6888.2;167.14 -2020-04-13;6863.1;328.5 -2020-04-12;6917.2;180.92 -2020-04-11;6900;110.59 -2020-04-10;6877.7;388.77 -2020-04-09;7310.9;296.88 -2020-04-08;7378.1;195.82 -2020-04-07;7214.7;380.09 -2020-04-06;7356.4;394.76 -2020-04-05;6792.9;232.16 -2020-04-04;6880.5;270.97 -2020-04-03;6743;323.53 -2020-04-02;6813.5;529.44 -2020-04-01;6635.8;336.31 -2020-03-31;6441.5;241.75 -2020-03-30;6403.6;375.3 -2020-03-29;5895.8;231.69 -2020-03-28;6271.6;317.48 -2020-03-27;6383.2;263.85 -2020-03-26;6771.4;232.07 -2020-03-25;6709.7;333.64 -2020-03-24;6781;435.3 -2020-03-23;6483.1;374.14 -2020-03-22;5849.9;347.26 -2020-03-21;6212.2;325.75 -2020-03-20;6220.9;653.28 -2020-03-19;6220.4;627.04 -2020-03-18;5411;405.8 -2020-03-17;5381.4;479.13 -2020-03-16;5057.4;1047.09 -2020-03-15;5422.9;383.12 -2020-03-14;5250;372.17 -2020-03-13;5686.9;1281.48 -2020-03-12;4920.5;1440.79 -2020-03-11;7942.1;177.14 -2020-03-10;7904.8;238.66 -2020-03-09;7947.7;313.55 -2020-03-08;8059.2;245.95 -2020-03-07;8923.1;115.26 -2020-03-06;9159.7;92.16 -2020-03-05;9086;193.33 -2020-03-04;8797.8;76.41 -2020-03-03;8796.1;74.65 -2020-03-02;8926.5;121.13 -2020-03-01;8572.8;80.52 -2020-02-29;8559;51.5 -2020-02-28;8698.3;164.31 -2020-02-27;8849.8;153.84 -2020-02-26;8821.3;234.45 -2020-02-25;9333.8;123.46 -2020-02-24;9690.6;138.25 -2020-02-23;9999.9;88.53 -2020-02-22;9700.7;42.52 -2020-02-21;9721;80.65 -2020-02-20;9606.2;114.64 -2020-02-19;9617.3;229.99 -2020-02-18;10178.8;199.58 -2020-02-17;9745.1;160.14 -2020-02-16;9950.9;91.13 -2020-02-15;9905;149.31 -2020-02-14;10375;68.63 -2020-02-13;10241;153.15 -2020-02-12;10381.6;101.27 -2020-02-11;10288.5;147.74 -2020-02-10;9879.5;134.78 -2020-02-09;10179.8;118.68 -2020-02-08;9928.9;83.28 -2020-02-07;9834.9;62.79 -2020-02-06;9773.2;115.93 -2020-02-05;9616;129.8 -2020-02-04;9193.6;89.85 -2020-02-03;9313.7;99.75 -2020-02-02;9350.9;74.96 -2020-02-01;9395;55.11 -2020-01-31;9356.7;109.44 -2020-01-30;9540.8;103.16 -2020-01-29;9306.5;113.94 -2020-01-28;9359.7;143.71 -2020-01-27;8912.1;121.7 -2020-01-26;8600;90.68 -2020-01-25;8367.7;46.5 -2020-01-24;8456.9;93.28 -2020-01-23;8424;137.09 -2020-01-22;8681.9;83.0 -2020-01-21;8760.7;86.41 -2020-01-20;8663.6;86.29 -2020-01-19;8718;184.58 -2020-01-18;8939.9;69.92 -2020-01-17;8914.8;135.28 -2020-01-16;8747.1;96.37 -2020-01-15;8818.2;166.11 -2020-01-14;8847.6;253.32 -2020-01-13;8133;56.19 -2020-01-12;8190;66.13 -2020-01-11;8053.8;106.28 -2020-01-10;8200;149.45 -2020-01-09;7855;104.68 -2020-01-08;8069.9;187.28 -2020-01-07;8189.5;176.67 -2020-01-06;7795.3;105.03 -2020-01-05;7387.4;69.14 -2020-01-04;7379.8;40.88 -2020-01-03;7351.3;174.0 -2020-01-02;6984.8;122.34 -2020-01-01;7238.2;64.92 -2019-12-31;7258.7;66.87 -2019-12-30;7277.3;60.2 -2019-12-29;7412.7;58.83 -2019-12-28;7326.2;69.62 -2019-12-27;7277;82.51 -2019-12-26;7231.7;77.39 -2019-12-25;7234.3;54.69 -2019-12-24;7268.1;116.83 -2019-12-23;7362.2;139.99 -2019-12-22;7537;125.15 -2019-12-21;7218.2;33.67 -2019-12-20;7236.8;71.08 -2019-12-19;7214.5;110.28 -2019-12-18;7331;355.05 -2019-12-17;6707.2;212.21 -2019-12-16;6956.5;159.85 -2019-12-15;7166.8;50.65 -2019-12-14;7136.7;80.33 -2019-12-13;7291.9;97.24 -2019-12-12;7264;86.03 -2019-12-11;7280.2;78.18 -2019-12-10;7309.3;114.16 -2019-12-09;7408;106.2 -2019-12-08;7584.9;61.27 -2019-12-07;7575.5;48.24 -2019-12-06;7599.9;108.96 -2019-12-05;7455.9;134.65 -2019-12-04;7258;220.98 -2019-12-03;7372.1;112.65 -2019-12-02;7392.9;145.15 -2019-12-01;7475.7;133.71 -2019-11-30;7617.9;160.03 -2019-11-29;7827.9;136.14 -2019-11-28;7517.2;114.76 -2019-11-27;7560;275.02 -2019-11-26;7249.9;148.63 -2019-11-25;7156.9;411.48 -2019-11-24;6985.2;202.48 -2019-11-23;7377.3;127.32 -2019-11-22;7339.9;617.5 -2019-11-21;7683.4;374.93 -2019-11-20;8147.8;68.05 -2019-11-19;8158;145.35 -2019-11-18;8240;130.96 -2019-11-17;8549.4;36.94 -2019-11-16;8510.2;32.12 -2019-11-15;8522.6;134.5 -2019-11-14;8693.3;80.8 -2019-11-13;8828.1;76.39 -2019-11-12;8849.9;93.53 -2019-11-11;8783.9;101.63 -2019-11-10;9068.3;72.98 -2019-11-09;8833.7;79.02 -2019-11-08;8838.3;233.15 -2019-11-07;9244.1;96.54 -2019-11-06;9402.9;55.82 -2019-11-05;9349.4;89.44 -2019-11-04;9408.8;97.72 -2019-11-03;9250.8;45.67 -2019-11-02;9332.7;52.95 -2019-11-01;9262.5;83.29 -2019-10-31;9183.2;177.2 -2019-10-30;9208.9;159.89 -2019-10-29;9439.3;137.59 -2019-10-28;9236.8;192.53 -2019-10-27;9538.8;296.38 -2019-10-26;9227;562.1 -2019-10-25;8652.3;302.31 -2019-10-24;7450;90.53 -2019-10-23;7487.5;285.17 -2019-10-22;8072.9;84.1 -2019-10-21;8249.5;90.1 -2019-10-20;8250;63.12 -2019-10-19;7984;61.72 -2019-10-18;7991.1;85.37 -2019-10-17;8106;87.8 -2019-10-16;8023.5;92.84 -2019-10-15;8189.2;95.11 -2019-10-14;8354.4;105.74 -2019-10-13;8320;83.33 -2019-10-12;8333.1;40.54 -2019-10-11;8292.6;100.67 -2019-10-10;8601.9;109.24 -2019-10-09;8613.1;143.36 -2019-10-08;8206.1;70.31 -2019-10-07;8208.9;191.99 -2019-10-06;7924.3;133.78 -2019-10-05;8154.9;46.02 -2019-10-04;8179.7;101.74 -2019-10-03;8267.4;128.15 -2019-10-02;8386.9;63.24 -2019-10-01;8347.5;147.57 -2019-09-30;8321.3;186.13 -2019-09-29;8080;71.0 -2019-09-28;8233.1;82.87 -2019-09-27;8222.5;134.79 -2019-09-26;8051.6;271.71 -2019-09-25;8467.3;174.09 -2019-09-24;8592;531.67 -2019-09-23;9712;97.62 -2019-09-22;10061.4;50.4 -2019-09-21;9999.3;70.02 -2019-09-20;10195.9;49.73 -2019-09-19;10280.4;193.1 -2019-09-18;10182.1;85.71 -2019-09-17;10192;73.48 -2019-09-16;10292.4;83.98 -2019-09-15;10299.9;26.35 -2019-09-14;10368.2;54.31 -2019-09-13;10373.4;86.13 -2019-09-12;10406.9;85.66 -2019-09-11;10170;123.14 -2019-09-10;10137.7;91.03 -2019-09-09;10311.4;98.71 -2019-09-08;10401.9;58.56 -2019-09-07;10468.4;85.1 -2019-09-06;10326.6;194.59 -2019-09-05;10575;74.23 -2019-09-04;10592.4;136.78 -2019-09-03;10647.2;172.68 -2019-09-02;10390;162.55 -2019-09-01;9755.3;53.69 -2019-08-31;9620.3;48.78 -2019-08-30;9603.9;66.27 -2019-08-29;9506.9;164.43 -2019-08-28;9741;208.05 -2019-08-27;10191.4;69.18 -2019-08-26;10356.7;135.09 -2019-08-25;10145;73.67 -2019-08-24;10143;109.25 -2019-08-23;10405.5;80.12 -2019-08-22;10154.3;124.96 -2019-08-21;10169.3;153.16 -2019-08-20;10742.4;130.19 -2019-08-19;10925.8;136.98 -2019-08-18;10338.9;75.63 -2019-08-17;10230;88.25 -2019-08-16;10365.5;227.55 -2019-08-15;10324.4;246.52 -2019-08-14;10054;227.97 -2019-08-13;10847.1;123.04 -2019-08-12;11418;75.34 -2019-08-11;11568.3;58.6 -2019-08-10;11316.5;157.02 -2019-08-09;11866.8;130.47 -2019-08-08;11995.1;120.95 -2019-08-07;11927;243.72 -2019-08-06;11471.2;325.41 -2019-08-05;11795.2;307.06 -2019-08-04;10995.3;212.41 -2019-08-03;10803.5;126.61 -2019-08-02;10536.2;144.57 -2019-08-01;10400.8;168.46 -2019-07-31;10094.7;155.91 -2019-07-30;9593.3;147.3 -2019-07-29;9520.6;129.18 -2019-07-28;9536.4;108.91 -2019-07-27;9485;317.53 -2019-07-26;9869.8;118.83 -2019-07-25;9905.3;126.11 -2019-07-24;9800;212.02 -2019-07-23;9870.3;221.41 -2019-07-22;10370;210.44 -2019-07-21;10574.4;192.17 -2019-07-20;10724.8;181.33 -2019-07-19;10547.3;204.44 -2019-07-18;10659.6;377.93 -2019-07-17;9693.9;382.02 -2019-07-16;9450.8;397.06 -2019-07-15;10846.8;467.9 -2019-07-14;10239.4;404.66 -2019-07-13;11346.7;298.26 -2019-07-12;11813.7;265.87 -2019-07-11;11378.4;399.77 -2019-07-10;12135.4;712.67 -2019-07-09;12578.1;460.64 -2019-07-08;12300.3;355.26 -2019-07-07;11450.1;164.17 -2019-07-06;11287.8;176.73 -2019-07-05;11016;277.4 -2019-07-04;11282.8;332.76 -2019-07-03;11988.6;542.14 -2019-07-02;10789.7;623.91 -2019-07-01;10579;746.14 -2019-06-30;10773.1;591.01 -2019-06-29;11891.2;675.48 -2019-06-28;12430.1;822.78 -2019-06-27;11235.2;1250.37 -2019-06-26;13140.3;1434.87 -2019-06-25;11805.7;486.81 -2019-06-24;10968.7;214.68 -2019-06-23;10869.6;285.61 -2019-06-22;10728.8;805.43 -2019-06-21;10169.2;430.91 -2019-06-20;9504.4;224.64 -2019-06-19;9278.7;170.62 -2019-06-18;9095.2;298.85 -2019-06-17;9290.4;246.72 -2019-06-16;8980.8;524.71 -2019-06-15;8820.5;177.88 -2019-06-14;8711.6;219.82 -2019-06-13;8298.2;149.22 -2019-06-12;8184.9;237.97 -2019-06-11;7962.9;161.21 -2019-06-10;8064.9;241.87 -2019-06-09;7697.3;185.55 -2019-06-08;7985;104.06 -2019-06-07;8084.8;212.61 -2019-06-06;7859;259.68 -2019-06-05;7866.9;306.4 -2019-06-04;7749.9;764.4 -2019-06-03;8224.1;327.74 -2019-06-02;8735;202.67 -2019-06-01;8633.9;148.48 -2019-05-31;8647.8;330.5 -2019-05-30;8377;497.69 -2019-05-29;8707.6;233.07 -2019-05-28;8702.2;159.32 -2019-05-27;8663.6;307.39 -2019-05-26;8613.8;438.96 -2019-05-25;8060;130.33 -2019-05-24;8021;248.34 -2019-05-23;7929.4;254.39 -2019-05-22;7686.8;253.82 -2019-05-21;7949.6;221.51 -2019-05-20;7950;450.56 -2019-05-19;8171.5;521.58 -2019-05-18;7380.4;300.99 -2019-05-17;7470.7;807.91 -2019-05-16;8020.6;778.76 -2019-05-15;8175.4;306.9 -2019-05-14;8005.3;685.5 -2019-05-13;7907.1;903.51 -2019-05-12;6944.9;774.82 -2019-05-11;7057.2;872.2 -2019-05-10;6421.1;412.76 -2019-05-09;6249.8;261.92 -2019-05-08;5982.6;167.14 -2019-05-07;5949.9;220.93 -2019-05-06;5760;263.08 -2019-05-05;5794.6;167.37 -2019-05-04;5821.5;379.94 -2019-05-03;5693.7;467.57 -2019-05-02;5436.6;169.0 -2019-05-01;5354.2;143.73 -2019-04-30;5317.1;289.57 -2019-04-29;5255.8;233.24 -2019-04-28;5272.5;137.7 -2019-04-27;5281;83.18 -2019-04-26;5243.3;310.15 -2019-04-25;5216.9;357.23 -2019-04-24;5497.7;297.32 -2019-04-23;5574.2;226.3 -2019-04-22;5405.8;223.53 -2019-04-21;5348.5;109.22 -2019-04-20;5365.4;110.37 -2019-04-19;5328.7;221.46 -2019-04-18;5355.7;150.95 -2019-04-17;5307.4;116.87 -2019-04-16;5287.3;490.85 -2019-04-15;5142.1;318.08 -2019-04-14;5247.8;69.43 -2019-04-13;5169;90.22 -2019-04-12;5166.7;134.71 -2019-04-11;5142;245.69 -2019-04-10;5396.2;200.01 -2019-04-09;5282.2;154.84 -2019-04-08;5345;224.49 -2019-04-07;5209.7;145.01 -2019-04-06;5117.7;164.93 -2019-04-05;5079.9;139.19 -2019-04-04;4950.4;250.37 -2019-04-03;4980;792.81 -2019-04-02;4962.1;794.67 -2019-04-01;4212;171.5 -2019-03-19;4038.7;3.91 -2019-03-18;4036.4;220.58 -2019-03-17;4033.1;116.24 -2019-03-16;4038.3;163.21 -2019-03-15;3980.7;147.86 -2019-03-14;3931;165.9 -2019-03-13;3932;175.98 -2019-03-12;3933.7;183.07 -2019-03-11;3921.8;158.48 -2019-03-10;3953.9;126.52 -2019-03-09;3973.2;140.98 -2019-03-08;3893;179.08 -2019-03-07;3898.9;161.85 -2019-03-06;3903.8;141.21 -2019-03-05;3915.2;233.57 -2019-03-04;3785.5;473.09 -2019-03-03;3865.4;99.75 -2019-03-02;3876;73.92 -2019-03-01;3860.2;133.19 -2019-02-28;3847.9;156.01 -2019-02-27;3850.8;203.5 -2019-02-26;3850.9;139.46 -2019-02-25;3869.8;226.1 -2019-02-24;3765.5;836.87 -2019-02-23;4111;242.37 -2019-02-22;3943.5;6.4 -2019-02-21;3928.6;311.49 -2019-02-20;3994.8;155.82 -2019-02-19;3945.6;230.36 -2019-02-18;3904.1;578.5 -2019-02-17;3668;482.65 -2019-02-16;3697.2;99.96 -2019-02-15;3682.3;133.62 -2019-02-14;3677.2;159.07 -2019-02-13;3684.9;110.31 -2019-02-12;3696;140.44 -2019-02-11;3698.9;169.32 -2019-02-10;3751.9;143.12 -2019-02-09;3709.5;176.33 -2019-02-08;3722.3;413.35 -2019-02-07;3481.8;143.79 -2019-02-06;3482.3;179.22 -2019-02-05;3525;95.88 -2019-02-04;3505.9;94.5 -2019-02-03;3495.1;136.25 -2019-02-02;3544.6;95.27 -2019-02-01;3501.6;159.65 -2019-01-31;3493.6;180.29 -2019-01-30;3505.5;182.88 -2019-01-29;3459.4;167.94 -2019-01-28;3493;360.92 -2019-01-27;3598.8;199.62 -2019-01-26;3613.5;248.4 -2019-01-25;3612;182.38 -2019-01-24;3613;183.25 -2019-01-23;3590;208.28 -2019-01-22;3623.6;351.52 -2019-01-21;3597.9;175.1 -2019-01-20;3602;294.65 -2019-01-19;3738.5;252.97 -2019-01-18;3682.4;493.8 -2019-01-17;3709.8;552.9 -2019-01-16;3672.6;396.3 -2019-01-15;3670.7;252.59 -2019-01-14;3721.8;349.0 -2019-01-13;3590.5;271.68 -2019-01-12;3720;155.34 -2019-01-11;3751.9;267.32 -2019-01-10;3715;478.57 -2019-01-09;4048.8;173.79 -2019-01-08;4044.4;230.58 -2019-01-07;4045.3;374.03 -2019-01-06;4086.1;312.46 -2019-01-05;3865.1;191.18 -2019-01-04;3911.7;178.48 -2019-01-03;3883.1;206.13 -2019-01-02;3971.5;271.87 -2019-01-01;3942.7;191.01 \ No newline at end of file diff --git a/btc_history.csv b/btc_history.csv new file mode 100644 index 00000000..90c2de1a --- /dev/null +++ b/btc_history.csv @@ -0,0 +1,1933 @@ +2020-06-05;12.35;9800.8;9850.9;9760.3;9829.9 +2020-06-04;214.15;9665.4;9891.9;9470;9800.8 +2020-06-03;177.46;9520;9682.5;9400;9665.4 +2020-06-02;332.9;10194;10203.7;9279.3;9520 +2020-06-01;241.85;9446.9;10382.4;9435.8;10194 +2020-05-31;173.13;9700.1;9700.1;9400;9446.9 +2020-05-30;180.32;9428.6;9740;9324.8;9700.1 +2020-05-29;209.62;9564.3;9612.9;9341.2;9428.6 +2020-05-28;392.57;9200;9624.9;9125.1;9564.3 +2020-05-27;301.05;8855.4;9229.9;8830.4;9200 +2020-05-26;196.89;8909.6;9016;8707.6;8855.4 +2020-05-25;268.88;8721.9;8975;8631.3;8909.6 +2020-05-24;266.73;9198.7;9300.8;8700;8721.9 +2020-05-23;159.72;9178.4;9319.1;9100;9198.7 +2020-05-22;185.93;9044.8;9280;8939.3;9178.4 +2020-05-21;424.84;9527.6;9571.2;8810.1;9044.8 +2020-05-20;429.66;9799.8;9844.7;9309.2;9527.6 +2020-05-19;388.46;9742.2;9899.3;9458.5;9799.8 +2020-05-18;358.04;9682.9;9959;9482.3;9742.2 +2020-05-17;491.97;9384.8;9888.9;9345.5;9682.9 +2020-05-16;250.0;9319.9;9600;9211.8;9384.8 +2020-05-15;502.33;9788.1;9840;9123.1;9319.9 +2020-05-14;725.74;9327.4;9951.3;9282.2;9788.1 +2020-05-13;461.62;8837.4;9419.8;8812.8;9327.4 +2020-05-12;334.94;8569.4;8980;8542.6;8837.4 +2020-05-11;1042.46;8748.2;9174.8;8196.2;8569.4 +2020-05-10;962.3;9544.5;9554.8;8100;8748.2 +2020-05-09;387.93;9822.5;9916.3;9521.3;9544.5 +2020-05-08;440.52;9996.6;10048;9720;9822.5 +2020-05-07;754.32;9168.6;10080;9027.3;9996.6 +2020-05-06;481.59;9035.3;9403;8942.1;9168.6 +2020-05-05;329.31;8904;9120.3;8789;9035.3 +2020-05-04;295.17;8916.9;8967.9;8532.8;8904 +2020-05-03;392.66;8993.3;9200;8717;8916.9 +2020-05-02;231.28;8838.1;9020;8776.3;8993.3 +2020-05-01;366.96;8626.9;9062.5;8626.9;8838.1 +2020-04-30;1101.0;8778.3;9479.4;8395.3;8626.9 +2020-04-29;1160.99;7772.9;8985.2;7740;8778.3 +2020-04-28;202.11;7786.9;7786.9;7679.8;7772.9 +2020-04-27;286.61;7700;7800;7645.7;7786.9 +2020-04-26;214.73;7541;7714.1;7505;7700 +2020-04-25;204.3;7526.4;7717.3;7460;7541 +2020-04-24;226.03;7492.8;7623.6;7391.8;7526.4 +2020-04-23;513.86;7140.3;7800;7041;7492.8 +2020-04-22;236.58;6872.9;7170;6839.1;7140.3 +2020-04-21;242.28;6848.7;6963.8;6790.1;6872.9 +2020-04-20;359.21;7136.5;7229.9;6780;6848.7 +2020-04-19;172.12;7258.1;7270.9;7080;7136.5 +2020-04-18;231.42;7036.4;7300;7036.4;7258.1 +2020-04-17;255.56;7122;7160.2;6986.9;7036.4 +2020-04-16;791.79;6647.4;7216.2;6500;7122 +2020-04-15;201.44;6888.2;6944.9;6616;6647.4 +2020-04-14;167.14;6863.1;6989.9;6778.1;6888.2 +2020-04-13;328.5;6917.2;6917.2;6580.1;6863.1 +2020-04-12;180.92;6900;7200;6811.1;6917.2 +2020-04-11;110.59;6877.7;6965.6;6780.8;6900 +2020-04-10;388.77;7310.9;7316.5;6755.1;6877.7 +2020-04-09;296.88;7378.1;7388.1;7124;7310.9 +2020-04-08;195.82;7214.7;7424.8;7171.9;7378.1 +2020-04-07;380.09;7356.4;7489.8;7100;7214.7 +2020-04-06;394.76;6792.9;7370;6776;7356.4 +2020-04-05;232.16;6880.5;6900;6679;6792.9 +2020-04-04;270.97;6743;7000;6666.6;6880.5 +2020-04-03;323.53;6813.5;7050;6620;6743 +2020-04-02;529.44;6635.8;7262.4;6573.3;6813.5 +2020-04-01;336.31;6441.5;6719.9;6160.1;6635.8 +2020-03-31;241.75;6403.6;6539.3;6350;6441.5 +2020-03-30;375.3;5895.8;6605.8;5855.2;6403.6 +2020-03-29;231.69;6271.6;6288.4;5888;5895.8 +2020-03-28;317.48;6383.2;6383.2;6050;6271.6 +2020-03-27;263.85;6771.4;6871.6;6275;6383.2 +2020-03-26;232.07;6709.7;6795.9;6545.1;6771.4 +2020-03-25;333.64;6781;6988.5;6484.4;6709.7 +2020-03-24;435.3;6483.1;6849.2;6424.3;6781 +2020-03-23;374.14;5849.9;6615;5726.1;6483.1 +2020-03-22;347.26;6212.2;6402;5798.1;5849.9 +2020-03-21;325.75;6220.9;6456;5892.2;6212.2 +2020-03-20;653.28;6220.4;6938;5684.6;6220.9 +2020-03-19;627.04;5411;6439.7;5295.4;6220.4 +2020-03-18;405.8;5381.4;5451;5060.9;5411 +2020-03-17;479.13;5057.4;5569.5;4945.9;5381.4 +2020-03-16;1047.09;5422.9;5422.9;4520.1;5057.4 +2020-03-15;383.12;5250;5987.6;5188.2;5422.9 +2020-03-14;372.17;5686.9;5700;5150;5250 +2020-03-13;1281.48;4920.5;6047.7;4001.1;5686.9 +2020-03-12;1440.79;7942.1;7988.8;4707.3;4920.5 +2020-03-11;177.14;7904.8;8000;7610;7942.1 +2020-03-10;238.66;7947.7;8167.9;7745.3;7904.8 +2020-03-09;313.55;8059.2;8200.5;7648.3;7947.7 +2020-03-08;245.95;8923.1;8923.1;8029;8059.2 +2020-03-07;115.26;9159.7;9211.8;8866.4;8923.1 +2020-03-06;92.16;9086;9195;9023.2;9159.7 +2020-03-05;193.33;8797.8;9169.2;8777.4;9086 +2020-03-04;76.41;8796.1;8866.4;8695.5;8797.8 +2020-03-03;74.65;8926.5;8939.9;8674.2;8796.1 +2020-03-02;121.13;8572.8;8986.7;8530;8926.5 +2020-03-01;80.52;8559;8778.6;8450;8572.8 +2020-02-29;51.5;8698.3;8821;8559;8559 +2020-02-28;164.31;8849.8;8932.8;8458.3;8698.3 +2020-02-27;153.84;8821.3;8985;8533;8849.8 +2020-02-26;234.45;9333.8;9381.9;8648.5;8821.3 +2020-02-25;123.46;9690.6;9700.9;9272.5;9333.8 +2020-02-24;138.25;9999.9;10020;9506;9690.6 +2020-02-23;88.53;9700.7;10012.1;9693.7;9999.9 +2020-02-22;42.52;9721;9741;9601;9700.7 +2020-02-21;80.65;9606.2;9799.1;9602;9721 +2020-02-20;114.64;9617.3;9688.8;9423;9606.2 +2020-02-19;229.99;10178.8;10290;9307.7;9617.3 +2020-02-18;199.58;9745.1;10261.4;9639.7;10178.8 +2020-02-17;160.14;9950.9;9954.8;9502;9745.1 +2020-02-16;91.13;9905;10069.6;9660;9950.9 +2020-02-15;149.31;10375;10400;9775;9905 +2020-02-14;68.63;10241;10399.9;10136.7;10375 +2020-02-13;153.15;10381.6;10510;10115.1;10241 +2020-02-12;101.27;10288.5;10466.3;10260;10381.6 +2020-02-11;147.74;9879.5;10390.8;9719.7;10288.5 +2020-02-10;134.78;10179.8;10197.5;9750.8;9879.5 +2020-02-09;118.68;9928.9;10179.8;9916.8;10179.8 +2020-02-08;83.28;9834.9;9937.8;9675.6;9928.9 +2020-02-07;62.79;9773.2;9870;9711;9834.9 +2020-02-06;115.93;9616;9875;9540;9773.2 +2020-02-05;129.8;9193.6;9750.5;9167;9616 +2020-02-04;89.85;9313.7;9369.6;9098;9193.6 +2020-02-03;99.75;9350.9;9603.7;9242;9313.7 +2020-02-02;74.96;9395;9459.9;9173;9350.9 +2020-02-01;55.11;9356.7;9459.8;9301.6;9395 +2020-01-31;109.44;9540.8;9550;9210.5;9356.7 +2020-01-30;103.16;9306.5;9584;9205.5;9540.8 +2020-01-29;113.94;9359.7;9412.3;9210.2;9306.5 +2020-01-28;143.71;8912.1;9360;8900;9359.7 +2020-01-27;121.7;8600;8981.3;8567.6;8912.1 +2020-01-26;90.68;8367.7;8600;8311.3;8600 +2020-01-25;46.5;8456.9;8457.6;8289;8367.7 +2020-01-24;93.28;8424;8528.9;8245.6;8456.9 +2020-01-23;137.09;8681.9;8690.9;8310;8424 +2020-01-22;83.0;8760.7;8798.5;8610;8681.9 +2020-01-21;86.41;8663.6;8765.5;8521;8760.7 +2020-01-20;86.29;8718;8764.8;8510;8663.6 +2020-01-19;184.58;8939.9;9185.5;8510.1;8718 +2020-01-18;69.92;8914.8;8973.4;8830;8939.9 +2020-01-17;135.28;8747.1;8996;8670;8914.8 +2020-01-16;96.37;8818.2;8825;8600;8747.1 +2020-01-15;166.11;8847.6;8890;8584;8818.2 +2020-01-14;253.32;8133;8879.9;8133;8847.6 +2020-01-13;56.19;8190;8206.4;8070;8133 +2020-01-12;66.13;8053.8;8190;7987;8190 +2020-01-11;106.28;8200;8289.4;8008.4;8053.8 +2020-01-10;149.45;7855;8200;7710.1;8200 +2020-01-09;104.68;8069.9;8069.9;7785.9;7855 +2020-01-08;187.28;8189.5;8449.9;7876;8069.9 +2020-01-07;176.67;7795.3;8220;7750.9;8189.5 +2020-01-06;105.03;7387.4;7810.9;7382.1;7795.3 +2020-01-05;69.14;7379.8;7490;7343;7387.4 +2020-01-04;40.88;7351.3;7398;7301.3;7379.8 +2020-01-03;174.0;6984.8;7403.9;6901;7351.3 +2020-01-02;122.34;7238.2;7249.7;6951;6984.8 +2020-01-01;64.92;7258.7;7300;7220.1;7238.2 +2019-12-31;66.87;7277.3;7366.6;7200;7258.7 +2019-12-30;60.2;7412.7;7416.8;7240.3;7277.3 +2019-12-29;58.83;7326.2;7509.5;7300.1;7412.7 +2019-12-28;69.62;7277;7359.7;7270.1;7326.2 +2019-12-27;82.51;7231.7;7286.6;7120.1;7277 +2019-12-26;77.39;7234.3;7447.3;7192.1;7231.7 +2019-12-25;54.69;7268.1;7299.8;7169.7;7234.3 +2019-12-24;116.83;7362.2;7430;7200;7268.1 +2019-12-23;139.99;7537;7709.2;7309.4;7362.2 +2019-12-22;125.15;7218.2;7550;7195;7537 +2019-12-21;33.67;7236.8;7250.9;7178;7218.2 +2019-12-20;71.08;7214.5;7272.5;7142.1;7236.8 +2019-12-19;110.28;7331;7375;7080;7214.5 +2019-12-18;355.05;6707.2;7471.3;6500;7331 +2019-12-17;212.21;6956.5;6999.3;6651.8;6707.2 +2019-12-16;159.85;7166.8;7200;6888.2;6956.5 +2019-12-15;50.65;7136.7;7229.2;7080;7166.8 +2019-12-14;80.33;7291.9;7309.9;7079.3;7136.7 +2019-12-13;97.24;7264;7349.9;7248.7;7291.9 +2019-12-12;86.03;7280.2;7346.1;7154.8;7264 +2019-12-11;78.18;7309.3;7356.2;7207.2;7280.2 +2019-12-10;114.16;7408;7472.9;7250;7309.3 +2019-12-09;106.2;7584.9;7668.5;7369.1;7408 +2019-12-08;61.27;7575.5;7619.9;7430.4;7584.9 +2019-12-07;48.24;7599.9;7644.9;7543;7575.5 +2019-12-06;108.96;7455.9;7613.4;7325.3;7599.9 +2019-12-05;134.65;7258;7494.9;7220;7455.9 +2019-12-04;220.98;7372.1;7788;7138.5;7258 +2019-12-03;112.65;7392.9;7475;7326.1;7372.1 +2019-12-02;145.15;7475.7;7511.9;7250;7392.9 +2019-12-01;133.71;7617.9;7621;7302.4;7475.7 +2019-11-30;160.03;7827.9;7889.9;7520;7617.9 +2019-11-29;136.14;7517.2;7920;7481.7;7827.9 +2019-11-28;114.76;7560;7723.7;7443.7;7517.2 +2019-11-27;275.02;7249.9;7696.1;6915.3;7560 +2019-11-26;148.63;7156.9;7376.7;7091.4;7249.9 +2019-11-25;411.48;6985.2;7396.8;6526.8;7156.9 +2019-11-24;202.48;7377.3;7380;6941.9;6985.2 +2019-11-23;127.32;7339.9;7400;7140.2;7377.3 +2019-11-22;617.5;7683.4;7761.8;6886.8;7339.9 +2019-11-21;374.93;8147.8;8173;7500;7683.4 +2019-11-20;68.05;8158;8250;8083;8147.8 +2019-11-19;145.35;8240;8258.3;8075;8158 +2019-11-18;130.96;8549.4;8556.2;8125;8240 +2019-11-17;36.94;8510.2;8671.8;8424.1;8549.4 +2019-11-16;32.12;8522.6;8584.1;8484;8510.2 +2019-11-15;134.5;8693.3;8825;8428;8522.6 +2019-11-14;80.8;8828.1;8838.9;8602;8693.3 +2019-11-13;76.39;8849.9;8879.1;8750;8828.1 +2019-11-12;93.53;8783.9;8888.3;8629;8849.9 +2019-11-11;101.63;9068.3;9097.5;8608;8783.9 +2019-11-10;72.98;8833.7;9143.7;8789.3;9068.3 +2019-11-09;79.02;8838.3;8934;8780;8833.7 +2019-11-08;233.15;9244.1;9281.4;8700;8838.3 +2019-11-07;96.54;9402.9;9410;9106;9244.1 +2019-11-06;55.82;9349.4;9450;9295.9;9402.9 +2019-11-05;89.44;9408.8;9479.1;9225;9349.4 +2019-11-04;97.72;9250.8;9599.9;9162.1;9408.8 +2019-11-03;45.67;9332.7;9394;9118.2;9250.8 +2019-11-02;52.95;9262.5;9399;9229.6;9332.7 +2019-11-01;83.29;9183.2;9311.5;9088.6;9262.5 +2019-10-31;177.2;9208.9;9439.8;8971.3;9183.2 +2019-10-30;159.89;9439.3;9439.3;9040;9208.9 +2019-10-29;137.59;9236.8;9546.7;9130;9439.3 +2019-10-28;192.53;9538.8;9880;9226.1;9236.8 +2019-10-27;296.38;9227;9798;9115;9538.8 +2019-10-26;562.1;8652.3;10373.4;8649.2;9227 +2019-10-25;302.31;7450;8744.9;7425.3;8652.3 +2019-10-24;90.53;7487.5;7533.2;7374.3;7450 +2019-10-23;285.17;8072.9;8093.4;7347.1;7487.5 +2019-10-22;84.1;8249.5;8331.1;8030;8072.9 +2019-10-21;90.1;8250;8353.8;8183.1;8249.5 +2019-10-20;63.12;7984;8318.9;7918.1;8250 +2019-10-19;61.72;7991.1;8098.1;7915.4;7984 +2019-10-18;85.37;8106;8128.9;7861;7991.1 +2019-10-17;87.8;8023.5;8151;7959.7;8106 +2019-10-16;92.84;8189.2;8194;7947.3;8023.5 +2019-10-15;95.11;8354.4;8400;8117.2;8189.2 +2019-10-14;105.74;8320;8400;8229.4;8354.4 +2019-10-13;83.33;8333.1;8486.8;8184.7;8320 +2019-10-12;40.54;8292.6;8427.1;8283.1;8333.1 +2019-10-11;100.67;8601.9;8813.3;8271.1;8292.6 +2019-10-10;109.24;8613.1;8674.9;8461.7;8601.9 +2019-10-09;143.36;8206.1;8700;8109.7;8613.1 +2019-10-08;70.31;8208.9;8344;8129.9;8206.1 +2019-10-07;191.99;7924.3;8319.6;7819.9;8208.9 +2019-10-06;133.78;8154.9;8182.5;7830.4;7924.3 +2019-10-05;46.02;8179.7;8199.9;8042.7;8154.9 +2019-10-04;101.74;8267.4;8276.4;8055;8179.7 +2019-10-03;128.15;8386.9;8400;8105;8267.4 +2019-10-02;63.24;8347.5;8389.2;8195.4;8386.9 +2019-10-01;147.57;8321.3;8556.9;8225.5;8347.5 +2019-09-30;186.13;8080;8350;7750;8321.3 +2019-09-29;71.0;8233.1;8252.5;7922.8;8080 +2019-09-28;82.87;8222.5;8332.2;8050.1;8233.1 +2019-09-27;134.79;8051.6;8298;7900.2;8222.5 +2019-09-26;271.71;8467.3;8506.6;7726.9;8051.6 +2019-09-25;174.09;8592;8799.9;8277.7;8467.3 +2019-09-24;531.67;9712;9820.1;8105.6;8592 +2019-09-23;97.62;10061.4;10087.3;9651;9712 +2019-09-22;50.4;9999.3;10095;9881.7;10061.4 +2019-09-21;70.02;10195.9;10195.9;9943.6;9999.3 +2019-09-20;49.73;10280.4;10301;10101;10195.9 +2019-09-19;193.1;10182.1;10364.5;9660.1;10280.4 +2019-09-18;85.71;10192;10273.3;10125.3;10182.1 +2019-09-17;73.48;10292.4;10299.9;10155.4;10192 +2019-09-16;83.98;10299.9;10388.9;10102.1;10292.4 +2019-09-15;26.35;10368.2;10393;10265.9;10299.9 +2019-09-14;54.31;10373.4;10429.9;10251.8;10368.2 +2019-09-13;86.13;10406.9;10450;10177.5;10373.4 +2019-09-12;85.66;10170;10443;10051.6;10406.9 +2019-09-11;123.14;10137.7;10275.4;9886.9;10170 +2019-09-10;91.03;10311.4;10399;9981;10137.7 +2019-09-09;98.71;10401.9;10500;10105;10311.4 +2019-09-08;58.56;10468.4;10599.9;10262.1;10401.9 +2019-09-07;85.1;10326.6;10577.9;10326.6;10468.4 +2019-09-06;194.59;10575;10911.3;10220.1;10326.6 +2019-09-05;74.23;10592.4;10663.2;10450.2;10575 +2019-09-04;136.78;10647.2;10800;10381;10592.4 +2019-09-03;172.68;10390;10750;10270.2;10647.2 +2019-09-02;162.55;9755.3;10440;9748.1;10390 +2019-09-01;53.69;9620.3;9824.8;9560.1;9755.3 +2019-08-31;48.78;9603.9;9683.4;9459.5;9620.3 +2019-08-30;66.27;9506.9;9700;9385.1;9603.9 +2019-08-29;164.43;9741;9741;9352.2;9506.9 +2019-08-28;208.05;10191.4;10299.8;9617;9741 +2019-08-27;69.18;10356.7;10375.3;10050.1;10191.4 +2019-08-26;135.09;10145;10650;10137.5;10356.7 +2019-08-25;73.67;10143;10300;9904.8;10145 +2019-08-24;109.25;10405.5;10425;9916.4;10143 +2019-08-23;80.12;10154.3;10454.3;10060.6;10405.5 +2019-08-22;124.96;10169.3;10250;9800;10154.3 +2019-08-21;153.16;10742.4;10800;9900.5;10169.3 +2019-08-20;130.19;10925.8;10976.2;10576.1;10742.4 +2019-08-19;136.98;10338.9;10941;10291.4;10925.8 +2019-08-18;75.63;10230;10527;10096.1;10338.9 +2019-08-17;88.25;10365.5;10479.8;10028.9;10230 +2019-08-16;227.55;10324.4;10541.9;9759.6;10365.5 +2019-08-15;246.52;10054;10471.9;9560.7;10324.4 +2019-08-14;227.97;10847.1;10867.5;9975.8;10054 +2019-08-13;123.04;11418;11461.5;10751;10847.1 +2019-08-12;75.34;11568.3;11568.3;11271;11418 +2019-08-11;58.6;11316.5;11590;11142.7;11568.3 +2019-08-10;157.02;11866.8;11944.4;11262.7;11316.5 +2019-08-09;130.47;11995.1;12039.8;11665.1;11866.8 +2019-08-08;120.95;11927;12040.9;11550;11995.1 +2019-08-07;243.72;11471.2;12149.9;11411.4;11927 +2019-08-06;325.41;11795.2;12284.2;11216.6;11471.2 +2019-08-05;307.06;10995.3;11951.4;10988.4;11795.2 +2019-08-04;212.41;10803.5;11065.5;10544.1;10995.3 +2019-08-03;126.61;10536.2;10918.9;10501;10803.5 +2019-08-02;144.57;10400.8;10673;10332.2;10536.2 +2019-08-01;168.46;10094.7;10494.9;9890;10400.8 +2019-07-31;155.91;9593.3;10120;9581.6;10094.7 +2019-07-30;147.3;9520.6;9740;9410.8;9593.3 +2019-07-29;129.18;9536.4;9708;9421.1;9520.6 +2019-07-28;108.91;9485;9635.4;9163.3;9536.4 +2019-07-27;317.53;9869.8;10193.8;9351;9485 +2019-07-26;118.83;9905.3;9905.3;9676.7;9869.8 +2019-07-25;126.11;9800;10199.7;9769;9905.3 +2019-07-24;212.02;9870.3;9938;9542.4;9800 +2019-07-23;221.41;10370;10382.9;9836.8;9870.3 +2019-07-22;210.44;10574.4;10665.9;10130;10370 +2019-07-21;192.17;10724.8;10831.6;10351.5;10574.4 +2019-07-20;181.33;10547.3;11050;10427.3;10724.8 +2019-07-19;204.44;10659.6;10749.9;10182.1;10547.3 +2019-07-18;377.93;9693.9;10758.1;9313.1;10659.6 +2019-07-17;382.02;9450.8;9987.9;9121;9693.9 +2019-07-16;397.06;10846.8;11015.3;9400;9450.8 +2019-07-15;467.9;10239.4;11050;9980;10846.8 +2019-07-14;404.66;11346.7;11472.5;10150.3;10239.4 +2019-07-13;298.26;11813.7;11847.1;10862.1;11346.7 +2019-07-12;265.87;11378.4;11902.5;11154.3;11813.7 +2019-07-11;399.77;12135.4;12135.4;11100;11378.4 +2019-07-10;712.67;12578.1;13119.9;11576.1;12135.4 +2019-07-09;460.64;12300.3;12800;12173.7;12578.1 +2019-07-08;355.26;11450.1;12380;11351.4;12300.3 +2019-07-07;164.17;11287.8;11647.2;11156.2;11450.1 +2019-07-06;176.73;11016;11717.6;11016;11287.8 +2019-07-05;277.4;11282.8;11482.8;10900;11016 +2019-07-04;332.76;11988.6;12040;11200;11282.8 +2019-07-03;542.14;10789.7;11998.9;10789.7;11988.6 +2019-07-02;623.91;10579;10937.7;9536.9;10789.7 +2019-07-01;746.14;10773.1;11259.9;9950;10579 +2019-06-30;591.01;11891.2;12160;10755.6;10773.1 +2019-06-29;675.48;12430.1;12430.1;11418.1;11891.2 +2019-06-28;822.78;11235.2;12488.4;10860.5;12430.1 +2019-06-27;1250.37;13140.3;13247.9;10350.2;11235.2 +2019-06-26;1434.87;11805.7;13949;11600;13140.3 +2019-06-25;486.81;10968.7;11809.5;10958.5;11805.7 +2019-06-24;214.68;10869.6;11041;10601.9;10968.7 +2019-06-23;285.61;10728.8;11260;10520.3;10869.6 +2019-06-22;805.43;10169.2;11181.8;10031.4;10728.8 +2019-06-21;430.91;9504.4;10198.1;9504.4;10169.2 +2019-06-20;224.64;9278.7;9575.7;9200.1;9504.4 +2019-06-19;170.62;9095.2;9315.8;9055.7;9278.7 +2019-06-18;298.85;9290.4;9331.2;8958.1;9095.2 +2019-06-17;246.72;8980.8;9445;8978.2;9290.4 +2019-06-16;524.71;8820.5;9348.9;8791;8980.8 +2019-06-15;177.88;8711.6;8877.7;8612.3;8820.5 +2019-06-14;219.82;8298.2;8737.2;8222;8711.6 +2019-06-13;149.22;8184.9;8350.9;8080;8298.2 +2019-06-12;237.97;7962.9;8261.2;7870.2;8184.9 +2019-06-11;161.21;8064.9;8094;7785.1;7962.9 +2019-06-10;241.87;7697.3;8096.3;7578.6;8064.9 +2019-06-09;185.55;7985;8000;7550;7697.3 +2019-06-08;104.06;8084.8;8127.3;7864.2;7985 +2019-06-07;212.61;7859;8167.9;7813.3;8084.8 +2019-06-06;259.68;7866.9;7931;7550;7859 +2019-06-05;306.4;7749.9;7950;7607.6;7866.9 +2019-06-04;764.4;8224.1;8226.2;7550;7749.9 +2019-06-03;327.74;8735;8754.2;8173.3;8224.1 +2019-06-02;202.67;8633.9;8844.9;8611.4;8735 +2019-06-01;148.48;8647.8;8727.9;8545.6;8633.9 +2019-05-31;330.5;8377;8654.9;8218.5;8647.8 +2019-05-30;497.69;8707.6;9110.5;8110;8377 +2019-05-29;233.07;8702.2;8787.9;8413.1;8707.6 +2019-05-28;159.32;8663.6;8748.9;8587.3;8702.2 +2019-05-27;307.39;8613.8;8823.7;8550;8663.6 +2019-05-26;438.96;8060;8681.4;7901;8613.8 +2019-05-25;130.33;8021;8139.9;7972.8;8060 +2019-05-24;248.34;7929.4;8168.4;7874.5;8021 +2019-05-23;254.39;7686.8;7994.4;7600;7929.4 +2019-05-22;253.82;7949.6;8009.8;7600;7686.8 +2019-05-21;221.51;7950;8025;7805;7949.6 +2019-05-20;450.56;8171.5;8171.5;7600;7950 +2019-05-19;521.58;7380.4;8275.8;7369.9;8171.5 +2019-05-18;300.99;7470.7;7624.7;7301.6;7380.4 +2019-05-17;807.91;8020.6;8060;6951.3;7470.7 +2019-05-16;778.76;8175.4;8341.7;7850;8020.6 +2019-05-15;306.9;8005.3;8252.9;7900;8175.4 +2019-05-14;685.5;7907.1;8405;7680.1;8005.3 +2019-05-13;903.51;6944.9;8179.4;6901.4;7907.1 +2019-05-12;774.82;7057.2;7466.7;6678;6944.9 +2019-05-11;872.2;6421.1;7269.9;6421.1;7057.2 +2019-05-10;412.76;6249.8;6487.1;6211.3;6421.1 +2019-05-09;261.92;5982.6;6257.8;5981.8;6249.8 +2019-05-08;167.14;5797.6;5992.1;5751.7;5982.6 +2019-05-07;220.93;5760;5973.2;5757;5949.9 +2019-05-06;263.08;5794.6;5828;5650;5760 +2019-05-05;167.37;5821.5;5841;5715.1;5794.6 +2019-05-04;379.94;5693.7;5869.1;5550.8;5821.5 +2019-05-03;467.57;5436.6;5799.9;5404.9;5693.7 +2019-05-02;169.0;5354.2;5448.8;5343;5436.6 +2019-05-01;143.73;5317.1;5386.6;5299.3;5354.2 +2019-04-30;289.57;5255.8;5335.6;5205;5317.1 +2019-04-29;233.24;5272.5;5300.9;5194;5255.8 +2019-04-28;137.7;5281;5301.4;5230.1;5272.5 +2019-04-27;83.18;5243.3;5319.5;5221;5281 +2019-04-26;310.15;5216.9;5400;5167.3;5243.3 +2019-04-25;357.23;5497.7;5575.6;5105.1;5216.9 +2019-04-24;297.32;5574.2;5676.9;5439.8;5497.7 +2019-04-23;226.3;5405.8;5641.4;5379.5;5574.2 +2019-04-22;223.53;5348.5;5450;5308.4;5405.8 +2019-04-21;109.22;5365.4;5370;5270.1;5348.5 +2019-04-20;110.37;5328.7;5370;5316.2;5365.4 +2019-04-19;221.46;5355.7;5355.9;5270.9;5328.7 +2019-04-18;150.95;5307.4;5372.2;5270.9;5355.7 +2019-04-17;116.87;5287.3;5330;5257.4;5307.4 +2019-04-16;490.85;5142.1;5324.8;5133.4;5287.3 +2019-04-15;318.08;5247.8;5279.7;5075.9;5142.1 +2019-04-14;69.43;5169;5274.9;5134.7;5247.8 +2019-04-13;90.22;5166.7;5200;5141.5;5169 +2019-04-12;134.71;5142;5196.7;5025;5166.7 +2019-04-11;245.69;5396.2;5413.9;5077;5142 +2019-04-10;200.01;5282.2;5509.7;5256.7;5396.2 +2019-04-09;154.84;5345;5345;5233.2;5282.2 +2019-04-08;224.49;5209.7;5364.4;5194.1;5345 +2019-04-07;145.01;5117.7;5273.3;5101.7;5209.7 +2019-04-06;164.93;5079.9;5270.1;5001;5117.7 +2019-04-05;139.19;4950.4;5100;4950.4;5079.9 +2019-04-04;250.37;4980;5102.3;4835;4950.4 +2019-04-03;792.81;4962.1;5349.2;4850;4980 +2019-04-02;794.67;4212;4981;4195.5;4962.1 +2019-04-01;171.5;4150;4240.5;4120.1;4212 +2019-03-19;3.91;4036.4;4042.3;4030.2;4038.7 +2019-03-18;220.58;4033.1;4059;3997.9;4036.4 +2019-03-17;116.24;4038.3;4043.2;4009.8;4033.1 +2019-03-16;163.21;3980.7;4089.7;3973.8;4038.3 +2019-03-15;147.86;3931;3983.1;3924;3980.7 +2019-03-14;165.9;3932;3965.9;3865.8;3931 +2019-03-13;175.98;3933.7;3952;3915.6;3932 +2019-03-12;183.07;3921.8;3957.7;3883.2;3933.7 +2019-03-11;158.48;3953.9;3967;3879.4;3921.8 +2019-03-10;126.52;3973.2;3975.2;3925;3953.9 +2019-03-09;140.98;3893;3992.5;3893;3973.2 +2019-03-08;179.08;3898.9;3949;3806.5;3893 +2019-03-07;161.85;3903.8;3930;3877.1;3898.9 +2019-03-06;141.21;3915.2;3945;3871.3;3903.8 +2019-03-05;233.57;3785.5;3930;3775.2;3915.2 +2019-03-04;473.09;3865.4;3883.4;3757.7;3785.5 +2019-03-03;99.75;3876;3891;3833.7;3865.4 +2019-03-02;73.92;3860.2;3881.9;3831;3876 +2019-03-01;133.19;3847.9;3898;3842.7;3860.2 +2019-02-28;156.01;3850.8;3936.7;3811.6;3847.9 +2019-02-27;203.5;3850.9;3870.6;3729.9;3850.8 +2019-02-26;139.46;3869.8;3876;3808;3850.9 +2019-02-25;226.1;3765.5;3898.1;3765.5;3869.8 +2019-02-24;836.87;4111;4194.2;3750;3765.5 +2019-02-23;242.37;3957.9;4150;3937.5;4111 +2019-02-22;6.4;3926.1;3943.5;3922.7;3943.5 +2019-02-21;311.49;3994.8;4036.9;3917.9;3928.6 +2019-02-20;155.82;3945.6;4000;3913.1;3994.8 +2019-02-19;230.36;3904.1;4000;3882.9;3945.6 +2019-02-18;578.5;3668;3933.6;3641.2;3904.1 +2019-02-17;482.65;3697.2;3787.9;3600;3668 +2019-02-16;99.96;3682.3;3710;3681.2;3697.2 +2019-02-15;133.62;3677.2;3710;3658.7;3682.3 +2019-02-14;159.07;3684.9;3699.9;3658.6;3677.2 +2019-02-13;110.31;3696;3726.7;3667.2;3684.9 +2019-02-12;140.44;3698.9;3726.8;3658.6;3696 +2019-02-11;169.32;3751.9;3751.9;3670;3698.9 +2019-02-10;143.12;3709.5;3751.9;3673.4;3751.9 +2019-02-09;176.33;3722.3;3742;3684;3709.5 +2019-02-08;413.35;3481.8;3802.5;3477.6;3722.3 +2019-02-07;143.79;3482.3;3499;3468.9;3481.8 +2019-02-06;179.22;3525;3537;3451.5;3482.3 +2019-02-05;95.88;3505.9;3525;3498.1;3525 +2019-02-04;94.5;3495.1;3518.9;3488.1;3505.9 +2019-02-03;136.25;3544.6;3544.6;3480;3495.1 +2019-02-02;95.27;3501.6;3552.5;3489.1;3544.6 +2019-02-01;159.65;3493.6;3520;3460.2;3501.6 +2019-01-31;180.29;3505.5;3542.2;3466.8;3493.6 +2019-01-30;182.88;3459.4;3525;3434.8;3505.5 +2019-01-29;167.94;3493;3500.1;3410.6;3459.4 +2019-01-28;360.92;3598.8;3598.9;3450.5;3493 +2019-01-27;199.62;3613.5;3633.9;3538.6;3598.8 +2019-01-26;248.4;3612;3697.9;3585;3613.5 +2019-01-25;182.38;3613;3621;3564.7;3612 +2019-01-24;183.25;3590;3629.5;3574.9;3613 +2019-01-23;208.28;3623.6;3650;3571;3590 +2019-01-22;351.52;3597.9;3652.3;3517.7;3623.6 +2019-01-21;175.1;3602;3627.9;3553.9;3597.9 +2019-01-20;294.65;3738.5;3753.4;3541.5;3602 +2019-01-19;252.97;3682.4;3812.8;3675.1;3738.5 +2019-01-18;493.8;3709.8;3710.9;3646.4;3682.4 +2019-01-17;552.9;3672.6;3723.7;3630.1;3709.8 +2019-01-16;396.3;3670.7;3735.1;3652.1;3672.6 +2019-01-15;252.59;3721.8;3748.2;3637.3;3670.7 +2019-01-14;349.0;3590.5;3791.3;3579.4;3721.8 +2019-01-13;271.68;3720;3721.9;3570;3590.5 +2019-01-12;155.34;3751.9;3759.6;3677.2;3720 +2019-01-11;267.32;3715;3783.3;3689.2;3751.9 +2019-01-10;478.57;4048.8;4081.9;3666.3;3715 +2019-01-09;173.79;4044.4;4093;4015;4048.8 +2019-01-08;230.58;4045.3;4138.7;4000;4044.4 +2019-01-07;374.03;4086.1;4100;4000;4045.3 +2019-01-06;312.46;3865.1;4121;3840.6;4086.1 +2019-01-05;191.18;3911.7;3949;3849.9;3865.1 +2019-01-04;178.48;3883.1;3931.3;3807;3911.7 +2019-01-03;206.13;3971.5;3990.5;3841.1;3883.1 +2019-01-02;271.87;3942.7;4000;3893.8;3971.5 +2019-01-01;191.01;3830.5;3965.9;3777.3;3942.7 +2018-12-31;247.3;3941.4;3954.7;3780;3830.5 +2018-12-30;409.87;3815.6;3965.6;3770.3;3941.4 +2018-12-29;586.55;3981.6;4021;3800;3815.6 +2018-12-28;914.08;3722.6;4064.4;3710.8;3981.6 +2018-12-27;335.31;3929.8;3954.8;3696;3722.6 +2018-12-26;312.29;3896.2;3976;3823.8;3929.8 +2018-12-25;444.46;4090.5;4111.6;3790.5;3896.2 +2018-12-24;969.43;3993.8;4274.2;3993.8;4090.5 +2018-12-23;582.36;4047.4;4099.8;3950.2;3993.8 +2018-12-22;567.89;3894.2;4067.3;3849.1;4047.4 +2018-12-21;910.89;4106.8;4184.9;3820;3894.2 +2018-12-20;1135.1;3731.2;4194.2;3701.2;4106.8 +2018-12-19;1018.9;3686.8;3987.8;3664.5;3731.2 +2018-12-18;733.98;3544.6;3699.7;3480.5;3686.8 +2018-12-17;862.58;3280;3625.4;3264.5;3544.6 +2018-12-16;546.59;3255.2;3325.7;3248.1;3280 +2018-12-15;612.36;3243.7;3294;3200;3255.2 +2018-12-14;761.24;3330.5;3368.2;3205;3243.7 +2018-12-13;609.25;3477.5;3485;3296.5;3330.5 +2018-12-12;630.86;3425;3548.6;3392.1;3477.5 +2018-12-11;598.6;3466.5;3491.4;3371.6;3421.2 +2018-12-10;752.07;3579.8;3639.2;3406.1;3466.5 +2018-12-09;832.42;3464.1;3679.2;3430;3579.8 +2018-12-08;930.46;3451.2;3542.2;3330;3464.1 +2018-12-07;1372.5;3528.7;3624.2;3301.1;3451.2 +2018-12-06;1223.58;3776.3;3916.3;3521;3528.7 +2018-12-05;591.16;3942.3;3954.5;3755;3776.3 +2018-12-04;851.76;3885.7;4062;3800;3942.3 +2018-12-03;847.35;4163.2;4172.3;3813.5;3885.7 +2018-12-02;530.48;4178.4;4290;4090;4163.2 +2018-12-01;693.1;4023.6;4288.2;3965;4178.4 +2018-11-30;917.27;4278.1;4320;3916.1;4018.8 +2018-11-29;929.21;4250.2;4438.2;4106.9;4278.1 +2018-11-28;1323.57;3847.1;4400;3843.5;4250.2 +2018-11-27;1256.57;3856.3;3900;3680;3847.1 +2018-11-26;1845.88;4059.5;4186;3673.4;3856.3 +2018-11-25;1879.68;3884.2;4309.7;3535.1;4059.5 +2018-11-24;1115.07;4377.7;4470;3800;3884.2 +2018-11-23;1080.45;4358.2;4479;4225.5;4377.7 +2018-11-22;787.56;4661.5;4695;4353.1;4358.2 +2018-11-21;1128.29;4494.2;4749.5;4341.5;4661.5 +2018-11-20;2025.14;4807.6;4949.4;4230.1;4494.2 +2018-11-19;1378.34;5612.8;5621.6;4670;4807.6 +2018-11-18;533.01;5580.6;5689.8;5580.6;5612.8 +2018-11-17;528.68;5640.6;5654.8;5560.1;5580.6 +2018-11-16;678.29;5727.7;5755;5559;5640.6 +2018-11-15;949.05;5809.9;5858.9;5200;5727.7 +2018-11-14;1262.52;6329.9;6364.1;5547.6;5809.9 +2018-11-13;555.57;6355.9;6381.2;6312.2;6329.9 +2018-11-12;468.81;6373.5;6399.2;6339.3;6355.9 +2018-11-11;516.65;6365.9;6376.1;6302;6373.5 +2018-11-10;499.44;6360.8;6407.2;6354.4;6365.9 +2018-11-09;546.77;6408.7;6423.1;6351.1;6360.8 +2018-11-08;568.88;6489;6496;6395;6408.7 +2018-11-07;585.52;6451.6;6530;6446.3;6489 +2018-11-06;633.37;6429.5;6452.5;6402.8;6451.6 +2018-11-05;556.55;6451.6;6473;6420;6429.5 +2018-11-04;557.64;6391.9;6500;6371.4;6451.6 +2018-11-03;535.49;6434.7;6440.2;6380;6391.9 +2018-11-02;533.24;6405.8;6458.5;6400.3;6434.7 +2018-11-01;586.37;6407.7;6449.8;6390.1;6405.8 +2018-10-31;528.12;6387;6499.4;6320;6407.7 +2018-10-30;480.2;6382.2;6411;6376.5;6387 +2018-10-29;584.69;6504.9;6530;6370;6382.2 +2018-10-28;445.34;6507.9;6514.3;6477.2;6504.9 +2018-10-27;586.25;6481.5;6644.2;6480.2;6507.9 +2018-10-26;495.13;6517.9;6559.9;6476.4;6481.5 +2018-10-25;519.98;6550.1;6566.2;6515;6517.9 +2018-10-24;506.57;6528.4;6569;6522.8;6550.1 +2018-10-23;515.69;6566.1;6576;6509.8;6528.4 +2018-10-22;551.68;6557.9;6579.7;6530.7;6566.1 +2018-10-21;447.89;6537.7;6589;6537;6557.9 +2018-10-20;466.49;6532.7;6589;6520;6537.7 +2018-10-19;546.6;6574.6;6629.2;6521.1;6532.7 +2018-10-18;558.69;6641.2;6675.4;6561.7;6574.6 +2018-10-17;481.11;6665.9;6687.9;6562.9;6641.2 +2018-10-16;0.0;6641.1;6641.1;6621.9;6621.9 +2018-10-15;1598.18;6337.6;7100;6300.1;6641.1 +2018-10-14;375.62;6324.7;6397.9;6312;6337.6 +2018-10-13;355.77;6317.8;6340;6300.1;6324.7 +2018-10-12;490.97;6277.4;6346;6228;6317.8 +2018-10-11;883.91;6621.3;6629.7;6240;6277.4 +2018-10-10;528.9;6640.3;6648.9;6550;6621.3 +2018-10-09;241.25;6657.5;6674;6595;6640.3 +2018-10-08;331.85;6574;6679.8;6543.2;6657.5 +2018-10-07;248.47;6572.6;6600;6520;6574 +2018-10-06;162.85;6609.1;6617.3;6540;6572.6 +2018-10-05;230.76;6557.2;6645;6540;6609.1 +2018-10-04;257.5;6482;6590;6465.1;6557.2 +2018-10-03;370.97;6537;6550;6450;6482 +2018-10-02;336.29;6588.6;6614.5;6500;6537 +2018-10-01;404.21;6607.8;6645;6510;6588.6 +2018-09-30;240.41;6617.1;6650;6540.3;6607.8 +2018-09-29;284.4;6655.3;6655.3;6500.1;6617.1 +2018-09-28;539.14;6678.4;6768;6570.2;6655.3 +2018-09-27;376.41;6473.1;6748.9;6449.4;6678.4 +2018-09-26;418.43;6443;6536.4;6387.6;6473.1 +2018-09-25;384.0;6579;6579;6348;6443 +2018-09-24;337.07;6672.4;6697.7;6541;6579 +2018-09-23;326.23;6695.6;6775.2;6635;6672.4 +2018-09-22;556.97;6745.9;6820.3;6605.9;6695.6 +2018-09-21;865.35;6454.2;6792.1;6448.3;6745.9 +2018-09-20;475.74;6367.3;6512.9;6327.7;6454.2 +2018-09-19;700.75;6344.9;6466.1;6118.1;6367.3 +2018-09-18;829.19;6271.5;6399.7;6244.3;6344.9 +2018-09-17;439.22;6518;6537.6;6230;6271.5 +2018-09-16;298.03;6522.6;6541.7;6388.6;6518 +2018-09-15;234.07;6478.4;6560;6466.7;6522.6 +2018-09-14;343.17;6478.5;6572;6363.4;6478.4 +2018-09-13;424.03;6332.3;6536.5;6332.3;6478.5 +2018-09-12;306.47;6290.7;6347;6211;6332.3 +2018-09-11;313.66;6332.8;6429.9;6200;6290.7 +2018-09-10;320.53;6302.6;6416;6287;6332.8 +2018-09-09;335.21;6231.1;6475;6205.1;6302.6 +2018-09-08;461.15;6415;6475;6200;6231.1 +2018-09-07;428.08;6516.4;6579.8;6356.6;6415 +2018-09-06;891.56;6654.3;6690.1;6267.9;6516.4 +2018-09-05;766.16;7289.1;7337.5;6653.1;6654.3 +2018-09-04;302.52;7175.3;7323;7160;7289.1 +2018-09-03;334.65;7181.7;7258;7111.4;7175.3 +2018-09-02;259.16;7122.1;7270;7085.1;7181.7 +2018-09-01;352.13;6946.5;7199.9;6945.1;7122.1 +2018-08-31;341.41;6949.8;7035.8;6850;6946.5 +2018-08-30;356.56;7000;7014.4;6783.6;6949.8 +2018-08-29;368.46;7022;7099.8;6884.6;7000 +2018-08-28;468.01;6837.5;7061.9;6803;7022 +2018-08-27;212.53;6715;6873.9;6656.6;6837.5 +2018-08-26;139.73;6713.4;6743.9;6574;6715 +2018-08-25;235.85;6654.8;6777.5;6634.5;6713.4 +2018-08-24;255.71;6522.1;6682.2;6450.1;6654.8 +2018-08-23;267.55;6372.3;6558.6;6372.1;6522.1 +2018-08-22;735.18;6482.9;6867;6280.5;6372.3 +2018-08-21;275.71;6295.3;6499;6289.2;6482.9 +2018-08-20;295.86;6475.4;6524.9;6260;6295.3 +2018-08-19;254.8;6408.1;6550;6333.4;6475.4 +2018-08-18;372.75;6569.8;6618.8;6302;6408.1 +2018-08-17;566.55;6348.7;6571;6323.1;6569.8 +2018-08-16;421.42;6310.2;6489.5;6255;6348.7 +2018-08-15;671.57;6219.3;6639.9;6219.3;6310.2 +2018-08-14;650.42;6306.5;6333.1;5941.7;6219.3 +2018-08-13;479.77;6337.3;6587;6163.5;6306.5 +2018-08-12;0.0;6156;6156;6156;6156 +2018-08-11;214.88;6169.4;6228.9;6040.1;6156 +2018-08-10;675.84;6551.8;6597.6;6018.7;6169.4 +2018-08-09;614.33;6353.9;6648.9;6203.4;6551.8 +2018-08-08;963.36;6735.6;6743.8;6121;6309.4 +2018-08-07;551.6;6949.6;7135.4;6700;6735.6 +2018-08-06;452.28;7024.6;7184.5;6853.4;6949.6 +2018-08-05;490.03;7023.9;7111.3;6909.4;7024.6 +2018-08-04;673.67;7401;7494.8;6926.2;7023.9 +2018-08-03;409.93;7559.9;7559.9;7320.4;7401 +2018-08-02;150.87;7630;7728;7491;7559.9 +2018-08-01;504.14;7816.4;7816.4;7491;7630 +2018-07-31;1062.29;8131.2;8131.2;7633.2;7816.4 +2018-07-30;1361.53;8157.2;8199;7855;8131.2 +2018-07-29;77.95;8136;8189;8066.8;8157.2 +2018-07-28;145.62;8081.9;8150;8034;8136 +2018-07-27;337.16;7872;8179.9;7711;8081.9 +2018-07-26;296.41;8093;8218.8;7800;7872 +2018-07-25;549.62;8287.8;8374;7907.3;8093 +2018-07-24;582.33;7658.4;8358.3;7636.3;8287.8 +2018-07-23;341.29;7373;7725;7366.2;7658.4 +2018-07-22;130.55;7383.2;7520;7310.1;7373 +2018-07-21;110.51;7319.9;7428.9;7225;7383.2 +2018-07-20;301.42;7426.2;7631.3;7250.2;7319.9 +2018-07-19;227.85;7340.9;7482.9;7252.4;7426.2 +2018-07-18;419.44;7251.1;7500;7191.6;7340.9 +2018-07-17;621.09;6689.1;7379.9;6621.9;7251.1 +2018-07-16;329.97;6352.6;6700;6341;6689.1 +2018-07-15;136.93;6261.4;6390;6228.2;6352.6 +2018-07-14;127.83;6217.8;6331.9;6200.1;6261.4 +2018-07-13;224.39;6255.3;6363.3;6126.7;6217.8 +2018-07-12;249.64;6382.1;6387.2;6103.2;6255.3 +2018-07-11;218.27;6330;6424.9;6300;6382.1 +2018-07-10;314.89;6641.2;6662.7;6315.3;6330 +2018-07-09;158.04;6692.9;6750;6611.3;6641.2 +2018-07-08;201.15;6712.2;6773.6;6677;6692.9 +2018-07-07;178.8;6593.5;6741.8;6531.1;6712.2 +2018-07-06;233.42;6563.9;6657.4;6460.2;6593.5 +2018-07-05;247.28;6562;6690;6465;6563.9 +2018-07-04;304.4;6506.1;6741.7;6447;6562 +2018-07-03;294.04;6651.5;6672.8;6478;6506.1 +2018-07-02;407.86;6366.5;6683.8;6306.9;6651.5 +2018-07-01;156.88;6407.3;6448.2;6263.7;6366.5 +2018-06-30;391.31;6242;6462.2;6224.5;6407.3 +2018-06-29;431.95;5946.4;6339;5880;6242 +2018-06-28;260.23;6199.8;6224;5920.1;5946.4 +2018-06-27;254.18;6126.1;6225;6099.4;6199.8 +2018-06-26;271.16;6317.9;6347.5;6126.1;6126.1 +2018-06-25;485.3;6224.4;6418.7;6152.9;6317.9 +2018-06-24;759.52;6211.7;6335.7;5830.8;6224.4 +2018-06-23;257.74;6162.1;6289;6100;6211.7 +2018-06-22;794.3;6737.6;6739.9;6031.1;6162.1 +2018-06-21;140.55;6749.9;6791.7;6701;6737.6 +2018-06-20;295.76;6767.8;6820;6600;6749.9 +2018-06-19;248.68;6750.4;6892;6686.9;6767.8 +2018-06-18;473.95;6558.9;6805.7;6483;6750.4 +2018-06-17;168.23;6584.1;6644.6;6494.9;6558.9 +2018-06-16;196.64;6470.1;6671;6430.1;6584.1 +2018-06-15;331.66;6719.9;6730;6455.1;6470.1 +2018-06-14;471.29;6414.2;6789;6408.2;6719.9 +2018-06-13;603.86;6663;6777;6305;6414.2 +2018-06-12;547.44;6963.9;6980;6602.8;6663 +2018-06-11;573.43;6907.1;6980;6783;6963.9 +2018-06-10;1096.09;7543.5;7550;6801;6907.1 +2018-06-09;166.49;7649.1;7688.1;7518.4;7543.5 +2018-06-08;211.63;7688.4;7700;7550;7649.1 +2018-06-07;229.86;7654.7;7750;7654.7;7688.4 +2018-06-06;359.22;7636.6;7699;7515;7654.7 +2018-06-05;424.38;7578.5;7700;7435.1;7636.6 +2018-06-04;424.94;7717;7757.9;7500;7578.5 +2018-06-03;359.38;7682.6;7779.8;7650;7717 +2018-06-02;233.8;7586.4;7753.7;7525;7682.6 +2018-06-01;370.72;7534.7;7721.8;7400;7586.4 +2018-05-31;363.99;7436.4;7668.8;7400.6;7534.7 +2018-05-30;316.78;7544.9;7643.6;7321.9;7436.4 +2018-05-29;544.56;7209.7;7595;7156;7544.9 +2018-05-28;668.81;7472.8;7541.1;7168.1;7209.7 +2018-05-27;312.16;7454.2;7497.8;7348;7472.8 +2018-05-26;257.58;7557.7;7725.2;7400;7454.2 +2018-05-25;470.31;7646.6;7700.6;7451.1;7557.7 +2018-05-24;775.42;7644.7;7872.8;7376.2;7646.6 +2018-05-23;761.74;8094.3;8140.4;7587;7644.7 +2018-05-22;399.26;8487;8500;8069.4;8094.3 +2018-05-21;382.63;8619.6;8710.7;8381.6;8487 +2018-05-20;403.14;8324.7;8682.5;8279;8619.6 +2018-05-19;325.66;8323.9;8438.7;8220;8324.7 +2018-05-18;400.94;8200.6;8385.2;8101.1;8323.9 +2018-05-17;586.62;8442.7;8550;8194.3;8200.6 +2018-05-16;852.07;8591.4;8609.9;8254.6;8442.7 +2018-05-15;467.27;8704.5;8880;8530.1;8591.4 +2018-05-14;765.99;8835;8927.6;8490.1;8704.5 +2018-05-13;472.24;8615.8;8918.8;8545;8835 +2018-05-12;786.58;8529.6;8809.9;8410;8615.8 +2018-05-11;1049.41;9095.8;9121.3;8500.2;8529.6 +2018-05-10;482.5;9332;9396.8;9063.1;9095.8 +2018-05-09;479.99;9236.7;9379.3;9057.2;9332 +2018-05-08;654.21;9384.7;9499.9;9110;9236.7 +2018-05-07;520.62;9639.8;9645.3;9226;9384.7 +2018-05-06;504.32;9783.8;9858.1;9450.1;9639.8 +2018-05-05;677.53;9664.9;9900;9630.8;9783.8 +2018-05-04;568.54;9680;9749;9473;9664.9 +2018-05-03;839.62;9184.5;9700;9146.2;9680 +2018-05-02;351.92;9058.9;9209.4;9000;9184.5 +2018-05-01;540.29;9274.6;9275.7;8877.1;9058.9 +2018-04-30;437.14;9398;9420.2;9170;9274.6 +2018-04-29;468.64;9349;9474.9;9227;9398 +2018-04-28;585.93;8993.5;9449;8943.2;9349 +2018-04-27;810.99;9278.4;9390;8940.1;8993.5 +2018-04-26;731.3;8912.7;9300;8700;9278.4 +2018-04-25;1461.28;9629;9725;8800;8912.7 +2018-04-24;1078.02;8945.5;9699;8912.3;9629 +2018-04-23;385.35;8824.2;8997;8783;8945.5 +2018-04-22;627.42;8890.3;9054.8;8760;8824.2 +2018-04-21;946.7;8871.3;9120;8600;8890.3 +2018-04-20;948.74;8276.7;8942.5;8215.3;8871.3 +2018-04-19;512.32;8155.6;8317;8102;8276.7 +2018-04-18;669.58;7926.9;8200;7903.6;8155.6 +2018-04-17;620.93;8040;8177.9;7830.9;7926.9 +2018-04-16;793.12;8308.2;8380;7900;8040 +2018-04-15;600.5;7988.5;8387.9;7988.5;8308.2 +2018-04-14;685.11;7862.4;8150;7840.1;7988.5 +2018-04-13;1263.93;7924.1;8234.2;7715.6;7862.4 +2018-04-12;2193.66;6944.3;7984;6734;7924.1 +2018-04-11;286.51;6841.3;6950;6781;6944.3 +2018-04-10;428.43;6772.8;6874.9;6681.1;6841.3 +2018-04-09;919.69;6988.1;7140;6646.9;6772.8 +2018-04-08;436.84;6884.2;7079.7;6869.5;6988.1 +2018-04-07;740.02;6644.1;7060;6644.1;6884.2 +2018-04-06;705.68;6829.9;6922.5;6539;6644.1 +2018-04-05;1119.84;6894.3;7000;6677;6829.9 +2018-04-04;1424.6;7488.8;7501.3;6801;6894.3 +2018-04-03;1099.91;7109.4;7659.7;7080.5;7488.8 +2018-04-02;918.23;6910.5;7238.7;6852.9;7109.4 +2018-04-01;1230.0;6997.4;7117.1;6538.4;6910.5 +2018-03-31;959.5;6974;7300;6900.1;6997.4 +2018-03-30;2153.43;7222;7458;6700;6974 +2018-03-29;1595.7;8111.5;8124;7101.2;7222 +2018-03-28;632.46;7978.9;8250;7936;8111.5 +2018-03-27;1111.23;8307.7;8389.7;7935;7978.9 +2018-03-26;1291.1;8545;8626.5;7986.8;8307.7 +2018-03-25;845.47;8678.9;8824.6;8500;8545 +2018-03-24;925.83;8977;9075.3;8650;8678.9 +2018-03-23;1075.61;8815.1;8995;8310.3;8977 +2018-03-22;1048.01;9072.9;9195.8;8600;8815.1 +2018-03-21;1301.53;9006.3;9304.5;8795.2;9072.9 +2018-03-20;1215.11;8700.5;9194;8440;9006.3 +2018-03-19;2108.14;8356.1;8881.2;8251.6;8700.5 +2018-03-18;2517.64;8052.8;8399.7;7469.1;8356.1 +2018-03-17;1331.6;8400;8505.1;7907.5;8052.8 +2018-03-16;1217.75;8455.2;8740;8120.1;8400 +2018-03-15;2279.82;8387.2;8599.9;7880.1;8455.2 +2018-03-14;2035.96;9334;9576.8;8042.3;8387.2 +2018-03-13;1720.13;9329.8;9718.2;9069;9334 +2018-03-12;2553.75;9790;10148.4;9011;9329.8 +2018-03-11;2369.62;9069.1;9953.4;8730.2;9790 +2018-03-10;1581.14;9546.8;9845.7;8950;9069.1 +2018-03-09;3382.66;9627.3;9727.7;8646.9;9546.8 +2018-03-08;1799.88;10265;10414.3;9400.1;9627.3 +2018-03-07;1876.49;10923.9;11094.1;9653.1;10265 +2018-03-06;1533.99;11505;11573.4;10800;10923.9 +2018-03-05;920.51;11630.4;11750;11501.3;11505 +2018-03-04;903.3;11609.7;11677.6;11250.1;11630.4 +2018-03-03;1157.11;11236.7;11703.4;11219.1;11609.7 +2018-03-02;1296.55;11052.7;11300;10938.9;11236.7 +2018-03-01;1100.82;10541;11178.3;10452.8;11052.7 +2018-02-28;1469.79;10700.4;11284.5;10493.3;10541 +2018-02-27;1291.02;10455.5;11088.1;10351;10700.4 +2018-02-26;1779.95;9769.3;10615;9567.5;10455.5 +2018-02-25;1162.38;9887.8;10100;9521.1;9769.3 +2018-02-24;1706.01;10300.2;10680;9555;9887.8 +2018-02-23;1989.5;10055;10550;9827;10300.2 +2018-02-22;2328.86;10674.5;11124.5;9850.3;10055 +2018-02-21;2848.07;11509.9;11628;10405;10674.5 +2018-02-20;2316.01;11376;12021.3;11350;11509.9 +2018-02-19;1930.88;10691.2;11431.3;10600;11376 +2018-02-18;2275.79;11286.1;11536.8;10387;10691.2 +2018-02-17;1967.17;10351.9;11395.4;10216.6;11286.1 +2018-02-16;1809.4;10234;10500;9940.3;10351.9 +2018-02-15;2745.74;9679.1;10398.7;9522.4;10234 +2018-02-14;1987.94;8778.2;9699.8;8772.4;9679.1 +2018-02-13;1608.16;9000;9050;8575.2;8778.2 +2018-02-12;2031.78;8252;9079.9;8241.2;9000 +2018-02-11;2038.37;8692.8;8696.1;8058.4;8252 +2018-02-10;2550.81;8789.1;9199.7;8315;8692.8 +2018-02-09;2579.58;8494.3;8868.6;8065.9;8789.1 +2018-02-08;3318.15;7873.2;8900;7813.9;8494.3 +2018-02-07;3969.97;7967.1;8910.4;7505.1;7873.2 +2018-02-06;6719.44;7065.9;8400;6115;7967.1 +2018-02-05;4736.54;8615.2;8799;6700;7065.9 +2018-02-04;2469.16;9528.3;9800;8300;8615.2 +2018-02-03;1999.15;9162.2;9858.2;8500.1;9528.3 +2018-02-02;4612.8;9318;9600;7500;9162.2 +2018-02-01;3076.59;10715;10733;8368.8;9318 +2018-01-31;1495.3;10715.9;10902.5;10258.72;10715 +2018-01-30;2074.06;11774.3;11821.7;10501;10715.9 +2018-01-29;1066.95;12105.2;12200;11570;11774.3 +2018-01-28;999.87;11857.9;12299.9;11750;12105.2 +2018-01-27;1254.69;11721.1;12099;11500;11857.9 +2018-01-26;1719.18;11709.9;12188;10955;11721.1 +2018-01-25;1308.88;12110;12348;11608.3;11709.9 +2018-01-24;1633.43;11581.9;12150;11250;12110 +2018-01-23;1811.19;11608.9;12130.6;10658.9;11581.9 +2018-01-22;1811.88;12315.18;12800;10830.62;11608.9 +2018-01-21;1652.57;13591.71;13591.71;11963.65;12315.18 +2018-01-20;1371.28;12251.88;13780.5;12238.96;13591.71 +2018-01-19;1421.06;11965.63;12700;11621.91;12251.88 +2018-01-18;3012.52;11835.23;12740;11400;11965.63 +2018-01-17;5010.64;11975.04;12490;9653.73;11835.23 +2018-01-16;5535.97;14734.7;14737.31;10010;11975.04 +2018-01-15;941.01;14855.9;15262.55;14602.19;14734.7 +2018-01-14;851.82;15360;15525.45;14527.79;14855.9 +2018-01-13;876.46;15143.09;15679.85;15058.91;15360 +2018-01-12;1091.54;14554.52;15499;14255;15143.09 +2018-01-11;2367.07;16269.09;16300;14255.01;14554.52 +2018-01-10;1871.54;15999.41;16276.45;14200;16269.09 +2018-01-09;1488.56;16663.65;17130;15715.14;15999.41 +2018-01-08;1983.96;17692.08;17857.66;15775.66;16663.65 +2018-01-07;1151.25;18324.85;18364.99;17350.04;17692.08 +2018-01-06;1294.68;18187.9;18379.96;17510.02;18324.85 +2018-01-05;2197.46;16250;18380;16059.84;18187.9 +2018-01-04;1660.81;16041;16300;15500;16250 +2018-01-03;1737.32;16010;16560.98;15400;16041 +2018-01-02;1935.47;15222.02;16700;14673.96;16010 +2018-01-01;1356.12;15473.67;15599.02;14551.34;15222.02 +2017-12-31;2072.01;14040.12;15878.39;13767.16;15473.67 +2017-12-30;2856.27;15176.34;15245;13500;14040.12 +2017-12-29;1937.77;15899.85;16300;14605;15176.34 +2017-12-28;2341.27;17145.61;17161.65;15500;15899.85 +2017-12-27;2112.26;17279.86;17750;16300;17145.61 +2017-12-26;2731.0;15756;17760;15665.06;17279.86 +2017-12-25;2122.08;16004.73;16200;15120.01;15756 +2017-12-24;3814.72;16771.94;16881.63;14124.01;16004.73 +2017-12-23;3272.34;15299.24;17900;15051.3;16771.94 +2017-12-22;8250.87;17474.33;17587.99;12550;15299.24 +2017-12-21;2869.85;18291.34;18800;16381.33;17474.33 +2017-12-20;3773.47;19538.32;19790.7;17000;18291.34 +2017-12-19;2257.2;20568.98;20775;18506;19538.32 +2017-12-18;1540.59;20649.97;20957.69;19764.01;20568.98 +2017-12-17;1778.75;20655.03;21283.69;20130;20649.97 +2017-12-16;1676.47;18688.08;20887.67;18543.94;20655.03 +2017-12-15;2047.51;17222.4;18999;17156.85;18688.08 +2017-12-14;1497.74;17195.2;17650;16958.02;17222.4 +2017-12-13;1998.94;17550;17780;16586.1;17195.2 +2017-12-12;2149.74;17252.28;17920;17050.01;17550 +2017-12-11;2927.28;15956.7;17989;15925.04;17252.28 +2017-12-10;4659.29;15687;16899;14011.99;15956.7 +2017-12-09;3887.19;16900.98;17065.01;13040.35;15687 +2017-12-08;4971.86;17483.89;18266.12;14100;16900.98 +2017-12-07;5197.41;14855.08;17500;14441.41;17483.89 +2017-12-06;2808.2;12343.2;14855.11;12342.8;14855.08 +2017-12-05;1374.11;12149;12399;12048.28;12343.2 +2017-12-04;2285.42;11870.76;12150;11610;12149 +2017-12-03;3065.58;11420.3;12259.81;11114.97;11870.76 +2017-12-02;2094.77;11293.64;11687;11099.77;11420.3 +2017-12-01;3000.38;10319.94;11410.99;9910;11293.64 +2017-11-30;4774.86;10520.96;11311;9400;10319.94 +2017-11-29;6984.66;10169.75;11900;8502;10520.96 +2017-11-28;1938.92;9900.01;10299;9818;10169.75 +2017-11-27;2120.8;9372;9949;9371.9;9900.01 +2017-11-26;2297.88;8767.9;9569.59;8767.9;9372 +2017-11-25;1005.75;8227.09;8777;8220.89;8767.9 +2017-11-24;964.29;8102.01;8350;8050.5;8227.09 +2017-11-23;1032.37;8287.36;8348;8102.01;8102.01 +2017-11-22;1144.17;8209.01;8360;8150.05;8287.36 +2017-11-21;2061.09;8266.37;8370;7950;8209.01 +2017-11-20;1303.45;8042.61;8305;8002.77;8266.37 +2017-11-19;1109.94;7845;8120;7792.01;8042.61 +2017-11-18;1278.78;7864.9;7923.22;7700;7845 +2017-11-17;2542.28;7958.32;8110;7661.54;7864.9 +2017-11-16;3238.45;7488.09;8057.19;7321;7958.32 +2017-11-15;3080.13;6813.99;7528.64;6811.44;7488.09 +2017-11-14;1619.48;6775;6950;6641.75;6813.99 +2017-11-13;4194.48;6100.28;7049;6009;6775 +2017-11-12;6661.08;6598.36;6800;5650;6100.28 +2017-11-11;2857.6;6744.98;6998.38;6401.05;6598.36 +2017-11-10;3138.05;7288;7442;6525.1;6744.98 +2017-11-09;872.67;7489.33;7500;7225;7288 +2017-11-08;1575.54;7287.72;7800;7140;7489.33 +2017-11-07;654.19;7252.44;7456.12;7163.8;7287.72 +2017-11-06;2285.46;7644.73;7668.06;7080.01;7252.44 +2017-11-05;1745.22;7485.75;7779.9;7420;7644.73 +2017-11-04;1430.64;7280.1;7550;7100;7485.75 +2017-11-03;2422.48;7166.33;7606.62;7050.01;7280.1 +2017-11-02;3887.58;6799.9;7694.2;6772.44;7166.33 +2017-11-01;1781.35;6441.52;6800;6360.68;6799.9 +2017-10-31;1318.27;6125.59;6460.89;6105.79;6441.52 +2017-10-30;841.3;6130.22;6200;6050;6125.59 +2017-10-29;1307.56;5833.1;6190;5805;6130.22 +2017-10-28;669.13;5825;5920;5780;5833.1 +2017-10-27;843.53;5950.16;6050;5792;5825 +2017-10-26;1376.37;5798.92;6000;5741.15;5950.16 +2017-10-25;1356.51;5568;5800;5445.02;5798.92 +2017-10-24;1709.32;5974.35;6025;5512.83;5568 +2017-10-23;1671.66;6066.68;6101;5746;5974.35 +2017-10-22;1431.92;6065.65;6131.11;5810.25;6066.68 +2017-10-21;1757.19;5993.98;6200;5900;6065.65 +2017-10-20;1857.09;5724.98;6072.4;5662;5993.98 +2017-10-19;1522.11;5669.5;5749.52;5601;5724.98 +2017-10-18;2286.77;5672.92;5690;5201.1;5669.5 +2017-10-17;1029.11;5775.39;5790;5580;5672.92 +2017-10-16;1003.09;5739;5788;5635;5775.39 +2017-10-15;1957.39;5832.94;5869;5520;5739 +2017-10-14;1276.53;5654.02;5850;5592;5832.94 +2017-10-13;3571.35;5449;5878.59;5410;5654.02 +2017-10-12;2859.75;4835;5449;4817.57;5449 +2017-10-11;710.68;4786;4865;4743.21;4835 +2017-10-10;1389.37;4783.04;4920.1;4713.38;4786 +2017-10-09;1468.04;4583.23;4888;4566.75;4783.04 +2017-10-08;954.2;4441;4623.65;4410.25;4583.23 +2017-10-07;451.46;4378.23;4470;4328.05;4441 +2017-10-06;694.75;4351.26;4438.56;4335.63;4378.23 +2017-10-05;800.78;4272.46;4384.92;4191;4351.26 +2017-10-04;698.28;4364.92;4395.79;4230.88;4272.46 +2017-10-03;1008.9;4448.33;4463.9;4260.16;4364.92 +2017-10-02;867.08;4410;4498;4399.25;4448.33 +2017-10-01;512.54;4386;4413.97;4308.52;4410 +2017-09-30;776.41;4213.93;4388.92;4213.93;4386 +2017-09-29;991.43;4244;4299;4085.18;4213.93 +2017-09-28;877.54;4258.68;4350;4200;4244 +2017-09-27;1142.63;3973.8;4264.25;3973.8;4258.68 +2017-09-26;804.71;4023.27;4052.14;3950;3973.8 +2017-09-25;887.49;3779.56;4048.87;3779.56;4023.27 +2017-09-24;588.62;3898.78;3911.87;3771;3779.56 +2017-09-23;1013.53;3773.45;3963.65;3730;3898.78 +2017-09-22;1052.63;3799.81;3920;3692.57;3773.45 +2017-09-21;1429.39;4028.25;4070.4;3755;3799.81 +2017-09-20;749.76;4067.2;4180;4001;4028.25 +2017-09-19;1355.35;4263;4280;4021;4067.2 +2017-09-18;1696.3;3843.33;4283;3843.33;4263 +2017-09-17;959.21;3871.41;3945.82;3654.11;3843.33 +2017-09-16;1746.08;3850;4072;3701.89;3871.41 +2017-09-15;4562.92;3270.2;3990;3051.55;3850 +2017-09-14;2972.05;4027.29;4078.58;3250.39;3270.2 +2017-09-13;1922.38;4384.45;4400;3905.01;4027.29 +2017-09-12;1132.6;4453.8;4525.07;4299.9;4384.45 +2017-09-11;797.98;4482.42;4610.48;4420;4453.8 +2017-09-10;1399.96;4549.97;4584.97;4341.07;4482.42 +2017-09-09;947.1;4616.81;4691.07;4450;4549.97 +2017-09-08;1858.15;4788.77;4830;4401.23;4616.81 +2017-09-07;809.32;4792.9;4841.9;4699.6;4788.77 +2017-09-06;1740.3;4594.86;4849.1;4248.38;4792.9 +2017-09-05;1586.41;4521.94;4680;4251;4594.86 +2017-09-04;1898.7;4767.26;4784.81;4323;4521.94 +2017-09-03;1003.89;4779.99;4900;4600;4767.26 +2017-09-02;1728.42;4999.99;5098;4600;4779.99 +2017-09-01;782.81;4815.57;4999.99;4783.36;4999.99 +2017-08-31;692.18;4688.5;4850;4680.56;4815.57 +2017-08-30;682.41;4677;4739.9;4580;4688.5 +2017-08-29;987.93;4486.77;4700;4442.6;4677 +2017-08-28;576.02;4442.98;4500;4326.4;4486.77 +2017-08-27;300.03;4461.1;4488;4435.85;4442.98 +2017-08-26;396.61;4483.32;4499.99;4400;4461.1 +2017-08-25;795.42;4382.82;4548.97;4382.82;4483.32 +2017-08-24;802.65;4254.9;4430;4250;4382.82 +2017-08-23;955.46;4220.1;4346.99;4179;4254.9 +2017-08-22;1444.41;4123.28;4270;3800;4220.1 +2017-08-21;1027.67;4257.06;4280;4100;4123.28 +2017-08-20;595.61;4316;4344;4228.58;4257.06 +2017-08-19;1115.58;4223.73;4350;4116.8;4316 +2017-08-18;1405.27;4395.28;4450;4158.87;4223.73 +2017-08-17;1470.36;4455;4540;4300;4395.28 +2017-08-16;1220.22;4250.88;4455;4068;4455 +2017-08-15;2560.26;4435.87;4549.75;3875;4250.88 +2017-08-14;1625.6;4147.52;4500;4050.14;4435.87 +2017-08-13;2163.39;3872.9;4237.54;3872.9;4147.52 +2017-08-12;1545.66;3715;3985;3682.04;3872.9 +2017-08-11;934.76;3498;3792.33;3484.8;3715 +2017-08-10;549.55;3435.5;3520;3413.36;3498 +2017-08-09;951.15;3496.43;3500;3325.04;3435.5 +2017-08-08;1125.05;3442.22;3549.05;3405.25;3496.43 +2017-08-07;827.04;3263.74;3449.51;3214.39;3442.22 +2017-08-06;688.05;3275.18;3310.88;3175;3263.74 +2017-08-05;1684.41;2897.49;3330;2889.73;3275.18 +2017-08-04;640.6;2802.63;2897.55;2799.26;2897.49 +2017-08-03;456.86;2751.07;2816.06;2747.01;2802.63 +2017-08-02;505.97;2777.53;2800;2730;2751.07 +2017-08-01;1246.04;2861;2977.97;2685;2777.53 +2017-07-31;761.13;2773.9;2899;2750.01;2861 +2017-07-30;497.38;2745;2789.89;2671.31;2773.9 +2017-07-29;521.6;2809.22;2812.76;2715;2745 +2017-07-28;1076.42;2696;2857.16;2696;2809.22 +2017-07-27;749.23;2573.79;2735.74;2563;2696 +2017-07-26;938.08;2593.7;2640;2493.48;2573.79 +2017-07-25;1372.78;2776.86;2785;2486.77;2593.7 +2017-07-24;463.43;2781;2804.12;2748.97;2776.86 +2017-07-23;865.77;2838.1;2860;2686.04;2781 +2017-07-22;1094.18;2718.96;2893.73;2687.27;2838.1 +2017-07-21;1474.55;2875.37;2890.99;2637.83;2718.96 +2017-07-20;2224.28;2343;2942;2341.06;2875.37 +2017-07-19;1179.11;2413.11;2489.88;2289.53;2343 +2017-07-18;1599.12;2268.54;2547.37;2204.23;2413.11 +2017-07-17;1017.39;1955.98;2270.64;1950.18;2268.54 +2017-07-16;1326.2;2048.02;2119;1852.02;1955.98 +2017-07-15;1267.74;2307.31;2307.31;2001;2048.02 +2017-07-14;645.76;2405.87;2420.66;2250;2307.31 +2017-07-13;430.89;2419.17;2449.84;2389.44;2405.87 +2017-07-12;834.39;2392.58;2449.85;2325.07;2419.17 +2017-07-11;997.15;2446.35;2476.74;2320;2392.58 +2017-07-10;703.97;2581.25;2600;2361.37;2446.35 +2017-07-09;211.22;2627;2630;2580.13;2581.25 +2017-07-08;347.7;2583;2632.65;2550.16;2627 +2017-07-07;498.05;2675.01;2676.2;2550.38;2583 +2017-07-06;248.38;2679.23;2689.74;2638.46;2675.01 +2017-07-05;383.07;2668.98;2690;2617.18;2679.23 +2017-07-04;499.77;2649.61;2710;2632.21;2668.98 +2017-07-03;462.56;2606.13;2705.35;2565.3;2649.61 +2017-07-02;350.65;2541.7;2617;2493.84;2606.13 +2017-07-01;400.04;2575.32;2620;2506.2;2541.7 +2017-06-30;430.13;2639.73;2679.31;2541.09;2575.32 +2017-06-29;509.11;2682.22;2700.79;2612.51;2639.73 +2017-06-28;775.1;2675.3;2720;2580.14;2682.22 +2017-06-27;1079.07;2527.79;2675.3;2414.76;2675.3 +2017-06-26;1303.02;2706.28;2755;2380;2527.79 +2017-06-25;683.08;2752.08;2780;2608.76;2706.28 +2017-06-24;606.28;2813.41;2835.5;2700;2752.08 +2017-06-23;301.77;2824.17;2860.25;2790;2813.41 +2017-06-22;445.24;2815.98;2855;2755.5;2824.17 +2017-06-21;949.9;2848;2875;2748.68;2815.98 +2017-06-20;1140.21;2712.73;2870.44;2695.88;2848 +2017-06-19;595.85;2708.94;2740.59;2674.9;2712.73 +2017-06-18;776.35;2779.41;2788.39;2650;2708.94 +2017-06-17;610.34;2667;2800;2623.51;2779.41 +2017-06-16;830.68;2586.21;2692.68;2509.37;2667 +2017-06-15;2930.8;2678.38;2743.86;2250;2586.21 +2017-06-14;1640.52;2855;2902.72;2559.67;2678.38 +2017-06-13;690.22;2761.08;2921.32;2755.77;2855 +2017-06-12;2367.11;3059;3087.28;2700.58;2761.08 +2017-06-11;945.01;2932.84;3059;2932.13;3059 +2017-06-10;465.45;2888;2958.9;2880;2932.84 +2017-06-09;413.8;2870;2905.64;2830;2888 +2017-06-08;532.28;2767.28;2877;2690;2870 +2017-06-07;1286.99;2921.1;2933;2675.52;2767.28 +2017-06-06;1593.36;2765.6;2973.07;2765.6;2921.1 +2017-06-05;673.23;2646.17;2779.94;2636.25;2765.6 +2017-06-04;416.87;2665.31;2665.31;2598.21;2646.17 +2017-06-03;620.64;2600.49;2670.49;2562.59;2665.31 +2017-06-02;576.63;2570.49;2600.49;2545.51;2600.49 +2017-06-01;794.92;2480.67;2621;2480.67;2570.49 +2017-05-31;1650.35;2436.56;2568.57;2380;2480.67 +2017-05-30;1167.8;2485.47;2564;2400;2436.56 +2017-05-29;952.22;2352.46;2510;2294.61;2485.47 +2017-05-28;1199.12;2198.86;2509;2198.86;2352.46 +2017-05-27;1951.49;2392.43;2471.53;2000;2198.86 +2017-05-26;2799.52;2400;2749.84;2125.07;2392.43 +2017-05-25;3876.78;2618.84;3042.91;2328.7;2400 +2017-05-24;1375.12;2438;2666;2431.33;2618.84 +2017-05-23;1101.93;2277.23;2447.08;2277.23;2438 +2017-05-22;1751.23;2128;2351.3;2123.95;2277.23 +2017-05-21;659.53;2086;2156.68;2067.74;2128 +2017-05-20;791.37;2000.16;2090;2000.16;2086 +2017-05-19;823.03;1950.2;2010;1930;2000.16 +2017-05-18;687.36;1878.66;1960;1865;1950.2 +2017-05-17;759.81;1807.95;1894.24;1804.8;1878.66 +2017-05-16;623.35;1797.1;1823.59;1766.15;1807.95 +2017-05-15;16.27;1838;1844;1833.36;1840.39 +2017-05-14;380.96;1831.66;1863.05;1800;1838 +2017-05-13;930.3;1763;1840;1681;1831.66 +2017-05-12;1026.87;1880.68;1893.08;1715.23;1763 +2017-05-11;833.96;1800;1900;1791.6;1880.68 +2017-05-10;605.44;1744.27;1800;1714.03;1800 +2017-05-09;997.27;1684;1790.81;1678.37;1744.27 +2017-05-08;638.58;1549.81;1684;1545.84;1684 +2017-05-07;1599.6;1576.08;1584;1406.43;1549.81 +2017-05-06;414.47;1536.63;1586.83;1536.49;1576.08 +2017-05-05;1005.82;1527.88;1607;1498.67;1536.63 +2017-05-04;1244.11;1498.18;1617.86;1440;1527.88 +2017-05-03;715.23;1453;1509.63;1440;1498.18 +2017-05-02;860.2;1415.59;1469.88;1405.01;1453 +2017-05-01;824.64;1338;1430;1337.91;1415.59 +2017-04-30;251.28;1337.97;1340.1;1321;1338 +2017-04-29;215.66;1318.34;1340.25;1312.97;1337.97 +2017-04-28;582.56;1334.13;1339.36;1288.58;1318.34 +2017-04-27;537.65;1297.5;1339.3;1297;1334.13 +2017-04-26;544.92;1282.29;1317.1;1281.36;1297.5 +2017-04-25;7.78;1261.72;1264;1261.4;1262.36 +2017-04-24;232.13;1248.25;1266;1243.95;1261.72 +2017-04-23;11.15;1247.39;1250;1246.87;1250 +2017-04-22;351.03;1248;1250;1220.55;1247.39 +2017-04-21;289.1;1239.8;1250;1236.86;1248 +2017-04-20;423.42;1219.24;1250;1217.06;1239.8 +2017-04-19;11.85;1218.96;1219;1216.1;1218.97 +2017-04-18;349.94;1217.5;1224.99;1211.41;1218.96 +2017-04-17;15.46;1194.85;1199.8;1189;1199.8 +2017-04-16;160.04;1191.86;1202;1188.05;1194.85 +2017-04-15;14.52;1195.5;1198;1194.9;1198 +2017-04-14;294.82;1183.5;1199;1182.1;1195.5 +2017-04-13;729.84;1229.58;1230;1160;1183.5 +2017-04-12;279.04;1231;1231.2;1217.89;1229.58 +2017-04-11;24.58;1210;1210.9;1209.25;1210.9 +2017-04-10;289.64;1209.17;1218.02;1206.19;1210 +2017-04-09;399.17;1188.5;1216.64;1178;1209.17 +2017-04-08;242.74;1196.85;1200;1173.02;1188.5 +2017-04-07;487.85;1199.08;1204;1180.01;1196.85 +2017-04-06;763.78;1149.58;1207.62;1148.62;1199.08 +2017-04-05;402.69;1153.99;1156.09;1123.11;1149.58 +2017-04-04;517.85;1163;1173.58;1135;1153.99 +2017-04-03;691.48;1109.99;1172.17;1107.41;1163 +2017-04-02;515.71;1094.9;1119.52;1082;1109.99 +2017-04-01;506.85;1086.9;1100;1061;1094.9 +2017-03-31;611.23;1049;1095;1046.66;1086.9 +2017-03-30;374.91;1049.88;1056.99;1040;1049 +2017-03-29;563.89;1059.98;1063.4;1010.87;1049.88 +2017-03-28;608.06;1058.97;1082.99;1033.21;1059.98 +2017-03-27;556.18;999.44;1060;987.61;1058.97 +2017-03-26;574.95;990;1029.07;972.34;999.44 +2017-03-25;1271.44;973.53;1002.58;906.24;990 +2017-03-24;1124.2;1064.89;1067.31;951.09;973.53 +2017-03-23;393.61;1067.11;1088.08;1049.5;1064.89 +2017-03-22;776.44;1143.71;1143.71;1025;1067.11 +2017-03-21;895.99;1070.74;1145.93;1065;1143.71 +2017-03-20;474.58;1029.87;1080;1029.87;1070.74 +2017-03-19;818.56;985.39;1075;980.01;1029.87 +2017-03-18;1483.42;1085.8;1110;964.65;985.39 +2017-03-17;1102.48;1189.37;1189.37;1073.93;1085.8 +2017-03-16;1392.3;1264.1;1264.95;1153;1189.37 +2017-03-15;289.0;1252.99;1267;1250.05;1264.1 +2017-03-14;450.73;1244.01;1262;1238.91;1252.99 +2017-03-13;517.31;1231.9;1247.5;1220.02;1244.01 +2017-03-12;546.53;1193.1;1235;1178.74;1231.9 +2017-03-11;612.69;1123.26;1204.75;1114.2;1193.1 +2017-03-10;2601.98;1207.56;1300;1078.22;1123.26 +2017-03-09;530.97;1157;1219.18;1147;1207.56 +2017-03-08;1568.39;1243.75;1256.85;1155.55;1157 +2017-03-07;946.11;1284.5;1291.82;1211.8;1243.75 +2017-03-06;308.75;1281;1290;1275.67;1284.5 +2017-03-05;280.45;1278.27;1281.2;1264.1;1281 +2017-03-04;425.11;1292.5;1299;1245.87;1278.27 +2017-03-03;566.21;1267.89;1299.16;1261.44;1292.5 +2017-03-02;865.26;1232;1277.36;1223.31;1267.89 +2017-03-01;647.24;1199.25;1237.31;1195.03;1232 +2017-02-28;794.47;1197;1215;1187.06;1199.25 +2017-02-27;562.14;1184.5;1208;1171.97;1197 +2017-02-26;311.89;1164.9;1193.7;1145.74;1184.5 +2017-02-25;477.23;1191.2;1195;1135;1164.9 +2017-02-24;1843.51;1183.77;1222;1113;1191.2 +2017-02-23;743.04;1137.48;1192.88;1133.15;1183.77 +2017-02-22;778.21;1129.81;1150;1107;1137.48 +2017-02-21;685.49;1094;1139.15;1081.5;1129.81 +2017-02-20;370.62;1061.78;1096.4;1052.9;1094 +2017-02-19;174.02;1066.9;1068.9;1043.2;1061.78 +2017-02-18;369.4;1061;1077.5;1058;1066.9 +2017-02-17;529.38;1046;1070;1041.77;1061 +2017-02-16;653.39;1038;1049.95;1025.24;1046 +2017-02-15;353.04;1035.8;1038;1026;1038 +2017-02-14;431.75;1020;1046.15;1014.35;1035.8 +2017-02-13;453.04;1015.64;1021.5;983;1020 +2017-02-12;263.39;1023;1025;1008.47;1015.64 +2017-02-11;313.67;1012.02;1026.9;1003;1023 +2017-02-10;677.86;997;1023.38;952.55;1012.02 +2017-02-09;1583.61;1071;1091.83;951.61;997 +2017-02-08;745.06;1060;1078.48;1023.18;1071 +2017-02-07;399.73;1034.97;1060;1029;1060 +2017-02-06;212.69;1024.5;1035.89;1017.22;1034.97 +2017-02-05;260.83;1035.3;1038.59;1015;1024.5 +2017-02-04;269.66;1020.03;1044.9;1012.5;1035.3 +2017-02-03;505.1;1014.17;1025.99;997.36;1020.03 +2017-02-02;473.19;989.89;1019.42;980;1014.17 +2017-02-01;348.0;969.02;989.9;969.02;989.89 +2017-01-31;467.83;932.19;972.71;928;969.02 +2017-01-30;175.02;927.5;933;925;932.19 +2017-01-29;151.47;929.11;929.5;924.99;927.5 +2017-01-28;170.28;925;929.62;918.2;929.11 +2017-01-27;222.47;925;929.49;916.67;925 +2017-01-26;349.08;902.22;925;899.01;925 +2017-01-25;262.83;895.96;908.34;888.1;902.22 +2017-01-24;409.94;926.99;928.6;892;895.96 +2017-01-23;203.35;924;932.82;914.8;926.99 +2017-01-22;445.0;928;944.59;897;924 +2017-01-21;329.45;900;929;894.66;928 +2017-01-20;232.67;903.8;910.02;882.12;900 +2017-01-19;306.85;886.17;912.81;882.4;903.8 +2017-01-18;513.73;915;917;853;886.17 +2017-01-17;660.55;839.22;915;836.62;915 +2017-01-16;383.28;828;846;827.5;839.22 +2017-01-15;255.39;826;836.02;812.49;828 +2017-01-14;507.37;830.38;850;812;826 +2017-01-13;883.33;820.26;842.56;781.38;830.38 +2017-01-12;869.17;797.4;839.78;760;820.26 +2017-01-11;1590.37;917.09;925;775;797.4 +2017-01-10;300.71;905;923.04;901.5;917.09 +2017-01-09;484.31;918;922.01;882.29;905 +2017-01-08;471.54;902.99;946.77;891.1;918 +2017-01-07;1020.33;894.01;914.45;822.76;902.99 +2017-01-06;1309.37;1000;1037.91;871.21;894.01 +2017-01-05;1622.25;1127.38;1164.01;900;1000 +2017-01-04;1167.12;1033.9;1146.41;1031.27;1127.38 +2017-01-03;340.05;1024.12;1035;1014.53;1033.9 +2017-01-02;564.82;999.38;1040;993.26;1024.12 +2017-01-01;458.65;965.15;1003.99;961.09;999.38 +2016-12-31;242.81;965;965.2;944.27;965.15 +2016-12-30;511.1;971.65;973;924;965 +2016-12-29;479.15;976;984.05;952.01;971.65 +2016-12-28;564.35;932.86;983.2;929.62;976 +2016-12-27;370.8;905.29;942.98;903.5;932.86 +2016-12-26;295.47;894.8;912;890.68;905.29 +2016-12-25;340.33;895.71;902.26;860.1;894.8 +2016-12-24;492.3;914.16;921;880;895.71 +2016-12-23;897.84;866.37;918.47;866.01;914.16 +2016-12-22;610.33;829.11;878;823;866.37 +2016-12-21;603.33;801.25;834.78;800.01;829.11 +2016-12-20;310.51;794.39;801.25;793;801.25 +2016-12-19;239.72;796;799;793.5;794.39 +2016-12-18;277.84;794.35;796;789.69;796 +2016-12-17;329.39;787.34;795;786.83;794.35 +2016-12-16;236.98;781.73;789;780.11;787.34 +2016-12-15;259.11;776.01;783.83;775.36;781.73 +2016-12-14;352.26;781.31;783;769.02;776.01 +2016-12-13;400.38;783.15;789.12;764;781.31 +2016-12-12;428.06;774.4;784.87;769;783.15 +2016-12-11;384.21;778.09;779.9;770;774.4 +2016-12-10;355.4;776.19;780.1;775;778.09 +2016-12-09;392.69;775;779.74;771;776.19 +2016-12-08;345.82;770.9;778.43;769;775 +2016-12-07;465.3;761.41;775;754.22;770.9 +2016-12-06;482.66;758.19;763.95;756;761.41 +2016-12-05;513.47;773.99;774;750;758.19 +2016-12-04;400.35;768.81;774;766;773.99 +2016-12-03;523.99;778;778.8;760.56;768.81 +2016-12-02;638.51;757;779.74;752.95;778 +2016-12-01;547.41;746.6;760;746;757 +2016-11-30;540.57;740.21;751.8;739.3;746.6 +2016-11-29;508.31;740.04;742.26;737;740.21 +2016-11-28;543.92;733.07;743.67;733.01;740.04 +2016-11-27;484.99;738.16;744.41;730.99;733.07 +2016-11-26;562.7;745;747.8;730.91;738.16 +2016-11-25;601.48;743.65;747.46;737.47;745 +2016-11-24;587.67;744.89;750.34;735.67;743.65 +2016-11-23;663.49;752.49;755.7;735;744.89 +2016-11-22;660.25;743.39;758.88;737.48;752.49 +2016-11-21;642.31;733.58;752.25;733.05;743.39 +2016-11-20;656.86;753;759.01;719;733.58 +2016-11-19;493.74;755.19;766.97;747.33;753 +2016-11-18;653.39;740.57;757.84;738.01;755.19 +2016-11-17;918.6;741.93;755;737;740.57 +2016-11-16;797.11;715.51;744.29;714;741.93 +2016-11-15;726.88;708.86;719.65;707.85;715.51 +2016-11-14;649.35;704.94;712.2;702.26;708.86 +2016-11-13;507.96;707.72;707.75;686.32;704.94 +2016-11-12;618.84;718.33;720;701.98;707.72 +2016-11-11;615.73;716.88;720.87;712.99;718.33 +2016-11-10;691.31;722.06;727.03;712.88;716.88 +2016-11-09;1015.73;712.72;745;709.65;722.06 +2016-11-08;932.26;708.69;714.96;701.23;712.72 +2016-11-07;816.5;713.76;715.8;701.96;708.69 +2016-11-06;869.36;709.55;719.77;703.89;713.76 +2016-11-05;797.1;708.8;712.81;702.64;709.55 +2016-11-04;1276.62;692.79;714.36;686.05;708.8 +2016-11-03;1561.91;739.9;750.05;676;692.79 +2016-11-02;1307.62;731.41;768.24;722.73;739.9 +2016-11-01;1582.65;701.19;737.75;699.99;731.41 +2016-10-31;1305.37;695.3;705;688.78;701.19 +2016-10-30;1152.78;717.78;718.32;692.89;695.3 +2016-10-29;1152.49;691.73;719.5;691.63;717.78 +2016-10-28;1340.51;685.89;693.92;684.9;691.73 +2016-10-27;1470.24;679.91;691.51;677.26;685.89 +2016-10-26;1604.63;654.37;682.82;654.01;679.91 +2016-10-25;777.22;657.26;665;654.01;654.37 +2016-10-24;372.27;655.4;660;652.6;657.26 +2016-10-23;288.32;658.58;664.94;651.5;655.4 +2016-10-22;749.08;636.29;662.26;634;658.58 +2016-10-21;281.54;632.03;639;631.5;636.29 +2016-10-20;390.25;632.78;635;628.85;632.03 +2016-10-19;400.51;638.89;643.4;630;632.78 +2016-10-18;362.61;643.7;643.7;637;638.89 +2016-10-17;387.89;644.21;645;640;643.7 +2016-10-16;420.26;641.38;645.28;640;644.21 +2016-10-15;383.03;644.29;645.28;640.33;641.38 +2016-10-14;510.06;640.29;645;636;644.29 +2016-10-13;468.18;637.94;642.33;636;640.29 +2016-10-12;405.96;643.44;645;635.05;637.94 +2016-10-11;633.11;622.36;644.5;619.64;643.44 +2016-10-10;445.92;620.31;622.5;618;622.36 +2016-10-09;493.23;620.6;624;619.48;620.31 +2016-10-08;546.01;618.87;624;617.26;620.6 +2016-10-07;586.41;614.89;620;609;618.87 +2016-10-06;576.88;615.63;616.75;611.5;614.89 +2016-10-05;749.9;613.01;618.4;609;615.63 +2016-10-04;549.38;614.32;615;609;613.01 +2016-10-03;511.56;614.11;615.99;611.3;614.32 +2016-10-02;561.23;617.87;619.46;611;614.11 +2016-10-01;656.94;612.93;619.47;611.28;617.87 +2016-09-30;943.01;610.05;615;606.17;612.93 +2016-09-29;853.11;615.59;616;610;610.05 +2016-09-28;605.87;615.77;616.82;615;615.59 +2016-09-27;728.43;616.32;620.05;613;615.77 +2016-09-26;700.11;615.3;620.05;610;616.32 +2016-09-25;549.13;617.31;619.34;615;615.3 +2016-09-24;710.98;615.15;620;612;617.31 +2016-09-23;833.79;611.06;618.77;610;615.15 +2016-09-22;832.28;612.88;614.86;610;611.06 +2016-09-21;941.02;618.14;618.17;610;612.88 +2016-09-20;950.83;618.2;620;615;618.14 +2016-09-19;805.97;620.7;623.9;615;618.2 +2016-09-18;721.96;617.82;621.38;614.87;620.7 +2016-09-17;806.19;619.7;620;615.05;617.82 +2016-09-16;907.88;623.02;625;613.1;619.7 +2016-09-15;791.72;625;626;620.86;623.02 +2016-09-14;751.1;625.05;626;622.5;625 +2016-09-13;787.45;622.48;626.48;622.1;625.05 +2016-09-12;896.67;624.08;632.74;622.06;622.48 +2016-09-11;782.1;636.49;640;612.44;624.08 +2016-09-10;660.86;635.08;638;632.27;636.49 +2016-09-09;951.8;637.81;639.52;629.56;635.08 +2016-09-08;960.6;619.71;640.39;618.82;637.81 +2016-09-07;684.85;615;620;610.54;619.71 +2016-09-06;548.44;612.73;615;612;615 +2016-09-05;584.17;615.32;615.9;607.92;612.73 +2016-09-04;663.74;606.87;623;603.85;615.32 +2016-09-03;799.51;582.64;609.6;578.08;606.87 +2016-09-02;697.65;581.17;583.66;578.32;582.64 +2016-09-01;730.19;587.47;588;579.02;581.17 +2016-08-31;715.72;588.26;588.69;580;587.47 +2016-08-30;810.44;586.47;590;578.99;588.26 +2016-08-29;784.11;592.81;595.97;585.1;586.47 +2016-08-28;690.49;590.54;595;580;592.81 +2016-08-27;746.44;602.7;604.5;580;590.54 +2016-08-26;936.92;604.55;607.95;600;602.7 +2016-08-25;950.84;610.57;611.57;602.2;604.55 +2016-08-24;928.16;609.08;612.5;605.15;610.57 +2016-08-23;854.08;610.15;613.98;607.12;609.08 +2016-08-22;930.63;603.2;610.15;601;610.15 +2016-08-21;660.06;599.3;604;590;603.2 +2016-08-20;758.74;598.08;604.47;592.4;599.3 +2016-08-19;1014.77;598.64;604;589.12;598.08 +2016-08-18;1129.32;592.72;602.03;591.1;598.64 +2016-08-17;1164.27;598.5;601.15;586.13;592.72 +2016-08-16;1201.37;588.32;603;583;598.5 +2016-08-15;1263.29;580.64;594.03;577.1;588.32 +2016-08-14;860.91;597.59;599.08;572.28;580.64 +2016-08-13;696.0;601;602.64;592.02;597.59 +2016-08-12;1336.48;596.55;603;592.18;601 +2016-08-11;1367.57;600.89;609;595;596.55 +2016-08-10;1496.67;596.14;609.72;591.21;600.89 +2016-08-09;1575.06;599.79;601.18;588;596.14 +2016-08-08;1791.86;603.95;605.3;593.97;599.79 +2016-08-07;922.16;589.47;607;589;603.95 +2016-08-06;988.53;577.1;594.15;572.8;589.47 +2016-08-05;1824.16;578.24;580;570.32;577.1 +2016-08-04;2138.0;568.87;585.65;565.32;578.24 +2016-08-03;2180.8;516.37;578.94;516.06;568.87 +2016-08-02;2267.87;615.61;621;484.47;516.37 +2016-08-01;1675.19;631;635;614.97;615.61 +2016-07-31;947.51;659.16;662;631;631 +2016-07-30;877.44;659.46;662.4;656;659.16 +2016-07-29;1560.88;663.3;663.9;656.07;659.46 +2016-07-28;1624.36;658.6;664;655;663.3 +2016-07-27;1666.39;661.86;663.13;650;658.6 +2016-07-26;1664.29;657.69;665;644.78;661.86 +2016-07-25;1716.82;664.59;667;655.69;657.69 +2016-07-24;866.4;662.7;668.98;655;664.59 +2016-07-23;1169.89;657.57;665.14;652.78;662.7 +2016-07-22;1733.45;666.84;669.62;653.02;657.57 +2016-07-21;1302.32;665.49;670.2;660.2;666.84 +2016-07-20;1335.5;672.66;674.76;660;665.49 +2016-07-19;1405.77;673;675.4;665.43;672.66 +2016-07-18;1390.0;677.04;682;668;673 +2016-07-17;1074.49;664.7;680;661.29;677.04 +2016-07-16;805.24;667.89;671.4;661;664.7 +2016-07-15;1414.47;664.21;672.1;661.01;667.89 +2016-07-14;1310.58;664.88;667.61;652.75;664.21 +2016-07-13;924.84;676.18;676.18;658.15;664.88 +2016-07-12;571.5;653.03;680;647.4;676.18 +2016-07-11;543.52;650.25;658;642.1;653.03 +2016-07-10;280.11;655.21;655.89;640;650.25 +2016-07-09;677.78;662.8;665.02;625.02;655.21 +2016-07-08;928.52;635.92;662.8;634.06;662.8 +2016-07-07;1231.9;679.11;682;607;635.92 +2016-07-06;653.52;671.03;681.93;667.42;679.11 +2016-07-05;721.29;682.87;688.48;665;671.03 +2016-07-04;882.16;668;684.79;647.06;682.87 +2016-07-03;585.57;706.33;711;651;668 +2016-07-02;520.5;679.17;710;679.17;706.33 +2016-07-01;878.65;673.44;688.8;666.2;679.17 +2016-06-30;907.26;643.61;675.23;638.35;673.44 +2016-06-29;890.94;653.86;655.83;629.65;643.61 +2016-06-28;868.02;650.04;670;646;653.86 +2016-06-27;907.3;635.1;662.18;620.61;650.04 +2016-06-26;597.33;676.49;676.6;613.86;635.1 +2016-06-25;581.05;671.01;699.42;647.93;676.49 +2016-06-24;1122.79;649;699;635.63;671.01 +2016-06-23;1597.55;595.82;649;548.85;649 +2016-06-22;1274.76;671.4;683.29;595;595.82 +2016-06-21;1149.53;741.68;743.41;640;671.4 +2016-06-20;911.3;767.94;769.98;720;741.68 +2016-06-19;496.22;761.76;769.98;745.07;767.94 +2016-06-18;600.24;749.65;777;729.1;761.76 +2016-06-17;1412.71;768.14;777;705.04;749.65 +2016-06-16;1357.73;698.48;773.23;697.63;768.14 +2016-06-15;690.76;688;700.8;672;698.48 +2016-06-14;605.28;709.61;710.53;667.5;688 +2016-06-13;1173.89;675.94;722.47;669.17;709.61 +2016-06-12;1131.89;595.8;695.85;595.07;675.94 +2016-06-11;524.73;580.37;595.8;577.9;595.8 +2016-06-10;1102.65;577.99;583.47;572.87;580.37 +2016-06-09;965.07;585.5;587.16;573.13;577.99 +2016-06-08;1655.86;577.91;587.34;572;585.5 +2016-06-07;1598.01;588.46;591;566.68;577.91 +2016-06-06;918.82;586.41;590;579.52;588.46 +2016-06-05;546.18;577.26;590;570.98;586.41 +2016-06-04;711.01;572.05;593.59;562.31;577.26 +2016-06-03;1073.17;539.87;579.13;535.2;572.05 +2016-06-02;871.61;542.74;544.5;535;539.87 +2016-06-01;880.85;534.8;544.84;528.04;542.74 +2016-05-31;1143.92;546.26;554.95;521.79;534.8 +2016-05-30;1222.05;523.1;557;521.94;546.26 +2016-05-29;1714.97;533;551.65;505.74;523.1 +2016-05-28;1249.02;477;538.57;473.08;533 +2016-05-27;1873.8;454.67;480.77;454.14;477 +2016-05-26;1056.11;452.29;456.99;449.71;454.67 +2016-05-25;902.87;448.51;454;446.05;452.29 +2016-05-24;957.83;446.69;450;443.2;448.51 +2016-05-23;1133.51;440.09;447.37;439;446.69 +2016-05-22;908.97;447.87;448.2;440;440.09 +2016-05-21;965.0;445.74;448.43;441.2;447.87 +2016-05-20;1239.15;444.92;448.89;436;445.74 +2016-05-19;1383.92;456.81;457.85;442;444.92 +2016-05-18;1290.1;456.32;459.95;453.87;456.81 +2016-05-17;1384.17;458.71;459.42;453.87;456.32 +2016-05-16;1658.8;459.7;462.5;455;458.71 +2016-05-15;991.83;459.88;462.5;457.99;459.7 +2016-05-14;1147.31;459.78;461.75;457;459.88 +2016-05-13;1402.39;459.44;461.15;454;459.78 +2016-05-12;1720.26;456.03;459.5;450.5;459.44 +2016-05-11;1633.92;454.49;459.97;453.89;456.03 +2016-05-10;1782.77;458.96;465.42;451.22;454.49 +2016-05-09;1512.02;462.7;467;458.96;458.96 +2016-05-08;964.92;465.46;465.58;457.71;462.7 +2016-05-07;1019.45;466.47;466.81;456.5;465.46 +2016-05-06;1597.36;454.59;468;451;466.47 +2016-05-05;1908.51;451.49;456.24;448.02;454.59 +2016-05-04;2025.73;453.98;457.3;448;451.49 +2016-05-03;2058.18;449.77;457.77;444;453.98 +2016-05-02;1872.59;457.02;459.98;442.58;449.77 +2016-05-01;1282.57;452.86;460;449;457.02 +2016-04-30;1059.83;455.1;459.91;451;452.86 +2016-04-29;2355.39;449.59;457.92;444.81;455.1 +2016-04-28;2370.3;451.62;452.84;436.64;449.59 +2016-04-27;2095.32;467.9;470.5;450;451.62 +2016-04-26;2680.32;461.86;472;458.94;467.9 +2016-04-25;2665.08;462.68;464.42;451;461.86 +2016-04-24;1591.19;449.92;467.72;449;462.68 +2016-04-23;1396.99;448.58;452;446;449.92 +2016-04-22;2994.07;448.87;452.45;446;448.58 +2016-04-21;2685.38;443.87;454.86;441.2;448.87 +2016-04-20;2634.47;439.75;445;436.4;443.87 +2016-04-19;2465.59;432.08;440;429.5;439.75 +2016-04-18;2564.9;428.5;433.12;426.12;432.08 +2016-04-17;1049.22;432.8;434.68;426.58;428.5 +2016-04-16;1173.81;430.81;435;430;432.8 +2016-04-15;2040.9;425.91;433;424.95;430.81 +2016-04-14;2172.79;428;429.99;424;425.91 +2016-04-13;2619.4;425.94;430.89;424.22;428 +2016-04-12;2800.5;423.7;430.33;423;425.94 +2016-04-11;2193.2;422.5;425;421.01;423.7 +2016-04-10;1062.51;421.75;425.11;421;422.5 +2016-04-09;1808.28;420.5;423.2;418.32;421.75 +2016-04-08;3728.32;421.94;427;420;420.5 +2016-04-07;3362.67;423.8;424.88;420;421.94 +2016-04-06;3134.35;425.6;426;421.12;423.8 +2016-04-05;3721.35;422.91;426.93;421.95;425.6 +2016-04-04;3422.28;421.67;424.4;418.6;422.91 +2016-04-03;2070.37;419.65;422.9;419.12;421.67 +2016-04-02;1233.15;418.22;422.85;418.22;419.65 +2016-04-01;3076.73;419.43;420.62;414.98;418.22 +2016-03-31;2119.76;417.18;421.2;415.01;419.43 +2016-03-30;3044.51;417.75;422;414.03;417.18 +2016-03-29;3077.94;426;427.5;410.7;417.75 +2016-03-28;2221.96;423.45;428.26;421;426 +2016-03-27;1173.77;419.36;430.86;417.71;423.45 +2016-03-26;1229.87;419.14;421.89;417.63;419.36 +2016-03-25;3063.82;418.73;421.16;416.01;419.14 +2016-03-24;2071.59;420.53;421.46;416;418.73 +2016-03-23;2753.78;419.66;424;416.97;420.53 +2016-03-22;2965.65;416.09;422.1;415.83;419.66 +2016-03-21;1929.05;417.11;422.61;415;416.09 +2016-03-20;1080.68;415.33;420.49;414.07;417.11 +2016-03-19;1156.24;414.86;418.68;411.15;415.33 +2016-03-18;2057.16;418.89;422.64;410.41;414.86 +2016-03-17;2755.74;420.73;424.33;418.86;418.89 +2016-03-16;3469.29;420.45;422.67;418.5;420.73 +2016-03-15;2086.64;419;422.5;418;420.45 +2016-03-14;2813.16;419.28;421.5;416.1;419 +2016-03-13;1106.48;416.27;423.1;416.01;419.28 +2016-03-12;1233.28;421.76;424.26;412.33;416.27 +2016-03-11;2039.54;419.2;427.49;418.56;421.76 +2016-03-10;2558.81;418.1;421.96;414;419.2 +2016-03-09;2693.22;415.63;418.94;413.06;418.1 +2016-03-08;2015.7;419.46;421.46;412.09;415.63 +2016-03-07;2016.03;413.16;420;406.59;419.46 +2016-03-06;1781.57;407.51;420;402.5;413.16 +2016-03-05;1287.85;412.67;417.62;399;407.51 +2016-03-04;2675.71;425.51;430.31;410;412.67 +2016-03-03;2825.1;432.48;433;423.7;425.51 +2016-03-02;1975.13;439.72;444.56;432;432.48 +2016-03-01;2482.29;439.06;440.76;432.04;439.72 +2016-02-29;1779.15;434.31;442.5;432.55;439.06 +2016-02-28;956.12;435;438.99;426;434.31 +2016-02-27;934.75;431.47;438.99;431;435 +2016-02-26;1435.56;427.05;432.98;424;431.47 +2016-02-25;1776.87;426.71;431.44;421.54;427.05 +2016-02-24;1811.14;424.68;429;415;426.71 +2016-02-23;2351.3;441.5;442.9;417;424.68 +2016-02-22;2313.78;439.45;443.84;434;441.5 +2016-02-21;943.95;439;449.92;430;439.45 +2016-02-20;1128.09;423.24;445;419;439 +2016-02-19;1798.04;422.72;428;419;423.24 +2016-02-18;1824.94;420.33;427;418;422.72 +2016-02-17;1816.95;409.18;425;409;420.33 +2016-02-16;1822.63;404.3;413.4;401.5;409.18 +2016-02-15;1937.62;406.99;411.88;399;404.3 +2016-02-14;2128.17;393.26;408;391.74;406.99 +2016-02-13;1033.32;388.88;395;387.5;393.26 +2016-02-12;2266.71;387.19;395;385.24;388.88 +2016-02-11;2024.59;384.38;390.03;378;387.19 +2016-02-10;3297.33;381.78;386;380;384.38 +2016-02-09;1925.92;378.48;383.95;375.6;381.78 +2016-02-08;2010.15;383.79;387.16;377.83;378.48 +2016-02-07;1571.23;383.19;387.5;380.14;383.79 +2016-02-06;1088.72;390.48;392.38;380;383.19 +2016-02-05;1587.99;392.64;395;388;390.48 +2016-02-04;1175.44;371.03;394.55;369.75;392.64 +2016-02-03;1361.72;379.71;383;369.95;371.03 +2016-02-02;863.54;379.21;385;379;379.71 +2016-02-01;806.59;377.05;385.8;374;379.21 +2016-01-31;338.74;383.54;387;376.2;377.05 +2016-01-30;258.87;380.97;388;379.6;383.54 +2016-01-29;816.14;383.3;388.02;368;380.97 +2016-01-28;662.04;399.02;399.5;383.3;383.3 +2016-01-27;685.75;397.47;402;394.88;399.02 +2016-01-26;617.79;397.3;401;394.78;397.47 +2016-01-25;640.12;403.31;406.5;392.1;397.3 +2016-01-24;295.07;394.18;408.58;390;403.31 +2016-01-23;377.83;389.77;401;389;394.18 +2016-01-22;838.37;417.62;418;384.01;389.77 +2016-01-21;648.14;420.5;425;405.01;417.62 +2016-01-20;862.84;384.27;425;380;420.5 +2016-01-19;818.81;388.21;393;382;384.27 +2016-01-18;798.15;388.2;391.08;378.75;388.21 +2016-01-17;370.56;386.1;397.98;381;388.2 +2016-01-16;629.15;375;388.99;355;386.1 +2016-01-15;1097.27;431.98;434.18;372;375 +2016-01-14;702.61;434.83;437;429.53;431.98 +2016-01-13;847.85;448.63;448.65;419;434.83 +2016-01-12;720.33;451.75;452.68;447;448.63 +2016-01-11;652.63;453.94;458.96;449.21;451.75 +2016-01-10;350.9;455.77;457.78;447.21;453.94 +2016-01-09;317.25;461.44;462.76;452.05;455.77 +2016-01-08;749.1;463.84;470;454.5;461.44 +2016-01-07;670.16;437.28;464.7;436.96;463.84 +2016-01-06;791.77;435.01;438;429;437.28 +2016-01-05;688.91;436.74;438.58;432.5;435.01 +2016-01-04;683.38;433.67;438.99;432.5;436.74 +2016-01-03;367.91;435.47;438;429.13;433.67 +2016-01-02;385.79;438.31;441.5;433;435.47 +2016-01-01;668.25;435.58;439.18;432.49;438.31 +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; +;;;;; diff --git a/sim_to_2020-08-31_100based_2020-06-01_2020-01-01.csv b/sim_to_2020-08-31_100based_2020-06-01_2020-01-01.csv new file mode 100644 index 00000000..1733d473 --- /dev/null +++ b/sim_to_2020-08-31_100based_2020-06-01_2020-01-01.csv @@ -0,0 +1,86 @@ +2020-06-07;60,54;9829,90;9928,06;9713,67;9860,45 +2020-06-08;90,67;9860,45;9975,17;9736,73;9874,91 +2020-06-09;114,41;9874,91;10003,34;9741,37;9875,82 +2020-06-10;135,30;9875,82;9991,28;9755,79;9902,62 +2020-06-11;161,07;9902,62;10035,41;9794,85;9964,46 +2020-06-12;191,09;9964,46;10094,98;9843,51;9993,61 +2020-06-13;207,27;9993,61;10128,94;9856,53;9984,32 +2020-06-14;226,61;9984,32;10090,89;9870,13;9996,16 +2020-06-15;264,46;9996,16;10104,97;9874,44;10025,06 +2020-06-16;267,79;10025,06;10167,43;9897,55;10010,49 +2020-06-17;304,44;10010,49;10139,53;9866,97;10038,94 +2020-06-18;317,71;10038,94;10196,64;9921,49;10082,32 +2020-06-19;320,86;10082,32;10226,24;9951,79;10127,28 +2020-06-20;333,42;10127,28;10265,41;9999,23;10136,96 +2020-06-21;360,42;10136,96;10243,62;10009,32;10168,67 +2020-06-22;394,46;10168,67;10293,30;10052,93;10196,18 +2020-06-23;434,25;10196,18;10327,26;10080,25;10211,94 +2020-06-24;439,60;10211,94;10344,24;10094,65;10225,69 +2020-06-25;459,58;10225,69;10354,28;10113,09;10230,21 +2020-06-26;486,22;10230,21;10365,36;10121,91;10259,13 +2020-06-27;499,27;10259,13;10383,29;10147,48;10275,95 +2020-06-28;526,17;10275,95;10402,93;10131,02;10308,02 +2020-06-29;523,53;10308,02;10430,65;10168,32;10307,32 +2020-06-30;543,17;10307,32;10436,89;10187,58;10325,16 +2020-07-01;541,25;10325,16;10448,57;10183,75;10368,91 +2020-07-02;568,56;10368,91;10486,97;10237,65;10372,78 +2020-07-03;583,78;10372,78;10520,08;10252,17;10386,23 +2020-07-04;602,10;10386,23;10504,76;10249,33;10392,87 +2020-07-05;615,10;10392,87;10505,08;10255,94;10403,21 +2020-07-06;634,92;10403,21;10538,57;10269,82;10403,44 +2020-07-07;642,91;10403,44;10530,97;10276,30;10428,18 +2020-07-08;668,75;10428,18;10553,66;10303,43;10477,42 +2020-07-09;677,97;10477,42;10600,40;10354,37;10502,44 +2020-07-10;693,83;10502,44;10636,81;10357,39;10531,33 +2020-07-11;703,19;10531,33;10663,03;10404,06;10515,10 +2020-07-12;708,08;10515,10;10639,10;10366,65;10515,16 +2020-07-13;750,38;10515,16;10663,68;10386,56;10549,95 +2020-07-14;769,19;10549,95;10677,44;10414,77;10564,61 +2020-07-15;776,06;10564,61;10704,93;10436,68;10584,78 +2020-07-16;783,52;10584,78;10723,74;10478,91;10620,46 +2020-07-17;778,90;10620,46;10751,56;10487,62;10672,42 +2020-07-18;783,23;10672,42;10805,41;10533,62;10695,77 +2020-07-19;800,36;10695,77;10824,12;10561,89;10719,41 +2020-07-20;806,78;10719,41;10837,85;10608,20;10769,76 +2020-07-21;824,51;10769,76;10902,72;10638,36;10829,38 +2020-07-22;826,71;10829,38;10972,94;10686,64;10820,95 +2020-07-23;843,71;10820,95;10944,48;10678,52;10859,80 +2020-07-24;865,44;10859,80;10986,59;10734,13;10867,59 +2020-07-25;860,79;10867,59;11001,77;10764,74;10868,41 +2020-07-26;875,25;10868,41;11001,87;10748,20;10859,70 +2020-07-27;888,35;10859,70;10990,22;10740,22;10886,55 +2020-07-28;899,77;10886,55;11015,04;10757,74;10862,16 +2020-07-29;918,20;10862,16;10998,08;10738,32;10907,62 +2020-07-30;924,47;10907,62;11038,91;10772,08;10962,32 +2020-07-31;955,59;10962,32;11094,69;10844,88;10992,67 +2020-08-01;974,62;10992,67;11124,15;10852,19;11001,99 +2020-08-02;963,99;11001,99;11146,99;10872,56;11034,52 +2020-08-03;972,14;11034,52;11151,50;10925,34;11073,36 +2020-08-04;971,93;11073,36;11190,35;10952,49;11074,11 +2020-08-05;987,19;11074,11;11225,09;10953,02;11098,12 +2020-08-06;999,37;11098,12;11240,56;10959,64;11107,12 +2020-08-07;1019,30;11107,12;11237,27;10986,73;11113,95 +2020-08-08;1025,46;11113,95;11244,84;10968,72;11134,71 +2020-08-09;1051,24;11134,71;11261,34;11001,26;11143,20 +2020-08-10;1066,62;11143,20;11279,75;10994,33;11180,24 +2020-08-11;1072,93;11180,24;11300,07;11049,26;11201,42 +2020-08-12;1094,71;11201,42;11327,25;11068,09;11225,65 +2020-08-13;1104,29;11225,65;11315,77;11114,41;11245,25 +2020-08-14;1144,08;11245,25;11367,88;11126,08;11280,79 +2020-08-15;1144,84;11280,79;11402,10;11141,72;11307,91 +2020-08-16;1153,13;11307,91;11439,15;11170,52;11340,35 +2020-08-17;1161,26;11340,35;11460,88;11215,25;11334,34 +2020-08-18;1199,25;11334,34;11453,30;11208,03;11330,15 +2020-08-19;1219,70;11330,15;11477,26;11214,10;11411,49 +2020-08-20;1226,63;11411,49;11525,03;11282,73;11438,61 +2020-08-21;1215,13;11438,61;11574,59;11319,94;11490,03 +2020-08-22;1221,87;11490,03;11619,14;11358,33;11476,62 +2020-08-23;1212,16;11476,62;11600,23;11348,77;11473,32 +2020-08-24;1219,28;11473,32;11595,21;11344,41;11524,49 +2020-08-25;1234,68;11524,49;11656,68;11390,11;11522,25 +2020-08-26;1240,76;11522,25;11656,89;11397,74;11537,81 +2020-08-27;1248,84;11537,81;11651,60;11406,68;11583,71 +2020-08-28;1271,19;11583,71;11714,90;11473,83;11608,01 +2020-08-29;1288,47;11608,01;11740,02;11485,23;11638,44 +2020-08-30;1278,67;11638,44;11768,05;11504,92;11677,48 +2020-08-31;1291,62;11677,48;11796,03;11563,08;11692,03 diff --git a/sim_to_2020-08-31_1based_2020-06-01_2020-01-01.csv b/sim_to_2020-08-31_1based_2020-06-01_2020-01-01.csv new file mode 100644 index 00000000..84183839 --- /dev/null +++ b/sim_to_2020-08-31_1based_2020-06-01_2020-01-01.csv @@ -0,0 +1,86 @@ +2020-06-07;56,26;9829,90;10175,28;9761,26;9958,52 +2020-06-08;96,28;9958,52;10091,89;9720,81;9914,13 +2020-06-09;118,37;9914,13;10065,62;9814,64;10310,67 +2020-06-10;151,52;10310,67;10368,74;10177,38;10312,26 +2020-06-11;314,54;10312,26;10549,85;10220,77;10374,57 +2020-06-12;189,12;10374,57;10571,44;10055,70;10055,25 +2020-06-13;295,92;10055,25;10092,51;9890,97;10063,07 +2020-06-14;62,50;10063,07;10296,43;9880,17;10176,51 +2020-06-15;0,00;10176,51;10227,49;10094,51;10063,18 +2020-06-16;93,50;10063,18;10067,48;9934,24;10129,45 +2020-06-17;0,00;10129,45;10356,78;10124,95;9935,43 +2020-06-18;85,62;9935,43;10053,14;9730,19;10161,15 +2020-06-19;42,33;10161,15;10555,59;10134,81;10070,07 +2020-06-20;113,02;10070,07;10291,96;9845,83;9902,41 +2020-06-21;269,67;9902,41;10049,53;9815,96;10030,02 +2020-06-22;291,38;10030,02;10129,12;10020,85;9604,52 +2020-06-23;372,29;9604,52;9701,63;9305,91;9816,09 +2020-06-24;195,65;9816,09;9836,51;9780,52;9784,62 +2020-06-25;223,98;9784,62;9805,99;9713,21;9739,83 +2020-06-26;218,63;9739,83;9802,60;9612,10;10089,90 +2020-06-27;300,70;10089,90;10210,53;10084,73;10206,91 +2020-06-28;483,41;10206,91;10314,02;10044,47;10448,27 +2020-06-29;584,44;10448,27;10476,41;10266,49;10394,44 +2020-06-30;575,79;10394,44;10645,03;10313,38;10543,67 +2020-07-01;725,30;10543,67;10637,84;10442,03;10386,56 +2020-07-02;658,46;10386,56;10689,90;10379,94;10674,14 +2020-07-03;561,74;10674,14;10834,09;10654,82;10590,20 +2020-07-04;730,43;10590,20;10731,83;10482,30;10446,97 +2020-07-05;761,56;10446,97;10734,34;10331,65;10295,96 +2020-07-06;610,37;10295,96;10470,25;10257,97;10385,77 +2020-07-07;585,06;10385,77;10603,51;10360,32;10806,28 +2020-07-08;532,46;10806,28;10998,70;10672,33;10853,64 +2020-07-09;292,82;10853,64;11066,68;10822,23;10754,72 +2020-07-10;212,17;10754,72;10925,09;10651,58;10958,89 +2020-07-11;192,58;10958,89;11007,56;10907,10;10713,75 +2020-07-12;101,98;10713,75;10832,16;10476,63;10875,09 +2020-07-13;97,36;10875,09;11021,49;10800,66;10727,10 +2020-07-14;268,79;10727,10;10920,15;10530,21;10688,53 +2020-07-15;360,93;10688,53;10701,82;10669,79;10998,23 +2020-07-16;402,88;10998,23;11070,05;10796,55;10703,73 +2020-07-17;243,07;10703,73;10960,64;10562,88;10778,42 +2020-07-18;328,62;10778,42;11087,35;10702,57;10772,85 +2020-07-19;161,89;10772,85;10958,61;10703,63;10963,88 +2020-07-20;174,86;10963,88;11204,88;10791,77;10944,51 +2020-07-21;361,87;10944,51;10970,90;10715,07;11023,46 +2020-07-22;573,18;11023,46;11309,76;10800,35;11347,94 +2020-07-23;593,20;11347,94;11392,02;11213,46;11481,81 +2020-07-24;676,60;11481,81;11484,80;11150,59;11189,90 +2020-07-25;465,11;11189,90;11480,84;10942,51;11447,59 +2020-07-26;583,94;11447,59;11614,37;11258,70;11411,05 +2020-07-27;448,71;11411,05;11488,90;11326,46;11178,92 +2020-07-28;452,65;11178,92;11329,29;11158,03;11202,96 +2020-07-29;733,82;11202,96;11443,95;11183,08;11475,83 +2020-07-30;797,98;11475,83;11533,53;11341,36;11560,34 +2020-07-31;690,24;11560,34;11564,22;11309,69;11331,41 +2020-08-01;607,42;11331,41;11473,92;11316,07;11451,53 +2020-08-02;806,36;11451,53;11631,95;11264,37;10935,24 +2020-08-03;729,11;10935,24;11238,34;10884,34;11243,68 +2020-08-04;729,63;11243,68;11288,36;11188,91;11541,29 +2020-08-05;698,61;11541,29;11607,70;11522,99;11939,13 +2020-08-06;603,70;11939,13;12118,49;11892,81;11867,53 +2020-08-07;481,10;11867,53;11874,88;11847,68;11598,99 +2020-08-08;372,00;11598,99;11621,73;11527,73;11283,30 +2020-08-09;392,94;11283,30;11290,89;11187,35;11189,63 +2020-08-10;466,15;11189,63;11289,21;11046,53;11318,40 +2020-08-11;634,63;11318,40;11415,14;11268,46;11394,24 +2020-08-12;758,75;11394,24;11411,89;11233,60;11475,24 +2020-08-13;689,47;11475,24;11582,88;11442,06;11604,80 +2020-08-14;764,08;11604,80;11633,33;11476,34;11599,02 +2020-08-15;606,30;11599,02;11706,16;11537,87;11591,80 +2020-08-16;597,70;11591,80;11624,33;11329,75;11371,57 +2020-08-17;530,70;11371,57;11386,27;11188,81;11306,33 +2020-08-18;738,86;11306,33;11564,21;11284,53;11506,32 +2020-08-19;644,51;11506,32;11608,98;11279,18;11454,37 +2020-08-20;739,97;11454,37;11607,96;11454,31;11461,77 +2020-08-21;627,12;11461,77;11464,10;11005,44;11316,72 +2020-08-22;527,97;11316,72;11702,91;11226,84;11614,37 +2020-08-23;451,56;11614,37;11932,40;11584,10;11518,21 +2020-08-24;367,05;11518,21;11666,01;11369,37;11254,33 +2020-08-25;475,76;11254,33;11313,73;10926,55;11438,71 +2020-08-26;217,96;11438,71;11447,85;11273,47;11578,98 +2020-08-27;277,38;11578,98;11823,08;11532,67;11415,60 +2020-08-28;169,31;11415,60;11578,89;11395,97;11446,42 +2020-08-29;132,93;11446,42;11486,92;11374,65;11299,11 +2020-08-30;325,38;11299,11;11714,95;11210,94;11127,97 +2020-08-31;422,14;11127,97;11380,04;10923,64;11217,18 diff --git a/single_sim_chart.png b/single_sim_chart.png new file mode 100644 index 0000000000000000000000000000000000000000..86241800cb1353a65f3cfba9a7c37d004ac149cf GIT binary patch literal 25685 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 JF3`LY_#ac8^HKl+ literal 0 HcmV?d00001 diff --git a/wykresy_symulacji.xlsx b/wykresy_symulacji.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..77fdba229a002e52a5c8e3ed19daf36f8446b910 GIT binary patch literal 41663 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 PWPn#1aQEAmwesmN+~4;< literal 0 HcmV?d00001