Skip to main content

OrderAmendment

Struct OrderAmendment 

Source
pub struct OrderAmendment {
    pub order_id: String,
    pub currency_pair: String,
    pub account: Option<String>,
    pub amount: Option<String>,
    pub price: Option<String>,
    pub amend_text: Option<String>,
}
Expand description

Single order amendment parameters

Fields§

§order_id: String

Order ID to amend

§currency_pair: String

Trading pair

§account: Option<String>

Account type

§amount: Option<String>

Order amount

§price: Option<String>

Order price

§amend_text: Option<String>

Custom amendment text

Implementations§

Source§

impl OrderAmendment

Source

pub fn new(order_id: &str, currency_pair: &str) -> Self

Create new order amendment

Examples found in repository?
examples/sync/amend_batch_orders.rs (line 16)
4fn main() -> Result<(), Box<gateio_rs::ureq::Error>> {
5    dotenv::dotenv().ok();
6
7    // Load credentials from environment
8    let api_key = std::env::var("GATE_API_KEY").expect("GATE_API_KEY not set");
9    let api_secret = std::env::var("GATE_API_SECRET").expect("GATE_API_SECRET not set");
10    let credentials = Credentials::new(api_key, api_secret);
11
12    let client = GateHttpClient::default().credentials(credentials.clone());
13
14    // Create order amendments
15    let amendments = vec![
16        spot::OrderAmendment::new("order_id_1", "BTC_USDT")
17            .price("45000")
18            .amount("0.01"),
19        spot::OrderAmendment::new("order_id_2", "ETH_USDT")
20            .price("3000")
21            .amend_text("Updated price"),
22    ];
23
24    // Create request
25    let req = spot::amend_batch_orders(amendments);
26
27    let resp = client.send(req)?;
28    let body = resp.into_body_str()?;
29    let resp_obj: Value = serde_json::from_str(&body).unwrap();
30    println!("{:?}", resp_obj);
31
32    Ok(())
33}
Source

pub fn account(self, account: &str) -> Self

Set account type

Source

pub fn amount(self, amount: &str) -> Self

Set order amount

Examples found in repository?
examples/sync/amend_batch_orders.rs (line 18)
4fn main() -> Result<(), Box<gateio_rs::ureq::Error>> {
5    dotenv::dotenv().ok();
6
7    // Load credentials from environment
8    let api_key = std::env::var("GATE_API_KEY").expect("GATE_API_KEY not set");
9    let api_secret = std::env::var("GATE_API_SECRET").expect("GATE_API_SECRET not set");
10    let credentials = Credentials::new(api_key, api_secret);
11
12    let client = GateHttpClient::default().credentials(credentials.clone());
13
14    // Create order amendments
15    let amendments = vec![
16        spot::OrderAmendment::new("order_id_1", "BTC_USDT")
17            .price("45000")
18            .amount("0.01"),
19        spot::OrderAmendment::new("order_id_2", "ETH_USDT")
20            .price("3000")
21            .amend_text("Updated price"),
22    ];
23
24    // Create request
25    let req = spot::amend_batch_orders(amendments);
26
27    let resp = client.send(req)?;
28    let body = resp.into_body_str()?;
29    let resp_obj: Value = serde_json::from_str(&body).unwrap();
30    println!("{:?}", resp_obj);
31
32    Ok(())
33}
Source

pub fn price(self, price: &str) -> Self

Set order price

Examples found in repository?
examples/sync/amend_batch_orders.rs (line 17)
4fn main() -> Result<(), Box<gateio_rs::ureq::Error>> {
5    dotenv::dotenv().ok();
6
7    // Load credentials from environment
8    let api_key = std::env::var("GATE_API_KEY").expect("GATE_API_KEY not set");
9    let api_secret = std::env::var("GATE_API_SECRET").expect("GATE_API_SECRET not set");
10    let credentials = Credentials::new(api_key, api_secret);
11
12    let client = GateHttpClient::default().credentials(credentials.clone());
13
14    // Create order amendments
15    let amendments = vec![
16        spot::OrderAmendment::new("order_id_1", "BTC_USDT")
17            .price("45000")
18            .amount("0.01"),
19        spot::OrderAmendment::new("order_id_2", "ETH_USDT")
20            .price("3000")
21            .amend_text("Updated price"),
22    ];
23
24    // Create request
25    let req = spot::amend_batch_orders(amendments);
26
27    let resp = client.send(req)?;
28    let body = resp.into_body_str()?;
29    let resp_obj: Value = serde_json::from_str(&body).unwrap();
30    println!("{:?}", resp_obj);
31
32    Ok(())
33}
Source

pub fn amend_text(self, amend_text: &str) -> Self

Set amendment text

Examples found in repository?
examples/sync/amend_batch_orders.rs (line 21)
4fn main() -> Result<(), Box<gateio_rs::ureq::Error>> {
5    dotenv::dotenv().ok();
6
7    // Load credentials from environment
8    let api_key = std::env::var("GATE_API_KEY").expect("GATE_API_KEY not set");
9    let api_secret = std::env::var("GATE_API_SECRET").expect("GATE_API_SECRET not set");
10    let credentials = Credentials::new(api_key, api_secret);
11
12    let client = GateHttpClient::default().credentials(credentials.clone());
13
14    // Create order amendments
15    let amendments = vec![
16        spot::OrderAmendment::new("order_id_1", "BTC_USDT")
17            .price("45000")
18            .amount("0.01"),
19        spot::OrderAmendment::new("order_id_2", "ETH_USDT")
20            .price("3000")
21            .amend_text("Updated price"),
22    ];
23
24    // Create request
25    let req = spot::amend_batch_orders(amendments);
26
27    let resp = client.send(req)?;
28    let body = resp.into_body_str()?;
29    let resp_obj: Value = serde_json::from_str(&body).unwrap();
30    println!("{:?}", resp_obj);
31
32    Ok(())
33}

Trait Implementations§

Source§

impl Clone for OrderAmendment

Source§

fn clone(&self) -> OrderAmendment

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for OrderAmendment

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Serialize for OrderAmendment

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.