gmsol_store/constants/
mod.rs

1/// Default market configs.
2pub mod market;
3
4/// Default GLV configs.
5pub mod glv;
6
7pub use self::{glv::*, market::*};
8
9use gmsol_utils::price::Decimal;
10
11use crate::states::{Amount, Factor};
12
13/// Event authority SEED.
14pub const EVENT_AUTHORITY_SEED: &[u8] = b"__event_authority";
15
16/// Market Token Mint Address Seed.
17pub const MAREKT_TOKEN_MINT_SEED: &[u8] = b"market_token_mint";
18
19/// Market Vault Seed.
20pub const MARKET_VAULT_SEED: &[u8] = b"market_vault";
21
22/// GT Mint Seed.
23pub const GT_MINT_SEED: &[u8] = b"gt";
24
25/// Claimable Account Seed.
26pub const CLAIMABLE_ACCOUNT_SEED: &[u8] = b"claimable_account";
27
28/// Escrow Account Seed.
29pub const ESCROW_ACCOUNT_SEED: &[u8] = b"escrow_account";
30
31/// Decimals of a market token.
32pub const MARKET_TOKEN_DECIMALS: u8 = 9;
33
34/// Unit USD value i.e. `one`.
35pub const MARKET_USD_UNIT: u128 = 10u128.pow(MARKET_DECIMALS as u32);
36
37/// Adjustment factor for saving funding amount per size.
38pub const FUNDING_AMOUNT_PER_SIZE_ADJUSTMENT: u128 = 10u128.pow((MARKET_DECIMALS >> 1) as u32);
39
40/// USD value to amount divisor.
41pub const MARKET_USD_TO_AMOUNT_DIVISOR: u128 =
42    10u128.pow((MARKET_DECIMALS - MARKET_TOKEN_DECIMALS) as u32);
43
44/// Decimals of usd values of factors.
45pub const MARKET_DECIMALS: u8 = Decimal::MAX_DECIMALS;
46
47/// Default claimable time window.
48pub const DEFAULT_CLAIMABLE_TIME_WINDOW: Amount = 3600;
49
50/// Default recent time window.
51pub const DEFAULT_RECENT_TIME_WINDOW: Amount = 300;
52
53/// Default request expiration.
54pub const DEFAULT_REQUEST_EXPIRATION: Amount = 3600;
55
56/// Default oracle max age.
57pub const DEFAULT_ORACLE_MAX_AGE: Amount = 3600;
58
59/// Default oracle max timestamp range.
60pub const DEFAULT_ORACLE_MAX_TIMESTAMP_RANGE: Amount = 300;
61
62/// Default oracle max future timestamp excess (in seconds).
63pub const DEFAULT_ORACLE_MAX_FUTURE_TIMESTAMP_EXCESS: Amount = 0;
64
65/// Default max ADL prices staleness (in seconds).
66pub const DEFAULT_ADL_PRICES_MAX_STALENESS: Amount = 0;
67
68/// Default oracle ref price deviation.
69pub const DEFAULT_ORACLE_REF_PRICE_DEVIATION: Factor = 1_000_000_000_000_000;
70
71/// Default GT vault time window size.
72pub const DEFAULT_GT_VAULT_TIME_WINDOW: u32 = 24 * 60 * 60;