Packages
tai
0.0.65
0.0.75
0.0.74
0.0.73
0.0.72
0.0.71
0.0.70
0.0.69
0.0.68
0.0.67
0.0.66
0.0.65
0.0.64
0.0.63
0.0.62
0.0.61
0.0.60
0.0.59
0.0.58
0.0.57
0.0.56
0.0.55
0.0.54
0.0.53
0.0.52
0.0.51
0.0.50
0.0.49
0.0.48
0.0.47
0.0.46
0.0.45
0.0.44
0.0.43
0.0.42
0.0.41
0.0.40
0.0.39
0.0.38
0.0.37
0.0.36
0.0.35
0.0.34
0.0.33
0.0.32
0.0.31
0.0.30
0.0.29
0.0.28
0.0.27
0.0.26
0.0.25
0.0.24
0.0.23
0.0.22
0.0.21
0.0.20
0.0.19
0.0.18
0.0.17
0.0.16
0.0.15
0.0.14
0.0.13
0.0.12
0.0.11
0.0.10
0.0.9
0.0.8
0.0.7
0.0.6
0.0.5
0.0.4
0.0.3
0.0.2
0.0.1
A composable, real time, market data and trade execution toolkit
Current section
Files
Jump to
Current section
Files
lib/tai/orders/order.ex
defmodule Tai.Orders.Order do
alias __MODULE__
@type client_id :: Ecto.UUID.t()
@type venue_order_id :: number | String.t()
@type venue_id :: Tai.Venue.id()
@type credential_id :: Tai.Venue.credential_id()
@type venue_product_symbol :: Tai.Venues.Product.venue_symbol()
@type product_symbol :: Tai.Venues.Product.symbol()
@type product_type :: Tai.Venues.Product.type()
@type side :: :buy | :sell
@type time_in_force :: :gtc | :fok | :ioc
@type type :: :limit
@type status ::
:enqueued
| :skip
| :create_accepted
| :open
| :partially_filled
| :filled
| :expired
| :rejected
| :create_error
| :pending_amend
| :amend_error
| :pending_cancel
| :cancel_accepted
| :canceled
| :cancel_error
@type callback :: fun | atom | pid | {atom | pid, term} | nil
@type t :: %Order{
client_id: client_id,
venue_order_id: venue_order_id | nil,
venue_id: venue_id,
credential_id: credential_id,
side: side,
status: status,
venue_product_symbol: venue_product_symbol,
product_symbol: product_symbol,
product_type: product_type,
time_in_force: time_in_force,
type: type,
price: Decimal.t(),
qty: Decimal.t(),
leaves_qty: Decimal.t(),
cumulative_qty: Decimal.t(),
post_only: boolean,
close: boolean | nil,
enqueued_at: DateTime.t(),
last_received_at: DateTime.t() | nil,
last_venue_timestamp: DateTime.t() | nil,
updated_at: DateTime.t() | nil,
order_updated_callback: callback
}
@enforce_keys ~w(
venue_id
credential_id
client_id
enqueued_at
price
side
qty
leaves_qty
cumulative_qty
status
venue_product_symbol
product_symbol
product_type
time_in_force
type
post_only
)a
defstruct ~w(
client_id
error_reason
venue_id
credential_id
price
venue_order_id
side
qty
leaves_qty
cumulative_qty
status
venue_product_symbol
product_symbol
product_type
time_in_force
type
post_only
close
enqueued_at
last_received_at
last_venue_timestamp
updated_at
order_updated_callback
)a
end