Skip to main content

PolymarketPositionClient

Struct PolymarketPositionClient 

Source
pub struct PolymarketPositionClient { /* private fields */ }
Expand description

Deposit Wallet client for split, merge, and redeem position operations.

Implementations§

Source§

impl PolymarketPositionClient

Source

pub fn new( private_key: &EvmPrivateKey, deposit_wallet: &str, relayer_api_key: RelayerApiKey, base_url_relayer: Option<String>, base_url_clob: Option<String>, timeout_secs: Option<u64>, proxy_url: Option<ProxyUrl>, ) -> Result<Self>

Creates a Deposit Wallet position client.

§Errors

Returns an error if credentials are invalid, the deposit wallet is not distinct from the signer, or an HTTP client cannot be created.

Source

pub fn with_rpc_url(self, rpc_url: String) -> Self

Sets the Polygon RPC URL used to verify the Deposit Wallet before signing.

Source

pub fn with_deadline_secs(self, deadline_secs: u64) -> Self

Sets the signed-batch deadline in seconds from now.

Defaults to 1,800 seconds; values below one second are raised to one. Longer deadlines extend the period in which a signed batch can execute and delay expiry-based recovery of an unknown submission. The wait timeout does not shorten this deadline or cancel the signed batch.

Source

pub fn with_wait_timeout(self, wait_timeout: Duration) -> Self

Sets how long PolymarketPositionTransaction::wait polls before timing out.

Source

pub fn with_poll_interval(self, poll_interval: Duration) -> Self

Sets the Relayer poll interval used by PolymarketPositionTransaction::wait.

Source

pub async fn split_position( &self, condition_id: &str, amount: Decimal, ) -> Result<PolymarketPositionTransaction>

Splits amount pUSD into a complete set of outcome tokens.

§Errors

Returns an error if market metadata is invalid, encoding fails, or Relayer submission is rejected or ambiguous.

Source

pub async fn merge_positions( &self, condition_id: &str, amount: Decimal, ) -> Result<PolymarketPositionTransaction>

Merges amount complete sets of outcome tokens back into pUSD.

§Errors

Returns an error if market metadata is invalid, encoding fails, or Relayer submission is rejected or ambiguous.

Source

pub async fn redeem_positions( &self, condition_id: &str, ) -> Result<PolymarketPositionTransaction>

Redeems both binary outcome balances for a resolved market.

§Errors

Returns an error if market metadata is invalid, encoding fails, or Relayer submission is rejected or ambiguous.

Trait Implementations§

Source§

impl Debug for PolymarketPositionClient

Source§

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

Formats the value using the given formatter. 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
§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
§

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

§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] only if self and other return Action::Follow. Read more
§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] if either self or other returns Action::Follow. Read more
§

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

§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] only if self and other return Action::Follow. Read more
§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] if either self or other returns Action::Follow. Read more
§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
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.
§

impl<T> Ungil for T
where T: Send,

§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more