@mysten/deepbook-v3 2.6.4 → 2.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +153 -0
- package/PREDICT.md +389 -61
- package/dist/contracts/account/account.d.mts +23 -23
- package/dist/contracts/account/account.d.mts.map +1 -1
- package/dist/contracts/account/account_registry.d.mts +13 -13
- package/dist/contracts/deepbook/account.d.mts +18 -18
- package/dist/contracts/deepbook/balances.d.mts +4 -4
- package/dist/contracts/deepbook/deep_price.d.mts +3 -3
- package/dist/contracts/deepbook/order.d.mts +12 -12
- package/dist/contracts/deepbook_predict/admin.d.mts +4 -4
- package/dist/contracts/deepbook_predict/builder_code.d.mts +11 -11
- package/dist/contracts/deepbook_predict/builder_code_events.d.mts +10 -10
- package/dist/contracts/deepbook_predict/config_events.d.mts +93 -68
- package/dist/contracts/deepbook_predict/config_events.d.mts.map +1 -1
- package/dist/contracts/deepbook_predict/config_events.mjs +45 -1
- package/dist/contracts/deepbook_predict/config_events.mjs.map +1 -1
- package/dist/contracts/deepbook_predict/deps/std/type_name.mjs +17 -0
- package/dist/contracts/deepbook_predict/deps/std/type_name.mjs.map +1 -0
- package/dist/contracts/deepbook_predict/expiry_market.d.mts +652 -235
- package/dist/contracts/deepbook_predict/expiry_market.d.mts.map +1 -1
- package/dist/contracts/deepbook_predict/expiry_market.mjs +652 -186
- package/dist/contracts/deepbook_predict/expiry_market.mjs.map +1 -1
- package/dist/contracts/deepbook_predict/lp_book.mjs +1 -1
- package/dist/contracts/deepbook_predict/market_lifecycle_cap.d.mts +5 -5
- package/dist/contracts/deepbook_predict/market_manager.d.mts +27 -27
- package/dist/contracts/deepbook_predict/order_events.d.mts +50 -50
- package/dist/contracts/deepbook_predict/order_events.d.mts.map +1 -1
- package/dist/contracts/deepbook_predict/order_events.mjs +3 -1
- package/dist/contracts/deepbook_predict/order_events.mjs.map +1 -1
- package/dist/contracts/deepbook_predict/pause_cap.d.mts +5 -5
- package/dist/contracts/deepbook_predict/plp.d.mts +184 -82
- package/dist/contracts/deepbook_predict/plp.d.mts.map +1 -1
- package/dist/contracts/deepbook_predict/plp.mjs +126 -7
- package/dist/contracts/deepbook_predict/plp.mjs.map +1 -1
- package/dist/contracts/deepbook_predict/pool_accounting.mjs +1 -1
- package/dist/contracts/deepbook_predict/pool_valuation_cap.d.mts +5 -5
- package/dist/contracts/deepbook_predict/predict_account.d.mts +14 -14
- package/dist/contracts/deepbook_predict/pricing.d.mts +91 -58
- package/dist/contracts/deepbook_predict/pricing.d.mts.map +1 -1
- package/dist/contracts/deepbook_predict/pricing.mjs +30 -3
- package/dist/contracts/deepbook_predict/pricing.mjs.map +1 -1
- package/dist/contracts/deepbook_predict/pricing_config.mjs.map +1 -1
- package/dist/contracts/deepbook_predict/protocol_config.d.mts +400 -92
- package/dist/contracts/deepbook_predict/protocol_config.d.mts.map +1 -1
- package/dist/contracts/deepbook_predict/protocol_config.mjs +451 -61
- package/dist/contracts/deepbook_predict/protocol_config.mjs.map +1 -1
- package/dist/contracts/deepbook_predict/range_codec.d.mts +2 -2
- package/dist/contracts/deepbook_predict/registry.d.mts +28 -28
- package/dist/contracts/deepbook_predict/strike_exposure.mjs +1 -1
- package/dist/contracts/deepbook_predict/strike_payout_tree.mjs +17 -12
- package/dist/contracts/deepbook_predict/strike_payout_tree.mjs.map +1 -1
- package/dist/contracts/deepbook_predict/vault_events.d.mts +154 -106
- package/dist/contracts/deepbook_predict/vault_events.d.mts.map +1 -1
- package/dist/contracts/deepbook_predict/vault_events.mjs +57 -1
- package/dist/contracts/deepbook_predict/vault_events.mjs.map +1 -1
- package/dist/contracts/deepbook_predict_math/config-arguments.d.mts +10 -0
- package/dist/contracts/deepbook_predict_math/config-arguments.d.mts.map +1 -0
- package/dist/contracts/deepbook_predict_math/lazer_price.d.mts +106 -0
- package/dist/contracts/deepbook_predict_math/lazer_price.d.mts.map +1 -0
- package/dist/contracts/deepbook_predict_math/lazer_price.mjs +125 -0
- package/dist/contracts/deepbook_predict_math/lazer_price.mjs.map +1 -0
- package/dist/contracts/deepbook_predict_math/math.d.mts +284 -0
- package/dist/contracts/deepbook_predict_math/math.d.mts.map +1 -0
- package/dist/contracts/deepbook_predict_math/math.mjs +364 -0
- package/dist/contracts/deepbook_predict_math/math.mjs.map +1 -0
- package/dist/contracts/deepbook_predict_orders/config-arguments.d.mts +13 -0
- package/dist/contracts/deepbook_predict_orders/config-arguments.d.mts.map +1 -0
- package/dist/contracts/deepbook_predict_orders/delayed_execution_config.d.mts +215 -0
- package/dist/contracts/deepbook_predict_orders/delayed_execution_config.d.mts.map +1 -0
- package/dist/contracts/deepbook_predict_orders/delayed_execution_config.mjs +215 -0
- package/dist/contracts/deepbook_predict_orders/delayed_execution_config.mjs.map +1 -0
- package/dist/contracts/deepbook_predict_orders/deps/deepbook_predict/expiry_market.mjs +87 -0
- package/dist/contracts/deepbook_predict_orders/deps/deepbook_predict/expiry_market.mjs.map +1 -0
- package/dist/contracts/deepbook_predict_orders/deps/deepbook_predict/pricing.mjs +52 -0
- package/dist/contracts/deepbook_predict_orders/deps/deepbook_predict/pricing.mjs.map +1 -0
- package/dist/contracts/deepbook_predict_orders/deps/fixed_math/i64.mjs +25 -0
- package/dist/contracts/deepbook_predict_orders/deps/fixed_math/i64.mjs.map +1 -0
- package/dist/contracts/deepbook_predict_orders/deps/sui/balance.mjs +21 -0
- package/dist/contracts/deepbook_predict_orders/deps/sui/balance.mjs.map +1 -0
- package/dist/contracts/deepbook_predict_orders/deps/sui/table.mjs +39 -0
- package/dist/contracts/deepbook_predict_orders/deps/sui/table.mjs.map +1 -0
- package/dist/contracts/deepbook_predict_orders/desk.d.mts +187 -0
- package/dist/contracts/deepbook_predict_orders/desk.d.mts.map +1 -0
- package/dist/contracts/deepbook_predict_orders/desk.mjs +261 -0
- package/dist/contracts/deepbook_predict_orders/desk.mjs.map +1 -0
- package/dist/contracts/deepbook_predict_orders/order_queue.d.mts +1042 -0
- package/dist/contracts/deepbook_predict_orders/order_queue.d.mts.map +1 -0
- package/dist/contracts/deepbook_predict_orders/order_queue.mjs +849 -0
- package/dist/contracts/deepbook_predict_orders/order_queue.mjs.map +1 -0
- package/dist/contracts/deepbook_predict_orders/queue.d.mts +683 -0
- package/dist/contracts/deepbook_predict_orders/queue.d.mts.map +1 -0
- package/dist/contracts/deepbook_predict_orders/queue.mjs +912 -0
- package/dist/contracts/deepbook_predict_orders/queue.mjs.map +1 -0
- package/dist/contracts/deepbook_predict_orders/queue_events.d.mts +195 -0
- package/dist/contracts/deepbook_predict_orders/queue_events.d.mts.map +1 -0
- package/dist/contracts/deepbook_predict_orders/queue_events.mjs +187 -0
- package/dist/contracts/deepbook_predict_orders/queue_events.mjs.map +1 -0
- package/dist/contracts/deepbook_sessions/session_config.d.mts +8 -8
- package/dist/contracts/deepbook_sessions/sessions.d.mts +163 -28
- package/dist/contracts/deepbook_sessions/sessions.d.mts.map +1 -1
- package/dist/contracts/deepbook_sessions/sessions.mjs +234 -5
- package/dist/contracts/deepbook_sessions/sessions.mjs.map +1 -1
- package/dist/deployments/mainnet.mjs +7 -4
- package/dist/deployments/mainnet.mjs.map +1 -1
- package/dist/deployments/testnet.mjs +7 -4
- package/dist/deployments/testnet.mjs.map +1 -1
- package/dist/predict/bindings/expiry-market.d.mts +77 -0
- package/dist/predict/bindings/expiry-market.d.mts.map +1 -0
- package/dist/predict/bindings/expiry-market.mjs +139 -0
- package/dist/predict/bindings/expiry-market.mjs.map +1 -0
- package/dist/predict/bindings/protocol-config.d.mts +39 -0
- package/dist/predict/bindings/protocol-config.d.mts.map +1 -0
- package/dist/predict/bindings/protocol-config.mjs +90 -0
- package/dist/predict/bindings/protocol-config.mjs.map +1 -0
- package/dist/predict/bindings/rename.mjs +9 -0
- package/dist/predict/bindings/rename.mjs.map +1 -0
- package/dist/predict/client.d.mts +595 -16
- package/dist/predict/client.d.mts.map +1 -1
- package/dist/predict/client.mjs +986 -10
- package/dist/predict/client.mjs.map +1 -1
- package/dist/predict/config/generated.d.mts +22 -1
- package/dist/predict/config/generated.d.mts.map +1 -1
- package/dist/predict/config/generated.mjs +30 -1
- package/dist/predict/config/generated.mjs.map +1 -1
- package/dist/predict/config/mainnet.mjs +11 -3
- package/dist/predict/config/mainnet.mjs.map +1 -1
- package/dist/predict/config/testnet.mjs +11 -3
- package/dist/predict/config/testnet.mjs.map +1 -1
- package/dist/predict/config/types.d.mts +50 -1
- package/dist/predict/config/types.d.mts.map +1 -1
- package/dist/predict/cost.d.mts +38 -11
- package/dist/predict/cost.d.mts.map +1 -1
- package/dist/predict/cost.mjs +37 -11
- package/dist/predict/cost.mjs.map +1 -1
- package/dist/predict/decode.d.mts +251 -1
- package/dist/predict/decode.d.mts.map +1 -1
- package/dist/predict/decode.mjs +342 -4
- package/dist/predict/decode.mjs.map +1 -1
- package/dist/predict/errors.d.mts +69 -6
- package/dist/predict/errors.d.mts.map +1 -1
- package/dist/predict/errors.mjs +277 -4
- package/dist/predict/errors.mjs.map +1 -1
- package/dist/predict/index.d.mts +21 -10
- package/dist/predict/index.mjs +24 -12
- package/dist/predict/queue-id.d.mts +13 -0
- package/dist/predict/queue-id.d.mts.map +1 -0
- package/dist/predict/queue-id.mjs +19 -0
- package/dist/predict/queue-id.mjs.map +1 -0
- package/dist/predict/queue.d.mts +505 -0
- package/dist/predict/queue.d.mts.map +1 -0
- package/dist/predict/queue.mjs +774 -0
- package/dist/predict/queue.mjs.map +1 -0
- package/dist/predict/reads/balances.mjs +1 -1
- package/dist/predict/reads/markets.mjs +46 -5
- package/dist/predict/reads/markets.mjs.map +1 -1
- package/dist/predict/reads/pool.mjs +1 -1
- package/dist/predict/reads/pricing.d.mts +1 -1
- package/dist/predict/reads/queue.d.mts +105 -0
- package/dist/predict/reads/queue.d.mts.map +1 -0
- package/dist/predict/reads/queue.mjs +445 -0
- package/dist/predict/reads/queue.mjs.map +1 -0
- package/dist/predict/ticks.d.mts +9 -1
- package/dist/predict/ticks.d.mts.map +1 -1
- package/dist/predict/ticks.mjs +18 -1
- package/dist/predict/ticks.mjs.map +1 -1
- package/dist/predict/tx/authed.mjs +1 -1
- package/dist/predict/tx/common.d.mts.map +1 -1
- package/dist/predict/tx/common.mjs +12 -1
- package/dist/predict/tx/common.mjs.map +1 -1
- package/dist/predict/tx/queue.d.mts +220 -0
- package/dist/predict/tx/queue.d.mts.map +1 -0
- package/dist/predict/tx/queue.mjs +399 -0
- package/dist/predict/tx/queue.mjs.map +1 -0
- package/dist/predict/tx/trade.d.mts.map +1 -1
- package/dist/predict/tx/trade.mjs +61 -43
- package/dist/predict/tx/trade.mjs.map +1 -1
- package/dist/sessions.d.mts +90 -2
- package/dist/sessions.d.mts.map +1 -1
- package/dist/sessions.mjs +107 -2
- package/dist/sessions.mjs.map +1 -1
- package/dist/transactions/balanceManager.d.mts +12 -12
- package/dist/transactions/balanceManager.d.mts.map +1 -1
- package/dist/transactions/deepbook.d.mts +20 -20
- package/dist/transactions/deepbook.d.mts.map +1 -1
- package/dist/transactions/deepbookAdmin.d.mts +4 -4
- package/dist/transactions/deepbookAdmin.d.mts.map +1 -1
- package/dist/transactions/marginAdmin.d.mts +7 -7
- package/dist/transactions/marginAdmin.d.mts.map +1 -1
- package/dist/transactions/marginLiquidations.d.mts +3 -3
- package/dist/transactions/marginMaintainer.d.mts +5 -5
- package/dist/transactions/marginMaintainer.d.mts.map +1 -1
- package/dist/transactions/marginManager.d.mts +32 -32
- package/dist/transactions/marginManager.d.mts.map +1 -1
- package/dist/transactions/marginPool.d.mts +18 -18
- package/dist/transactions/marginRegistry.d.mts +16 -16
- package/dist/transactions/marginTPSL.d.mts +10 -10
- package/dist/transactions/marginTPSL.d.mts.map +1 -1
- package/dist/transactions/poolProxy.d.mts +8 -8
- package/dist/transactions/poolProxy.d.mts.map +1 -1
- package/package.json +4 -4
- package/src/contracts/deepbook_predict/config_events.ts +39 -0
- package/src/contracts/deepbook_predict/deps/std/type_name.ts +24 -0
- package/src/contracts/deepbook_predict/expiry_market.ts +960 -169
- package/src/contracts/deepbook_predict/order_events.ts +3 -1
- package/src/contracts/deepbook_predict/plp.ts +150 -9
- package/src/contracts/deepbook_predict/pricing.ts +46 -7
- package/src/contracts/deepbook_predict/pricing_config.ts +3 -1
- package/src/contracts/deepbook_predict/protocol_config.ts +648 -33
- package/src/contracts/deepbook_predict/strike_payout_tree.ts +25 -21
- package/src/contracts/deepbook_predict/vault_events.ts +65 -0
- package/src/contracts/deepbook_predict_math/config-arguments.ts +6 -0
- package/src/contracts/deepbook_predict_math/lazer_price.ts +196 -0
- package/src/contracts/deepbook_predict_math/math.ts +553 -0
- package/src/contracts/deepbook_predict_orders/config-arguments.ts +11 -0
- package/src/contracts/deepbook_predict_orders/delayed_execution_config.ts +430 -0
- package/src/contracts/deepbook_predict_orders/deps/deepbook_predict/expiry_market.ts +108 -0
- package/src/contracts/deepbook_predict_orders/deps/deepbook_predict/pricing.ts +58 -0
- package/src/contracts/deepbook_predict_orders/deps/fixed_math/i64.ts +21 -0
- package/src/contracts/deepbook_predict_orders/deps/sui/balance.ts +19 -0
- package/src/contracts/deepbook_predict_orders/deps/sui/table.ts +37 -0
- package/src/contracts/deepbook_predict_orders/desk.ts +419 -0
- package/src/contracts/deepbook_predict_orders/order_flow.ts +19 -0
- package/src/contracts/deepbook_predict_orders/order_queue.ts +1670 -0
- package/src/contracts/deepbook_predict_orders/queue.ts +1394 -0
- package/src/contracts/deepbook_predict_orders/queue_events.ts +189 -0
- package/src/contracts/deepbook_sessions/sessions.ts +355 -4
- package/src/deployments/mainnet.ts +7 -2
- package/src/deployments/testnet.ts +7 -2
- package/src/deployments/types.ts +14 -1
- package/src/predict/bindings/expiry-market.ts +127 -0
- package/src/predict/bindings/protocol-config.ts +59 -0
- package/src/predict/bindings/rename.ts +14 -0
- package/src/predict/client.ts +2076 -13
- package/src/predict/config/generated.ts +50 -0
- package/src/predict/config/mainnet.ts +16 -2
- package/src/predict/config/testnet.ts +16 -2
- package/src/predict/config/types.ts +51 -1
- package/src/predict/cost.ts +62 -14
- package/src/predict/decode.ts +691 -2
- package/src/predict/errors.ts +391 -14
- package/src/predict/index.ts +87 -6
- package/src/predict/queue-id.ts +22 -0
- package/src/predict/queue.ts +1231 -0
- package/src/predict/reads/markets.ts +30 -0
- package/src/predict/reads/queue.ts +606 -0
- package/src/predict/ticks.ts +35 -0
- package/src/predict/tx/common.ts +25 -1
- package/src/predict/tx/queue.ts +525 -0
- package/src/predict/tx/trade.ts +80 -49
- package/src/sessions.ts +206 -1
|
@@ -1,97 +1,130 @@
|
|
|
1
1
|
import { MoveStruct } from "../utils/index.mjs";
|
|
2
|
-
import * as
|
|
3
|
-
import * as
|
|
2
|
+
import * as _mysten_sui_bcs57 from "@mysten/sui/bcs";
|
|
3
|
+
import * as _mysten_sui_transactions170 from "@mysten/sui/transactions";
|
|
4
4
|
import { Transaction, TransactionArgument } from "@mysten/sui/transactions";
|
|
5
5
|
|
|
6
6
|
//#region src/contracts/deepbook_predict/pricing.d.ts
|
|
7
7
|
declare namespace pricing_d_exports {
|
|
8
|
-
export { FrozenPricer, HigherUpArguments, HigherUpOptions, LowerUpArguments, LowerUpOptions, Pricer, PricingSVI, ProbabilityArguments, ProbabilityOptions, RangePrice, RangePriceArguments, RangePriceOptions, RawSVI, UpPriceArguments, UpPriceOptions, higherUp, lowerUp, probability, rangePrice, upPrice };
|
|
8
|
+
export { FrozenPricer, HigherUpArguments, HigherUpOptions, LowerUpArguments, LowerUpOptions, Pricer, PricingSVI, ProbabilityArguments, ProbabilityOptions, RangePrice, RangePriceArguments, RangePriceOptions, RawSVI, UpPriceArguments, UpPriceOptions, VolSnapshot, higherUp, lowerUp, probability, rangePrice, upPrice };
|
|
9
9
|
}
|
|
10
|
+
declare const VolSnapshot: MoveStruct<{
|
|
11
|
+
/**
|
|
12
|
+
* Canonical Propbook Pyth source for the market's underlying; commit finds this
|
|
13
|
+
* feed in each Lazer update.
|
|
14
|
+
*/
|
|
15
|
+
pyth_source_id: _mysten_sui_bcs57.BcsType<number, number, "u32">; /** The matched Block Scholes spot and forward, narrowed to Predict's width. */
|
|
16
|
+
bs_spot: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
17
|
+
bs_forward: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">; /** Raw SVI parameters before roll-down, at 1e9. */
|
|
18
|
+
svi_a: MoveStruct<{
|
|
19
|
+
magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
20
|
+
is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">;
|
|
21
|
+
}, "fixed_math::i64::I64">;
|
|
22
|
+
svi_b: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
23
|
+
svi_rho: MoveStruct<{
|
|
24
|
+
magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
25
|
+
is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">;
|
|
26
|
+
}, "fixed_math::i64::I64">;
|
|
27
|
+
svi_m: MoveStruct<{
|
|
28
|
+
magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
29
|
+
is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">;
|
|
30
|
+
}, "fixed_math::i64::I64">;
|
|
31
|
+
svi_sigma: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
32
|
+
/**
|
|
33
|
+
* Provider source timestamps of the three reads. The SVI one is also the roll-down
|
|
34
|
+
* anchor.
|
|
35
|
+
*/
|
|
36
|
+
bs_spot_source_timestamp_ms: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
37
|
+
bs_forward_source_timestamp_ms: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
38
|
+
svi_source_timestamp_ms: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
39
|
+
}, "@local-pkg/deepbook_predict::pricing::VolSnapshot">;
|
|
10
40
|
declare const PricingSVI: MoveStruct<{
|
|
11
|
-
/** Rolled-down SVI `a`, magnitude at 1e18, sign in `a_is_negative`. */a_magnitude:
|
|
12
|
-
a_is_negative:
|
|
13
|
-
b:
|
|
41
|
+
/** Rolled-down SVI `a`, magnitude at 1e18, sign in `a_is_negative`. */a_magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u128">;
|
|
42
|
+
a_is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">; /** Rolled-down SVI `b`, at 1e18. */
|
|
43
|
+
b: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u128">;
|
|
14
44
|
rho: MoveStruct<{
|
|
15
|
-
magnitude:
|
|
16
|
-
is_negative:
|
|
45
|
+
magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
46
|
+
is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">;
|
|
17
47
|
}, "fixed_math::i64::I64">;
|
|
18
48
|
m: MoveStruct<{
|
|
19
|
-
magnitude:
|
|
20
|
-
is_negative:
|
|
49
|
+
magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
50
|
+
is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">;
|
|
21
51
|
}, "fixed_math::i64::I64">;
|
|
22
|
-
sigma:
|
|
52
|
+
sigma: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
23
53
|
}, "@local-pkg/deepbook_predict::pricing::PricingSVI">;
|
|
24
54
|
declare const FrozenPricer: MoveStruct<{
|
|
25
|
-
expiry_market_id:
|
|
26
|
-
forward:
|
|
55
|
+
expiry_market_id: _mysten_sui_bcs57.BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
56
|
+
forward: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
27
57
|
svi: MoveStruct<{
|
|
28
|
-
/** Rolled-down SVI `a`, magnitude at 1e18, sign in `a_is_negative`. */a_magnitude:
|
|
29
|
-
a_is_negative:
|
|
30
|
-
b:
|
|
58
|
+
/** Rolled-down SVI `a`, magnitude at 1e18, sign in `a_is_negative`. */a_magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u128">;
|
|
59
|
+
a_is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">; /** Rolled-down SVI `b`, at 1e18. */
|
|
60
|
+
b: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u128">;
|
|
31
61
|
rho: MoveStruct<{
|
|
32
|
-
magnitude:
|
|
33
|
-
is_negative:
|
|
62
|
+
magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
63
|
+
is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">;
|
|
34
64
|
}, "fixed_math::i64::I64">;
|
|
35
65
|
m: MoveStruct<{
|
|
36
|
-
magnitude:
|
|
37
|
-
is_negative:
|
|
66
|
+
magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
67
|
+
is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">;
|
|
38
68
|
}, "fixed_math::i64::I64">;
|
|
39
|
-
sigma:
|
|
69
|
+
sigma: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
40
70
|
}, "@local-pkg/deepbook_predict::pricing::PricingSVI">;
|
|
41
|
-
pyth_spot_source_timestamp_ms:
|
|
42
|
-
block_scholes_spot_source_timestamp_ms:
|
|
43
|
-
block_scholes_forward_source_timestamp_ms:
|
|
44
|
-
block_scholes_svi_source_timestamp_ms:
|
|
71
|
+
pyth_spot_source_timestamp_ms: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
72
|
+
block_scholes_spot_source_timestamp_ms: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
73
|
+
block_scholes_forward_source_timestamp_ms: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
74
|
+
block_scholes_svi_source_timestamp_ms: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
45
75
|
}, "@local-pkg/deepbook_predict::pricing::FrozenPricer">;
|
|
46
76
|
declare const Pricer: MoveStruct<{
|
|
47
|
-
/** Expiry market this snapshot was loaded for. */expiry_market_id:
|
|
48
|
-
forward:
|
|
77
|
+
/** Expiry market this snapshot was loaded for. */expiry_market_id: _mysten_sui_bcs57.BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
78
|
+
forward: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
49
79
|
svi: MoveStruct<{
|
|
50
|
-
/** Rolled-down SVI `a`, magnitude at 1e18, sign in `a_is_negative`. */a_magnitude:
|
|
51
|
-
a_is_negative:
|
|
52
|
-
b:
|
|
80
|
+
/** Rolled-down SVI `a`, magnitude at 1e18, sign in `a_is_negative`. */a_magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u128">;
|
|
81
|
+
a_is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">; /** Rolled-down SVI `b`, at 1e18. */
|
|
82
|
+
b: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u128">;
|
|
53
83
|
rho: MoveStruct<{
|
|
54
|
-
magnitude:
|
|
55
|
-
is_negative:
|
|
84
|
+
magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
85
|
+
is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">;
|
|
56
86
|
}, "fixed_math::i64::I64">;
|
|
57
87
|
m: MoveStruct<{
|
|
58
|
-
magnitude:
|
|
59
|
-
is_negative:
|
|
88
|
+
magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
89
|
+
is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">;
|
|
60
90
|
}, "fixed_math::i64::I64">;
|
|
61
|
-
sigma:
|
|
91
|
+
sigma: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
62
92
|
}, "@local-pkg/deepbook_predict::pricing::PricingSVI">;
|
|
63
93
|
/**
|
|
64
94
|
* Timestamps of the oracle observations this snapshot validated, as trade events
|
|
65
95
|
* report them — each observation's own economic clock. Pyth carries its source
|
|
66
|
-
* timestamp (`0` only when no usable normalized observation exists
|
|
67
|
-
*
|
|
68
|
-
* provider `
|
|
69
|
-
*
|
|
96
|
+
* timestamp (`0` only when no usable normalized observation exists; a `pricer_at`
|
|
97
|
+
* Pricer carries the committed update's generation time); Block Scholes spot and
|
|
98
|
+
* forward carry the provider `value_timestamp`, and SVI carries the provider
|
|
99
|
+
* `svi_timestamp`. Those timestamps are the clocks freshness gates and SVI
|
|
100
|
+
* roll-down use. The Pyth timestamp, including its `0` sentinel, is also what
|
|
101
|
+
* `assert_pyth_spot_fresh` gates live trades on, so it must stay the value the
|
|
102
|
+
* load's forward selection read.
|
|
70
103
|
*/
|
|
71
|
-
pyth_spot_source_timestamp_ms:
|
|
72
|
-
block_scholes_spot_source_timestamp_ms:
|
|
73
|
-
block_scholes_forward_source_timestamp_ms:
|
|
74
|
-
block_scholes_svi_source_timestamp_ms:
|
|
104
|
+
pyth_spot_source_timestamp_ms: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
105
|
+
block_scholes_spot_source_timestamp_ms: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
106
|
+
block_scholes_forward_source_timestamp_ms: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
107
|
+
block_scholes_svi_source_timestamp_ms: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
75
108
|
}, "@local-pkg/deepbook_predict::pricing::Pricer">;
|
|
76
109
|
declare const RangePrice: MoveStruct<{
|
|
77
|
-
lower_up:
|
|
78
|
-
higher_up:
|
|
110
|
+
lower_up: _mysten_sui_bcs57.BcsType<bigint | null, string | number | bigint | null | undefined, "Option<u64>">;
|
|
111
|
+
higher_up: _mysten_sui_bcs57.BcsType<bigint | null, string | number | bigint | null | undefined, "Option<u64>">;
|
|
79
112
|
}, "@local-pkg/deepbook_predict::pricing::RangePrice">;
|
|
80
113
|
declare const RawSVI: MoveStruct<{
|
|
81
114
|
a: MoveStruct<{
|
|
82
|
-
magnitude:
|
|
83
|
-
is_negative:
|
|
115
|
+
magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
116
|
+
is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">;
|
|
84
117
|
}, "fixed_math::i64::I64">;
|
|
85
|
-
b:
|
|
118
|
+
b: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
86
119
|
rho: MoveStruct<{
|
|
87
|
-
magnitude:
|
|
88
|
-
is_negative:
|
|
120
|
+
magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
121
|
+
is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">;
|
|
89
122
|
}, "fixed_math::i64::I64">;
|
|
90
123
|
m: MoveStruct<{
|
|
91
|
-
magnitude:
|
|
92
|
-
is_negative:
|
|
124
|
+
magnitude: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
125
|
+
is_negative: _mysten_sui_bcs57.BcsType<boolean, boolean, "bool">;
|
|
93
126
|
}, "fixed_math::i64::I64">;
|
|
94
|
-
sigma:
|
|
127
|
+
sigma: _mysten_sui_bcs57.BcsType<bigint, string | number | bigint, "u64">;
|
|
95
128
|
}, "@local-pkg/deepbook_predict::pricing::RawSVI">;
|
|
96
129
|
interface UpPriceArguments {
|
|
97
130
|
pricer: TransactionArgument;
|
|
@@ -108,7 +141,7 @@ interface UpPriceOptions {
|
|
|
108
141
|
* Return the current UP digital probability for a typed strike. Public PTB and
|
|
109
142
|
* devInspect reads can compose it with a transaction-local `Pricer`.
|
|
110
143
|
*/
|
|
111
|
-
declare function upPrice(options: UpPriceOptions): (tx: Transaction) =>
|
|
144
|
+
declare function upPrice(options: UpPriceOptions): (tx: Transaction) => _mysten_sui_transactions170.TransactionResult;
|
|
112
145
|
interface RangePriceArguments {
|
|
113
146
|
pricer: TransactionArgument;
|
|
114
147
|
lower: TransactionArgument;
|
|
@@ -125,7 +158,7 @@ interface RangePriceOptions {
|
|
|
125
158
|
* Return both boundary probabilities for `(lower, higher]`. Use `probability()`
|
|
126
159
|
* for the combined range probability; absent boundaries are infinite sentinels.
|
|
127
160
|
*/
|
|
128
|
-
declare function rangePrice(options: RangePriceOptions): (tx: Transaction) =>
|
|
161
|
+
declare function rangePrice(options: RangePriceOptions): (tx: Transaction) => _mysten_sui_transactions170.TransactionResult;
|
|
129
162
|
interface LowerUpArguments {
|
|
130
163
|
price: TransactionArgument;
|
|
131
164
|
}
|
|
@@ -136,7 +169,7 @@ interface LowerUpOptions {
|
|
|
136
169
|
predictPackageId?: string;
|
|
137
170
|
};
|
|
138
171
|
}
|
|
139
|
-
declare function lowerUp(options: LowerUpOptions): (tx: Transaction) =>
|
|
172
|
+
declare function lowerUp(options: LowerUpOptions): (tx: Transaction) => _mysten_sui_transactions170.TransactionResult;
|
|
140
173
|
interface HigherUpArguments {
|
|
141
174
|
price: TransactionArgument;
|
|
142
175
|
}
|
|
@@ -147,7 +180,7 @@ interface HigherUpOptions {
|
|
|
147
180
|
predictPackageId?: string;
|
|
148
181
|
};
|
|
149
182
|
}
|
|
150
|
-
declare function higherUp(options: HigherUpOptions): (tx: Transaction) =>
|
|
183
|
+
declare function higherUp(options: HigherUpOptions): (tx: Transaction) => _mysten_sui_transactions170.TransactionResult;
|
|
151
184
|
interface ProbabilityArguments {
|
|
152
185
|
price: TransactionArgument;
|
|
153
186
|
}
|
|
@@ -162,7 +195,7 @@ interface ProbabilityOptions {
|
|
|
162
195
|
* Return the combined probability, floored at zero if approximated boundary prices
|
|
163
196
|
* invert.
|
|
164
197
|
*/
|
|
165
|
-
declare function probability(options: ProbabilityOptions): (tx: Transaction) =>
|
|
198
|
+
declare function probability(options: ProbabilityOptions): (tx: Transaction) => _mysten_sui_transactions170.TransactionResult;
|
|
166
199
|
//#endregion
|
|
167
200
|
export { pricing_d_exports };
|
|
168
201
|
//# sourceMappingURL=pricing.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pricing.d.mts","names":[],"sources":["../../../src/contracts/deepbook_predict/pricing.ts"],"mappings":";;;;;;;;;
|
|
1
|
+
{"version":3,"file":"pricing.d.mts","names":[],"sources":["../../../src/contracts/deepbook_predict/pricing.ts"],"mappings":";;;;;;;;;cAiCa,WAAA,EAAW,UAAA;;;AAAxB;;kBAyBE,iBAAA,CAAA,OAAA,yBAAA;;;;;;;;;;;;;;;;;EAzBsB;;;;;;;;cA0BX,UAAA,EAAU,UAAA;sFAYrB,iBAAA,CAAA,OAAA;;;;;;;;;;;;;cACW,YAAA,EAAY,UAAA;;;;;;;;;;;;;;;;;;;;;;cAYZ,MAAA,EAAM,UAAA;;;;IAzBI;;;;;;;;;;;;;;;;;;;;;;;AAavB;;;;;;cAoCa,UAAA,EAAU,UAAA;YAMrB,iBAAA,CAAA,OAAA;;;cACW,MAAA,EAAM,UAAA;;eASjB,iBAAA,CAAA,OAAA;;;;;;;;;;;;;;UACe,gBAAA;EAChB,MAAA,EAAQ,mBAAA;EACR,MAAA,EAAQ,mBAAA;AAAA;AAAA,UAEQ,cAAA;EAChB,OAAA;EACA,SAAA,EAAW,gBAAA,IAAoB,MAAA,EAAQ,mBAAA,EAAqB,MAAA,EAAQ,mBAAA;EACpE,MAAA;IACC,gBAAA;EAAA;AAAA;;;;;iBAOc,OAAA,CAAQ,OAAA,EAAS,cAAA,IAKxB,EAAA,EAAI,WAAA,KAAW,2BAAA,CAAA,iBAAA;AAAA,UAQP,mBAAA;EAChB,MAAA,EAAQ,mBAAA;EACR,KAAA,EAAO,mBAAA;EACP,MAAA,EAAQ,mBAAA;AAAA;AAAA,UAEQ,iBAAA;EAChB,OAAA;EACA,SAAA,EACG,mBAAA,IACC,MAAA,EAAQ,mBAAA,EAAqB,KAAA,EAAO,mBAAA,EAAqB,MAAA,EAAQ,mBAAA;EACrE,MAAA;IACC,gBAAA;EAAA;AAAA;;;;;iBAOc,UAAA,CAAW,OAAA,EAAS,iBAAA,IAK3B,EAAA,EAAI,WAAA,KAAW,2BAAA,CAAA,iBAAA;AAAA,UAQP,gBAAA;EAChB,KAAA,EAAO,mBAAA;AAAA;AAAA,UAES,cAAA;EAChB,OAAA;EACA,SAAA,EAAW,gBAAA,IAAoB,KAAA,EAAO,mBAAA;EACtC,MAAA;IACC,gBAAA;EAAA;AAAA;AAAA,iBAGc,OAAA,CAAQ,OAAA,EAAS,cAAA,IAKxB,EAAA,EAAI,WAAA,KAAW,2BAAA,CAAA,iBAAA;AAAA,UAQP,iBAAA;EAChB,KAAA,EAAO,mBAAA;AAAA;AAAA,UAES,eAAA;EAChB,OAAA;EACA,SAAA,EAAW,iBAAA,IAAqB,KAAA,EAAO,mBAAA;EACvC,MAAA;IACC,gBAAA;EAAA;AAAA;AAAA,iBAGc,QAAA,CAAS,OAAA,EAAS,eAAA,IAKzB,EAAA,EAAI,WAAA,KAAW,2BAAA,CAAA,iBAAA;AAAA,UAQP,oBAAA;EAChB,KAAA,EAAO,mBAAA;AAAA;AAAA,UAES,kBAAA;EAChB,OAAA;EACA,SAAA,EAAW,oBAAA,IAAwB,KAAA,EAAO,mBAAA;EAC1C,MAAA;IACC,gBAAA;EAAA;AAAA;;;;;iBAOc,WAAA,CAAY,OAAA,EAAS,kBAAA,IAK5B,EAAA,EAAI,WAAA,KAAW,2BAAA,CAAA,iBAAA"}
|
|
@@ -17,8 +17,18 @@ import { bcs } from "@mysten/sui/bcs";
|
|
|
17
17
|
* an exact source-timestamp spot from Propbook's bounded recent history. The live
|
|
18
18
|
* forward comes from one of two admin-selected sources
|
|
19
19
|
* (`PricingConfig.use_pyth_spot_for_forward`): a fresh positive Pyth spot carrying
|
|
20
|
-
* the Block Scholes basis, or the Block Scholes forward directly.
|
|
21
|
-
*
|
|
20
|
+
* the Block Scholes basis, or the Block Scholes forward directly. A load falls
|
|
21
|
+
* back to the Block Scholes forward when the selected Pyth spot is stale or
|
|
22
|
+
* unavailable; valuation prices on that fallback, while every live trade (mints,
|
|
23
|
+
* mint quotes, and live redeems) refuses it through `assert_pyth_spot_fresh`.
|
|
24
|
+
* Exact-history reads do not apply live freshness policy.
|
|
25
|
+
*
|
|
26
|
+
* Delayed execution splits that read in two. `load_vol` validates the same live
|
|
27
|
+
* inputs when an order is admitted and returns the raw Block Scholes basis and SVI
|
|
28
|
+
* its receipt stores; `pricer_at` later rebuilds a `Pricer` from them at the
|
|
29
|
+
* order's committed Pyth tick. The `try_*` reads price exactly as `up_price` and
|
|
30
|
+
* `range_price` do, and return `none` where those abort, so an order-flow fill
|
|
31
|
+
* never aborts on a surface.
|
|
22
32
|
*/
|
|
23
33
|
var pricing_exports = /* @__PURE__ */ __exportAll({
|
|
24
34
|
FrozenPricer: () => FrozenPricer,
|
|
@@ -26,6 +36,7 @@ var pricing_exports = /* @__PURE__ */ __exportAll({
|
|
|
26
36
|
PricingSVI: () => PricingSVI,
|
|
27
37
|
RangePrice: () => RangePrice,
|
|
28
38
|
RawSVI: () => RawSVI,
|
|
39
|
+
VolSnapshot: () => VolSnapshot,
|
|
29
40
|
higherUp: () => higherUp,
|
|
30
41
|
lowerUp: () => lowerUp,
|
|
31
42
|
probability: () => probability,
|
|
@@ -33,6 +44,22 @@ var pricing_exports = /* @__PURE__ */ __exportAll({
|
|
|
33
44
|
upPrice: () => upPrice
|
|
34
45
|
});
|
|
35
46
|
const $moduleName = "@local-pkg/deepbook_predict::pricing";
|
|
47
|
+
const VolSnapshot = new MoveStruct({
|
|
48
|
+
name: `${$moduleName}::VolSnapshot`,
|
|
49
|
+
fields: {
|
|
50
|
+
pyth_source_id: bcs.u32(),
|
|
51
|
+
bs_spot: U64,
|
|
52
|
+
bs_forward: U64,
|
|
53
|
+
svi_a: I64,
|
|
54
|
+
svi_b: U64,
|
|
55
|
+
svi_rho: I64,
|
|
56
|
+
svi_m: I64,
|
|
57
|
+
svi_sigma: U64,
|
|
58
|
+
bs_spot_source_timestamp_ms: U64,
|
|
59
|
+
bs_forward_source_timestamp_ms: U64,
|
|
60
|
+
svi_source_timestamp_ms: U64
|
|
61
|
+
}
|
|
62
|
+
});
|
|
36
63
|
const PricingSVI = new MoveStruct({
|
|
37
64
|
name: `${$moduleName}::PricingSVI`,
|
|
38
65
|
fields: {
|
|
@@ -162,5 +189,5 @@ function probability(options) {
|
|
|
162
189
|
}
|
|
163
190
|
|
|
164
191
|
//#endregion
|
|
165
|
-
export { FrozenPricer, Pricer, RangePrice, pricing_exports, probability, rangePrice };
|
|
192
|
+
export { FrozenPricer, Pricer, RangePrice, VolSnapshot, pricing_exports, probability, rangePrice };
|
|
166
193
|
//# sourceMappingURL=pricing.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pricing.mjs","names":["i64.I64"],"sources":["../../../src/contracts/deepbook_predict/pricing.ts"],"sourcesContent":["/**************************************************************\n * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *\n **************************************************************/\n\n/**\n * Pricing for Predict markets.\n *\n * This module reads canonical Propbook Pyth and Block Scholes feeds and computes\n * SVI-adjusted digital probabilities. Live reads require fresh, pricing-safe Block\n * Scholes spot, forward, and SVI observations. The latest forward is paired with\n * an exact source-timestamp spot from Propbook's bounded recent history. The live\n * forward comes from one of two admin-selected sources\n * (`PricingConfig.use_pyth_spot_for_forward`): a fresh positive Pyth spot carrying\n * the Block Scholes basis, or the Block Scholes forward directly. Exact-history\n * reads do not apply live freshness policy.\n */\n\nimport { MoveStruct, normalizeMoveArguments } from '../utils/index.js';\nimport { U128, U64 } from '../../bcs/integers.js';\nimport { bcs } from '@mysten/sui/bcs';\nimport { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';\nimport * as i64 from './deps/fixed_math/i64.js';\nconst $moduleName = '@local-pkg/deepbook_predict::pricing';\nexport const PricingSVI = new MoveStruct({\n\tname: `${$moduleName}::PricingSVI`,\n\tfields: {\n\t\t/** Rolled-down SVI `a`, magnitude at 1e18, sign in `a_is_negative`. */\n\t\ta_magnitude: U128,\n\t\ta_is_negative: bcs.bool(),\n\t\t/** Rolled-down SVI `b`, at 1e18. */\n\t\tb: U128,\n\t\trho: i64.I64,\n\t\tm: i64.I64,\n\t\tsigma: U64,\n\t},\n});\nexport const FrozenPricer = new MoveStruct({\n\tname: `${$moduleName}::FrozenPricer`,\n\tfields: {\n\t\texpiry_market_id: bcs.Address,\n\t\tforward: U64,\n\t\tsvi: PricingSVI,\n\t\tpyth_spot_source_timestamp_ms: U64,\n\t\tblock_scholes_spot_source_timestamp_ms: U64,\n\t\tblock_scholes_forward_source_timestamp_ms: U64,\n\t\tblock_scholes_svi_source_timestamp_ms: U64,\n\t},\n});\nexport const Pricer = new MoveStruct({\n\tname: `${$moduleName}::Pricer`,\n\tfields: {\n\t\t/** Expiry market this snapshot was loaded for. */\n\t\texpiry_market_id: bcs.Address,\n\t\tforward: U64,\n\t\tsvi: PricingSVI,\n\t\t/**\n\t\t * Timestamps of the oracle observations this snapshot validated, as trade events\n\t\t * report them — each observation's own economic clock. Pyth carries its source\n\t\t * timestamp (`0` only when no usable normalized observation exists); Block Scholes\n\t\t * spot and forward carry the provider `value_timestamp`, and SVI carries the\n\t\t * provider `svi_timestamp`. Those timestamps are the clocks freshness gates and\n\t\t * SVI roll-down use.\n\t\t */\n\t\tpyth_spot_source_timestamp_ms: U64,\n\t\tblock_scholes_spot_source_timestamp_ms: U64,\n\t\tblock_scholes_forward_source_timestamp_ms: U64,\n\t\tblock_scholes_svi_source_timestamp_ms: U64,\n\t},\n});\nexport const RangePrice = new MoveStruct({\n\tname: `${$moduleName}::RangePrice`,\n\tfields: {\n\t\tlower_up: bcs.option(U64),\n\t\thigher_up: bcs.option(U64),\n\t},\n});\nexport const RawSVI = new MoveStruct({\n\tname: `${$moduleName}::RawSVI`,\n\tfields: {\n\t\ta: i64.I64,\n\t\tb: U64,\n\t\trho: i64.I64,\n\t\tm: i64.I64,\n\t\tsigma: U64,\n\t},\n});\nexport interface UpPriceArguments {\n\tpricer: TransactionArgument;\n\tstrike: TransactionArgument;\n}\nexport interface UpPriceOptions {\n\tpackage?: string;\n\targuments: UpPriceArguments | [pricer: TransactionArgument, strike: TransactionArgument];\n\tconfig?: {\n\t\tpredictPackageId?: string;\n\t};\n}\n/**\n * Return the current UP digital probability for a typed strike. Public PTB and\n * devInspect reads can compose it with a transaction-local `Pricer`.\n */\nexport function upPrice(options: UpPriceOptions) {\n\tconst packageAddress =\n\t\toptions.package ?? options.config?.predictPackageId ?? '@local-pkg/deepbook_predict';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['pricer', 'strike'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'pricing',\n\t\t\tfunction: 'up_price',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface RangePriceArguments {\n\tpricer: TransactionArgument;\n\tlower: TransactionArgument;\n\thigher: TransactionArgument;\n}\nexport interface RangePriceOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RangePriceArguments\n\t\t| [pricer: TransactionArgument, lower: TransactionArgument, higher: TransactionArgument];\n\tconfig?: {\n\t\tpredictPackageId?: string;\n\t};\n}\n/**\n * Return both boundary probabilities for `(lower, higher]`. Use `probability()`\n * for the combined range probability; absent boundaries are infinite sentinels.\n */\nexport function rangePrice(options: RangePriceOptions) {\n\tconst packageAddress =\n\t\toptions.package ?? options.config?.predictPackageId ?? '@local-pkg/deepbook_predict';\n\tconst argumentsTypes = [null, null, null] satisfies (string | null)[];\n\tconst parameterNames = ['pricer', 'lower', 'higher'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'pricing',\n\t\t\tfunction: 'range_price',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface LowerUpArguments {\n\tprice: TransactionArgument;\n}\nexport interface LowerUpOptions {\n\tpackage?: string;\n\targuments: LowerUpArguments | [price: TransactionArgument];\n\tconfig?: {\n\t\tpredictPackageId?: string;\n\t};\n}\nexport function lowerUp(options: LowerUpOptions) {\n\tconst packageAddress =\n\t\toptions.package ?? options.config?.predictPackageId ?? '@local-pkg/deepbook_predict';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['price'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'pricing',\n\t\t\tfunction: 'lower_up',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface HigherUpArguments {\n\tprice: TransactionArgument;\n}\nexport interface HigherUpOptions {\n\tpackage?: string;\n\targuments: HigherUpArguments | [price: TransactionArgument];\n\tconfig?: {\n\t\tpredictPackageId?: string;\n\t};\n}\nexport function higherUp(options: HigherUpOptions) {\n\tconst packageAddress =\n\t\toptions.package ?? options.config?.predictPackageId ?? '@local-pkg/deepbook_predict';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['price'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'pricing',\n\t\t\tfunction: 'higher_up',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface ProbabilityArguments {\n\tprice: TransactionArgument;\n}\nexport interface ProbabilityOptions {\n\tpackage?: string;\n\targuments: ProbabilityArguments | [price: TransactionArgument];\n\tconfig?: {\n\t\tpredictPackageId?: string;\n\t};\n}\n/**\n * Return the combined probability, floored at zero if approximated boundary prices\n * invert.\n */\nexport function probability(options: ProbabilityOptions) {\n\tconst packageAddress =\n\t\toptions.package ?? options.config?.predictPackageId ?? '@local-pkg/deepbook_predict';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['price'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'pricing',\n\t\t\tfunction: 'probability',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBA,MAAM,cAAc;AACpB,MAAa,aAAa,IAAI,WAAW;CACxC,MAAM,GAAG,YAAY;CACrB,QAAQ;EAEP,aAAa;EACb,eAAe,IAAI,MAAM;EAEzB,GAAG;EACH,KAAKA;EACL,GAAGA;EACH,OAAO;EACP;CACD,CAAC;AACF,MAAa,eAAe,IAAI,WAAW;CAC1C,MAAM,GAAG,YAAY;CACrB,QAAQ;EACP,kBAAkB,IAAI;EACtB,SAAS;EACT,KAAK;EACL,+BAA+B;EAC/B,wCAAwC;EACxC,2CAA2C;EAC3C,uCAAuC;EACvC;CACD,CAAC;AACF,MAAa,SAAS,IAAI,WAAW;CACpC,MAAM,GAAG,YAAY;CACrB,QAAQ;EAEP,kBAAkB,IAAI;EACtB,SAAS;EACT,KAAK;EASL,+BAA+B;EAC/B,wCAAwC;EACxC,2CAA2C;EAC3C,uCAAuC;EACvC;CACD,CAAC;AACF,MAAa,aAAa,IAAI,WAAW;CACxC,MAAM,GAAG,YAAY;CACrB,QAAQ;EACP,UAAU,IAAI,OAAO,IAAI;EACzB,WAAW,IAAI,OAAO,IAAI;EAC1B;CACD,CAAC;AACF,MAAa,SAAS,IAAI,WAAW;CACpC,MAAM,GAAG,YAAY;CACrB,QAAQ;EACP,GAAGA;EACH,GAAG;EACH,KAAKA;EACL,GAAGA;EACH,OAAO;EACP;CACD,CAAC;;;;;AAgBF,SAAgB,QAAQ,SAAyB;CAChD,MAAM,iBACL,QAAQ,WAAW,QAAQ,QAAQ,oBAAoB;CACxD,MAAM,iBAAiB,CAAC,MAAM,KAAK;CACnC,MAAM,iBAAiB,CAAC,UAAU,SAAS;AAC3C,SAAQ,OACP,GAAG,SAAS;EACX,SAAS;EACT,QAAQ;EACR,UAAU;EACV,WAAW,uBAAuB,QAAQ,WAAW,gBAAgB,eAAe;EACpF,CAAC;;;;;;AAoBJ,SAAgB,WAAW,SAA4B;CACtD,MAAM,iBACL,QAAQ,WAAW,QAAQ,QAAQ,oBAAoB;CACxD,MAAM,iBAAiB;EAAC;EAAM;EAAM;EAAK;CACzC,MAAM,iBAAiB;EAAC;EAAU;EAAS;EAAS;AACpD,SAAQ,OACP,GAAG,SAAS;EACX,SAAS;EACT,QAAQ;EACR,UAAU;EACV,WAAW,uBAAuB,QAAQ,WAAW,gBAAgB,eAAe;EACpF,CAAC;;AAYJ,SAAgB,QAAQ,SAAyB;CAChD,MAAM,iBACL,QAAQ,WAAW,QAAQ,QAAQ,oBAAoB;CACxD,MAAM,iBAAiB,CAAC,KAAK;CAC7B,MAAM,iBAAiB,CAAC,QAAQ;AAChC,SAAQ,OACP,GAAG,SAAS;EACX,SAAS;EACT,QAAQ;EACR,UAAU;EACV,WAAW,uBAAuB,QAAQ,WAAW,gBAAgB,eAAe;EACpF,CAAC;;AAYJ,SAAgB,SAAS,SAA0B;CAClD,MAAM,iBACL,QAAQ,WAAW,QAAQ,QAAQ,oBAAoB;CACxD,MAAM,iBAAiB,CAAC,KAAK;CAC7B,MAAM,iBAAiB,CAAC,QAAQ;AAChC,SAAQ,OACP,GAAG,SAAS;EACX,SAAS;EACT,QAAQ;EACR,UAAU;EACV,WAAW,uBAAuB,QAAQ,WAAW,gBAAgB,eAAe;EACpF,CAAC;;;;;;AAgBJ,SAAgB,YAAY,SAA6B;CACxD,MAAM,iBACL,QAAQ,WAAW,QAAQ,QAAQ,oBAAoB;CACxD,MAAM,iBAAiB,CAAC,KAAK;CAC7B,MAAM,iBAAiB,CAAC,QAAQ;AAChC,SAAQ,OACP,GAAG,SAAS;EACX,SAAS;EACT,QAAQ;EACR,UAAU;EACV,WAAW,uBAAuB,QAAQ,WAAW,gBAAgB,eAAe;EACpF,CAAC"}
|
|
1
|
+
{"version":3,"file":"pricing.mjs","names":["i64.I64"],"sources":["../../../src/contracts/deepbook_predict/pricing.ts"],"sourcesContent":["/**************************************************************\n * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *\n **************************************************************/\n\n/**\n * Pricing for Predict markets.\n *\n * This module reads canonical Propbook Pyth and Block Scholes feeds and computes\n * SVI-adjusted digital probabilities. Live reads require fresh, pricing-safe Block\n * Scholes spot, forward, and SVI observations. The latest forward is paired with\n * an exact source-timestamp spot from Propbook's bounded recent history. The live\n * forward comes from one of two admin-selected sources\n * (`PricingConfig.use_pyth_spot_for_forward`): a fresh positive Pyth spot carrying\n * the Block Scholes basis, or the Block Scholes forward directly. A load falls\n * back to the Block Scholes forward when the selected Pyth spot is stale or\n * unavailable; valuation prices on that fallback, while every live trade (mints,\n * mint quotes, and live redeems) refuses it through `assert_pyth_spot_fresh`.\n * Exact-history reads do not apply live freshness policy.\n *\n * Delayed execution splits that read in two. `load_vol` validates the same live\n * inputs when an order is admitted and returns the raw Block Scholes basis and SVI\n * its receipt stores; `pricer_at` later rebuilds a `Pricer` from them at the\n * order's committed Pyth tick. The `try_*` reads price exactly as `up_price` and\n * `range_price` do, and return `none` where those abort, so an order-flow fill\n * never aborts on a surface.\n */\n\nimport { MoveStruct, normalizeMoveArguments } from '../utils/index.js';\nimport { bcs } from '@mysten/sui/bcs';\nimport { U64, U128 } from '../../bcs/integers.js';\nimport { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';\nimport * as i64 from './deps/fixed_math/i64.js';\nconst $moduleName = '@local-pkg/deepbook_predict::pricing';\nexport const VolSnapshot = new MoveStruct({\n\tname: `${$moduleName}::VolSnapshot`,\n\tfields: {\n\t\t/**\n\t\t * Canonical Propbook Pyth source for the market's underlying; commit finds this\n\t\t * feed in each Lazer update.\n\t\t */\n\t\tpyth_source_id: bcs.u32(),\n\t\t/** The matched Block Scholes spot and forward, narrowed to Predict's width. */\n\t\tbs_spot: U64,\n\t\tbs_forward: U64,\n\t\t/** Raw SVI parameters before roll-down, at 1e9. */\n\t\tsvi_a: i64.I64,\n\t\tsvi_b: U64,\n\t\tsvi_rho: i64.I64,\n\t\tsvi_m: i64.I64,\n\t\tsvi_sigma: U64,\n\t\t/**\n\t\t * Provider source timestamps of the three reads. The SVI one is also the roll-down\n\t\t * anchor.\n\t\t */\n\t\tbs_spot_source_timestamp_ms: U64,\n\t\tbs_forward_source_timestamp_ms: U64,\n\t\tsvi_source_timestamp_ms: U64,\n\t},\n});\nexport const PricingSVI = new MoveStruct({\n\tname: `${$moduleName}::PricingSVI`,\n\tfields: {\n\t\t/** Rolled-down SVI `a`, magnitude at 1e18, sign in `a_is_negative`. */\n\t\ta_magnitude: U128,\n\t\ta_is_negative: bcs.bool(),\n\t\t/** Rolled-down SVI `b`, at 1e18. */\n\t\tb: U128,\n\t\trho: i64.I64,\n\t\tm: i64.I64,\n\t\tsigma: U64,\n\t},\n});\nexport const FrozenPricer = new MoveStruct({\n\tname: `${$moduleName}::FrozenPricer`,\n\tfields: {\n\t\texpiry_market_id: bcs.Address,\n\t\tforward: U64,\n\t\tsvi: PricingSVI,\n\t\tpyth_spot_source_timestamp_ms: U64,\n\t\tblock_scholes_spot_source_timestamp_ms: U64,\n\t\tblock_scholes_forward_source_timestamp_ms: U64,\n\t\tblock_scholes_svi_source_timestamp_ms: U64,\n\t},\n});\nexport const Pricer = new MoveStruct({\n\tname: `${$moduleName}::Pricer`,\n\tfields: {\n\t\t/** Expiry market this snapshot was loaded for. */\n\t\texpiry_market_id: bcs.Address,\n\t\tforward: U64,\n\t\tsvi: PricingSVI,\n\t\t/**\n\t\t * Timestamps of the oracle observations this snapshot validated, as trade events\n\t\t * report them — each observation's own economic clock. Pyth carries its source\n\t\t * timestamp (`0` only when no usable normalized observation exists; a `pricer_at`\n\t\t * Pricer carries the committed update's generation time); Block Scholes spot and\n\t\t * forward carry the provider `value_timestamp`, and SVI carries the provider\n\t\t * `svi_timestamp`. Those timestamps are the clocks freshness gates and SVI\n\t\t * roll-down use. The Pyth timestamp, including its `0` sentinel, is also what\n\t\t * `assert_pyth_spot_fresh` gates live trades on, so it must stay the value the\n\t\t * load's forward selection read.\n\t\t */\n\t\tpyth_spot_source_timestamp_ms: U64,\n\t\tblock_scholes_spot_source_timestamp_ms: U64,\n\t\tblock_scholes_forward_source_timestamp_ms: U64,\n\t\tblock_scholes_svi_source_timestamp_ms: U64,\n\t},\n});\nexport const RangePrice = new MoveStruct({\n\tname: `${$moduleName}::RangePrice`,\n\tfields: {\n\t\tlower_up: bcs.option(U64),\n\t\thigher_up: bcs.option(U64),\n\t},\n});\nexport const RawSVI = new MoveStruct({\n\tname: `${$moduleName}::RawSVI`,\n\tfields: {\n\t\ta: i64.I64,\n\t\tb: U64,\n\t\trho: i64.I64,\n\t\tm: i64.I64,\n\t\tsigma: U64,\n\t},\n});\nexport interface UpPriceArguments {\n\tpricer: TransactionArgument;\n\tstrike: TransactionArgument;\n}\nexport interface UpPriceOptions {\n\tpackage?: string;\n\targuments: UpPriceArguments | [pricer: TransactionArgument, strike: TransactionArgument];\n\tconfig?: {\n\t\tpredictPackageId?: string;\n\t};\n}\n/**\n * Return the current UP digital probability for a typed strike. Public PTB and\n * devInspect reads can compose it with a transaction-local `Pricer`.\n */\nexport function upPrice(options: UpPriceOptions) {\n\tconst packageAddress =\n\t\toptions.package ?? options.config?.predictPackageId ?? '@local-pkg/deepbook_predict';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['pricer', 'strike'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'pricing',\n\t\t\tfunction: 'up_price',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface RangePriceArguments {\n\tpricer: TransactionArgument;\n\tlower: TransactionArgument;\n\thigher: TransactionArgument;\n}\nexport interface RangePriceOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RangePriceArguments\n\t\t| [pricer: TransactionArgument, lower: TransactionArgument, higher: TransactionArgument];\n\tconfig?: {\n\t\tpredictPackageId?: string;\n\t};\n}\n/**\n * Return both boundary probabilities for `(lower, higher]`. Use `probability()`\n * for the combined range probability; absent boundaries are infinite sentinels.\n */\nexport function rangePrice(options: RangePriceOptions) {\n\tconst packageAddress =\n\t\toptions.package ?? options.config?.predictPackageId ?? '@local-pkg/deepbook_predict';\n\tconst argumentsTypes = [null, null, null] satisfies (string | null)[];\n\tconst parameterNames = ['pricer', 'lower', 'higher'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'pricing',\n\t\t\tfunction: 'range_price',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface LowerUpArguments {\n\tprice: TransactionArgument;\n}\nexport interface LowerUpOptions {\n\tpackage?: string;\n\targuments: LowerUpArguments | [price: TransactionArgument];\n\tconfig?: {\n\t\tpredictPackageId?: string;\n\t};\n}\nexport function lowerUp(options: LowerUpOptions) {\n\tconst packageAddress =\n\t\toptions.package ?? options.config?.predictPackageId ?? '@local-pkg/deepbook_predict';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['price'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'pricing',\n\t\t\tfunction: 'lower_up',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface HigherUpArguments {\n\tprice: TransactionArgument;\n}\nexport interface HigherUpOptions {\n\tpackage?: string;\n\targuments: HigherUpArguments | [price: TransactionArgument];\n\tconfig?: {\n\t\tpredictPackageId?: string;\n\t};\n}\nexport function higherUp(options: HigherUpOptions) {\n\tconst packageAddress =\n\t\toptions.package ?? options.config?.predictPackageId ?? '@local-pkg/deepbook_predict';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['price'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'pricing',\n\t\t\tfunction: 'higher_up',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface ProbabilityArguments {\n\tprice: TransactionArgument;\n}\nexport interface ProbabilityOptions {\n\tpackage?: string;\n\targuments: ProbabilityArguments | [price: TransactionArgument];\n\tconfig?: {\n\t\tpredictPackageId?: string;\n\t};\n}\n/**\n * Return the combined probability, floored at zero if approximated boundary prices\n * invert.\n */\nexport function probability(options: ProbabilityOptions) {\n\tconst packageAddress =\n\t\toptions.package ?? options.config?.predictPackageId ?? '@local-pkg/deepbook_predict';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['price'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'pricing',\n\t\t\tfunction: 'probability',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,MAAM,cAAc;AACpB,MAAa,cAAc,IAAI,WAAW;CACzC,MAAM,GAAG,YAAY;CACrB,QAAQ;EAKP,gBAAgB,IAAI,KAAK;EAEzB,SAAS;EACT,YAAY;EAEZ,OAAOA;EACP,OAAO;EACP,SAASA;EACT,OAAOA;EACP,WAAW;EAKX,6BAA6B;EAC7B,gCAAgC;EAChC,yBAAyB;EACzB;CACD,CAAC;AACF,MAAa,aAAa,IAAI,WAAW;CACxC,MAAM,GAAG,YAAY;CACrB,QAAQ;EAEP,aAAa;EACb,eAAe,IAAI,MAAM;EAEzB,GAAG;EACH,KAAKA;EACL,GAAGA;EACH,OAAO;EACP;CACD,CAAC;AACF,MAAa,eAAe,IAAI,WAAW;CAC1C,MAAM,GAAG,YAAY;CACrB,QAAQ;EACP,kBAAkB,IAAI;EACtB,SAAS;EACT,KAAK;EACL,+BAA+B;EAC/B,wCAAwC;EACxC,2CAA2C;EAC3C,uCAAuC;EACvC;CACD,CAAC;AACF,MAAa,SAAS,IAAI,WAAW;CACpC,MAAM,GAAG,YAAY;CACrB,QAAQ;EAEP,kBAAkB,IAAI;EACtB,SAAS;EACT,KAAK;EAYL,+BAA+B;EAC/B,wCAAwC;EACxC,2CAA2C;EAC3C,uCAAuC;EACvC;CACD,CAAC;AACF,MAAa,aAAa,IAAI,WAAW;CACxC,MAAM,GAAG,YAAY;CACrB,QAAQ;EACP,UAAU,IAAI,OAAO,IAAI;EACzB,WAAW,IAAI,OAAO,IAAI;EAC1B;CACD,CAAC;AACF,MAAa,SAAS,IAAI,WAAW;CACpC,MAAM,GAAG,YAAY;CACrB,QAAQ;EACP,GAAGA;EACH,GAAG;EACH,KAAKA;EACL,GAAGA;EACH,OAAO;EACP;CACD,CAAC;;;;;AAgBF,SAAgB,QAAQ,SAAyB;CAChD,MAAM,iBACL,QAAQ,WAAW,QAAQ,QAAQ,oBAAoB;CACxD,MAAM,iBAAiB,CAAC,MAAM,KAAK;CACnC,MAAM,iBAAiB,CAAC,UAAU,SAAS;AAC3C,SAAQ,OACP,GAAG,SAAS;EACX,SAAS;EACT,QAAQ;EACR,UAAU;EACV,WAAW,uBAAuB,QAAQ,WAAW,gBAAgB,eAAe;EACpF,CAAC;;;;;;AAoBJ,SAAgB,WAAW,SAA4B;CACtD,MAAM,iBACL,QAAQ,WAAW,QAAQ,QAAQ,oBAAoB;CACxD,MAAM,iBAAiB;EAAC;EAAM;EAAM;EAAK;CACzC,MAAM,iBAAiB;EAAC;EAAU;EAAS;EAAS;AACpD,SAAQ,OACP,GAAG,SAAS;EACX,SAAS;EACT,QAAQ;EACR,UAAU;EACV,WAAW,uBAAuB,QAAQ,WAAW,gBAAgB,eAAe;EACpF,CAAC;;AAYJ,SAAgB,QAAQ,SAAyB;CAChD,MAAM,iBACL,QAAQ,WAAW,QAAQ,QAAQ,oBAAoB;CACxD,MAAM,iBAAiB,CAAC,KAAK;CAC7B,MAAM,iBAAiB,CAAC,QAAQ;AAChC,SAAQ,OACP,GAAG,SAAS;EACX,SAAS;EACT,QAAQ;EACR,UAAU;EACV,WAAW,uBAAuB,QAAQ,WAAW,gBAAgB,eAAe;EACpF,CAAC;;AAYJ,SAAgB,SAAS,SAA0B;CAClD,MAAM,iBACL,QAAQ,WAAW,QAAQ,QAAQ,oBAAoB;CACxD,MAAM,iBAAiB,CAAC,KAAK;CAC7B,MAAM,iBAAiB,CAAC,QAAQ;AAChC,SAAQ,OACP,GAAG,SAAS;EACX,SAAS;EACT,QAAQ;EACR,UAAU;EACV,WAAW,uBAAuB,QAAQ,WAAW,gBAAgB,eAAe;EACpF,CAAC;;;;;;AAgBJ,SAAgB,YAAY,SAA6B;CACxD,MAAM,iBACL,QAAQ,WAAW,QAAQ,QAAQ,oBAAoB;CACxD,MAAM,iBAAiB,CAAC,KAAK;CAC7B,MAAM,iBAAiB,CAAC,QAAQ;AAChC,SAAQ,OACP,GAAG,SAAS;EACX,SAAS;EACT,QAAQ;EACR,UAAU;EACV,WAAW,uBAAuB,QAAQ,WAAW,gBAAgB,eAAe;EACpF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pricing_config.mjs","names":[],"sources":["../../../src/contracts/deepbook_predict/pricing_config.ts"],"sourcesContent":["/**************************************************************\n * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *\n **************************************************************/\n\n/**\n * Stored oracle source-selection and freshness config for Predict quotes.\n *\n * ProtocolConfig owns this mutable policy. Pricing reads it when resolving live\n * probabilities for mint and redeem flows.\n */\n\nimport { MoveStruct } from '../utils/index.js';\nimport { bcs } from '@mysten/sui/bcs';\nimport { U64 } from '../../bcs/integers.js';\nconst $moduleName = '@local-pkg/deepbook_predict::pricing_config';\nexport const PricingConfig = new MoveStruct({\n\tname: `${$moduleName}::PricingConfig`,\n\tfields: {\n\t\t/**\n\t\t * Selects which live-forward formula pricing uses. True carries the Block Scholes\n\t\t * basis on a fresh Pyth spot (`pyth_spot * bs_forward / bs_spot`); false uses the\n\t\t * Block Scholes forward directly and no Pyth spot, fresh or not, moves a quote.\n\t\t */\n\t\tuse_pyth_spot_for_forward: bcs.bool(),\n\t\t/**\n\t\t * Fixed wall-clock maximum age for Pyth spot; it does not vary with time to\n\t\t * expiry.\n\t\t */\n\t\tpyth_spot_freshness_ms: U64,\n\t\t/**\n\t\t * Fixed wall-clock maximum age for Block Scholes spot and forward; it does not\n\t\t * vary with time to expiry.\n\t\t */\n\t\tblock_scholes_price_freshness_ms: U64,\n\t\t/**\n\t\t * Fixed wall-clock maximum age for Block Scholes SVI parameters; it does not vary\n\t\t * with time to expiry.\n\t\t */\n\t\tblock_scholes_svi_freshness_ms: U64,\n\t},\n});\n"],"mappings":";;;;;;;;;;;;;;AAcA,MAAM,cAAc;AACpB,MAAa,gBAAgB,IAAI,WAAW;CAC3C,MAAM,GAAG,YAAY;CACrB,QAAQ;EAMP,2BAA2B,IAAI,MAAM;
|
|
1
|
+
{"version":3,"file":"pricing_config.mjs","names":[],"sources":["../../../src/contracts/deepbook_predict/pricing_config.ts"],"sourcesContent":["/**************************************************************\n * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *\n **************************************************************/\n\n/**\n * Stored oracle source-selection and freshness config for Predict quotes.\n *\n * ProtocolConfig owns this mutable policy. Pricing reads it when resolving live\n * probabilities for mint and redeem flows.\n */\n\nimport { MoveStruct } from '../utils/index.js';\nimport { bcs } from '@mysten/sui/bcs';\nimport { U64 } from '../../bcs/integers.js';\nconst $moduleName = '@local-pkg/deepbook_predict::pricing_config';\nexport const PricingConfig = new MoveStruct({\n\tname: `${$moduleName}::PricingConfig`,\n\tfields: {\n\t\t/**\n\t\t * Selects which live-forward formula pricing uses. True carries the Block Scholes\n\t\t * basis on a fresh Pyth spot (`pyth_spot * bs_forward / bs_spot`); false uses the\n\t\t * Block Scholes forward directly and no Pyth spot, fresh or not, moves a quote.\n\t\t */\n\t\tuse_pyth_spot_for_forward: bcs.bool(),\n\t\t/**\n\t\t * Fixed wall-clock maximum age for Pyth spot; it does not vary with time to\n\t\t * expiry. Past it, while `use_pyth_spot_for_forward` is set, a live load falls\n\t\t * back to the Block Scholes forward, which valuation prices on and every live\n\t\t * trade (mint, mint quote, live redeem) refuses.\n\t\t */\n\t\tpyth_spot_freshness_ms: U64,\n\t\t/**\n\t\t * Fixed wall-clock maximum age for Block Scholes spot and forward; it does not\n\t\t * vary with time to expiry.\n\t\t */\n\t\tblock_scholes_price_freshness_ms: U64,\n\t\t/**\n\t\t * Fixed wall-clock maximum age for Block Scholes SVI parameters; it does not vary\n\t\t * with time to expiry.\n\t\t */\n\t\tblock_scholes_svi_freshness_ms: U64,\n\t},\n});\n"],"mappings":";;;;;;;;;;;;;;AAcA,MAAM,cAAc;AACpB,MAAa,gBAAgB,IAAI,WAAW;CAC3C,MAAM,GAAG,YAAY;CACrB,QAAQ;EAMP,2BAA2B,IAAI,MAAM;EAOrC,wBAAwB;EAKxB,kCAAkC;EAKlC,gCAAgC;EAChC;CACD,CAAC"}
|