sig
  val names : string list
  val liquid_hours :
    (Response.Contract_data.t, Trading_times.t list)
    Fieldslib.Field.readonly_t
  val trading_hours :
    (Response.Contract_data.t, Trading_times.t list)
    Fieldslib.Field.readonly_t
  val time_zone :
    (Response.Contract_data.t, Core.Std.Time.Zone.t option)
    Fieldslib.Field.readonly_t
  val subcategory :
    (Response.Contract_data.t, string) Fieldslib.Field.readonly_t
  val category :
    (Response.Contract_data.t, string) Fieldslib.Field.readonly_t
  val industry :
    (Response.Contract_data.t, string) Fieldslib.Field.readonly_t
  val contract_month :
    (Response.Contract_data.t, string) Fieldslib.Field.readonly_t
  val long_name :
    (Response.Contract_data.t, string) Fieldslib.Field.readonly_t
  val underlying_id :
    (Response.Contract_data.t, int) Fieldslib.Field.readonly_t
  val price_magnifier :
    (Response.Contract_data.t, int) Fieldslib.Field.readonly_t
  val valid_exchanges :
    (Response.Contract_data.t, Exchange.t list) Fieldslib.Field.readonly_t
  val order_types :
    (Response.Contract_data.t, string list) Fieldslib.Field.readonly_t
  val min_tick : (Response.Contract_data.t, float) Fieldslib.Field.readonly_t
  val trading_class :
    (Response.Contract_data.t, string) Fieldslib.Field.readonly_t
  val market_name :
    (Response.Contract_data.t, string) Fieldslib.Field.readonly_t
  val contract :
    (Response.Contract_data.t, Raw_contract.t) Fieldslib.Field.readonly_t
  val fold :
    init:'acc__ ->
    contract:('acc__ ->
              (Response.Contract_data.t, Raw_contract.t)
              Fieldslib.Field.readonly_t -> 'acc__) ->
    market_name:('acc__ ->
                 (Response.Contract_data.t, string)
                 Fieldslib.Field.readonly_t -> 'acc__) ->
    trading_class:('acc__ ->
                   (Response.Contract_data.t, string)
                   Fieldslib.Field.readonly_t -> 'acc__) ->
    min_tick:('acc__ ->
              (Response.Contract_data.t, float) Fieldslib.Field.readonly_t ->
              'acc__) ->
    order_types:('acc__ ->
                 (Response.Contract_data.t, string list)
                 Fieldslib.Field.readonly_t -> 'acc__) ->
    valid_exchanges:('acc__ ->
                     (Response.Contract_data.t, Exchange.t list)
                     Fieldslib.Field.readonly_t -> 'acc__) ->
    price_magnifier:('acc__ ->
                     (Response.Contract_data.t, int)
                     Fieldslib.Field.readonly_t -> 'acc__) ->
    underlying_id:('acc__ ->
                   (Response.Contract_data.t, int) Fieldslib.Field.readonly_t ->
                   'acc__) ->
    long_name:('acc__ ->
               (Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
               'acc__) ->
    contract_month:('acc__ ->
                    (Response.Contract_data.t, string)
                    Fieldslib.Field.readonly_t -> 'acc__) ->
    industry:('acc__ ->
              (Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
              'acc__) ->
    category:('acc__ ->
              (Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
              'acc__) ->
    subcategory:('acc__ ->
                 (Response.Contract_data.t, string)
                 Fieldslib.Field.readonly_t -> 'acc__) ->
    time_zone:('acc__ ->
               (Response.Contract_data.t, Core.Std.Time.Zone.t option)
               Fieldslib.Field.readonly_t -> 'acc__) ->
    trading_hours:('acc__ ->
                   (Response.Contract_data.t, Trading_times.t list)
                   Fieldslib.Field.readonly_t -> 'acc__) ->
    liquid_hours:('acc__ ->
                  (Response.Contract_data.t, Trading_times.t list)
                  Fieldslib.Field.readonly_t -> 'acc__) ->
    'acc__
  val iter :
    contract:((Response.Contract_data.t, Raw_contract.t)
              Fieldslib.Field.readonly_t -> unit) ->
    market_name:((Response.Contract_data.t, string)
                 Fieldslib.Field.readonly_t -> unit) ->
    trading_class:((Response.Contract_data.t, string)
                   Fieldslib.Field.readonly_t -> unit) ->
    min_tick:((Response.Contract_data.t, float) Fieldslib.Field.readonly_t ->
              unit) ->
    order_types:((Response.Contract_data.t, string list)
                 Fieldslib.Field.readonly_t -> unit) ->
    valid_exchanges:((Response.Contract_data.t, Exchange.t list)
                     Fieldslib.Field.readonly_t -> unit) ->
    price_magnifier:((Response.Contract_data.t, int)
                     Fieldslib.Field.readonly_t -> unit) ->
    underlying_id:((Response.Contract_data.t, int) Fieldslib.Field.readonly_t ->
                   unit) ->
    long_name:((Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
               unit) ->
    contract_month:((Response.Contract_data.t, string)
                    Fieldslib.Field.readonly_t -> unit) ->
    industry:((Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
              unit) ->
    category:((Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
              unit) ->
    subcategory:((Response.Contract_data.t, string)
                 Fieldslib.Field.readonly_t -> unit) ->
    time_zone:((Response.Contract_data.t, Core.Std.Time.Zone.t option)
               Fieldslib.Field.readonly_t -> unit) ->
    trading_hours:((Response.Contract_data.t, Trading_times.t list)
                   Fieldslib.Field.readonly_t -> unit) ->
    liquid_hours:((Response.Contract_data.t, Trading_times.t list)
                  Fieldslib.Field.readonly_t -> unit) ->
    unit
  val for_all :
    contract:((Response.Contract_data.t, Raw_contract.t)
              Fieldslib.Field.readonly_t -> bool) ->
    market_name:((Response.Contract_data.t, string)
                 Fieldslib.Field.readonly_t -> bool) ->
    trading_class:((Response.Contract_data.t, string)
                   Fieldslib.Field.readonly_t -> bool) ->
    min_tick:((Response.Contract_data.t, float) Fieldslib.Field.readonly_t ->
              bool) ->
    order_types:((Response.Contract_data.t, string list)
                 Fieldslib.Field.readonly_t -> bool) ->
    valid_exchanges:((Response.Contract_data.t, Exchange.t list)
                     Fieldslib.Field.readonly_t -> bool) ->
    price_magnifier:((Response.Contract_data.t, int)
                     Fieldslib.Field.readonly_t -> bool) ->
    underlying_id:((Response.Contract_data.t, int) Fieldslib.Field.readonly_t ->
                   bool) ->
    long_name:((Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
               bool) ->
    contract_month:((Response.Contract_data.t, string)
                    Fieldslib.Field.readonly_t -> bool) ->
    industry:((Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
              bool) ->
    category:((Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
              bool) ->
    subcategory:((Response.Contract_data.t, string)
                 Fieldslib.Field.readonly_t -> bool) ->
    time_zone:((Response.Contract_data.t, Core.Std.Time.Zone.t option)
               Fieldslib.Field.readonly_t -> bool) ->
    trading_hours:((Response.Contract_data.t, Trading_times.t list)
                   Fieldslib.Field.readonly_t -> bool) ->
    liquid_hours:((Response.Contract_data.t, Trading_times.t list)
                  Fieldslib.Field.readonly_t -> bool) ->
    bool
  val exists :
    contract:((Response.Contract_data.t, Raw_contract.t)
              Fieldslib.Field.readonly_t -> bool) ->
    market_name:((Response.Contract_data.t, string)
                 Fieldslib.Field.readonly_t -> bool) ->
    trading_class:((Response.Contract_data.t, string)
                   Fieldslib.Field.readonly_t -> bool) ->
    min_tick:((Response.Contract_data.t, float) Fieldslib.Field.readonly_t ->
              bool) ->
    order_types:((Response.Contract_data.t, string list)
                 Fieldslib.Field.readonly_t -> bool) ->
    valid_exchanges:((Response.Contract_data.t, Exchange.t list)
                     Fieldslib.Field.readonly_t -> bool) ->
    price_magnifier:((Response.Contract_data.t, int)
                     Fieldslib.Field.readonly_t -> bool) ->
    underlying_id:((Response.Contract_data.t, int) Fieldslib.Field.readonly_t ->
                   bool) ->
    long_name:((Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
               bool) ->
    contract_month:((Response.Contract_data.t, string)
                    Fieldslib.Field.readonly_t -> bool) ->
    industry:((Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
              bool) ->
    category:((Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
              bool) ->
    subcategory:((Response.Contract_data.t, string)
                 Fieldslib.Field.readonly_t -> bool) ->
    time_zone:((Response.Contract_data.t, Core.Std.Time.Zone.t option)
               Fieldslib.Field.readonly_t -> bool) ->
    trading_hours:((Response.Contract_data.t, Trading_times.t list)
                   Fieldslib.Field.readonly_t -> bool) ->
    liquid_hours:((Response.Contract_data.t, Trading_times.t list)
                  Fieldslib.Field.readonly_t -> bool) ->
    bool
  val to_list :
    contract:((Response.Contract_data.t, Raw_contract.t)
              Fieldslib.Field.readonly_t -> 'elem__) ->
    market_name:((Response.Contract_data.t, string)
                 Fieldslib.Field.readonly_t -> 'elem__) ->
    trading_class:((Response.Contract_data.t, string)
                   Fieldslib.Field.readonly_t -> 'elem__) ->
    min_tick:((Response.Contract_data.t, float) Fieldslib.Field.readonly_t ->
              'elem__) ->
    order_types:((Response.Contract_data.t, string list)
                 Fieldslib.Field.readonly_t -> 'elem__) ->
    valid_exchanges:((Response.Contract_data.t, Exchange.t list)
                     Fieldslib.Field.readonly_t -> 'elem__) ->
    price_magnifier:((Response.Contract_data.t, int)
                     Fieldslib.Field.readonly_t -> 'elem__) ->
    underlying_id:((Response.Contract_data.t, int) Fieldslib.Field.readonly_t ->
                   'elem__) ->
    long_name:((Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
               'elem__) ->
    contract_month:((Response.Contract_data.t, string)
                    Fieldslib.Field.readonly_t -> 'elem__) ->
    industry:((Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
              'elem__) ->
    category:((Response.Contract_data.t, string) Fieldslib.Field.readonly_t ->
              'elem__) ->
    subcategory:((Response.Contract_data.t, string)
                 Fieldslib.Field.readonly_t -> 'elem__) ->
    time_zone:((Response.Contract_data.t, Core.Std.Time.Zone.t option)
               Fieldslib.Field.readonly_t -> 'elem__) ->
    trading_hours:((Response.Contract_data.t, Trading_times.t list)
                   Fieldslib.Field.readonly_t -> 'elem__) ->
    liquid_hours:((Response.Contract_data.t, Trading_times.t list)
                  Fieldslib.Field.readonly_t -> 'elem__) ->
    'elem__ list
  val map_poly :
    ([< `Read ], Response.Contract_data.t, 'x0) Fieldslib.Field.user ->
    'x0 list
  module Direct :
    sig
      val iter :
        Response.Contract_data.t ->
        contract:((Response.Contract_data.t, Raw_contract.t)
                  Fieldslib.Field.readonly_t ->
                  Response.Contract_data.t -> Raw_contract.t -> unit) ->
        market_name:((Response.Contract_data.t, string)
                     Fieldslib.Field.readonly_t ->
                     Response.Contract_data.t -> string -> unit) ->
        trading_class:((Response.Contract_data.t, string)
                       Fieldslib.Field.readonly_t ->
                       Response.Contract_data.t -> string -> unit) ->
        min_tick:((Response.Contract_data.t, float)
                  Fieldslib.Field.readonly_t ->
                  Response.Contract_data.t -> float -> unit) ->
        order_types:((Response.Contract_data.t, string list)
                     Fieldslib.Field.readonly_t ->
                     Response.Contract_data.t -> string list -> unit) ->
        valid_exchanges:((Response.Contract_data.t, Exchange.t list)
                         Fieldslib.Field.readonly_t ->
                         Response.Contract_data.t -> Exchange.t list -> unit) ->
        price_magnifier:((Response.Contract_data.t, int)
                         Fieldslib.Field.readonly_t ->
                         Response.Contract_data.t -> int -> unit) ->
        underlying_id:((Response.Contract_data.t, int)
                       Fieldslib.Field.readonly_t ->
                       Response.Contract_data.t -> int -> unit) ->
        long_name:((Response.Contract_data.t, string)
                   Fieldslib.Field.readonly_t ->
                   Response.Contract_data.t -> string -> unit) ->
        contract_month:((Response.Contract_data.t, string)
                        Fieldslib.Field.readonly_t ->
                        Response.Contract_data.t -> string -> unit) ->
        industry:((Response.Contract_data.t, string)
                  Fieldslib.Field.readonly_t ->
                  Response.Contract_data.t -> string -> unit) ->
        category:((Response.Contract_data.t, string)
                  Fieldslib.Field.readonly_t ->
                  Response.Contract_data.t -> string -> unit) ->
        subcategory:((Response.Contract_data.t, string)
                     Fieldslib.Field.readonly_t ->
                     Response.Contract_data.t -> string -> unit) ->
        time_zone:((Response.Contract_data.t, Core.Std.Time.Zone.t option)
                   Fieldslib.Field.readonly_t ->
                   Response.Contract_data.t ->
                   Core.Std.Time.Zone.t option -> unit) ->
        trading_hours:((Response.Contract_data.t, Trading_times.t list)
                       Fieldslib.Field.readonly_t ->
                       Response.Contract_data.t ->
                       Trading_times.t list -> unit) ->
        liquid_hours:((Response.Contract_data.t, Trading_times.t list)
                      Fieldslib.Field.readonly_t ->
                      Response.Contract_data.t ->
                      Trading_times.t list -> unit) ->
        unit
      val fold :
        Response.Contract_data.t ->
        init:'acc__ ->
        contract:('acc__ ->
                  (Response.Contract_data.t, Raw_contract.t)
                  Fieldslib.Field.readonly_t ->
                  Response.Contract_data.t -> Raw_contract.t -> 'acc__) ->
        market_name:('acc__ ->
                     (Response.Contract_data.t, string)
                     Fieldslib.Field.readonly_t ->
                     Response.Contract_data.t -> string -> 'acc__) ->
        trading_class:('acc__ ->
                       (Response.Contract_data.t, string)
                       Fieldslib.Field.readonly_t ->
                       Response.Contract_data.t -> string -> 'acc__) ->
        min_tick:('acc__ ->
                  (Response.Contract_data.t, float)
                  Fieldslib.Field.readonly_t ->
                  Response.Contract_data.t -> float -> 'acc__) ->
        order_types:('acc__ ->
                     (Response.Contract_data.t, string list)
                     Fieldslib.Field.readonly_t ->
                     Response.Contract_data.t -> string list -> 'acc__) ->
        valid_exchanges:('acc__ ->
                         (Response.Contract_data.t, Exchange.t list)
                         Fieldslib.Field.readonly_t ->
                         Response.Contract_data.t ->
                         Exchange.t list -> 'acc__) ->
        price_magnifier:('acc__ ->
                         (Response.Contract_data.t, int)
                         Fieldslib.Field.readonly_t ->
                         Response.Contract_data.t -> int -> 'acc__) ->
        underlying_id:('acc__ ->
                       (Response.Contract_data.t, int)
                       Fieldslib.Field.readonly_t ->
                       Response.Contract_data.t -> int -> 'acc__) ->
        long_name:('acc__ ->
                   (Response.Contract_data.t, string)
                   Fieldslib.Field.readonly_t ->
                   Response.Contract_data.t -> string -> 'acc__) ->
        contract_month:('acc__ ->
                        (Response.Contract_data.t, string)
                        Fieldslib.Field.readonly_t ->
                        Response.Contract_data.t -> string -> 'acc__) ->
        industry:('acc__ ->
                  (Response.Contract_data.t, string)
                  Fieldslib.Field.readonly_t ->
                  Response.Contract_data.t -> string -> 'acc__) ->
        category:('acc__ ->
                  (Response.Contract_data.t, string)
                  Fieldslib.Field.readonly_t ->
                  Response.Contract_data.t -> string -> 'acc__) ->
        subcategory:('acc__ ->
                     (Response.Contract_data.t, string)
                     Fieldslib.Field.readonly_t ->
                     Response.Contract_data.t -> string -> 'acc__) ->
        time_zone:('acc__ ->
                   (Response.Contract_data.t, Core.Std.Time.Zone.t option)
                   Fieldslib.Field.readonly_t ->
                   Response.Contract_data.t ->
                   Core.Std.Time.Zone.t option -> 'acc__) ->
        trading_hours:('acc__ ->
                       (Response.Contract_data.t, Trading_times.t list)
                       Fieldslib.Field.readonly_t ->
                       Response.Contract_data.t ->
                       Trading_times.t list -> 'acc__) ->
        liquid_hours:('acc__ ->
                      (Response.Contract_data.t, Trading_times.t list)
                      Fieldslib.Field.readonly_t ->
                      Response.Contract_data.t ->
                      Trading_times.t list -> 'acc__) ->
        'acc__
    end
end