<gh_stars>0
from __future__ import annotations

from dataclasses import dataclass

import bbgo_pb2

from ..utils import parse_float


@dataclass
class Ticker:
    exchange: str
    symbol: str
    open: float
    high: float
    low: float
    close: float
    volume: float

    @classmethod
    def from_pb(cls, obj: bbgo_pb2.KLine) -> Ticker:
        return cls(
            exchange=obj.exchange,
            symbol=obj.symbol,
            open=parse_float(obj.open),
            high=parse_float(obj.high),
            low=parse_float(obj.low),
            close=parse_float(obj.close),
            volume=parse_float(obj.volume),
        )

from __future__ import annotations

from dataclasses import dataclass

import bbgo_pb2

from ..utils import parse_float


@dataclass
class Ticker:
    exchange: str
    symbol: str
    open: float
    high: float
    low: float
    close: float
    volume: float

    @classmethod
    def from_pb(cls, obj: bbgo_pb2.KLine) -> Ticker:
        return cls(
            exchange=obj.exchange,
            symbol=obj.symbol,
            open=parse_float(obj.open),
            high=parse_float(obj.high),
            low=parse_float(obj.low),
            close=parse_float(obj.close),
            volume=parse_float(obj.volume),
        )