Ejemplo n.º 1
0
    def addBarsFromCSV(self, path, rowParser, skipMalformedBars=False):
        def parse_bar_skip_malformed(row):
            ret = None
            try:
                ret = rowParser.parseBar(row)
            except Exception:
                pass
            return ret

        if skipMalformedBars:
            parse_bar = parse_bar_skip_malformed
        else:
            parse_bar = rowParser.parseBar

        # Load the csv file
        loadedBars = []
        reader = csvutils.FastDictReader(open(path, "r"),
                                         fieldnames=rowParser.getFieldNames(),
                                         delimiter=rowParser.getDelimiter())
        for row in reader:
            bar_ = parse_bar(row)
            if bar_ is not None and (self.__barFilter is None
                                     or self.__barFilter.includeBar(bar_)):
                loadedBars.append(bar_)

        self.addBarsFromSequence(rowParser.getInstrument(), loadedBars)
Ejemplo n.º 2
0
    def addBarsFromCSV(self, instrument, path, rowParser):
        # Load the csv file
        loadedBars = []
        reader = csvutils.FastDictReader(open(path, "r"), fieldnames=rowParser.getFieldNames(), delimiter=rowParser.getDelimiter())
        for row in reader:
            bar_ = rowParser.parseBar(row)
            if bar_ is not None and (self.__barFilter is None or self.__barFilter.includeBar(bar_)):
                loadedBars.append(bar_)

        self.addBarsFromSequence(instrument, loadedBars)
Ejemplo n.º 3
0
    def addValuesFromCSV(self, path):
        # Load the values from the csv file
        values = []
        reader = csvutils.FastDictReader(open(path, "r"), fieldnames=self.__rowParser.getFieldNames(), delimiter=self.__rowParser.getDelimiter())
        for row in reader:
            dateTime, rowValues = self.__rowParser.parseRow(row)
            if dateTime is not None and (self.__rowFilter is None or self.__rowFilter.includeRow(dateTime, rowValues)):
                values.append((dateTime, rowValues))

        self.addValues(values)
Ejemplo n.º 4
0
    def loadBarsFromCSV(self,instrument,path):
        loadedBars = []
        rowParser = RowParser(self.getDailyBarTime(), self.getFrequency(), self.__timezone, False)
        reader = csvutils.FastDictReader(open(path, "r"), fieldnames=rowParser.getFieldNames(), delimiter=rowParser.getDelimiter())
        for row in reader:
            bar_ = rowParser.parseBar(row)
            if bar_ is not None:
                loadedBars.append(bar_)

        self.addBarsFromSequence(instrument, loadedBars)