@polyester/sdk 0.11.0 → 0.12.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 +12 -0
- package/dist/gen/auth/v1/address_book_pb.d.ts +21 -0
- package/dist/gen/auth/v1/address_book_pb.d.ts.map +1 -1
- package/dist/gen/auth/v1/address_book_pb.js +1 -1
- package/dist/gen/auth/v1/address_book_pb.js.map +1 -1
- package/dist/gen/auth/v1/mfa_pb.d.ts +39 -3
- package/dist/gen/auth/v1/mfa_pb.d.ts.map +1 -1
- package/dist/gen/auth/v1/mfa_pb.js +1 -1
- package/dist/gen/auth/v1/mfa_pb.js.map +1 -1
- package/dist/gen/auth/v1/subaccounts_pb.d.ts +2 -1
- package/dist/gen/auth/v1/subaccounts_pb.d.ts.map +1 -1
- package/dist/gen/auth/v1/subaccounts_pb.js.map +1 -1
- package/dist/gen/chain/withdraw/v1/withdraw_pb.d.ts +3 -2
- package/dist/gen/chain/withdraw/v1/withdraw_pb.d.ts.map +1 -1
- package/dist/gen/chain/withdraw/v1/withdraw_pb.js.map +1 -1
- package/dist/gen/transfer/v1/internal_transfer_pb.d.ts +3 -0
- package/dist/gen/transfer/v1/internal_transfer_pb.d.ts.map +1 -1
- package/dist/gen/transfer/v1/internal_transfer_pb.js.map +1 -1
- package/dist/gen/triggers/v1/triggers_pb.d.ts +347 -5
- package/dist/gen/triggers/v1/triggers_pb.d.ts.map +1 -1
- package/dist/gen/triggers/v1/triggers_pb.js +307 -3
- package/dist/gen/triggers/v1/triggers_pb.js.map +1 -1
- package/dist/services/address-book/address-book.d.ts +3 -1
- package/dist/services/address-book/address-book.d.ts.map +1 -1
- package/dist/services/address-book/address-book.js +3 -1
- package/dist/services/address-book/address-book.js.map +1 -1
- package/dist/services/address-book/address-book.schemas.d.ts +6 -0
- package/dist/services/address-book/address-book.schemas.d.ts.map +1 -1
- package/dist/services/address-book/address-book.schemas.js +10 -5
- package/dist/services/address-book/address-book.schemas.js.map +1 -1
- package/dist/services/candles/candles.schemas.d.ts +10 -10
- package/dist/services/heatmap/heatmap.schemas.d.ts +9 -9
- package/dist/services/lifecycle/lifecycle.schemas.d.ts +42 -42
- package/dist/services/market-overview/market-overview.schemas.d.ts +3 -3
- package/dist/services/mfa/mfa.d.ts +2 -2
- package/dist/services/mfa/mfa.js +2 -2
- package/dist/services/mfa/mfa.js.map +1 -1
- package/dist/services/mfa/mfa.schemas.d.ts +132 -4
- package/dist/services/mfa/mfa.schemas.d.ts.map +1 -1
- package/dist/services/mfa/mfa.schemas.js +13 -7
- package/dist/services/mfa/mfa.schemas.js.map +1 -1
- package/dist/services/orders/orders-output.schemas.d.ts +6 -6
- package/dist/services/subaccounts/subaccounts.schemas.d.ts +1 -1
- package/dist/services/triggers/trigger-input.schemas.d.ts +2 -2
- package/dist/services/triggers/triggers-output.schemas.d.ts +365 -18
- package/dist/services/triggers/triggers-output.schemas.d.ts.map +1 -1
- package/dist/services/triggers/triggers-output.schemas.js +36 -4
- package/dist/services/triggers/triggers-output.schemas.js.map +1 -1
- package/dist/services/triggers/triggers.codecs.js +51 -1
- package/dist/services/triggers/triggers.codecs.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FeeAsset, SelfTradePreventionMode, Side, TriggerDirection, TriggerPriceSource } from "../../gen/orders/v1/orders_pb.js";
|
|
2
|
-
import { LadderDistribution, TriggerEventType, TriggerStatus, TriggerType } from "../../gen/triggers/v1/triggers_pb.js";
|
|
2
|
+
import { LadderDistribution, TriggerCancelReason, TriggerEventType, TriggerFailureReason, TriggerStatus, TriggerType } from "../../gen/triggers/v1/triggers_pb.js";
|
|
3
3
|
import { SdkScales } from "../../shared/decimal-surface.js";
|
|
4
4
|
import * as v from "valibot";
|
|
5
5
|
//#region src/services/triggers/triggers-output.schemas.d.ts
|
|
@@ -31,62 +31,62 @@ declare const CreateTriggerResultSchema: v.SchemaWithPipe<readonly [v.ObjectSche
|
|
|
31
31
|
type CreateTriggerResult = v.InferOutput<typeof CreateTriggerResultSchema>;
|
|
32
32
|
declare const CancelTriggerResultSchema: v.SchemaWithPipe<readonly [v.ObjectSchema<{
|
|
33
33
|
readonly triggerId: v.SchemaWithPipe<readonly [v.BigintSchema<undefined>, v.TransformAction<bigint, string>]>;
|
|
34
|
-
readonly status: v.SchemaWithPipe<readonly [v.EnumSchema<typeof TriggerStatus, undefined>, v.TransformAction<TriggerStatus, "unspecified" | "
|
|
34
|
+
readonly status: v.SchemaWithPipe<readonly [v.EnumSchema<typeof TriggerStatus, undefined>, v.TransformAction<TriggerStatus, "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused">]>;
|
|
35
35
|
readonly tsNs: v.BigintSchema<undefined>;
|
|
36
36
|
}, undefined>, v.TransformAction<{
|
|
37
37
|
triggerId: string;
|
|
38
|
-
status: "unspecified" | "
|
|
38
|
+
status: "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused";
|
|
39
39
|
tsNs: bigint;
|
|
40
40
|
}, {
|
|
41
41
|
ts: number;
|
|
42
42
|
tsNs: string;
|
|
43
43
|
triggerId: string;
|
|
44
|
-
status: "unspecified" | "
|
|
44
|
+
status: "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused";
|
|
45
45
|
}>]>;
|
|
46
46
|
type CancelTriggerResult = v.InferOutput<typeof CancelTriggerResultSchema>;
|
|
47
47
|
declare const ModifyTriggerResultSchema: v.SchemaWithPipe<readonly [v.ObjectSchema<{
|
|
48
48
|
readonly triggerId: v.SchemaWithPipe<readonly [v.BigintSchema<undefined>, v.TransformAction<bigint, string>]>;
|
|
49
|
-
readonly status: v.SchemaWithPipe<readonly [v.EnumSchema<typeof TriggerStatus, undefined>, v.TransformAction<TriggerStatus, "unspecified" | "
|
|
49
|
+
readonly status: v.SchemaWithPipe<readonly [v.EnumSchema<typeof TriggerStatus, undefined>, v.TransformAction<TriggerStatus, "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused">]>;
|
|
50
50
|
readonly tsNs: v.BigintSchema<undefined>;
|
|
51
51
|
}, undefined>, v.TransformAction<{
|
|
52
52
|
triggerId: string;
|
|
53
|
-
status: "unspecified" | "
|
|
53
|
+
status: "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused";
|
|
54
54
|
tsNs: bigint;
|
|
55
55
|
}, {
|
|
56
56
|
ts: number;
|
|
57
57
|
tsNs: string;
|
|
58
58
|
triggerId: string;
|
|
59
|
-
status: "unspecified" | "
|
|
59
|
+
status: "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused";
|
|
60
60
|
}>]>;
|
|
61
61
|
type ModifyTriggerResult = v.InferOutput<typeof ModifyTriggerResultSchema>;
|
|
62
62
|
declare const PauseTriggerResultSchema: v.SchemaWithPipe<readonly [v.ObjectSchema<{
|
|
63
63
|
readonly triggerId: v.SchemaWithPipe<readonly [v.BigintSchema<undefined>, v.TransformAction<bigint, string>]>;
|
|
64
|
-
readonly status: v.SchemaWithPipe<readonly [v.EnumSchema<typeof TriggerStatus, undefined>, v.TransformAction<TriggerStatus, "unspecified" | "
|
|
64
|
+
readonly status: v.SchemaWithPipe<readonly [v.EnumSchema<typeof TriggerStatus, undefined>, v.TransformAction<TriggerStatus, "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused">]>;
|
|
65
65
|
readonly tsNs: v.BigintSchema<undefined>;
|
|
66
66
|
}, undefined>, v.TransformAction<{
|
|
67
67
|
triggerId: string;
|
|
68
|
-
status: "unspecified" | "
|
|
68
|
+
status: "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused";
|
|
69
69
|
tsNs: bigint;
|
|
70
70
|
}, {
|
|
71
71
|
ts: number;
|
|
72
72
|
tsNs: string;
|
|
73
73
|
triggerId: string;
|
|
74
|
-
status: "unspecified" | "
|
|
74
|
+
status: "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused";
|
|
75
75
|
}>]>;
|
|
76
76
|
type PauseTriggerResult = v.InferOutput<typeof PauseTriggerResultSchema>;
|
|
77
77
|
declare const ResumeTriggerResultSchema: v.SchemaWithPipe<readonly [v.ObjectSchema<{
|
|
78
78
|
readonly triggerId: v.SchemaWithPipe<readonly [v.BigintSchema<undefined>, v.TransformAction<bigint, string>]>;
|
|
79
|
-
readonly status: v.SchemaWithPipe<readonly [v.EnumSchema<typeof TriggerStatus, undefined>, v.TransformAction<TriggerStatus, "unspecified" | "
|
|
79
|
+
readonly status: v.SchemaWithPipe<readonly [v.EnumSchema<typeof TriggerStatus, undefined>, v.TransformAction<TriggerStatus, "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused">]>;
|
|
80
80
|
readonly tsNs: v.BigintSchema<undefined>;
|
|
81
81
|
}, undefined>, v.TransformAction<{
|
|
82
82
|
triggerId: string;
|
|
83
|
-
status: "unspecified" | "
|
|
83
|
+
status: "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused";
|
|
84
84
|
tsNs: bigint;
|
|
85
85
|
}, {
|
|
86
86
|
ts: number;
|
|
87
87
|
tsNs: string;
|
|
88
88
|
triggerId: string;
|
|
89
|
-
status: "unspecified" | "
|
|
89
|
+
status: "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused";
|
|
90
90
|
}>]>;
|
|
91
91
|
type ResumeTriggerResult = v.InferOutput<typeof ResumeTriggerResultSchema>;
|
|
92
92
|
type StopDetailsOutput = {
|
|
@@ -273,6 +273,16 @@ declare function createTriggerSchema(scales: SdkScales): v.SchemaWithPipe<readon
|
|
|
273
273
|
readonly seconds: v.BigintSchema<undefined>;
|
|
274
274
|
readonly nanos: v.OptionalSchema<v.NumberSchema<undefined>, 0>;
|
|
275
275
|
}, undefined>, undefined>;
|
|
276
|
+
readonly terminalReason: v.VariantSchema<"case", [v.ObjectSchema<{
|
|
277
|
+
readonly case: v.LiteralSchema<"cancelReason", undefined>;
|
|
278
|
+
readonly value: v.EnumSchema<typeof TriggerCancelReason, undefined>;
|
|
279
|
+
}, undefined>, v.ObjectSchema<{
|
|
280
|
+
readonly case: v.LiteralSchema<"failureReason", undefined>;
|
|
281
|
+
readonly value: v.EnumSchema<typeof TriggerFailureReason, undefined>;
|
|
282
|
+
}, undefined>, v.ObjectSchema<{
|
|
283
|
+
readonly case: v.UndefinedSchema<undefined>;
|
|
284
|
+
readonly value: v.OptionalSchema<v.UndefinedSchema<undefined>, undefined>;
|
|
285
|
+
}, undefined>], undefined>;
|
|
276
286
|
readonly runtimeDetails: v.VariantSchema<"case", [v.ObjectSchema<{
|
|
277
287
|
readonly case: v.LiteralSchema<"stop", undefined>;
|
|
278
288
|
readonly value: v.ObjectSchema<{
|
|
@@ -460,6 +470,16 @@ declare function createTriggerSchema(scales: SdkScales): v.SchemaWithPipe<readon
|
|
|
460
470
|
seconds: bigint;
|
|
461
471
|
nanos: number;
|
|
462
472
|
} | undefined;
|
|
473
|
+
terminalReason: {
|
|
474
|
+
case: "cancelReason";
|
|
475
|
+
value: TriggerCancelReason;
|
|
476
|
+
} | {
|
|
477
|
+
case: "failureReason";
|
|
478
|
+
value: TriggerFailureReason;
|
|
479
|
+
} | {
|
|
480
|
+
case: undefined;
|
|
481
|
+
value?: undefined;
|
|
482
|
+
};
|
|
463
483
|
runtimeDetails: {
|
|
464
484
|
case: "stop";
|
|
465
485
|
value: {
|
|
@@ -502,10 +522,13 @@ declare function createTriggerSchema(scales: SdkScales): v.SchemaWithPipe<readon
|
|
|
502
522
|
value?: undefined;
|
|
503
523
|
};
|
|
504
524
|
}, {
|
|
525
|
+
runtimeDetails: TriggerDetailsOutput;
|
|
526
|
+
cancelReason: "unspecified" | "user_request" | "oco" | "parent_canceled_no_fill" | "missing_reason_code" | "internal_error";
|
|
527
|
+
failureReason: undefined;
|
|
505
528
|
triggerId: string;
|
|
506
529
|
subaccountId: string;
|
|
507
530
|
symbolId: number;
|
|
508
|
-
status: "unspecified" | "
|
|
531
|
+
status: "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused";
|
|
509
532
|
parentOrderId: string | undefined;
|
|
510
533
|
qty: string;
|
|
511
534
|
feeAsset: "unspecified" | "quote" | "base";
|
|
@@ -639,7 +662,288 @@ declare function createTriggerSchema(scales: SdkScales): v.SchemaWithPipe<readon
|
|
|
639
662
|
updatedTs: number | undefined;
|
|
640
663
|
armedTs: number | undefined;
|
|
641
664
|
completedTs: number | undefined;
|
|
665
|
+
} | {
|
|
642
666
|
runtimeDetails: TriggerDetailsOutput;
|
|
667
|
+
cancelReason: undefined;
|
|
668
|
+
failureReason: "unspecified" | "missing_reason_code" | "internal_error" | "unknown_symbol" | "pair_disabled" | "min_notional" | "tick_size" | "insufficient_funds" | "risk_limit" | "duplicate_client_id" | "market_halted" | "engine_busy" | "account_unknown" | "order_unknown" | "post_only_cross" | "reduce_only_blocked" | "price_band_violation" | "market_cap_violation" | "empty_book" | "fok_insufficient_liquidity" | "fee_asset_not_allowed" | "market_price_unavailable" | "stale_quote" | "min_quantity" | "step_size" | "invalid_sizing" | "max_quote_debit_too_small" | "fee_ceiling_exceeded" | "trigger_price_invalid" | "trigger_price_source_unsupported" | "trailing_distance_invalid" | "modification_requires_replace" | "order_already_terminal" | "conflict_idempotency_key_reuse" | "rate_limited" | "policy_spot_trade_deny" | "policy_market_deny" | "policy_max_notional" | "policy_max_open_orders" | "policy_trading_halted";
|
|
669
|
+
triggerId: string;
|
|
670
|
+
subaccountId: string;
|
|
671
|
+
symbolId: number;
|
|
672
|
+
status: "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused";
|
|
673
|
+
parentOrderId: string | undefined;
|
|
674
|
+
qty: string;
|
|
675
|
+
feeAsset: "unspecified" | "quote" | "base";
|
|
676
|
+
selfTradePreventionMode: "unspecified" | "expire_taker" | "expire_maker" | "expire_both";
|
|
677
|
+
configuration: {
|
|
678
|
+
type: "stop_loss" | "take_profit";
|
|
679
|
+
side: "unspecified" | "buy" | "sell";
|
|
680
|
+
triggerPrice: string;
|
|
681
|
+
execution: {
|
|
682
|
+
readonly type: "market_ioc";
|
|
683
|
+
readonly price?: undefined;
|
|
684
|
+
readonly postOnly?: undefined;
|
|
685
|
+
} | {
|
|
686
|
+
readonly type: "limit_gtc";
|
|
687
|
+
readonly price: string;
|
|
688
|
+
readonly postOnly: boolean;
|
|
689
|
+
} | {
|
|
690
|
+
readonly type: "limit_ioc";
|
|
691
|
+
readonly price: string;
|
|
692
|
+
readonly postOnly?: undefined;
|
|
693
|
+
} | {
|
|
694
|
+
readonly type: "limit_fok";
|
|
695
|
+
readonly price: string;
|
|
696
|
+
readonly postOnly?: undefined;
|
|
697
|
+
} | {
|
|
698
|
+
readonly type: "unspecified";
|
|
699
|
+
readonly price?: undefined;
|
|
700
|
+
readonly postOnly?: undefined;
|
|
701
|
+
};
|
|
702
|
+
trailingDistance?: undefined;
|
|
703
|
+
activationPrice?: undefined;
|
|
704
|
+
maxSlippage?: undefined;
|
|
705
|
+
durationMs?: undefined;
|
|
706
|
+
sliceIntervalMs?: undefined;
|
|
707
|
+
priceMin?: undefined;
|
|
708
|
+
priceMax?: undefined;
|
|
709
|
+
levels?: undefined;
|
|
710
|
+
readonly postOnly?: undefined;
|
|
711
|
+
} | {
|
|
712
|
+
type: "trailing_stop";
|
|
713
|
+
side: "unspecified" | "buy" | "sell";
|
|
714
|
+
trailingDistance: {
|
|
715
|
+
kind: "distance";
|
|
716
|
+
distance: string;
|
|
717
|
+
bps?: undefined;
|
|
718
|
+
} | {
|
|
719
|
+
kind: "bps";
|
|
720
|
+
bps: number;
|
|
721
|
+
distance?: undefined;
|
|
722
|
+
} | {
|
|
723
|
+
kind: "unspecified";
|
|
724
|
+
distance?: undefined;
|
|
725
|
+
bps?: undefined;
|
|
726
|
+
};
|
|
727
|
+
activationPrice: string | undefined;
|
|
728
|
+
maxSlippage: {
|
|
729
|
+
kind: "slippage";
|
|
730
|
+
slippage: string;
|
|
731
|
+
bps?: undefined;
|
|
732
|
+
} | {
|
|
733
|
+
kind: "bps";
|
|
734
|
+
bps: number;
|
|
735
|
+
slippage?: undefined;
|
|
736
|
+
} | {
|
|
737
|
+
kind: "none";
|
|
738
|
+
slippage?: undefined;
|
|
739
|
+
bps?: undefined;
|
|
740
|
+
};
|
|
741
|
+
triggerPrice?: undefined;
|
|
742
|
+
execution?: undefined;
|
|
743
|
+
durationMs?: undefined;
|
|
744
|
+
sliceIntervalMs?: undefined;
|
|
745
|
+
priceMin?: undefined;
|
|
746
|
+
priceMax?: undefined;
|
|
747
|
+
levels?: undefined;
|
|
748
|
+
readonly postOnly?: undefined;
|
|
749
|
+
} | {
|
|
750
|
+
type: "twap";
|
|
751
|
+
side: "unspecified" | "buy" | "sell";
|
|
752
|
+
durationMs: number;
|
|
753
|
+
sliceIntervalMs: number;
|
|
754
|
+
execution: {
|
|
755
|
+
readonly type: "market_ioc";
|
|
756
|
+
readonly price?: undefined;
|
|
757
|
+
} | {
|
|
758
|
+
readonly type: "limit_gtc";
|
|
759
|
+
readonly price: string;
|
|
760
|
+
} | {
|
|
761
|
+
readonly type: "unspecified";
|
|
762
|
+
readonly price?: undefined;
|
|
763
|
+
};
|
|
764
|
+
triggerPrice?: undefined;
|
|
765
|
+
trailingDistance?: undefined;
|
|
766
|
+
activationPrice?: undefined;
|
|
767
|
+
maxSlippage?: undefined;
|
|
768
|
+
priceMin?: undefined;
|
|
769
|
+
priceMax?: undefined;
|
|
770
|
+
levels?: undefined;
|
|
771
|
+
readonly postOnly?: undefined;
|
|
772
|
+
} | {
|
|
773
|
+
type: "ladder";
|
|
774
|
+
side: "unspecified" | "buy" | "sell";
|
|
775
|
+
priceMin: string;
|
|
776
|
+
priceMax: string;
|
|
777
|
+
levels: number;
|
|
778
|
+
postOnly: boolean;
|
|
779
|
+
triggerPrice?: undefined;
|
|
780
|
+
execution?: undefined;
|
|
781
|
+
trailingDistance?: undefined;
|
|
782
|
+
activationPrice?: undefined;
|
|
783
|
+
maxSlippage?: undefined;
|
|
784
|
+
durationMs?: undefined;
|
|
785
|
+
sliceIntervalMs?: undefined;
|
|
786
|
+
} | {
|
|
787
|
+
type: "unspecified";
|
|
788
|
+
side?: undefined;
|
|
789
|
+
triggerPrice?: undefined;
|
|
790
|
+
execution?: undefined;
|
|
791
|
+
trailingDistance?: undefined;
|
|
792
|
+
activationPrice?: undefined;
|
|
793
|
+
maxSlippage?: undefined;
|
|
794
|
+
durationMs?: undefined;
|
|
795
|
+
sliceIntervalMs?: undefined;
|
|
796
|
+
priceMin?: undefined;
|
|
797
|
+
priceMax?: undefined;
|
|
798
|
+
levels?: undefined;
|
|
799
|
+
readonly postOnly?: undefined;
|
|
800
|
+
};
|
|
801
|
+
clientTriggerId: string;
|
|
802
|
+
createdTs: number | undefined;
|
|
803
|
+
updatedTs: number | undefined;
|
|
804
|
+
armedTs: number | undefined;
|
|
805
|
+
completedTs: number | undefined;
|
|
806
|
+
} | {
|
|
807
|
+
runtimeDetails: TriggerDetailsOutput;
|
|
808
|
+
cancelReason: undefined;
|
|
809
|
+
failureReason: undefined;
|
|
810
|
+
triggerId: string;
|
|
811
|
+
subaccountId: string;
|
|
812
|
+
symbolId: number;
|
|
813
|
+
status: "unspecified" | "completed" | "failed" | "cancelled" | "created" | "armed" | "running" | "paused";
|
|
814
|
+
parentOrderId: string | undefined;
|
|
815
|
+
qty: string;
|
|
816
|
+
feeAsset: "unspecified" | "quote" | "base";
|
|
817
|
+
selfTradePreventionMode: "unspecified" | "expire_taker" | "expire_maker" | "expire_both";
|
|
818
|
+
configuration: {
|
|
819
|
+
type: "stop_loss" | "take_profit";
|
|
820
|
+
side: "unspecified" | "buy" | "sell";
|
|
821
|
+
triggerPrice: string;
|
|
822
|
+
execution: {
|
|
823
|
+
readonly type: "market_ioc";
|
|
824
|
+
readonly price?: undefined;
|
|
825
|
+
readonly postOnly?: undefined;
|
|
826
|
+
} | {
|
|
827
|
+
readonly type: "limit_gtc";
|
|
828
|
+
readonly price: string;
|
|
829
|
+
readonly postOnly: boolean;
|
|
830
|
+
} | {
|
|
831
|
+
readonly type: "limit_ioc";
|
|
832
|
+
readonly price: string;
|
|
833
|
+
readonly postOnly?: undefined;
|
|
834
|
+
} | {
|
|
835
|
+
readonly type: "limit_fok";
|
|
836
|
+
readonly price: string;
|
|
837
|
+
readonly postOnly?: undefined;
|
|
838
|
+
} | {
|
|
839
|
+
readonly type: "unspecified";
|
|
840
|
+
readonly price?: undefined;
|
|
841
|
+
readonly postOnly?: undefined;
|
|
842
|
+
};
|
|
843
|
+
trailingDistance?: undefined;
|
|
844
|
+
activationPrice?: undefined;
|
|
845
|
+
maxSlippage?: undefined;
|
|
846
|
+
durationMs?: undefined;
|
|
847
|
+
sliceIntervalMs?: undefined;
|
|
848
|
+
priceMin?: undefined;
|
|
849
|
+
priceMax?: undefined;
|
|
850
|
+
levels?: undefined;
|
|
851
|
+
readonly postOnly?: undefined;
|
|
852
|
+
} | {
|
|
853
|
+
type: "trailing_stop";
|
|
854
|
+
side: "unspecified" | "buy" | "sell";
|
|
855
|
+
trailingDistance: {
|
|
856
|
+
kind: "distance";
|
|
857
|
+
distance: string;
|
|
858
|
+
bps?: undefined;
|
|
859
|
+
} | {
|
|
860
|
+
kind: "bps";
|
|
861
|
+
bps: number;
|
|
862
|
+
distance?: undefined;
|
|
863
|
+
} | {
|
|
864
|
+
kind: "unspecified";
|
|
865
|
+
distance?: undefined;
|
|
866
|
+
bps?: undefined;
|
|
867
|
+
};
|
|
868
|
+
activationPrice: string | undefined;
|
|
869
|
+
maxSlippage: {
|
|
870
|
+
kind: "slippage";
|
|
871
|
+
slippage: string;
|
|
872
|
+
bps?: undefined;
|
|
873
|
+
} | {
|
|
874
|
+
kind: "bps";
|
|
875
|
+
bps: number;
|
|
876
|
+
slippage?: undefined;
|
|
877
|
+
} | {
|
|
878
|
+
kind: "none";
|
|
879
|
+
slippage?: undefined;
|
|
880
|
+
bps?: undefined;
|
|
881
|
+
};
|
|
882
|
+
triggerPrice?: undefined;
|
|
883
|
+
execution?: undefined;
|
|
884
|
+
durationMs?: undefined;
|
|
885
|
+
sliceIntervalMs?: undefined;
|
|
886
|
+
priceMin?: undefined;
|
|
887
|
+
priceMax?: undefined;
|
|
888
|
+
levels?: undefined;
|
|
889
|
+
readonly postOnly?: undefined;
|
|
890
|
+
} | {
|
|
891
|
+
type: "twap";
|
|
892
|
+
side: "unspecified" | "buy" | "sell";
|
|
893
|
+
durationMs: number;
|
|
894
|
+
sliceIntervalMs: number;
|
|
895
|
+
execution: {
|
|
896
|
+
readonly type: "market_ioc";
|
|
897
|
+
readonly price?: undefined;
|
|
898
|
+
} | {
|
|
899
|
+
readonly type: "limit_gtc";
|
|
900
|
+
readonly price: string;
|
|
901
|
+
} | {
|
|
902
|
+
readonly type: "unspecified";
|
|
903
|
+
readonly price?: undefined;
|
|
904
|
+
};
|
|
905
|
+
triggerPrice?: undefined;
|
|
906
|
+
trailingDistance?: undefined;
|
|
907
|
+
activationPrice?: undefined;
|
|
908
|
+
maxSlippage?: undefined;
|
|
909
|
+
priceMin?: undefined;
|
|
910
|
+
priceMax?: undefined;
|
|
911
|
+
levels?: undefined;
|
|
912
|
+
readonly postOnly?: undefined;
|
|
913
|
+
} | {
|
|
914
|
+
type: "ladder";
|
|
915
|
+
side: "unspecified" | "buy" | "sell";
|
|
916
|
+
priceMin: string;
|
|
917
|
+
priceMax: string;
|
|
918
|
+
levels: number;
|
|
919
|
+
postOnly: boolean;
|
|
920
|
+
triggerPrice?: undefined;
|
|
921
|
+
execution?: undefined;
|
|
922
|
+
trailingDistance?: undefined;
|
|
923
|
+
activationPrice?: undefined;
|
|
924
|
+
maxSlippage?: undefined;
|
|
925
|
+
durationMs?: undefined;
|
|
926
|
+
sliceIntervalMs?: undefined;
|
|
927
|
+
} | {
|
|
928
|
+
type: "unspecified";
|
|
929
|
+
side?: undefined;
|
|
930
|
+
triggerPrice?: undefined;
|
|
931
|
+
execution?: undefined;
|
|
932
|
+
trailingDistance?: undefined;
|
|
933
|
+
activationPrice?: undefined;
|
|
934
|
+
maxSlippage?: undefined;
|
|
935
|
+
durationMs?: undefined;
|
|
936
|
+
sliceIntervalMs?: undefined;
|
|
937
|
+
priceMin?: undefined;
|
|
938
|
+
priceMax?: undefined;
|
|
939
|
+
levels?: undefined;
|
|
940
|
+
readonly postOnly?: undefined;
|
|
941
|
+
};
|
|
942
|
+
clientTriggerId: string;
|
|
943
|
+
createdTs: number | undefined;
|
|
944
|
+
updatedTs: number | undefined;
|
|
945
|
+
armedTs: number | undefined;
|
|
946
|
+
completedTs: number | undefined;
|
|
643
947
|
}>]>;
|
|
644
948
|
/** A normalized standalone trigger record. */
|
|
645
949
|
type Trigger = v.InferOutput<ReturnType<typeof createTriggerSchema>>;
|
|
@@ -653,7 +957,16 @@ declare function createTriggerEventSchema(scales: SdkScales): v.SchemaWithPipe<r
|
|
|
653
957
|
readonly childSeq: v.NumberSchema<undefined>;
|
|
654
958
|
readonly childOrderId: v.BigintSchema<undefined>;
|
|
655
959
|
readonly firePriceTicks: v.OptionalSchema<v.BigintSchema<undefined>, undefined>;
|
|
656
|
-
readonly
|
|
960
|
+
readonly terminalReason: v.VariantSchema<"case", [v.ObjectSchema<{
|
|
961
|
+
readonly case: v.LiteralSchema<"cancelReason", undefined>;
|
|
962
|
+
readonly value: v.EnumSchema<typeof TriggerCancelReason, undefined>;
|
|
963
|
+
}, undefined>, v.ObjectSchema<{
|
|
964
|
+
readonly case: v.LiteralSchema<"failureReason", undefined>;
|
|
965
|
+
readonly value: v.EnumSchema<typeof TriggerFailureReason, undefined>;
|
|
966
|
+
}, undefined>, v.ObjectSchema<{
|
|
967
|
+
readonly case: v.UndefinedSchema<undefined>;
|
|
968
|
+
readonly value: v.OptionalSchema<v.UndefinedSchema<undefined>, undefined>;
|
|
969
|
+
}, undefined>], undefined>;
|
|
657
970
|
}, undefined>, v.TransformAction<{
|
|
658
971
|
triggerId: bigint;
|
|
659
972
|
subaccountId: bigint;
|
|
@@ -664,18 +977,52 @@ declare function createTriggerEventSchema(scales: SdkScales): v.SchemaWithPipe<r
|
|
|
664
977
|
childSeq: number;
|
|
665
978
|
childOrderId: bigint;
|
|
666
979
|
firePriceTicks?: bigint | undefined;
|
|
667
|
-
|
|
980
|
+
terminalReason: {
|
|
981
|
+
case: "cancelReason";
|
|
982
|
+
value: TriggerCancelReason;
|
|
983
|
+
} | {
|
|
984
|
+
case: "failureReason";
|
|
985
|
+
value: TriggerFailureReason;
|
|
986
|
+
} | {
|
|
987
|
+
case: undefined;
|
|
988
|
+
value?: undefined;
|
|
989
|
+
};
|
|
668
990
|
}, {
|
|
991
|
+
cancelReason: "unspecified" | "user_request" | "oco" | "parent_canceled_no_fill" | "missing_reason_code" | "internal_error";
|
|
992
|
+
failureReason: undefined;
|
|
993
|
+
triggerId: string;
|
|
994
|
+
subaccountId: string;
|
|
995
|
+
symbolId: number;
|
|
996
|
+
triggerType: "unspecified" | "twap" | "ladder" | "stop_loss" | "take_profit" | "trailing_stop";
|
|
997
|
+
eventType: "unspecified" | "failed" | "updated" | "fired" | "canceled";
|
|
998
|
+
ts: number;
|
|
999
|
+
childSeq: number;
|
|
1000
|
+
childOrderId: string | undefined;
|
|
1001
|
+
firePrice: string | undefined;
|
|
1002
|
+
} | {
|
|
1003
|
+
cancelReason: undefined;
|
|
1004
|
+
failureReason: "unspecified" | "missing_reason_code" | "internal_error" | "unknown_symbol" | "pair_disabled" | "min_notional" | "tick_size" | "insufficient_funds" | "risk_limit" | "duplicate_client_id" | "market_halted" | "engine_busy" | "account_unknown" | "order_unknown" | "post_only_cross" | "reduce_only_blocked" | "price_band_violation" | "market_cap_violation" | "empty_book" | "fok_insufficient_liquidity" | "fee_asset_not_allowed" | "market_price_unavailable" | "stale_quote" | "min_quantity" | "step_size" | "invalid_sizing" | "max_quote_debit_too_small" | "fee_ceiling_exceeded" | "trigger_price_invalid" | "trigger_price_source_unsupported" | "trailing_distance_invalid" | "modification_requires_replace" | "order_already_terminal" | "conflict_idempotency_key_reuse" | "rate_limited" | "policy_spot_trade_deny" | "policy_market_deny" | "policy_max_notional" | "policy_max_open_orders" | "policy_trading_halted";
|
|
1005
|
+
triggerId: string;
|
|
1006
|
+
subaccountId: string;
|
|
1007
|
+
symbolId: number;
|
|
1008
|
+
triggerType: "unspecified" | "twap" | "ladder" | "stop_loss" | "take_profit" | "trailing_stop";
|
|
1009
|
+
eventType: "unspecified" | "failed" | "updated" | "fired" | "canceled";
|
|
1010
|
+
ts: number;
|
|
1011
|
+
childSeq: number;
|
|
1012
|
+
childOrderId: string | undefined;
|
|
1013
|
+
firePrice: string | undefined;
|
|
1014
|
+
} | {
|
|
1015
|
+
cancelReason: undefined;
|
|
1016
|
+
failureReason: undefined;
|
|
669
1017
|
triggerId: string;
|
|
670
1018
|
subaccountId: string;
|
|
671
1019
|
symbolId: number;
|
|
672
1020
|
triggerType: "unspecified" | "twap" | "ladder" | "stop_loss" | "take_profit" | "trailing_stop";
|
|
673
|
-
eventType: "unspecified" | "
|
|
1021
|
+
eventType: "unspecified" | "failed" | "updated" | "fired" | "canceled";
|
|
674
1022
|
ts: number;
|
|
675
1023
|
childSeq: number;
|
|
676
1024
|
childOrderId: string | undefined;
|
|
677
1025
|
firePrice: string | undefined;
|
|
678
|
-
reason: string | undefined;
|
|
679
1026
|
}>]>;
|
|
680
1027
|
type TriggerEvent = v.InferOutput<ReturnType<typeof createTriggerEventSchema>>;
|
|
681
1028
|
type ListTriggerEventsResult = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"triggers-output.schemas.d.ts","names":[],"sources":["../../../src/services/triggers/triggers-output.schemas.ts"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"triggers-output.schemas.d.ts","names":[],"sources":["../../../src/services/triggers/triggers-output.schemas.ts"],"mappings":";;;;;KA4BK;KAEA;KAEA;cA2BQ,2BAAyB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;KAc1B,sBAAsB,EAAE,mBAAmB;cAE1C,2BAAyB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;KAE1B,sBAAsB,EAAE,mBAAmB;cAE1C,2BAAyB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;KAE1B,sBAAsB,EAAE,mBAAmB;cAE1C,0BAAwB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;KACzB,qBAAqB,EAAE,mBAAmB;cAEzC,2BAAyB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;KAC1B,sBAAsB,EAAE,mBAAmB;KA4S3C;EACR;EACA;EACA,oBAAoB;EACpB,kBAAkB;;KAGV;EACR;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,oBAAoB;EACpB,kBAAkB;;KAGV;EACR;EACA;EACA;EACA;EACA;;EAEA;;KAGQ;EACR;EACA;EACA;EACA;EACA,oBAAoB;;KAGZ,uBACN,oBACA,wBACA,oBACA;EACE;;;iBA0GQ,oBAAoB,QAAQ,YAAS,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAyDzC,UAAU,EAAE,YAAY,kBAAkB;iBAEtC,yBAAyB,QAAQ,YAAS,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA0C9C,eAAe,EAAE,YAAY,kBAAkB;KAE/C;EACR,QAAQ;EACR"}
|
|
@@ -6,8 +6,8 @@ import { BigIntStringSchema, OptionalTimestampMsSchema, PublicIdSchema, Timestam
|
|
|
6
6
|
import { SymbolIdInputSchema } from "../shared.js";
|
|
7
7
|
import { scaledToDecimalOutput } from "../../shared/decimal-surface.js";
|
|
8
8
|
import { FeeAssetCodec, OrderSideCodec, SelfTradePreventionModeCodec, TriggerPriceSourceCodec } from "../orders/order-enums.codecs.js";
|
|
9
|
-
import { LadderDistribution, TriggerEventType, TriggerStatus, TriggerType } from "../../gen/triggers/v1/triggers_pb.js";
|
|
10
|
-
import { LadderDistributionCodec, TriggerDirectionCodec, TriggerEventTypeCodec, TriggerStatusCodec, TriggerTypeCodec } from "./triggers.codecs.js";
|
|
9
|
+
import { LadderDistribution, TriggerCancelReason, TriggerEventType, TriggerFailureReason, TriggerStatus, TriggerType } from "../../gen/triggers/v1/triggers_pb.js";
|
|
10
|
+
import { LadderDistributionCodec, TriggerCancelReasonCodec, TriggerDirectionCodec, TriggerEventTypeCodec, TriggerFailureReasonCodec, TriggerStatusCodec, TriggerTypeCodec } from "./triggers.codecs.js";
|
|
11
11
|
import * as v from "valibot";
|
|
12
12
|
//#region src/services/triggers/triggers-output.schemas.ts
|
|
13
13
|
const TriggerResultStatusSchema = v.pipe(v.enum(TriggerStatus), v.transform((status) => requiredEnumLabel(TriggerStatusCodec.protoToOutput, status, "TriggerResultSchema", "status")));
|
|
@@ -216,6 +216,36 @@ function transformTriggerConfiguration(configuration, scales) {
|
|
|
216
216
|
default: return { type: "unspecified" };
|
|
217
217
|
}
|
|
218
218
|
}
|
|
219
|
+
const TerminalReasonRawSchema = v.variant("case", [
|
|
220
|
+
v.object({
|
|
221
|
+
case: v.literal("cancelReason"),
|
|
222
|
+
value: v.enum(TriggerCancelReason)
|
|
223
|
+
}),
|
|
224
|
+
v.object({
|
|
225
|
+
case: v.literal("failureReason"),
|
|
226
|
+
value: v.enum(TriggerFailureReason)
|
|
227
|
+
}),
|
|
228
|
+
v.object({
|
|
229
|
+
case: v.undefined(),
|
|
230
|
+
value: v.optional(v.undefined())
|
|
231
|
+
})
|
|
232
|
+
]);
|
|
233
|
+
function transformTerminalReason(reason) {
|
|
234
|
+
switch (reason.case) {
|
|
235
|
+
case "cancelReason": return {
|
|
236
|
+
cancelReason: requiredEnumLabel(TriggerCancelReasonCodec.protoToOutput, reason.value, "TerminalReasonSchema", "cancel reason"),
|
|
237
|
+
failureReason: void 0
|
|
238
|
+
};
|
|
239
|
+
case "failureReason": return {
|
|
240
|
+
cancelReason: void 0,
|
|
241
|
+
failureReason: requiredEnumLabel(TriggerFailureReasonCodec.protoToOutput, reason.value, "TerminalReasonSchema", "failure reason")
|
|
242
|
+
};
|
|
243
|
+
default: return {
|
|
244
|
+
cancelReason: void 0,
|
|
245
|
+
failureReason: void 0
|
|
246
|
+
};
|
|
247
|
+
}
|
|
248
|
+
}
|
|
219
249
|
const StopDetailsRawSchema = v.object({
|
|
220
250
|
triggerPriceTicks: v.bigint(),
|
|
221
251
|
triggerPriceSource: v.enum(TriggerPriceSource),
|
|
@@ -322,6 +352,7 @@ function createTriggerSchema(scales) {
|
|
|
322
352
|
updatedAt: v.optional(TimestampSchema),
|
|
323
353
|
armedAt: v.optional(TimestampSchema),
|
|
324
354
|
completedAt: v.optional(TimestampSchema),
|
|
355
|
+
terminalReason: TerminalReasonRawSchema,
|
|
325
356
|
runtimeDetails: TriggerDetailsRawSchema
|
|
326
357
|
}), v.transform((t) => ({
|
|
327
358
|
triggerId: formatId(t.triggerId),
|
|
@@ -338,6 +369,7 @@ function createTriggerSchema(scales) {
|
|
|
338
369
|
updatedTs: t.updatedAt ? tsObjToMs(t.updatedAt) : void 0,
|
|
339
370
|
armedTs: t.armedAt ? tsObjToMs(t.armedAt) : void 0,
|
|
340
371
|
completedTs: t.completedAt ? tsObjToMs(t.completedAt) : void 0,
|
|
372
|
+
...transformTerminalReason(t.terminalReason),
|
|
341
373
|
runtimeDetails: transformTriggerDetails(t.runtimeDetails, scales, t.symbolId)
|
|
342
374
|
})));
|
|
343
375
|
}
|
|
@@ -352,7 +384,7 @@ function createTriggerEventSchema(scales) {
|
|
|
352
384
|
childSeq: v.number(),
|
|
353
385
|
childOrderId: v.bigint(),
|
|
354
386
|
firePriceTicks: v.optional(v.bigint()),
|
|
355
|
-
|
|
387
|
+
terminalReason: TerminalReasonRawSchema
|
|
356
388
|
}), v.transform((e) => ({
|
|
357
389
|
triggerId: formatId(e.triggerId),
|
|
358
390
|
subaccountId: formatId(e.subaccountId),
|
|
@@ -363,7 +395,7 @@ function createTriggerEventSchema(scales) {
|
|
|
363
395
|
childSeq: e.childSeq,
|
|
364
396
|
childOrderId: e.childOrderId > 0n ? formatId(e.childOrderId) : void 0,
|
|
365
397
|
firePrice: e.firePriceTicks !== void 0 && e.firePriceTicks > 0n ? scaledToDecimalOutput(e.firePriceTicks, scales.price()) : void 0,
|
|
366
|
-
|
|
398
|
+
...transformTerminalReason(e.terminalReason)
|
|
367
399
|
})));
|
|
368
400
|
}
|
|
369
401
|
//#endregion
|