@triadxyz/triad-protocol 0.5.2-beta → 0.5.3-beta.devnet

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.
@@ -5,7 +5,7 @@
5
5
  * IDL can be found at `target/idl/triad_protocol.json`.
6
6
  */
7
7
  export type TriadProtocol = {
8
- address: 'TRDwq3BN4mP3m9KsuNUWSN6QDff93VKGSwE95Jbr9Ss';
8
+ address: '3ZmkveqMGGwf4coSRmJuYHCxaQjX1YXjbvM87v71J2P9';
9
9
  metadata: {
10
10
  name: 'triadProtocol';
11
11
  version: '0.1.4';
@@ -72,55 +72,6 @@ export type TriadProtocol = {
72
72
  ];
73
73
  returns: 'u64';
74
74
  },
75
- {
76
- name: 'closePosition';
77
- discriminator: [123, 134, 81, 0, 49, 68, 98, 98];
78
- accounts: [
79
- {
80
- name: 'signer';
81
- writable: true;
82
- signer: true;
83
- },
84
- {
85
- name: 'ticker';
86
- writable: true;
87
- },
88
- {
89
- name: 'vault';
90
- writable: true;
91
- },
92
- {
93
- name: 'userPosition';
94
- writable: true;
95
- },
96
- {
97
- name: 'vaultTokenAccount';
98
- writable: true;
99
- },
100
- {
101
- name: 'userTokenAccount';
102
- writable: true;
103
- },
104
- {
105
- name: 'systemProgram';
106
- address: '11111111111111111111111111111111';
107
- },
108
- {
109
- name: 'tokenProgram';
110
- address: 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA';
111
- }
112
- ];
113
- args: [
114
- {
115
- name: 'args';
116
- type: {
117
- defined: {
118
- name: 'closePositionArgs';
119
- };
120
- };
121
- }
122
- ];
123
- },
124
75
  {
125
76
  name: 'createTicker';
126
77
  discriminator: [32, 213, 147, 234, 14, 160, 57, 17];
@@ -271,60 +222,6 @@ export type TriadProtocol = {
271
222
  }
272
223
  ];
273
224
  },
274
- {
275
- name: 'createUserPosition';
276
- discriminator: [6, 137, 127, 227, 135, 241, 14, 109];
277
- accounts: [
278
- {
279
- name: 'signer';
280
- writable: true;
281
- signer: true;
282
- },
283
- {
284
- name: 'ticker';
285
- writable: true;
286
- },
287
- {
288
- name: 'userPosition';
289
- writable: true;
290
- pda: {
291
- seeds: [
292
- {
293
- kind: 'const';
294
- value: [
295
- 117,
296
- 115,
297
- 101,
298
- 114,
299
- 95,
300
- 112,
301
- 111,
302
- 115,
303
- 105,
304
- 116,
305
- 105,
306
- 111,
307
- 110
308
- ];
309
- },
310
- {
311
- kind: 'account';
312
- path: 'signer';
313
- },
314
- {
315
- kind: 'account';
316
- path: 'ticker';
317
- }
318
- ];
319
- };
320
- },
321
- {
322
- name: 'systemProgram';
323
- address: '11111111111111111111111111111111';
324
- }
325
- ];
326
- args: [];
327
- },
328
225
  {
329
226
  name: 'depositStakeRewards';
330
227
  discriminator: [59, 201, 204, 3, 44, 75, 231, 129];
@@ -387,8 +284,8 @@ export type TriadProtocol = {
387
284
  ];
388
285
  },
