AbidesMarkets.SnapshotL1
— TypeSnapshotL1(...)
Structure containing the L1 snapshots.
AbidesMarkets.SnapshotL2
— TypeSnapshotL2(...)
Structure containing the L2 snapshots.
AbidesMarkets.adjust_L2_snapshots
— Methodadjust_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
— Methodaggregate_L2_snapshot_eop(X::SnapshotL2, time_step::Period)
Take the last bids and asks in X
approximately every time_step
.
AbidesMarkets.aggregate_LOB_measurement
— Methodaggregate_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
— Methodaggregate_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
— Methodaggregate_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
— Methodbuild_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
— Methodcompare_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
— Methodcompare_aggregated_LOB_measurements_mse(X::JMatrix{Float64}, Y::JMatrix{Float64})
Compare two vectors of aggregated LOB measurements through the MSE.
AbidesMarkets.get_L1_snapshots
— Methodget_L1_snapshots(order_book::PyObject)
Get the L1 snapshots from the order book in an ad-hoc Julia structure.
AbidesMarkets.get_L2_snapshots
— Methodget_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
— Methodndarray_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
— Methodparse_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
— Methodrun(config::Dict)
Run simulation using the configuration in config
.