|
23 | 23 |
|
24 | 24 | struct CandleQuery <: GateioPublicQuery |
25 | 25 | contract::Contract |
| 26 | + settle::Settle |
26 | 27 | from::Maybe{DateTime} |
27 | 28 | to::Maybe{DateTime} |
28 | 29 | limit::Maybe{Int64} |
29 | 30 | interval::Maybe{TimeInterval} |
30 | 31 | end |
31 | 32 |
|
| 33 | +Serde.SerQuery.ser_ignore_field(::Type{CandleQuery}, ::Val{:settle}) = true |
| 34 | + |
32 | 35 | function CandleQuery(; |
33 | 36 | type::ContractType, |
34 | 37 | name::String, |
| 38 | + settle::Settle, |
35 | 39 | from::Maybe{DateTime} = nothing, |
36 | 40 | to::Maybe{DateTime} = nothing, |
37 | 41 | limit::Maybe{Int64} = nothing, |
38 | 42 | interval::Maybe{TimeInterval} = nothing, |
39 | 43 | ) |
40 | | - return CandleQuery(Contract(type, name), from, to, limit, interval) |
| 44 | + return CandleQuery(Contract(type, name), settle, from, to, limit, interval) |
41 | 45 | end |
42 | 46 |
|
43 | 47 | function Serde.ser_type(::Type{<:CandleQuery}, x::Contract)::String |
@@ -81,6 +85,7 @@ Get futures candlesticks. |
81 | 85 | | Parameter | Type | Required | Description | |
82 | 86 | |:----------|:-------------|:---------|:-------------------------------------| |
83 | 87 | | contract | String | true | | |
| 88 | +| settle | Settle | true | btc usdt usd | |
84 | 89 | | interval | TimeInterval | false | s10 m1 m5 m15 m30 h1 h4 h8 d1 d7 d30 | |
85 | 90 | | from | DateTime | false | | |
86 | 91 | | to | DateTime | false | | |
@@ -119,12 +124,12 @@ to_pretty_json(result.result) |
119 | 124 | ] |
120 | 125 | ``` |
121 | 126 | """ |
122 | | -function candle(client::GateioClient, settle::Settle, query::CandleQuery) |
123 | | - return APIsRequest{Vector{CandleData}}("GET", "api/v4/futures/$settle/candlesticks", query)(client) |
| 127 | +function candle(client::GateioClient, query::CandleQuery) |
| 128 | + return APIsRequest{Vector{CandleData}}("GET", "api/v4/futures/$(query.settle)/candlesticks", query)(client) |
124 | 129 | end |
125 | 130 |
|
126 | | -function candle(client::GateioClient = Gateio.Futures.public_client; settle::Settle, kw...) |
127 | | - return candle(client, settle, CandleQuery(; kw...)) |
| 131 | +function candle(client::GateioClient = Gateio.Futures.public_client; kw...) |
| 132 | + return candle(client, CandleQuery(; kw...)) |
128 | 133 | end |
129 | 134 |
|
130 | 135 | end |
0 commit comments