pub struct OhlcvRequestBuilder { /* private fields */ }Expand description
Builder for OhlcvRequest with validation.
The builder provides a fluent API for constructing OHLCV requests.
The symbol field is required, while all other fields have sensible
defaults or are optional.
§Default Values
timeframe: “1h” (1 hour)since: Nonelimit: Noneuntil: None
§Examples
use ccxt_core::types::ohlcv_request::OhlcvRequestBuilder;
// Minimal request (only symbol required)
let request = OhlcvRequestBuilder::new()
.symbol("ETH/USDT")
.build()
.expect("Valid request");
// Full request with all options
let request = OhlcvRequestBuilder::new()
.symbol("BTC/USDT")
.timeframe("15m")
.since(1609459200000)
.limit(500)
.until(1609545600000)
.build()
.expect("Valid request");Implementations§
Source§impl OhlcvRequestBuilder
impl OhlcvRequestBuilder
Sourcepub fn new() -> OhlcvRequestBuilder
pub fn new() -> OhlcvRequestBuilder
Creates a new OhlcvRequestBuilder with default values.
Sourcepub fn symbol(self, symbol: impl Into<String>) -> OhlcvRequestBuilder
pub fn symbol(self, symbol: impl Into<String>) -> OhlcvRequestBuilder
Sourcepub fn timeframe(self, timeframe: impl Into<String>) -> OhlcvRequestBuilder
pub fn timeframe(self, timeframe: impl Into<String>) -> OhlcvRequestBuilder
Sets the candlestick timeframe/interval (optional, defaults to “1h”).
Common timeframes:
- “1m”, “3m”, “5m”, “15m”, “30m” (minutes)
- “1h”, “2h”, “4h”, “6h”, “8h”, “12h” (hours)
- “1d”, “3d” (days)
- “1w” (week)
- “1M” (month)
§Arguments
timeframe- Candlestick interval string
§Examples
use ccxt_core::types::ohlcv_request::OhlcvRequestBuilder;
let builder = OhlcvRequestBuilder::new()
.symbol("BTC/USDT")
.timeframe("4h");Sourcepub fn since(self, since: i64) -> OhlcvRequestBuilder
pub fn since(self, since: i64) -> OhlcvRequestBuilder
Sets the start timestamp in milliseconds (optional).
Only candles with timestamp >= since will be returned.
§Arguments
since- Unix timestamp in milliseconds
§Examples
use ccxt_core::types::ohlcv_request::OhlcvRequestBuilder;
let builder = OhlcvRequestBuilder::new()
.symbol("BTC/USDT")
.since(1609459200000); // 2021-01-01 00:00:00 UTCSourcepub fn limit(self, limit: u32) -> OhlcvRequestBuilder
pub fn limit(self, limit: u32) -> OhlcvRequestBuilder
Sets the maximum number of candles to return (optional).
Most exchanges have a maximum limit (typically 500-1500).
§Arguments
limit- Maximum number of candles
§Examples
use ccxt_core::types::ohlcv_request::OhlcvRequestBuilder;
let builder = OhlcvRequestBuilder::new()
.symbol("BTC/USDT")
.limit(100);Sourcepub fn until(self, until: i64) -> OhlcvRequestBuilder
pub fn until(self, until: i64) -> OhlcvRequestBuilder
Sets the end timestamp in milliseconds (optional).
Only candles with timestamp <= until will be returned.
§Arguments
until- Unix timestamp in milliseconds
§Examples
use ccxt_core::types::ohlcv_request::OhlcvRequestBuilder;
let builder = OhlcvRequestBuilder::new()
.symbol("BTC/USDT")
.until(1609545600000); // 2021-01-02 00:00:00 UTCSourcepub fn build(self) -> Result<OhlcvRequest, Error>
pub fn build(self) -> Result<OhlcvRequest, Error>
Builds the OhlcvRequest with validation.
§Returns
Ok(OhlcvRequest)if the symbol is providedErr(Error)if the symbol is missing
§Default Values
timeframedefaults to “1h” if not specified
§Examples
use ccxt_core::types::ohlcv_request::OhlcvRequestBuilder;
// Valid request
let request = OhlcvRequestBuilder::new()
.symbol("BTC/USDT")
.build()
.expect("Valid request");
// Invalid request (missing symbol)
let result = OhlcvRequestBuilder::new()
.timeframe("1h")
.build();
assert!(result.is_err());Trait Implementations§
Source§impl Clone for OhlcvRequestBuilder
impl Clone for OhlcvRequestBuilder
Source§fn clone(&self) -> OhlcvRequestBuilder
fn clone(&self) -> OhlcvRequestBuilder
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for OhlcvRequestBuilder
impl Debug for OhlcvRequestBuilder
Source§impl Default for OhlcvRequestBuilder
impl Default for OhlcvRequestBuilder
Source§fn default() -> OhlcvRequestBuilder
fn default() -> OhlcvRequestBuilder
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for OhlcvRequestBuilder
impl RefUnwindSafe for OhlcvRequestBuilder
impl Send for OhlcvRequestBuilder
impl Sync for OhlcvRequestBuilder
impl Unpin for OhlcvRequestBuilder
impl UnwindSafe for OhlcvRequestBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more