NormalMixin

class zvt.contract.schema.NormalMixin

Bases: Mixin

__init__()
created_timestamp = Column(None, DateTime(), table=None, default=ScalarElementColumnDefault(Timestamp('2025-03-05 03:47:06.655385')))

the record created time in db

updated_timestamp = Column(None, DateTime(), table=None)

the record updated time in db, some recorder would check it for whether need to refresh

entity_id = Column(None, String(), table=None)

entity id

classmethod get_providers() List[str]

providers of the schema defined by cls

Returns:

providers

classmethod get_storages(provider: str = None)

get the storages info

Parameters:

provider – provider

Returns:

storages

id = Column(None, String(), table=None, primary_key=True, nullable=False)

id

classmethod query_data(provider_index: int = 0, ids: List[str] = None, entity_ids: List[str] = None, entity_id: str = None, codes: List[str] = None, code: str = None, level: IntervalLevel | str = None, provider: str = None, columns: List = None, col_label: dict = None, return_type: str = 'df', start_timestamp: Timestamp | str = None, end_timestamp: Timestamp | str = None, filters: List = None, session: Session = None, order=None, limit: int = None, distinct=None, index: str | list = None, drop_index_col=False, time_field: str = 'timestamp')

query data by the arguments

Parameters:
  • provider_index

  • data_schema

  • ids

  • entity_ids

  • entity_id

  • codes

  • code

  • level

  • provider

  • columns

  • col_label – dict with key(column), value(label)

  • return_type – df, domain or dict. default is df

  • start_timestamp

  • end_timestamp

  • filters

  • session

  • order

  • limit

  • index – index field name, str for single index, str list for multiple index

  • drop_index_col – whether drop the col if it’s in index, default False

  • time_field

Returns:

results basing on return_type.

classmethod record_data(provider_index: int = 0, provider: str = None, force_update=None, sleeping_time=None, exchanges=None, entity_id=None, entity_ids=None, code=None, codes=None, real_time=None, fix_duplicate_way=None, start_timestamp=None, end_timestamp=None, one_day_trading_minutes=None, **kwargs)

record data by the arguments

Parameters:
  • entity_id

  • provider_index

  • provider

  • force_update

  • sleeping_time

  • exchanges

  • entity_ids

  • code

  • codes

  • real_time

  • fix_duplicate_way

  • start_timestamp

  • end_timestamp

  • one_day_trading_minutes

  • kwargs

Returns:

classmethod register_provider(provider)

register the provider to the schema defined by cls

Parameters:

provider

classmethod register_recorder_cls(provider, recorder_cls)

register the recorder for the schema

Parameters:
  • provider

  • recorder_cls

timestamp = Column(None, DateTime(), table=None)

the meaning could be different for different case,most time it means ‘happen time’