389
286
  {
390
- name: 'mineOre';
391
- discriminator: [170, 66, 140, 123, 15, 20, 224, 194];
287
+ name: 'openOrder';
288
+ discriminator: [206, 88, 88, 143, 38, 136, 50, 224];
392
289
  accounts: [
393
290
  {
394
291
  name: 'signer';
@@ -396,13 +293,13 @@ export type TriadProtocol = {
396
293
  signer: true;
397
294
  },
398
295
  {
399
- name: 'user';
296
+ name: 'userTrade';
400
297
  writable: true;
401
298
  pda: {
402
299
  seeds: [
403
300
  {
404
301
  kind: 'const';
405
- value: [117, 115, 101, 114];
302
+ value: [117, 115, 101, 114, 95, 116, 114, 97, 100, 101];
406
303
  },
407
304
  {
408
305
  kind: 'account';
@@ -412,160 +309,209 @@ export type TriadProtocol = {
412
309
  };
413
310
  },
414
311
  {
415
- name: 'proofInfo';
416
- writable: true;
417
- },
418
- {
419
- name: 'bus';
420
- writable: true;
421
- },
422
- {
423
- name: 'oreProgram';
424
- },
425
- {
426
- name: 'configProgram';
427
- },
428
- {
429
- name: 'sysvarHashesInfo';
430
- },
431
- {
432
- name: 'sysvarInstructionsInfo';
433
- },
434
- {
435
- name: 'systemProgram';
436
- address: '11111111111111111111111111111111';
437
- }
438
- ];
439
- args: [
440
- {
441
- name: 'args';
442
- type: {
443
- defined: {
444
- name: 'mineArgs';
445
- };
446
- };
447
- }
448
- ];
449
- },
450
- {
451
- name: 'openOre';
452
- discriminator: [120, 233, 125, 197, 12, 153, 25, 229];
453
- accounts: [
454
- {
455
- name: 'signer';
312
+ name: 'market';
456
313
  writable: true;
457
- signer: true;
458
314
  },
459
315
  {
460
- name: 'payer';
316
+ name: 'mint';
461
317
  writable: true;
462
- signer: true;
463
318
  },
464
319
  {
465
- name: 'user';
320
+ name: 'fromAta';
466
321
  writable: true;
467
322
  pda: {
468
323
  seeds: [
324
+ {
325
+ kind: 'account';
326
+ path: 'signer';
327
+ },
469
328
  {
470
329
  kind: 'const';
471
- value: [117, 115, 101, 114];
330
+ value: [
331
+ 6,
332
+ 221,
333
+ 246,
334
+ 225,
335
+ 215,
336
+ 101,
337
+ 161,
338
+ 147,
339
+ 217,
340
+ 203,
341
+ 225,
342
+ 70,
343
+ 206,
344
+ 235,
345
+ 121,
346
+ 172,
347
+ 28,
348
+ 180,
349
+ 133,
350
+ 237,
351
+ 95,
352
+ 91,
353
+ 55,
354
+ 145,
355
+ 58,
356
+ 140,
357
+ 245,
358
+ 133,
359
+ 126,
360
+ 255,
361
+ 0,
362
+ 169
363
+ ];
472
364
  },
473
365
  {
474
366
  kind: 'account';
475
- path: 'signer';
367
+ path: 'mint';
476
368
  }
477
369
  ];
370
+ program: {
371
+ kind: 'const';
372
+ value: [
373
+ 140,
374
+ 151,
375
+ 37,
376
+ 143,
377
+ 78,
378
+ 36,
379
+ 137,
380
+ 241,
381
+ 187,
382
+ 61,
383
+ 16,
384
+ 41,
385
+ 20,
386
+ 142,
387
+ 13,
388
+ 131,
389
+ 11,
390
+ 90,
391
+ 19,
392
+ 153,
393
+ 218,
394
+ 255,
395
+ 16,
396
+ 132,
397
+ 4,
398
+ 142,
399
+ 123,
400
+ 216,
401
+ 219,
402
+ 233,
403
+ 248,
404
+ 89
405
+ ];
406
+ };
478
407
  };
479
408
  },
480
409
  {
481
- name: 'minerInfo';
482
- writable: true;
483
- },
484
- {
485
- name: 'proofInfo';
486
- writable: true;
487
- },
488
- {
489
- name: 'oreProgram';
490
- },
491
- {
492
- name: 'sysvarHashesInfo';
493
- },
494
- {
495
- name: 'systemProgram';
496
- address: '11111111111111111111111111111111';
497
- }
498
- ];
499
- args: [];
500
- },
501
- {
502
- name: 'openPosition';
503
- discriminator: [135, 128, 47, 77, 15, 152, 240, 49];
504
- accounts: [
505
- {
506
- name: 'signer';
507
- writable: true;
508
- signer: true;
509
- },
510
- {
511
- name: 'ticker';
512
- writable: true;
513
- },
514
- {
515
- name: 'vault';
516
- writable: true;
517
- },
518
- {
519
- name: 'userPosition';
410
+ name: 'toAta';
520
411
  writable: true;
521
412
  },
522
413
  {
523
- name: 'vaultTokenAccount';
414
+ name: 'feeAta';
524
415
  writable: true;
525
416
  pda: {
526
417
  seeds: [
418
+ {
419
+ kind: 'account';
420
+ path: 'market.fee_authority';
421
+ account: 'market';
422
+ },
527
423
  {
528
424
  kind: 'const';
529
425
  value: [
530
- 118,
531
- 97,
532
- 117,
533
- 108,
534
- 116,
535
- 95,
536
- 116,
537
- 111,
538
- 107,
426
+ 6,
427
+ 221,
428
+ 246,
429
+ 225,
430
+ 215,
539
431
  101,
540
- 110,
432
+ 161,
433
+ 147,
434
+ 217,
435
+ 203,
436
+ 225,
437
+ 70,
438
+ 206,
439
+ 235,
440
+ 121,
441
+ 172,
442
+ 28,
443
+ 180,
444
+ 133,
445
+ 237,
541
446
  95,
542
- 97,
543
- 99,
544
- 99,
545
- 111,
546
- 117,
547
- 110,
548
- 116
447
+ 91,
448
+ 55,
449
+ 145,
450
+ 58,
451
+ 140,
452
+ 245,
453
+ 133,
454
+ 126,
455
+ 255,
456
+ 0,
457
+ 169
549
458
  ];
550
459
  },
551
460
  {
552
461
  kind: 'account';
553
- path: 'vault';
462
+ path: 'mint';
554
463
  }
555
464
  ];
465
+ program: {
466
+ kind: 'const';
467
+ value: [
468
+ 140,
469
+ 151,
470
+ 37,
471
+ 143,
472
+ 78,
473
+ 36,
474
+ 137,
475
+ 241,
476
+ 187,
477
+ 61,
478
+ 16,
479
+ 41,
480
+ 20,
481
+ 142,
482
+ 13,
483
+ 131,
484
+ 11,
485
+ 90,
486
+ 19,
487
+ 153,
488
+ 218,
489
+ 255,
490
+ 16,
491
+ 132,
492
+ 4,
493
+ 142,
494
+ 123,
495
+ 216,
496
+ 219,
497
+ 233,
498
+ 248,
499
+ 89
500
+ ];
501
+ };
556
502
  };
557
503
  },
558
504
  {
559
- name: 'userTokenAccount';
560
- writable: true;
505
+ name: 'tokenProgram';
506
+ address: 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb';
561
507
  },
562
508
  {
563
- name: 'systemProgram';
564
- address: '11111111111111111111111111111111';
509
+ name: 'associatedTokenProgram';
510
+ address: 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL';
565
511
  },
566
512
  {
567
- name: 'tokenProgram';
568
- address: 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA';
513
+ name: 'systemProgram';
514
+ address: '11111111111111111111111111111111';
569
515
  }
570
516
  ];
571
517
  args: [
@@ -573,7 +519,7 @@ export type TriadProtocol = {
573
519
  name: 'args';
574
520
  type: {
575
521
  defined: {
576
- name: 'openPositionArgs';
522
+ name: 'openOrderArgs';
577
523
  };
578
524
  };
579
525
  }
@@ -799,16 +745,11 @@ export type TriadProtocol = {
799
745
  address: '11111111111111111111111111111111';
800
746
  }
801
747
  ];
802
- args: [
803
- {
804
- name: 'boost';
805
- type: 'bool';
806
- }
807
- ];
748
+ args: [];
808
749
  },
809
750
  {
810
- name: 'updateStakeVaultStatus';
811
- discriminator: [71, 64, 188, 150, 86, 254, 221, 65];
751
+ name: 'withdrawStake';
752
+ discriminator: [153, 8, 22, 138, 105, 176, 87, 66];
812
753
  accounts: [
813
754
  {
814
755
  name: 'signer';
@@ -820,77 +761,23 @@ export type TriadProtocol = {
820
761
  writable: true;
821
762
  },
822
763
  {
823
- name: 'systemProgram';
824
- address: '11111111111111111111111111111111';
825
- }
826
- ];
827
- args: [
828
- {
829
- name: 'isLocked';
830
- type: 'bool';
831
- }
832
- ];
833
- },
834
- {
835
- name: 'updateTickerPrice';
836
- discriminator: [203, 166, 139, 83, 76, 144, 250, 29];
837
- accounts: [
838
- {
839
- name: 'signer';
764
+ name: 'user';
840
765
  writable: true;
841
- signer: true;
842
766
  },
843
767
  {
844
- name: 'ticker';
768
+ name: 'stake';
845
769
  writable: true;
846
770
  },
847
771
  {
848
- name: 'systemProgram';
849
- address: '11111111111111111111111111111111';
850
- }
851
- ];
852
- args: [
853
- {
854
- name: 'args';
855
- type: {
856
- defined: {
857
- name: 'updateTickerPriceArgs';
858
- };
859
- };
860
- }
861
- ];
862
- },
863
- {
864
- name: 'withdrawStake';
865
- discriminator: [153, 8, 22, 138, 105, 176, 87, 66];
866
- accounts: [
867
- {
868
- name: 'signer';
772
+ name: 'admin';
869
773
  writable: true;
870
- signer: true;
871
774
  },
872
775
  {
873
- name: 'stakeVault';
776
+ name: 'mint';
874
777
  writable: true;
875
778
  },
876
779
  {
877
- name: 'user';
878
- writable: true;
879
- },
880
- {
881
- name: 'stake';
882
- writable: true;
883
- },
884
- {
885
- name: 'admin';
886
- writable: true;
887
- },
888
- {
889
- name: 'mint';
890
- writable: true;
891
- },
892
- {
893
- name: 'fromAta';
780
+ name: 'fromAta';
894
781
  writable: true;
895
782
  },
896
783
  {
@@ -914,6 +801,10 @@ export type TriadProtocol = {
914
801
  }
915
802
  ];
916
803
  accounts: [
804
+ {
805
+ name: 'market';
806
+ discriminator: [219, 190, 213, 55, 0, 227, 198, 154];
807
+ },
917
808
  {
918
809
  name: 'stakeV2';
919
810
  discriminator: [207, 98, 130, 13, 118, 181, 238, 47];
@@ -931,8 +822,8 @@ export type TriadProtocol = {
931
822
  discriminator: [159, 117, 95, 227, 239, 151, 58, 236];
932
823
  },
933
824
  {
934
- name: 'userPosition';
935
- discriminator: [251, 248, 209, 245, 83, 234, 17, 27];
825
+ name: 'userTrade';
826
+ discriminator: [149, 190, 47, 218, 136, 9, 222, 222];
936
827
  },
937
828
  {
938
829
  name: 'vault';
@@ -941,16 +832,12 @@ export type TriadProtocol = {
941
832
  ];
942
833
  events: [
943
834
  {
944
- name: 'closePositionRecord';
945
- discriminator: [202, 208, 157, 166, 193, 229, 76, 5];
946
- },
947
- {
948
- name: 'openPositionRecord';
949
- discriminator: [118, 71, 105, 89, 222, 111, 56, 63];
835
+ name: 'orderUpdate';
836
+ discriminator: [97, 239, 148, 96, 83, 234, 245, 14];
950
837
  },
951
838
  {
952
- name: 'tickerPriceUpdateRecord';
953
- discriminator: [11, 38, 250, 234, 149, 218, 144, 15];
839
+ name: 'priceUpdate';
840
+ discriminator: [222, 51, 180, 226, 165, 188, 203, 54];
954
841
  }
955
842
  ];
956
843
  errors: [
@@ -1073,6 +960,56 @@ export type TriadProtocol = {
1073
960
  code: 6023;
1074
961
  name: 'noRewardsAvailable';
1075
962
  msg: 'No rewards available';
963
+ },
964
+ {
965
+ code: 6024;
966
+ name: 'invalidPrice';
967
+ msg: 'Invalid price';
968
+ },
969
+ {
970
+ code: 6025;
971
+ name: 'invalidOrderSize';
972
+ msg: 'Invalid order size';
973
+ },
974
+ {
975
+ code: 6026;
976
+ name: 'maxOpenOrdersReached';
977
+ msg: 'Maximum number of open orders reached';
978
+ },
979
+ {
980
+ code: 6027;
981
+ name: 'noAvailableOrderSlot';
982
+ msg: 'No available order slot';
983
+ },
984
+ {
985
+ code: 6028;
986
+ name: 'marketInactive';
987
+ msg: 'Market is inactive';
988
+ },
989
+ {
990
+ code: 6029;
991
+ name: 'invalidOrderType';
992
+ msg: 'Invalid order type';
993
+ },
994
+ {
995
+ code: 6030;
996
+ name: 'invalidOrderDirection';
997
+ msg: 'Invalid order direction';
998
+ },
999
+ {
1000
+ code: 6031;
1001
+ name: 'orderNotFound';
1002
+ msg: 'Order not found';
1003
+ },
1004
+ {
1005
+ code: 6032;
1006
+ name: 'invalidOrderStatus';
1007
+ msg: 'Invalid order status';
1008
+ },
1009
+ {
1010
+ code: 6033;
1011
+ name: 'arithmeticOverflow';
1012
+ msg: 'Arithmetic overflow';
1076
1013
  }
1077
1014
  ];
1078
1015
  types: [
@@ -1093,19 +1030,31 @@ export type TriadProtocol = {
1093
1030
  };
1094
1031
  },
1095
1032
  {
1096
- name: 'closePositionArgs';
1033
+ name: 'createTickerArgs';
1097
1034
  type: {
1098
1035
  kind: 'struct';
1099
1036
  fields: [
1100
1037
  {
1101
- name: 'positionIndex';
1102
- type: 'u8';
1038
+ name: 'name';
1039
+ type: 'string';
1040
+ }
1041
+ ];
1042
+ };
1043
+ },
1044
+ {
1045
+ name: 'createUserArgs';
1046
+ type: {
1047
+ kind: 'struct';
1048
+ fields: [
1049
+ {
1050
+ name: 'name';
1051
+ type: 'string';
1103
1052
  }
1104
1053
  ];
1105
1054
  };
1106
1055
  },
1107
1056
  {
1108
- name: 'closePositionRecord';
1057
+ name: 'depositStakeRewardsArgs';
1109
1058
  type: {
1110
1059
  kind: 'struct';
1111
1060
  fields: [
@@ -1114,172 +1063,437 @@ export type TriadProtocol = {
1114
1063
  type: 'u64';
1115
1064
  },
1116
1065
  {
1117
- name: 'ticker';
1066
+ name: 'stakeVault';
1067
+ type: 'string';
1068
+ }
1069
+ ];
1070
+ };
1071
+ },
1072
+ {
1073
+ name: 'market';
1074
+ type: {
1075
+ kind: 'struct';
1076
+ fields: [
1077
+ {
1078
+ name: 'bump';
1079
+ type: 'u8';
1080
+ },
1081
+ {
1082
+ name: 'authority';
1118
1083
  type: 'pubkey';
1119
1084
  },
1120
1085
  {
1121
- name: 'closePrice';
1086
+ name: 'marketId';
1087
+ docs: ['Unique identifier for the market'];
1122
1088
  type: 'u64';
1123
1089
  },
1124
1090
  {
1125
- name: 'ts';
1126
- type: 'i64';
1091
+ name: 'tickerName';
1092
+ docs: ['The event being predicted (e.g., "tJUP/TRD")'];
1093
+ type: 'string';
1127
1094
  },
1128
1095
  {
1129
- name: 'isLong';
1130
- type: 'bool';
1096
+ name: 'hypePrice';
1097
+ docs: [
1098
+ 'Current price for Hype outcome (0-1000000, representing 0 to 1 TRD)',
1099
+ '1000000 = 1 TRD, 500000 = 0.5 TRD, etc.'
1100
+ ];
1101
+ type: 'u64';
1102
+ },
1103
+ {
1104
+ name: 'flopPrice';
1105
+ docs: [
1106
+ 'Current price for Flop outcome (0-1000000, representing 0 to 1 TRD)'
1107
+ ];
1108
+ type: 'u64';
1109
+ },
1110
+ {
1111
+ name: 'hypeLiquidity';
1112
+ docs: ['Total liquidity for Hype (in TRD)'];
1113
+ type: 'u64';
1131
1114
  },
1132
1115
  {
1133
- name: 'pnl';
1116
+ name: 'flopLiquidity';
1117
+ docs: ['Total liquidity for Flop (in TRD)'];
1118
+ type: 'u64';
1119
+ },
1120
+ {
1121
+ name: 'totalHypeShares';
1122
+ docs: ['Total number of Hype shares issued'];
1123
+ type: 'u64';
1124
+ },
1125
+ {
1126
+ name: 'totalFlopShares';
1127
+ docs: ['Total number of Flop shares issued'];
1128
+ type: 'u64';
1129
+ },
1130
+ {
1131
+ name: 'totalVolume';
1132
+ docs: ['Total trading volume (in TRD)'];
1133
+ type: 'u64';
1134
+ },
1135
+ {
1136
+ name: 'vaultTokenAccount';
1137
+ docs: ['Vault token account of $TRD'];
1138
+ type: 'pubkey';
1139
+ },
1140
+ {
1141
+ name: 'mint';
1142
+ docs: ['Mint $TRD token'];
1143
+ type: 'pubkey';
1144
+ },
1145
+ {
1146
+ name: 'lastUpdateTs';
1147
+ docs: ['Timestamp of the last update'];
1134
1148
  type: 'i64';
1135
1149
  },
1136
1150
  {
1137
- name: 'user';
1151
+ name: 'openOrdersCount';
1152
+ docs: ['Total number of open orders in this market'];
1153
+ type: 'u64';
1154
+ },
1155
+ {
1156
+ name: 'nextOrderId';
1157
+ docs: ['Next available order ID'];
1158
+ type: 'u64';
1159
+ },
1160
+ {
1161
+ name: 'feeBps';
1162
+ docs: ['Fees applied to trades (in basis points, e.g., 300 = 3%)'];
1163
+ type: 'u16';
1164
+ },
1165
+ {
1166
+ name: 'feeAuthority';
1167
+ docs: ['Authority to receive fees'];
1138
1168
  type: 'pubkey';
1169
+ },
1170
+ {
1171
+ name: 'feeAta';
1172
+ docs: ['Token account of the fee token'];
1173
+ type: 'pubkey';
1174
+ },
1175
+ {
1176
+ name: 'isActive';
1177
+ docs: ['Whether the market is currently active for trading'];
1178
+ type: 'bool';
1179
+ },
1180
+ {
1181
+ name: 'vault';
1182
+ type: 'pubkey';
1183
+ },
1184
+ {
1185
+ name: 'isOfficial';
1186
+ type: 'bool';
1187
+ },
1188
+ {
1189
+ name: 'padding';
1190
+ type: {
1191
+ array: ['u8', 240];
1192
+ };
1139
1193
  }
1140
1194
  ];
1141
1195
  };
1142
1196
  },
1143
1197
  {
1144
- name: 'createTickerArgs';
1198
+ name: 'openOrderArgs';
1145
1199
  type: {
1146
1200
  kind: 'struct';
1147
1201
  fields: [
1148
1202
  {
1149
- name: 'name';
1150
- type: 'string';
1203
+ name: 'amount';
1204
+ docs: ['The amount of TRD to commit to this order'];
1205
+ type: 'u64';
1151
1206
  },
1152
1207
  {
1153
- name: 'protocolProgramId';
1154
- type: 'pubkey';
1208
+ name: 'direction';
1209
+ type: {
1210
+ defined: {
1211
+ name: 'orderDirection';
1212
+ };
1213
+ };
1214
+ },
1215
+ {
1216
+ name: 'orderType';
1217
+ type: {
1218
+ defined: {
1219
+ name: 'orderType';
1220
+ };
1221
+ };
1222
+ },
1223
+ {
1224
+ name: 'price';
1225
+ type: {
1226
+ option: 'u64';
1227
+ };
1228
+ },
1229
+ {
1230
+ name: 'comment';
1231
+ type: {
1232
+ option: {
1233
+ array: ['u8', 64];
1234
+ };
1235
+ };
1155
1236
  }
1156
1237
  ];
1157
1238
  };
1158
1239
  },
1159
1240
  {
1160
- name: 'createUserArgs';
1241
+ name: 'order';
1161
1242
  type: {
1162
1243
  kind: 'struct';
1163
1244
  fields: [
1164
1245
  {
1165
- name: 'name';
1166
- type: 'string';
1246
+ name: 'ts';
1247
+ type: 'i64';
1248
+ },
1249
+ {
1250
+ name: 'orderId';
1251
+ type: 'u64';
1252
+ },
1253
+ {
1254
+ name: 'marketId';
1255
+ type: 'u64';
1256
+ },
1257
+ {
1258
+ name: 'status';
1259
+ type: {
1260
+ defined: {
1261
+ name: 'orderStatus';
1262
+ };
1263
+ };
1264
+ },
1265
+ {
1266
+ name: 'price';
1267
+ docs: [
1268
+ 'The price of the order (in TRD)',
1269
+ 'precision: PRICE_PRECISION (e.g., 1_000_000 = 1 TRD)'
1270
+ ];
1271
+ type: 'u64';
1272
+ },
1273
+ {
1274
+ name: 'totalAmount';
1275
+ docs: [
1276
+ 'The total amount of TRD committed to this order',
1277
+ 'precision: QUOTE_PRECISION'
1278
+ ];
1279
+ type: 'u64';
1280
+ },
1281
+ {
1282
+ name: 'filledAmount';
1283
+ docs: [
1284
+ 'The amount of TRD that has been filled',
1285
+ 'precision: QUOTE_PRECISION'
1286
+ ];
1287
+ type: 'u64';
1288
+ },
1289
+ {
1290
+ name: 'totalShares';
1291
+ docs: ['The total number of shares to be purchased'];
1292
+ type: 'u64';
1293
+ },
1294
+ {
1295
+ name: 'filledShares';
1296
+ docs: ['The number of shares that have been filled'];
1297
+ type: 'u64';
1298
+ },
1299
+ {
1300
+ name: 'orderType';
1301
+ type: {
1302
+ defined: {
1303
+ name: 'orderType';
1304
+ };
1305
+ };
1306
+ },
1307
+ {
1308
+ name: 'direction';
1309
+ type: {
1310
+ defined: {
1311
+ name: 'orderDirection';
1312
+ };
1313
+ };
1314
+ },
1315
+ {
1316
+ name: 'settledPnl';
1317
+ docs: [
1318
+ 'The amount of pnl settled in this market since opening the position (in TRD)',
1319
+ 'precision: QUOTE_PRECISION'
1320
+ ];
1321
+ type: 'i64';
1322
+ },
1323
+ {
1324
+ name: 'padding';
1325
+ type: {
1326
+ array: ['u8', 16];
1327
+ };
1167
1328
  }
1168
1329
  ];
1169
1330
  };
1170
1331
  },
1171
1332
  {
1172
- name: 'depositStakeRewardsArgs';
1333
+ name: 'orderDirection';
1173
1334
  type: {
1174
- kind: 'struct';
1175
- fields: [
1335
+ kind: 'enum';
1336
+ variants: [
1176
1337
  {
1177
- name: 'amount';
1178
- type: 'u64';
1338
+ name: 'hype';
1179
1339
  },
1180
1340
  {
1181
- name: 'stakeVault';
1182
- type: 'string';
1341
+ name: 'flop';
1183
1342
  }
1184
1343
  ];
1185
1344
  };
1186
1345
  },
1187
1346
  {
1188
- name: 'mineArgs';
1347
+ name: 'orderStatus';
1189
1348
  type: {
1190
- kind: 'struct';
1191
- fields: [
1349
+ kind: 'enum';
1350
+ variants: [
1192
1351
  {
1193
- name: 'digest';
1194
- type: {
1195
- array: ['u8', 16];
1196
- };
1352
+ name: 'init';
1197
1353
  },
1198
1354
  {
1199
- name: 'nonce';
1200
- type: {
1201
- array: ['u8', 8];
1202
- };
1355
+ name: 'open';
1356
+ },
1357
+ {
1358
+ name: 'filled';
1359
+ },
1360
+ {
1361
+ name: 'canceled';
1362
+ },
1363
+ {
1364
+ name: 'closed';
1203
1365
  }
1204
1366
  ];
1205
1367
  };
1206
1368
  },
1207
1369
  {
1208
- name: 'openPositionArgs';
1370
+ name: 'orderType';
1209
1371
  type: {
1210
- kind: 'struct';
1211
- fields: [
1372
+ kind: 'enum';
1373
+ variants: [
1212
1374
  {
1213
- name: 'amount';
1214
- type: 'u64';
1375
+ name: 'limit';
1215
1376
  },
1216
1377
  {
1217
- name: 'isLong';
1218
- type: 'bool';
1378
+ name: 'market';
1219
1379
  }
1220
1380
  ];
1221
1381
  };
1222
1382
  },
1223
1383
  {
1224
- name: 'openPositionRecord';
1384
+ name: 'orderUpdate';
1225
1385
  type: {
1226
1386
  kind: 'struct';
1227
1387
  fields: [
1228
1388
  {
1229
- name: 'amount';
1389
+ name: 'user';
1390
+ type: 'pubkey';
1391
+ },
1392
+ {
1393
+ name: 'marketId';
1230
1394
  type: 'u64';
1231
1395
  },
1232
1396
  {
1233
- name: 'ticker';
1234
- type: 'pubkey';
1397
+ name: 'orderId';
1398
+ type: 'u64';
1399
+ },
1400
+ {
1401
+ name: 'direction';
1402
+ type: {
1403
+ defined: {
1404
+ name: 'orderDirection';
1405
+ };
1406
+ };
1235
1407
  },
1236
1408
  {
1237
- name: 'entryPrice';
1409
+ name: 'orderType';
1410
+ type: {
1411
+ defined: {
1412
+ name: 'orderType';
1413
+ };
1414
+ };
1415
+ },
1416
+ {
1417
+ name: 'orderStatus';
1418
+ type: {
1419
+ defined: {
1420
+ name: 'orderStatus';
1421
+ };
1422
+ };
1423
+ },
1424
+ {
1425
+ name: 'price';
1238
1426
  type: 'u64';
1239
1427
  },
1240
1428
  {
1241
- name: 'ts';
1242
- type: 'i64';
1429
+ name: 'totalShares';
1430
+ type: 'u64';
1243
1431
  },
1244
1432
  {
1245
- name: 'isLong';
1246
- type: 'bool';
1433
+ name: 'filledShares';
1434
+ type: 'u64';
1247
1435
  },
1248
1436
  {
1249
- name: 'user';
1250
- type: 'pubkey';
1437
+ name: 'totalAmount';
1438
+ type: 'u64';
1439
+ },
1440
+ {
1441
+ name: 'filledAmount';
1442
+ type: 'u64';
1443
+ },
1444
+ {
1445
+ name: 'comment';
1446
+ type: {
1447
+ option: {
1448
+ array: ['u8', 64];
1449
+ };
1450
+ };
1451
+ },
1452
+ {
1453
+ name: 'refundAmount';
1454
+ type: {
1455
+ option: 'u64';
1456
+ };
1457
+ },
1458
+ {
1459
+ name: 'timestamp';
1460
+ type: 'i64';
1251
1461
  }
1252
1462
  ];
1253
1463
  };
1254
1464
  },
1255
1465
  {
1256
- name: 'position';
1466
+ name: 'priceUpdate';
1257
1467
  type: {
1258
1468
  kind: 'struct';
1259
1469
  fields: [
1260
1470
  {
1261
- name: 'amount';
1471
+ name: 'marketId';
1262
1472
  type: 'u64';
1263
1473
  },
1264
1474
  {
1265
- name: 'entryPrice';
1475
+ name: 'hypePrice';
1266
1476
  type: 'u64';
1267
1477
  },
1268
1478
  {
1269
- name: 'ts';
1270
- type: 'i64';
1479
+ name: 'flopPrice';
1480
+ type: 'u64';
1271
1481
  },
1272
1482
  {
1273
- name: 'isLong';
1274
- type: 'bool';
1483
+ name: 'marketPrice';
1484
+ type: 'u64';
1275
1485
  },
1276
1486
  {
1277
- name: 'isOpen';
1278
- type: 'bool';
1487
+ name: 'timestamp';
1488
+ type: 'i64';
1279
1489
  },
1280
1490
  {
1281
- name: 'pnl';
1282
- type: 'i64';
1491
+ name: 'comment';
1492
+ type: {
1493
+ option: {
1494
+ array: ['u8', 64];
1495
+ };
1496
+ };
1283
1497
  }
1284
1498
  ];
1285
1499
  };
@@ -1494,38 +1708,6 @@ export type TriadProtocol = {
1494
1708
  ];
1495
1709
  };
1496
1710
  },
1497
- {
1498
- name: 'tickerPriceUpdateRecord';
1499
- type: {
1500
- kind: 'struct';
1501
- fields: [
1502
- {
1503
- name: 'price';
1504
- type: 'u64';
1505
- },
1506
- {
1507
- name: 'ts';
1508
- type: 'i64';
1509
- },
1510
- {
1511
- name: 'ticker';
1512
- type: 'pubkey';
1513
- }
1514
- ];
1515
- };
1516
- },
1517
- {
1518
- name: 'updateTickerPriceArgs';
1519
- type: {
1520
- kind: 'struct';
1521
- fields: [
1522
- {
1523
- name: 'price';
1524
- type: 'u64';
1525
- }
1526
- ];
1527
- };
1528
- },
1529
1711
  {
1530
1712
  name: 'user';
1531
1713
  type: {
@@ -1572,63 +1754,69 @@ export type TriadProtocol = {
1572
1754
  type: 'i64';
1573
1755
  },
1574
1756
  {
1575
- name: 'padding';
1576
- type: {
1577
- array: ['u8', 32];
1578
- };
1757
+ name: 'userTrade';
1758
+ type: 'pubkey';
1579
1759
  }
1580
1760
  ];
1581
1761
  };
1582
1762
  },
1583
1763
  {
1584
- name: 'userPosition';
1764
+ name: 'userTrade';
1585
1765
  type: {
1586
1766
  kind: 'struct';
1587
1767
  fields: [
1588
- {
1589
- name: 'ts';
1590
- type: 'i64';
1591
- },
1592
1768
  {
1593
1769
  name: 'bump';
1594
1770
  type: 'u8';
1595
1771
  },
1596
1772
  {
1597
- name: 'totalDeposited';
1598
- type: 'u64';
1773
+ name: 'authority';
1774
+ type: 'pubkey';
1599
1775
  },
1600
1776
  {
1601
- name: 'totalWithdrawn';
1777
+ name: 'totalDeposits';
1778
+ docs: [
1779
+ 'The total value of deposits the user has made (in TRD)',
1780
+ 'precision: QUOTE_PRECISION'
1781
+ ];
1602
1782
  type: 'u64';
1603
1783
  },
1604
1784
  {
1605
- name: 'lpShare';
1785
+ name: 'totalWithdraws';
1786
+ docs: [
1787
+ 'The total value of withdrawals the user has made (in TRD)',
1788
+ 'precision: QUOTE_PRECISION'
1789
+ ];
1606
1790
  type: 'u64';
1607
1791
  },
1608
1792
  {
1609
- name: 'totalPositions';
1610
- type: 'u16';
1611
- },
1612
- {
1613
- name: 'ticker';
1614
- type: 'pubkey';
1793
+ name: 'openOrders';
1794
+ docs: ['Number of open orders'];
1795
+ type: 'u8';
1615
1796
  },
1616
1797
  {
1617
- name: 'authority';
1618
- type: 'pubkey';
1798
+ name: 'hasOpenOrder';
1799
+ docs: ['Whether or not user has open order'];
1800
+ type: 'bool';
1619
1801
  },
1620
1802
  {
1621
- name: 'positions';
1803
+ name: 'orders';
1622
1804
  type: {
1623
1805
  array: [
1624
1806
  {
1625
1807
  defined: {
1626
- name: 'position';
1808
+ name: 'order';
1627
1809
  };
1628
1810
  },
1629
- 3
1811
+ 13
1630
1812
  ];
1631
1813
  };
1814
+ },
1815
+ {
1816
+ name: 'padding';
1817
+ type: {
1818
+ array: ['u8', 64];
1819
+ };
1632
1820
  }
1633
1821
  ];
1634
1822
  };