`AbidesMarkets.SnapshotL1`

— Type`SnapshotL1(...)`

Structure containing the L1 snapshots.

`AbidesMarkets.SnapshotL2`

— Type`SnapshotL2(...)`

Structure containing the L2 snapshots.

`AbidesMarkets.adjust_L2_snapshots`

— Method```
adjust_L2_snapshots(X::Union{Array{Float64, 3}, Array{Int64, 3}})
adjust_L2_snapshots(Union{JArray{Float64, 3}, JArray{Int64, 3}})
```

Adjust inconsistent use of zeros at source to indicate missing observations in bids/asks.

`AbidesMarkets.aggregate_L2_snapshot_eop`

— Method`aggregate_L2_snapshot_eop(X::SnapshotL2, time_step::Period)`

Take the last bids and asks in `X`

approximately every `time_step`

.

`AbidesMarkets.aggregate_LOB_measurement`

— Method`aggregate_LOB_measurement(X::Union{Vector{Float64}, JVector{Float64}}, times::Vector{Time}, time_step::Period, f::Function; f_args::Tuple=(), f_kwargs::NamedTuple=NamedTuple())`

Aggregate `X`

by taking its `f`

transformation at the specified `time_step`

.

`AbidesMarkets.aggregate_LOB_measurement_avg`

— Method`aggregate_LOB_measurement_avg(X::Union{Vector{Float64}, JVector{Float64}}, times::Vector{Time}, time_step::Period)`

Aggregate `X`

by returing the average (non-overlapping) measurement taken at the specified `time_step`

.

`AbidesMarkets.aggregate_LOB_measurement_eop`

— Method`aggregate_LOB_measurement_eop(X::Union{Vector{Float64}, JVector{Float64}}, times::Vector{Time}, time_step::Period)`

Aggregate `X`

by returing the EOP measurement taken at the specified `time_step`

.

`AbidesMarkets.build_config`

— Method`build_config(config_suffix::String, kwargs::NamedTuple)`

Build a configuration starting from the one of the official rmscXX templates.

**Notes**

- More information on the templates is available at https://github.com/jpmorganchase/abides-jpmc-public.

`AbidesMarkets.compare_aggregated_LOB_measurements`

— Method`compare_aggregated_LOB_measurements(X::JMatrix{Float64}, Y::JMatrix{Float64}, f_ticks::Function, f_time::Function)`

Compare two vectors of aggregated LOB measurements.

Each column of `X`

and `Y`

denotes a different point in time, while each row is a different entry (perhaps different levels).

`AbidesMarkets.compare_aggregated_LOB_measurements_mse`

— Method`compare_aggregated_LOB_measurements_mse(X::JMatrix{Float64}, Y::JMatrix{Float64})`

Compare two vectors of aggregated LOB measurements through the MSE.

`AbidesMarkets.get_L1_snapshots`

— Method`get_L1_snapshots(order_book::PyObject)`

Get the L1 snapshots from the order book in an ad-hoc Julia structure.

`AbidesMarkets.get_L2_snapshots`

— Method`get_L2_snapshots(order_book::PyObject, nlevels::Int64)`

Get the L2 snapshots from the order book in an ad-hoc Julia structure.

`AbidesMarkets.ndarray_to_matrix`

— Method`ndarray_to_matrix(X::Matrix{PyCall.PyObject})`

Converts `X`

into a JMatrix{Float64} handling `None`

appropriately.

`ndarray_to_matrix(X::Matrix{Float64})`

Converts `X`

into a JMatrix{Float64} for internal consistency.

`AbidesMarkets.parse_logs_df`

— Method`parse_logs_df(end_state::Dict)`

Takes the `end_state`

dictionary returned by an ABIDES simulation, goes through all the agents, extracts their log, and un-nest them returns a single dataframe with the logs from all the agents warning.

`AbidesMarkets.run`

— Method`run(config::Dict)`

Run simulation using the configuration in `config`

.