Packages
tai
0.0.70
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/transitions/accept_create.ex
defmodule Tai.Orders.Transitions.AcceptCreate do
@moduledoc """
The create request has been received and accepted by the venue. The result
of the created order will either be returned immediately in the response or
received asynchronously on the connection stream.
"""
use Ecto.Schema
import Ecto.Changeset
@behaviour Tai.Orders.Transition
@type t :: %__MODULE__{}
@primary_key false
embedded_schema do
field(:venue_order_id, :string)
field(:last_received_at, :utc_datetime_usec)
field(:last_venue_timestamp, :utc_datetime_usec)
end
def changeset(transition, params) do
transition
|> cast(params, [:venue_order_id, :last_received_at, :last_venue_timestamp])
|> validate_required([:venue_order_id, :last_received_at])
end
def from, do: ~w[enqueued]a
def attrs(transition) do
[
venue_order_id: transition.venue_order_id,
last_received_at: transition.last_received_at,
last_venue_timestamp: transition.last_venue_timestamp
]
end
def status(_current) do
:create_accepted
end
end