StockTradeDayRecorder

class zvt.recorders.joinquant.meta.jq_trade_day_recorder.StockTradeDayRecorder(exchanges=None, entity_id=None, entity_ids=None, day_data=False, force_update=False, sleeping_time=5, real_time=False, fix_duplicate_way='add', start_timestamp=None, end_timestamp=None, entity_filters=None)

Bases: TimeSeriesDataRecorder

__init__(exchanges=None, entity_id=None, entity_ids=None, day_data=False, force_update=False, sleeping_time=5, real_time=False, fix_duplicate_way='add', start_timestamp=None, end_timestamp=None, entity_filters=None) None
Parameters:
  • code

  • ignore_failed

  • entity_filters

  • exchanges

  • entity_id – for record single entity

  • entity_ids – set entity_ids or (entity_type,exchanges,codes)

  • codes

  • day_data – one record per day,set to True if you want skip recording it when data of today exist

  • force_update

  • sleeping_time

entity_provider: str = 'joinquant'

overwrite them to fetch the entity list

entity_schema

alias of Stock

provider: str = 'joinquant'

overwrite them to set up the data you want to record

data_schema

alias of StockTradeDay

record(entity, start, end, size, timestamps)

implement the recording logic in this method, should return json or domain list

Parameters:
  • entity

  • start

  • end

  • size

  • timestamps

clear_state_data(entity_id=None)

clear state of the entity

Parameters:

entity_id – entity id

decode_state(state: str)

decode state

Parameters:

state

Returns:

encode_state(state: object)

encode state

Parameters:

state

Returns:

generate_domain(entity, original_data)

generate the data_schema instance using entity and original_data,the original_data is from record result

Parameters:
  • entity

  • original_data

generate_domain_id(entity, original_data, time_fmt='YYYY-MM-DD')

generate domain id from the entity and original data,the default id meaning:entity + event happen time

Parameters:
  • entity

  • original_data

  • time_fmt

Returns:

Return type:

get_data_map()

{‘original_field’:(‘domain_field’,transform_func)}

get_evaluated_time_field()

the timestamp field for evaluating time range of recorder,used in get_latest_saved_record

init_entities()

init the entities which we would record data for

name = None

name of the service, default name of class if not set manually

original_page_url = None

original page url

persist(entity, domain_list)

persist the domain list to db

Parameters:
  • entity

  • domain_list

state_schema

alias of RecorderState

url = None

request url

exchanges

setup the entities you want to record

entity_ids

set entity_ids or (entity_type,exchanges,codes)

session

using to do db operations