def parseBar(self, csvRowDict): dateTime = self._parseDate(csvRowDict[self.__dateTimeColName]) open_ = float(csvRowDict[self.__openColName]) high = float(csvRowDict[self.__highColName]) low = float(csvRowDict[self.__lowColName]) close = float(csvRowDict[self.__closeColName]) volume = float(csvRowDict[self.__volumeColName]) adjClose = None if self.__adjCloseColName is not None: adjCloseValue = csvRowDict.get(self.__adjCloseColName, "") if len(adjCloseValue) > 0: adjClose = float(adjCloseValue) self.__haveAdjClose = True # Process extra columns. extra = {} for k, v in csvRowDict.iteritems(): if k not in self.__columnNames: extra[k] = csvutils.float_or_string(v) return self.__barClass(dateTime, open_, high, low, close, volume, adjClose, self.__frequency, extra=extra)
def parseBar(self, csvRowDict): dateTime = self._parseDate(csvRowDict[self.__dateTimeColName]) open_ = float(csvRowDict[self.__openColName]) high = float(csvRowDict[self.__highColName]) low = float(csvRowDict[self.__lowColName]) close = float(csvRowDict[self.__closeColName]) volume = float(csvRowDict[self.__volumeColName]) adjClose = None if self.__adjCloseColName is not None: adjCloseValue = csvRowDict.get(self.__adjCloseColName, "") if len(adjCloseValue) > 0: adjClose = float(adjCloseValue) self.__haveAdjClose = True # Process extra columns. extra = {} for k, v in csvRowDict.iteritems(): if k not in self.__columnNames: extra[k] = csvutils.float_or_string(v) return self.__barClass( dateTime, open_, high, low, close, volume, adjClose, self.__frequency, extra=extra )
def float_or_string(column, value): return csvutils.float_or_string(value)