YahooFinanceCandleData.fromJson constructor

YahooFinanceCandleData.fromJson(
  1. Map<String, dynamic> json, {
  2. bool adjust = false,
})

Implementation

factory YahooFinanceCandleData.fromJson(
  Map<String, dynamic> json, {
  bool adjust = false,
}) {
  double adjClose = double.parse(json['adjClose'].toString());
  double close = double.parse(json['close'].toString());
  double open = double.parse(json['open'].toString());
  double low = double.parse(json['low'].toString());
  double high = double.parse(json['high'].toString());

  if (adjust) {
    final double proportion = adjClose / close;
    close = close * proportion;
    open = open * proportion;
    low = low * proportion;
    high = high * proportion;
  }

  return YahooFinanceCandleData(
    date: DateTime.fromMillisecondsSinceEpoch((json['date'] as int) * 1000),
    open: open,
    high: high,
    low: low,
    close: close,
    adjClose: adjClose,
    volume: int.parse(json['volume'].toString()),
  );
}