package gemini
An auction outcome event.
type t = {
eid : int64;
result : Auction_result.t;
time_ms : Time_float_unix.t;
highest_bid_price : string;
lowest_ask_price : string;
collar_price : string;
auction_price : string;
auction_quantity : string;
}
val of_yojson : Yojson.Safe.t -> t Ppx_deriving_yojson_runtime.error_or
include Sexplib0.Sexpable.S with type t := t
val t_of_sexp : Sexplib0.Sexp.t -> t
val sexp_of_t : t -> Sexplib0.Sexp.t
val auction_quantity : t -> string
val auction_price : t -> string
val collar_price : t -> string
val lowest_ask_price : t -> string
val highest_bid_price : t -> string
val time_ms : t -> Time_float_unix.t
val result : t -> Auction_result.t
val eid : t -> int64
module Fields : sig ... end
include Csvfields.Csv.Csvable with type t := t
include Csvfields.Csv.Csvable_simple with type t := t
true
if csvable
will be represented as a column, and its label is the field name of a containing record.
A Fields.fold
friendly version of a function to collect the csv header of the csvable
type. The output is the header in reverse order.
val rev_csv_header_spec' :
Csvfields.Csv.Spec.t list ->
_ ->
_ ->
Csvfields.Csv.Spec.t list
val t_of_row' : _ -> string list -> (unit -> t) * string list
t_of_row' _ row
generates a Fields.make_creator
friendly function that outputs a pair (creator, tail)
such that creator ()
generates the type t
with the first elements in row
, and tail
is the remaining set of elements from row
that where not used in the creation of t
.
val write_row_of_t' :
is_first:bool ->
is_last:bool ->
writer:(string -> unit) ->
_ ->
_ ->
t ->
unit
row_of_t'
has the same arguments as Helper.write
. The ignored arguments are used to make it Fields.fold
friendly.
val csv_header_spec : Csvfields.Csv.Spec.t list
val t_of_row : string list -> t
t_of_row row
creates type t
from the row
.
val row_of_t : t -> string list
row_of_t t
creates a row
from csvable
.
val csv_load : ?separator:char -> string -> t list
The following functions are wrappers around the corresponding functions in Csvlib.Csv
.
val csv_load_in : ?separator:char -> Core.In_channel.t -> t list
val csv_save_fn : ?separator:char -> (string -> unit) -> t list -> unit
val csv_save_out : ?separator:char -> Core.Out_channel.t -> t list -> unit
val csv_save : ?separator:char -> string -> t list -> unit