Current section

Files

Jump to
ex_oanda lib models definitions instrument candlestick.ex
Raw

lib/models/definitions/instrument/candlestick.ex

defmodule ExOanda.Candlestick do
@moduledoc """
Schema for Oanda candlestick.
[Oanda Docs](https://developer.oanda.com/rest-live-v20/instrument-df/)
"""
use TypedEctoSchema
import Ecto.Changeset
alias ExOanda.CandlestickData
@primary_key false
typed_embedded_schema do
field(:time, :utc_datetime_usec)
field(:volume, :integer)
field(:complete, :boolean)
embeds_one :bid, CandlestickData
embeds_one :ask, CandlestickData
embeds_one :mid, CandlestickData
end
@doc false
def changeset(struct, params) do
struct
|> cast(params, [:time, :volume, :complete])
|> cast_embed(:bid)
|> cast_embed(:ask)
|> cast_embed(:mid)
|> validate_required([:time, :volume, :complete])
end
end