Type Alias PriceSourceChecked

Source
pub type PriceSourceChecked = PriceSource<Addr>;

Aliased Type§

enum PriceSourceChecked {
    Fixed {
        price: Decimal,
    },
    Native {
        denom: String,
    },
    AstroportSpot {
        pair_address: Addr,
    },
    AstroportTwap {
        pair_address: Addr,
        window_size: u64,
        tolerance: u64,
    },
    AstroportLiquidityToken {
        pair_address: Addr,
    },
}

Variants§

§

Fixed

Returns a fixed value; used for UST

Fields

§price: Decimal
§

Native

Native Terra stablecoins transaction rate quoted in UST

Fields

§denom: String
§

AstroportSpot

Astroport spot price quoted in UST

NOTE: pair_address must point to an astroport pair consists of the asset of intereset and UST

Fields

§pair_address: Addr

Address of the Astroport pair

§

AstroportTwap

Astroport TWAP price quoted in UST

NOTE: pair_address must point to an astroport pair consists of the asset of intereset and UST

Fields

§pair_address: Addr

Address of the Astroport pair

§window_size: u64

Address of the asset of interest

NOTE: Spot price in intended for CW20 tokens. Terra native tokens should use Fixed or Native price sources.

§tolerance: u64

When calculating averaged price, we take the most recent TWAP snapshot and find a second snapshot in the range of window_size +/- tolerance. For example, if window size is 5 minutes and tolerance is 1 minute, we look for snapshots that are 4 - 6 minutes back in time from the most recent snapshot.

If there are multiple snapshots within the range, we take the one that is closest to the desired window size.

§

AstroportLiquidityToken

Astroport liquidity token

NOTE: Astroport’s pair contract does not have a query command to check the address of the LP token associated with a pair. Therefore, we can’t implement relevant checks in the contract. The owner must make sure the addresses supplied are accurate

Fields

§pair_address: Addr

Address of the asset of interest