public static ArrayList<Stock> QueryMultiple(ArrayList<String> codes) {
        URL url;
        InputStream is = null;
        BufferedReader br;
        String line;
        Stock tmp;
        ArrayList<Stock> sList = new ArrayList<>();

        String urlStr = "";
        for (int i = 0; i < codes.size() - 1; i++) {
            urlStr += codes.get(i) + ",";
        }
        urlStr += codes.get(codes.size() - 1);
        urlStr = "http://finance.yahoo.com/d/quotes.csv?s=" + urlStr + "&f=nsl1";

        try {
            url = new URL(urlStr);
            is = url.openStream();  // throws an IOException
            br = new BufferedReader(new InputStreamReader(is));

            while ((line = br.readLine()) != null) {
                tmp = parseStock(line);
                if (tmp != null) {
                    sList.add(tmp);
                }
            }

        } catch (Exception ex) {
            ex.printStackTrace();
        } finally {
            try {
                if (is != null) {
                    is.close();
                }
            } catch (IOException ioe) {
            }
        }
        return sList;
    }