@@ -44,6 +44,7 @@ impl OrderCreateBuilder {
44
44
/// # Example
45
45
///
46
46
/// ```rust
47
+ /// use cbadv::order::{OrderCreateBuilder, OrderSide};
47
48
/// let builder = OrderCreateBuilder::new("BTC-USD", &OrderSide::Buy);
48
49
/// ```
49
50
pub fn new ( product_id : & str , side : & OrderSide ) -> Self {
@@ -77,6 +78,8 @@ impl OrderCreateBuilder {
77
78
/// # Example
78
79
///
79
80
/// ```rust
81
+ /// use cbadv::order::{OrderCreateBuilder, OrderSide, OrderType};
82
+ /// let builder = OrderCreateBuilder::new("BTC-USD", &OrderSide::Buy);
80
83
/// builder.order_type(OrderType::Limit);
81
84
/// ```
82
85
pub fn order_type ( mut self , order_type : OrderType ) -> Self {
@@ -89,10 +92,10 @@ impl OrderCreateBuilder {
89
92
/// Time-in-force specifies how long an order remains active before it is executed or expires.
90
93
/// Common values include:
91
94
///
92
- /// - `GTC` (Good 'til Cancelled) : The order remains active until it is filled or canceled.
93
- /// - `GTD` (Good 'til Date) : The order remains active until a specified date and time.
94
- /// - `IOC` (Immediate or Cancel) : The order must be executed immediately; otherwise, any unfilled portion is canceled.
95
- /// - `FOK` (Fill or Kill) : The order must be filled entirely immediately; otherwise, it is canceled.
95
+ /// - `GoodUntilCancelled` : The order remains active until it is filled or canceled.
96
+ /// - `GoodUntilDateTime` : The order remains active until a specified date and time.
97
+ /// - `ImmediateOrCancel` : The order must be executed immediately; otherwise, any unfilled portion is canceled.
98
+ /// - `FillOrKill` : The order must be filled entirely immediately; otherwise, it is canceled.
96
99
///
97
100
/// # Arguments
98
101
///
@@ -101,7 +104,9 @@ impl OrderCreateBuilder {
101
104
/// # Example
102
105
///
103
106
/// ```rust
104
- /// builder.time_in_force(TimeInForce::GTC);
107
+ /// use cbadv::order::{OrderCreateBuilder, OrderSide, TimeInForce};
108
+ /// let builder = OrderCreateBuilder::new("BTC-USD", &OrderSide::Buy);
109
+ /// builder.time_in_force(TimeInForce::GoodUntilCancelled);
105
110
/// ```
106
111
pub fn time_in_force ( mut self , tif : TimeInForce ) -> Self {
107
112
self . time_in_force = Some ( tif) ;
@@ -124,6 +129,8 @@ impl OrderCreateBuilder {
124
129
/// # Example
125
130
///
126
131
/// ```rust
132
+ /// use cbadv::order::{OrderCreateBuilder, OrderSide};
133
+ /// let builder = OrderCreateBuilder::new("BTC-USD", &OrderSide::Buy);
127
134
/// builder.base_size(0.5); // Buying or selling 0.5 BTC
128
135
/// ```
129
136
pub fn base_size ( mut self , base_size : f64 ) -> Self {
@@ -148,6 +155,8 @@ impl OrderCreateBuilder {
148
155
/// # Example
149
156
///
150
157
/// ```rust
158
+ /// use cbadv::order::{OrderCreateBuilder, OrderSide};
159
+ /// let builder = OrderCreateBuilder::new("BTC-USD", &OrderSide::Buy);
151
160
/// builder.quote_size(1000.0); // Spending $1000 USD to buy BTC
152
161
/// ```
153
162
pub fn quote_size ( mut self , quote_size : f64 ) -> Self {
@@ -173,6 +182,8 @@ impl OrderCreateBuilder {
173
182
/// # Example
174
183
///
175
184
/// ```rust
185
+ /// use cbadv::order::{OrderCreateBuilder, OrderSide};
186
+ /// let builder = OrderCreateBuilder::new("BTC-USD", &OrderSide::Buy);
176
187
/// builder.limit_price(50000.0); // Limit price of $50,000 per BTC
177
188
/// ```
178
189
pub fn limit_price ( mut self , limit_price : f64 ) -> Self {
@@ -197,6 +208,8 @@ impl OrderCreateBuilder {
197
208
/// # Example
198
209
///
199
210
/// ```rust
211
+ /// use cbadv::order::{OrderCreateBuilder, OrderSide};
212
+ /// let builder = OrderCreateBuilder::new("BTC-USD", &OrderSide::Buy);
200
213
/// builder.stop_price(48000.0); // Trigger the order when the price reaches $48,000
201
214
/// ```
202
215
pub fn stop_price ( mut self , stop_price : f64 ) -> Self {
@@ -221,6 +234,8 @@ impl OrderCreateBuilder {
221
234
/// # Example
222
235
///
223
236
/// ```rust
237
+ /// use cbadv::order::{OrderCreateBuilder, OrderSide};
238
+ /// let builder = OrderCreateBuilder::new("BTC-USD", &OrderSide::Buy);
224
239
/// builder.stop_trigger_price(47000.0); // Exit the position when the price reaches $47,000
225
240
/// ```
226
241
pub fn stop_trigger_price ( mut self , stop_trigger_price : f64 ) -> Self {
@@ -244,6 +259,8 @@ impl OrderCreateBuilder {
244
259
/// # Example
245
260
///
246
261
/// ```rust
262
+ /// use cbadv::order::{OrderCreateBuilder, OrderSide};
263
+ /// let builder = OrderCreateBuilder::new("BTC-USD", &OrderSide::Buy);
247
264
/// builder.end_time("2024-12-31T23:59:59Z");
248
265
/// ```
249
266
pub fn end_time ( mut self , end_time : & str ) -> Self {
@@ -268,6 +285,8 @@ impl OrderCreateBuilder {
268
285
/// # Example
269
286
///
270
287
/// ```rust
288
+ /// use cbadv::order::{OrderCreateBuilder, OrderSide};
289
+ /// let builder = OrderCreateBuilder::new("BTC-USD", &OrderSide::Buy);
271
290
/// builder.post_only(true);
272
291
/// ```
273
292
pub fn post_only ( mut self , post_only : bool ) -> Self {
@@ -293,6 +312,8 @@ impl OrderCreateBuilder {
293
312
/// # Example
294
313
///
295
314
/// ```rust
315
+ /// use cbadv::order::{OrderCreateBuilder, OrderSide, StopDirection};
316
+ /// let builder = OrderCreateBuilder::new("BTC-USD", &OrderSide::Buy);
296
317
/// builder.stop_direction(StopDirection::StopUp);
297
318
/// ```
298
319
pub fn stop_direction ( mut self , stop_direction : StopDirection ) -> Self {
@@ -317,6 +338,8 @@ impl OrderCreateBuilder {
317
338
/// # Example
318
339
///
319
340
/// ```rust
341
+ /// use cbadv::order::{OrderCreateBuilder, OrderSide};
342
+ /// let builder = OrderCreateBuilder::new("BTC-USD", &OrderSide::Buy);
320
343
/// builder.client_order_id("my-custom-order-id-123");
321
344
/// ```
322
345
pub fn client_order_id ( mut self , client_order_id : & str ) -> Self {
@@ -337,6 +360,8 @@ impl OrderCreateBuilder {
337
360
/// # Example
338
361
///
339
362
/// ```rust
363
+ /// use cbadv::order::{OrderCreateBuilder, OrderSide};
364
+ /// let builder = OrderCreateBuilder::new("BTC-USD", &OrderSide::Buy);
340
365
/// builder.preview(true);
341
366
/// ```
342
367
pub fn preview ( mut self , is_preview : bool ) -> Self {
@@ -363,7 +388,9 @@ impl OrderCreateBuilder {
363
388
/// # Example
364
389
///
365
390
/// ```rust
366
- /// let create_order = builder.build()?;
391
+ /// use cbadv::order::{OrderCreateBuilder, OrderSide};
392
+ /// let builder = OrderCreateBuilder::new("BTC-USD", &OrderSide::Buy);
393
+ /// let create_order = builder.build();
367
394
/// ```
368
395
pub fn build ( self ) -> CbResult < OrderCreateRequest > {
369
396
if self . side == OrderSide :: Unknown {
0 commit comments