@d8x/perpetuals-sdk 2.0.12-alpha → 2.1.0-alpha2

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.
Files changed (252) hide show
  1. package/dist/cjs/abi/IPerpetualManager.json +124 -3
  2. package/dist/cjs/abi/OracleFactory.json +94 -25
  3. package/dist/cjs/abi/PerpetualManagerProxy.json +212 -2
  4. package/dist/cjs/brokerTool.d.ts +5 -1
  5. package/dist/cjs/brokerTool.js +14 -1
  6. package/dist/cjs/brokerTool.js.map +1 -1
  7. package/dist/cjs/contracts/IPerpetualManager.d.ts +74 -10
  8. package/dist/cjs/contracts/OracleFactory.d.ts +69 -20
  9. package/dist/cjs/contracts/PerpetualManagerProxy.d.ts +109 -4
  10. package/dist/cjs/contracts/factories/IPerpetualManager__factory.d.ts +95 -3
  11. package/dist/cjs/contracts/factories/IPerpetualManager__factory.js +124 -3
  12. package/dist/cjs/contracts/factories/IPerpetualManager__factory.js.map +1 -1
  13. package/dist/cjs/contracts/factories/OracleFactory__factory.d.ts +75 -20
  14. package/dist/cjs/contracts/factories/OracleFactory__factory.js +94 -25
  15. package/dist/cjs/contracts/factories/OracleFactory__factory.js.map +1 -1
  16. package/dist/cjs/contracts/factories/PerpetualManagerProxy__factory.d.ts +159 -2
  17. package/dist/cjs/contracts/factories/PerpetualManagerProxy__factory.js +212 -2
  18. package/dist/cjs/contracts/factories/PerpetualManagerProxy__factory.js.map +1 -1
  19. package/dist/cjs/d8XMath.d.ts +44 -1
  20. package/dist/cjs/d8XMath.js +236 -3
  21. package/dist/cjs/d8XMath.js.map +1 -1
  22. package/dist/cjs/liquidatorTool.d.ts +1 -0
  23. package/dist/cjs/liquidatorTool.js +24 -7
  24. package/dist/cjs/liquidatorTool.js.map +1 -1
  25. package/dist/cjs/marketData.d.ts +42 -20
  26. package/dist/cjs/marketData.js +261 -188
  27. package/dist/cjs/marketData.js.map +1 -1
  28. package/dist/cjs/nodeSDKTypes.d.ts +24 -2
  29. package/dist/cjs/nodeSDKTypes.js.map +1 -1
  30. package/dist/cjs/orderExecutorTool.d.ts +3 -3
  31. package/dist/cjs/orderExecutorTool.js +38 -13
  32. package/dist/cjs/orderExecutorTool.js.map +1 -1
  33. package/dist/cjs/perpetualDataHandler.d.ts +22 -12
  34. package/dist/cjs/perpetualDataHandler.js +59 -44
  35. package/dist/cjs/perpetualDataHandler.js.map +1 -1
  36. package/dist/cjs/perpetualEventHandler.d.ts +1 -1
  37. package/dist/cjs/perpetualEventHandler.js +6 -7
  38. package/dist/cjs/perpetualEventHandler.js.map +1 -1
  39. package/dist/cjs/polyMktsPxFeed.d.ts +6 -4
  40. package/dist/cjs/polyMktsPxFeed.js +24 -3
  41. package/dist/cjs/polyMktsPxFeed.js.map +1 -1
  42. package/dist/cjs/priceFeeds.d.ts +6 -7
  43. package/dist/cjs/priceFeeds.js +36 -14
  44. package/dist/cjs/priceFeeds.js.map +1 -1
  45. package/dist/cjs/version.d.ts +1 -1
  46. package/dist/cjs/version.js +1 -1
  47. package/dist/esm/abi/IPerpetualManager.json +124 -3
  48. package/dist/esm/abi/OracleFactory.json +94 -25
  49. package/dist/esm/abi/PerpetualManagerProxy.json +212 -2
  50. package/dist/esm/brokerTool.d.ts +5 -1
  51. package/dist/esm/brokerTool.js +15 -2
  52. package/dist/esm/brokerTool.js.map +1 -1
  53. package/dist/esm/contracts/IPerpetualManager.d.ts +74 -10
  54. package/dist/esm/contracts/OracleFactory.d.ts +69 -20
  55. package/dist/esm/contracts/PerpetualManagerProxy.d.ts +109 -4
  56. package/dist/esm/contracts/factories/IPerpetualManager__factory.d.ts +95 -3
  57. package/dist/esm/contracts/factories/IPerpetualManager__factory.js +124 -3
  58. package/dist/esm/contracts/factories/IPerpetualManager__factory.js.map +1 -1
  59. package/dist/esm/contracts/factories/OracleFactory__factory.d.ts +75 -20
  60. package/dist/esm/contracts/factories/OracleFactory__factory.js +94 -25
  61. package/dist/esm/contracts/factories/OracleFactory__factory.js.map +1 -1
  62. package/dist/{cjs/contracts/factories/MockToken__factory.d.ts → esm/contracts/factories/PerpStorage__factory.d.ts} +115 -128
  63. package/dist/esm/contracts/factories/{MockToken__factory.js → PerpStorage__factory.js} +128 -139
  64. package/dist/esm/contracts/factories/PerpStorage__factory.js.map +1 -0
  65. package/dist/esm/contracts/factories/PerpetualManagerProxy__factory.d.ts +159 -2
  66. package/dist/esm/contracts/factories/PerpetualManagerProxy__factory.js +212 -2
  67. package/dist/esm/contracts/factories/PerpetualManagerProxy__factory.js.map +1 -1
  68. package/dist/esm/d8XMath.d.ts +44 -1
  69. package/dist/esm/d8XMath.js +229 -2
  70. package/dist/esm/d8XMath.js.map +1 -1
  71. package/dist/esm/liquidatorTool.d.ts +1 -0
  72. package/dist/esm/liquidatorTool.js +25 -8
  73. package/dist/esm/liquidatorTool.js.map +1 -1
  74. package/dist/esm/marketData.d.ts +42 -20
  75. package/dist/esm/marketData.js +263 -190
  76. package/dist/esm/marketData.js.map +1 -1
  77. package/dist/esm/nodeSDKTypes.d.ts +24 -2
  78. package/dist/esm/nodeSDKTypes.js.map +1 -1
  79. package/dist/esm/orderExecutorTool.d.ts +3 -3
  80. package/dist/esm/orderExecutorTool.js +38 -13
  81. package/dist/esm/orderExecutorTool.js.map +1 -1
  82. package/dist/esm/perpetualDataHandler.d.ts +22 -12
  83. package/dist/esm/perpetualDataHandler.js +60 -45
  84. package/dist/esm/perpetualDataHandler.js.map +1 -1
  85. package/dist/esm/perpetualEventHandler.d.ts +1 -1
  86. package/dist/esm/perpetualEventHandler.js +6 -7
  87. package/dist/esm/perpetualEventHandler.js.map +1 -1
  88. package/dist/esm/polyMktsPxFeed.d.ts +6 -4
  89. package/dist/esm/polyMktsPxFeed.js +24 -3
  90. package/dist/esm/polyMktsPxFeed.js.map +1 -1
  91. package/dist/esm/priceFeeds.d.ts +6 -7
  92. package/dist/esm/priceFeeds.js +36 -14
  93. package/dist/esm/priceFeeds.js.map +1 -1
  94. package/dist/esm/version.d.ts +1 -1
  95. package/dist/esm/version.js +1 -1
  96. package/package.json +1 -1
  97. package/src/abi/IPerpetualManager.json +124 -3
  98. package/src/abi/OracleFactory.json +523 -454
  99. package/src/abi/PerpetualManagerProxy.json +1596 -1386
  100. package/src/brokerTool.ts +16 -2
  101. package/src/contracts/IPerpetualManager.ts +107 -7
  102. package/src/contracts/OracleFactory.ts +100 -26
  103. package/src/contracts/PerpetualManagerProxy.ts +192 -3
  104. package/src/contracts/factories/IPerpetualManager__factory.ts +124 -3
  105. package/src/contracts/factories/OracleFactory__factory.ts +94 -25
  106. package/src/contracts/factories/PerpetualManagerProxy__factory.ts +212 -2
  107. package/src/d8XMath.ts +304 -2
  108. package/src/liquidatorTool.ts +29 -14
  109. package/src/marketData.ts +415 -238
  110. package/src/nodeSDKTypes.ts +30 -2
  111. package/src/orderExecutorTool.ts +48 -20
  112. package/src/perpetualDataHandler.ts +87 -45
  113. package/src/perpetualEventHandler.ts +6 -7
  114. package/src/polyMktsPxFeed.ts +30 -5
  115. package/src/priceFeeds.ts +41 -17
  116. package/src/version.ts +1 -1
  117. package/dist/cjs/abi/BeaconProxy.json +0 -71
  118. package/dist/cjs/abi/Maintainer.json +0 -774
  119. package/dist/cjs/abi/MockToken.json +0 -347
  120. package/dist/cjs/abi/UUPSUpgradeable.json +0 -104
  121. package/dist/cjs/abi/WeETH.json +0 -310
  122. package/dist/cjs/abi-zkevm/LimitOrderBook.json +0 -910
  123. package/dist/cjs/abi-zkevm/LimitOrderBookFactory.json +0 -236
  124. package/dist/cjs/contracts/BeaconProxy.d.ts +0 -63
  125. package/dist/cjs/contracts/BeaconProxy.js +0 -3
  126. package/dist/cjs/contracts/BeaconProxy.js.map +0 -1
  127. package/dist/cjs/contracts/Maintainer.d.ts +0 -799
  128. package/dist/cjs/contracts/Maintainer.js +0 -3
  129. package/dist/cjs/contracts/Maintainer.js.map +0 -1
  130. package/dist/cjs/contracts/MockToken.d.ts +0 -263
  131. package/dist/cjs/contracts/MockToken.js +0 -3
  132. package/dist/cjs/contracts/MockToken.js.map +0 -1
  133. package/dist/cjs/contracts/UUPSUpgradeable.d.ts +0 -118
  134. package/dist/cjs/contracts/UUPSUpgradeable.js +0 -3
  135. package/dist/cjs/contracts/UUPSUpgradeable.js.map +0 -1
  136. package/dist/cjs/contracts/WeETH.d.ts +0 -503
  137. package/dist/cjs/contracts/WeETH.js +0 -3
  138. package/dist/cjs/contracts/WeETH.js.map +0 -1
  139. package/dist/cjs/contracts/factories/BeaconProxy__factory.d.ts +0 -61
  140. package/dist/cjs/contracts/factories/BeaconProxy__factory.js +0 -89
  141. package/dist/cjs/contracts/factories/BeaconProxy__factory.js.map +0 -1
  142. package/dist/cjs/contracts/factories/Maintainer__factory.d.ts +0 -609
  143. package/dist/cjs/contracts/factories/Maintainer__factory.js +0 -792
  144. package/dist/cjs/contracts/factories/Maintainer__factory.js.map +0 -1
  145. package/dist/cjs/contracts/factories/MockToken__factory.js +0 -365
  146. package/dist/cjs/contracts/factories/MockToken__factory.js.map +0 -1
  147. package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.d.ts +0 -87
  148. package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.js +0 -122
  149. package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.js.map +0 -1
  150. package/dist/cjs/contracts/factories/WeETH__factory.d.ts +0 -545
  151. package/dist/cjs/contracts/factories/WeETH__factory.js +0 -721
  152. package/dist/cjs/contracts/factories/WeETH__factory.js.map +0 -1
  153. package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.d.ts +0 -4136
  154. package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.js +0 -5324
  155. package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.js.map +0 -1
  156. package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.d.ts +0 -189
  157. package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.js +0 -254
  158. package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.js.map +0 -1
  159. package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.d.ts +0 -715
  160. package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.js +0 -928
  161. package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.js.map +0 -1
  162. package/dist/cjs/contracts/factories/lean0/ShareToken__factory.d.ts +0 -344
  163. package/dist/cjs/contracts/factories/lean0/ShareToken__factory.js +0 -456
  164. package/dist/cjs/contracts/factories/lean0/ShareToken__factory.js.map +0 -1
  165. package/dist/cjs/contracts/factories/lean0/index.d.ts +0 -4
  166. package/dist/cjs/contracts/factories/lean0/index.js +0 -15
  167. package/dist/cjs/contracts/factories/lean0/index.js.map +0 -1
  168. package/dist/cjs/contracts/lean0/IPerpetualManager.d.ts +0 -2821
  169. package/dist/cjs/contracts/lean0/IPerpetualManager.js +0 -3
  170. package/dist/cjs/contracts/lean0/IPerpetualManager.js.map +0 -1
  171. package/dist/cjs/contracts/lean0/LimitOrderBook.d.ts +0 -533
  172. package/dist/cjs/contracts/lean0/LimitOrderBook.js +0 -3
  173. package/dist/cjs/contracts/lean0/LimitOrderBook.js.map +0 -1
  174. package/dist/cjs/contracts/lean0/LimitOrderBookFactory.d.ts +0 -210
  175. package/dist/cjs/contracts/lean0/LimitOrderBookFactory.js +0 -3
  176. package/dist/cjs/contracts/lean0/LimitOrderBookFactory.js.map +0 -1
  177. package/dist/cjs/contracts/lean0/ShareToken.d.ts +0 -320
  178. package/dist/cjs/contracts/lean0/ShareToken.js +0 -3
  179. package/dist/cjs/contracts/lean0/ShareToken.js.map +0 -1
  180. package/dist/cjs/contracts/lean0/index.d.ts +0 -4
  181. package/dist/cjs/contracts/lean0/index.js +0 -3
  182. package/dist/cjs/contracts/lean0/index.js.map +0 -1
  183. package/dist/esm/abi/BeaconProxy.json +0 -71
  184. package/dist/esm/abi/Maintainer.json +0 -774
  185. package/dist/esm/abi/MockToken.json +0 -347
  186. package/dist/esm/abi/UUPSUpgradeable.json +0 -104
  187. package/dist/esm/abi/WeETH.json +0 -310
  188. package/dist/esm/abi/lean0/IPerpetualManager.json +0 -5306
  189. package/dist/esm/abi/lean0/LimitOrderBook.json +0 -910
  190. package/dist/esm/abi/lean0/LimitOrderBookFactory.json +0 -236
  191. package/dist/esm/abi/lean0/ShareToken.json +0 -438
  192. package/dist/esm/abi-zkevm/LimitOrderBook.json +0 -910
  193. package/dist/esm/abi-zkevm/LimitOrderBookFactory.json +0 -236
  194. package/dist/esm/contracts/BeaconProxy.d.ts +0 -63
  195. package/dist/esm/contracts/BeaconProxy.js +0 -2
  196. package/dist/esm/contracts/BeaconProxy.js.map +0 -1
  197. package/dist/esm/contracts/Maintainer.d.ts +0 -799
  198. package/dist/esm/contracts/Maintainer.js +0 -2
  199. package/dist/esm/contracts/Maintainer.js.map +0 -1
  200. package/dist/esm/contracts/MockToken.d.ts +0 -263
  201. package/dist/esm/contracts/MockToken.js +0 -2
  202. package/dist/esm/contracts/MockToken.js.map +0 -1
  203. package/dist/esm/contracts/UUPSUpgradeable.d.ts +0 -118
  204. package/dist/esm/contracts/UUPSUpgradeable.js +0 -2
  205. package/dist/esm/contracts/UUPSUpgradeable.js.map +0 -1
  206. package/dist/esm/contracts/WeETH.d.ts +0 -503
  207. package/dist/esm/contracts/WeETH.js +0 -2
  208. package/dist/esm/contracts/WeETH.js.map +0 -1
  209. package/dist/esm/contracts/factories/BeaconProxy__factory.d.ts +0 -61
  210. package/dist/esm/contracts/factories/BeaconProxy__factory.js +0 -85
  211. package/dist/esm/contracts/factories/BeaconProxy__factory.js.map +0 -1
  212. package/dist/esm/contracts/factories/Maintainer__factory.d.ts +0 -609
  213. package/dist/esm/contracts/factories/Maintainer__factory.js +0 -788
  214. package/dist/esm/contracts/factories/Maintainer__factory.js.map +0 -1
  215. package/dist/esm/contracts/factories/MockToken__factory.d.ts +0 -273
  216. package/dist/esm/contracts/factories/MockToken__factory.js.map +0 -1
  217. package/dist/esm/contracts/factories/UUPSUpgradeable__factory.d.ts +0 -87
  218. package/dist/esm/contracts/factories/UUPSUpgradeable__factory.js +0 -118
  219. package/dist/esm/contracts/factories/UUPSUpgradeable__factory.js.map +0 -1
  220. package/dist/esm/contracts/factories/WeETH__factory.d.ts +0 -545
  221. package/dist/esm/contracts/factories/WeETH__factory.js +0 -717
  222. package/dist/esm/contracts/factories/WeETH__factory.js.map +0 -1
  223. package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.d.ts +0 -4136
  224. package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.js +0 -5320
  225. package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.js.map +0 -1
  226. package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.d.ts +0 -189
  227. package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.js +0 -250
  228. package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.js.map +0 -1
  229. package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.d.ts +0 -715
  230. package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.js +0 -924
  231. package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.js.map +0 -1
  232. package/dist/esm/contracts/factories/lean0/ShareToken__factory.d.ts +0 -344
  233. package/dist/esm/contracts/factories/lean0/ShareToken__factory.js +0 -452
  234. package/dist/esm/contracts/factories/lean0/ShareToken__factory.js.map +0 -1
  235. package/dist/esm/contracts/factories/lean0/index.d.ts +0 -4
  236. package/dist/esm/contracts/factories/lean0/index.js +0 -8
  237. package/dist/esm/contracts/factories/lean0/index.js.map +0 -1
  238. package/dist/esm/contracts/lean0/IPerpetualManager.d.ts +0 -2821
  239. package/dist/esm/contracts/lean0/IPerpetualManager.js +0 -2
  240. package/dist/esm/contracts/lean0/IPerpetualManager.js.map +0 -1
  241. package/dist/esm/contracts/lean0/LimitOrderBook.d.ts +0 -533
  242. package/dist/esm/contracts/lean0/LimitOrderBook.js +0 -2
  243. package/dist/esm/contracts/lean0/LimitOrderBook.js.map +0 -1
  244. package/dist/esm/contracts/lean0/LimitOrderBookFactory.d.ts +0 -210
  245. package/dist/esm/contracts/lean0/LimitOrderBookFactory.js +0 -2
  246. package/dist/esm/contracts/lean0/LimitOrderBookFactory.js.map +0 -1
  247. package/dist/esm/contracts/lean0/ShareToken.d.ts +0 -320
  248. package/dist/esm/contracts/lean0/ShareToken.js +0 -2
  249. package/dist/esm/contracts/lean0/ShareToken.js.map +0 -1
  250. package/dist/esm/contracts/lean0/index.d.ts +0 -4
  251. package/dist/esm/contracts/lean0/index.js +0 -2
  252. package/dist/esm/contracts/lean0/index.js.map +0 -1
@@ -1510,6 +1510,25 @@
1510
1510
  "stateMutability": "nonpayable",
1511
1511
  "type": "function"
1512
1512
  },
1513
+ {
1514
+ "inputs": [
1515
+ {
1516
+ "internalType": "uint16",
1517
+ "name": "num",
1518
+ "type": "uint16"
1519
+ }
1520
+ ],
1521
+ "name": "decodeUint16Float",
1522
+ "outputs": [
1523
+ {
1524
+ "internalType": "int128",
1525
+ "name": "",
1526
+ "type": "int128"
1527
+ }
1528
+ ],
1529
+ "stateMutability": "pure",
1530
+ "type": "function"
1531
+ },
1513
1532
  {
1514
1533
  "inputs": [
1515
1534
  {
@@ -1929,6 +1948,25 @@
1929
1948
  "stateMutability": "nonpayable",
1930
1949
  "type": "function"
1931
1950
  },
1951
+ {
1952
+ "inputs": [
1953
+ {
1954
+ "internalType": "int128",
1955
+ "name": "_p",
1956
+ "type": "int128"
1957
+ }
1958
+ ],
1959
+ "name": "entropy",
1960
+ "outputs": [
1961
+ {
1962
+ "internalType": "int128",
1963
+ "name": "",
1964
+ "type": "int128"
1965
+ }
1966
+ ],
1967
+ "stateMutability": "pure",
1968
+ "type": "function"
1969
+ },
1932
1970
  {
1933
1971
  "inputs": [
1934
1972
  {
@@ -2818,8 +2856,13 @@
2818
2856
  "outputs": [
2819
2857
  {
2820
2858
  "internalType": "int128",
2821
- "name": "fPrice",
2859
+ "name": "",
2822
2860
  "type": "int128"
2861
+ },
2862
+ {
2863
+ "internalType": "uint64",
2864
+ "name": "",
2865
+ "type": "uint64"
2823
2866
  }
2824
2867
  ],
2825
2868
  "stateMutability": "view",
@@ -4176,6 +4219,50 @@
4176
4219
  "stateMutability": "nonpayable",
4177
4220
  "type": "function"
4178
4221
  },
4222
+ {
4223
+ "inputs": [
4224
+ {
4225
+ "internalType": "int128",
4226
+ "name": "_fPx",
4227
+ "type": "int128"
4228
+ },
4229
+ {
4230
+ "internalType": "int128",
4231
+ "name": "_fm",
4232
+ "type": "int128"
4233
+ },
4234
+ {
4235
+ "internalType": "int128",
4236
+ "name": "_fTotLong",
4237
+ "type": "int128"
4238
+ },
4239
+ {
4240
+ "internalType": "int128",
4241
+ "name": "_fTotShort",
4242
+ "type": "int128"
4243
+ },
4244
+ {
4245
+ "internalType": "int128",
4246
+ "name": "_fTradeAmt",
4247
+ "type": "int128"
4248
+ },
4249
+ {
4250
+ "internalType": "int128",
4251
+ "name": "_fMgnRate",
4252
+ "type": "int128"
4253
+ }
4254
+ ],
4255
+ "name": "prdMktsLvgFee",
4256
+ "outputs": [
4257
+ {
4258
+ "internalType": "int128",
4259
+ "name": "",
4260
+ "type": "int128"
4261
+ }
4262
+ ],
4263
+ "stateMutability": "pure",
4264
+ "type": "function"
4265
+ },
4179
4266
  {
4180
4267
  "inputs": [
4181
4268
  {
@@ -4272,6 +4359,30 @@
4272
4359
  "stateMutability": "nonpayable",
4273
4360
  "type": "function"
4274
4361
  },
4362
+ {
4363
+ "inputs": [
4364
+ {
4365
+ "internalType": "int128",
4366
+ "name": "_amount",
4367
+ "type": "int128"
4368
+ },
4369
+ {
4370
+ "internalType": "uint64",
4371
+ "name": "_params",
4372
+ "type": "uint64"
4373
+ }
4374
+ ],
4375
+ "name": "priceImpact",
4376
+ "outputs": [
4377
+ {
4378
+ "internalType": "int128",
4379
+ "name": "",
4380
+ "type": "int128"
4381
+ }
4382
+ ],
4383
+ "stateMutability": "pure",
4384
+ "type": "function"
4385
+ },
4275
4386
  {
4276
4387
  "inputs": [
4277
4388
  {
@@ -4305,12 +4416,12 @@
4305
4416
  "inputs": [
4306
4417
  {
4307
4418
  "internalType": "uint24[]",
4308
- "name": "perpetualIds",
4419
+ "name": "_perpetualIds",
4309
4420
  "type": "uint24[]"
4310
4421
  },
4311
4422
  {
4312
4423
  "internalType": "int128[]",
4313
- "name": "idxPriceDataPairs",
4424
+ "name": "_idxPriceDataPairs",
4314
4425
  "type": "int128[]"
4315
4426
  }
4316
4427
  ],
@@ -4341,6 +4452,16 @@
4341
4452
  "internalType": "int128[2]",
4342
4453
  "name": "_fIndexPrice",
4343
4454
  "type": "int128[2]"
4455
+ },
4456
+ {
4457
+ "internalType": "uint16",
4458
+ "name": "_confTbps",
4459
+ "type": "uint16"
4460
+ },
4461
+ {
4462
+ "internalType": "uint64",
4463
+ "name": "_params",
4464
+ "type": "uint64"
4344
4465
  }
4345
4466
  ],
4346
4467
  "name": "queryPerpetualPrice",
@@ -120,6 +120,37 @@
120
120
  "name": "RouteAdded",
121
121
  "type": "event"
122
122
  },
123
+ {
124
+ "anonymous": false,
125
+ "inputs": [
126
+ {
127
+ "indexed": false,
128
+ "internalType": "bytes4",
129
+ "name": "baseCurrency",
130
+ "type": "bytes4"
131
+ },
132
+ {
133
+ "indexed": false,
134
+ "internalType": "bytes4",
135
+ "name": "quoteCurrency",
136
+ "type": "bytes4"
137
+ },
138
+ {
139
+ "indexed": false,
140
+ "internalType": "address",
141
+ "name": "oracle",
142
+ "type": "address"
143
+ },
144
+ {
145
+ "indexed": false,
146
+ "internalType": "bool",
147
+ "name": "marketClosed",
148
+ "type": "bool"
149
+ }
150
+ ],
151
+ "name": "SetMarketClosed",
152
+ "type": "event"
153
+ },
123
154
  {
124
155
  "anonymous": false,
125
156
  "inputs": [
@@ -254,6 +285,40 @@
254
285
  "stateMutability": "view",
255
286
  "type": "function"
256
287
  },
288
+ {
289
+ "inputs": [
290
+ {
291
+ "internalType": "bytes4",
292
+ "name": "_baseCurrency",
293
+ "type": "bytes4"
294
+ },
295
+ {
296
+ "internalType": "bytes4",
297
+ "name": "_quoteCurrency",
298
+ "type": "bytes4"
299
+ }
300
+ ],
301
+ "name": "getEmaPrice",
302
+ "outputs": [
303
+ {
304
+ "internalType": "int128",
305
+ "name": "",
306
+ "type": "int128"
307
+ },
308
+ {
309
+ "internalType": "uint64",
310
+ "name": "",
311
+ "type": "uint64"
312
+ },
313
+ {
314
+ "internalType": "uint256",
315
+ "name": "",
316
+ "type": "uint256"
317
+ }
318
+ ],
319
+ "stateMutability": "view",
320
+ "type": "function"
321
+ },
257
322
  {
258
323
  "inputs": [
259
324
  {
@@ -302,12 +367,12 @@
302
367
  "outputs": [
303
368
  {
304
369
  "internalType": "bytes32[]",
305
- "name": "",
370
+ "name": "id",
306
371
  "type": "bytes32[]"
307
372
  },
308
373
  {
309
374
  "internalType": "bool[]",
310
- "name": "",
375
+ "name": "isPyth",
311
376
  "type": "bool[]"
312
377
  }
313
378
  ],
@@ -335,33 +400,14 @@
335
400
  "type": "int128"
336
401
  },
337
402
  {
338
- "internalType": "uint256",
403
+ "internalType": "uint64",
339
404
  "name": "",
340
- "type": "uint256"
341
- }
342
- ],
343
- "stateMutability": "view",
344
- "type": "function"
345
- },
346
- {
347
- "inputs": [
348
- {
349
- "internalType": "bytes4",
350
- "name": "_baseCurrency",
351
- "type": "bytes4"
405
+ "type": "uint64"
352
406
  },
353
407
  {
354
- "internalType": "bytes4",
355
- "name": "_quoteCurrency",
356
- "type": "bytes4"
357
- }
358
- ],
359
- "name": "isRouteTerminated",
360
- "outputs": [
361
- {
362
- "internalType": "bool",
408
+ "internalType": "uint256",
363
409
  "name": "",
364
- "type": "bool"
410
+ "type": "uint256"
365
411
  }
366
412
  ],
367
413
  "stateMutability": "view",
@@ -413,6 +459,29 @@
413
459
  "stateMutability": "nonpayable",
414
460
  "type": "function"
415
461
  },
462
+ {
463
+ "inputs": [
464
+ {
465
+ "internalType": "bytes4",
466
+ "name": "_baseCurrency",
467
+ "type": "bytes4"
468
+ },
469
+ {
470
+ "internalType": "bytes4",
471
+ "name": "_quoteCurrency",
472
+ "type": "bytes4"
473
+ },
474
+ {
475
+ "internalType": "bool",
476
+ "name": "_marketClosed",
477
+ "type": "bool"
478
+ }
479
+ ],
480
+ "name": "setMarketClosed",
481
+ "outputs": [],
482
+ "stateMutability": "nonpayable",
483
+ "type": "function"
484
+ },
416
485
  {
417
486
  "inputs": [
418
487
  {
@@ -577,16 +577,22 @@
577
577
  "anonymous": false,
578
578
  "inputs": [
579
579
  {
580
- "indexed": false,
580
+ "indexed": true,
581
581
  "internalType": "address",
582
582
  "name": "trader",
583
583
  "type": "address"
584
584
  },
585
585
  {
586
- "indexed": false,
586
+ "indexed": true,
587
587
  "internalType": "address",
588
588
  "name": "delegate",
589
589
  "type": "address"
590
+ },
591
+ {
592
+ "indexed": false,
593
+ "internalType": "uint256",
594
+ "name": "index",
595
+ "type": "uint256"
590
596
  }
591
597
  ],
592
598
  "name": "SetDelegate",
@@ -1213,6 +1219,73 @@
1213
1219
  "stateMutability": "payable",
1214
1220
  "type": "fallback"
1215
1221
  },
1222
+ {
1223
+ "inputs": [
1224
+ {
1225
+ "internalType": "uint8",
1226
+ "name": "",
1227
+ "type": "uint8"
1228
+ },
1229
+ {
1230
+ "internalType": "address",
1231
+ "name": "",
1232
+ "type": "address"
1233
+ }
1234
+ ],
1235
+ "name": "brokerVolumeEMA",
1236
+ "outputs": [
1237
+ {
1238
+ "internalType": "int128",
1239
+ "name": "fTradingVolumeEMAusd",
1240
+ "type": "int128"
1241
+ },
1242
+ {
1243
+ "internalType": "uint64",
1244
+ "name": "timestamp",
1245
+ "type": "uint64"
1246
+ }
1247
+ ],
1248
+ "stateMutability": "view",
1249
+ "type": "function"
1250
+ },
1251
+ {
1252
+ "inputs": [
1253
+ {
1254
+ "internalType": "uint256",
1255
+ "name": "",
1256
+ "type": "uint256"
1257
+ }
1258
+ ],
1259
+ "name": "brokerVolumeFeesTbps",
1260
+ "outputs": [
1261
+ {
1262
+ "internalType": "uint16",
1263
+ "name": "",
1264
+ "type": "uint16"
1265
+ }
1266
+ ],
1267
+ "stateMutability": "view",
1268
+ "type": "function"
1269
+ },
1270
+ {
1271
+ "inputs": [
1272
+ {
1273
+ "internalType": "uint256",
1274
+ "name": "",
1275
+ "type": "uint256"
1276
+ }
1277
+ ],
1278
+ "name": "brokerVolumeTiers",
1279
+ "outputs": [
1280
+ {
1281
+ "internalType": "uint256",
1282
+ "name": "",
1283
+ "type": "uint256"
1284
+ }
1285
+ ],
1286
+ "stateMutability": "view",
1287
+ "type": "function"
1288
+ },
1216
1289
  {
1217
1290
  "inputs": [
1218
1291
  {
@@ -1277,6 +1350,38 @@
1277
1350
  "stateMutability": "view",
1278
1351
  "type": "function"
1279
1352
  },
1353
+ {
1354
+ "inputs": [],
1355
+ "name": "lastBaseToUSDUpdateTs",
1356
+ "outputs": [
1357
+ {
1358
+ "internalType": "uint64",
1359
+ "name": "",
1360
+ "type": "uint64"
1361
+ }
1362
+ ],
1363
+ "stateMutability": "view",
1364
+ "type": "function"
1365
+ },
1366
+ {
1367
+ "inputs": [
1368
+ {
1369
+ "internalType": "uint8",
1370
+ "name": "",
1371
+ "type": "uint8"
1372
+ }
1373
+ ],
1374
+ "name": "liquidityProvisionIsPaused",
1375
+ "outputs": [
1376
+ {
1377
+ "internalType": "bool",
1378
+ "name": "",
1379
+ "type": "bool"
1380
+ }
1381
+ ],
1382
+ "stateMutability": "view",
1383
+ "type": "function"
1384
+ },
1280
1385
  {
1281
1386
  "inputs": [],
1282
1387
  "name": "maintainer",
@@ -1310,6 +1415,44 @@
1310
1415
  "stateMutability": "view",
1311
1416
  "type": "function"
1312
1417
  },
1418
+ {
1419
+ "inputs": [
1420
+ {
1421
+ "internalType": "uint24",
1422
+ "name": "",
1423
+ "type": "uint24"
1424
+ }
1425
+ ],
1426
+ "name": "perpBaseToUSDOracle",
1427
+ "outputs": [
1428
+ {
1429
+ "internalType": "address",
1430
+ "name": "",
1431
+ "type": "address"
1432
+ }
1433
+ ],
1434
+ "stateMutability": "view",
1435
+ "type": "function"
1436
+ },
1437
+ {
1438
+ "inputs": [
1439
+ {
1440
+ "internalType": "uint24",
1441
+ "name": "",
1442
+ "type": "uint24"
1443
+ }
1444
+ ],
1445
+ "name": "perpToLastBaseToUSD",
1446
+ "outputs": [
1447
+ {
1448
+ "internalType": "int128",
1449
+ "name": "",
1450
+ "type": "int128"
1451
+ }
1452
+ ],
1453
+ "stateMutability": "view",
1454
+ "type": "function"
1455
+ },
1313
1456
  {
1314
1457
  "inputs": [
1315
1458
  {
@@ -1349,6 +1492,73 @@
1349
1492
  "stateMutability": "nonpayable",
1350
1493
  "type": "function"
1351
1494
  },
1495
+ {
1496
+ "inputs": [
1497
+ {
1498
+ "internalType": "uint8",
1499
+ "name": "",
1500
+ "type": "uint8"
1501
+ },
1502
+ {
1503
+ "internalType": "address",
1504
+ "name": "",
1505
+ "type": "address"
1506
+ }
1507
+ ],
1508
+ "name": "traderVolumeEMA",
1509
+ "outputs": [
1510
+ {
1511
+ "internalType": "int128",
1512
+ "name": "fTradingVolumeEMAusd",
1513
+ "type": "int128"
1514
+ },
1515
+ {
1516
+ "internalType": "uint64",
1517
+ "name": "timestamp",
1518
+ "type": "uint64"
1519
+ }
1520
+ ],
1521
+ "stateMutability": "view",
1522
+ "type": "function"
1523
+ },
1524
+ {
1525
+ "inputs": [
1526
+ {
1527
+ "internalType": "uint256",
1528
+ "name": "",
1529
+ "type": "uint256"
1530
+ }
1531
+ ],
1532
+ "name": "traderVolumeFeesTbps",
1533
+ "outputs": [
1534
+ {
1535
+ "internalType": "uint16",
1536
+ "name": "",
1537
+ "type": "uint16"
1538
+ }
1539
+ ],
1540
+ "stateMutability": "view",
1541
+ "type": "function"
1542
+ },
1543
+ {
1544
+ "inputs": [
1545
+ {
1546
+ "internalType": "uint256",
1547
+ "name": "",
1548
+ "type": "uint256"
1549
+ }
1550
+ ],
1551
+ "name": "traderVolumeTiers",
1552
+ "outputs": [
1553
+ {
1554
+ "internalType": "uint256",
1555
+ "name": "",
1556
+ "type": "uint256"
1557
+ }
1558
+ ],
1559
+ "stateMutability": "view",
1560
+ "type": "function"
1561
+ },
1352
1562
  {
1353
1563
  "inputs": [
1354
1564
  {
@@ -125,10 +125,14 @@ export default class BrokerTool extends WriteAccessHandler {
125
125
  /**
126
126
  * Determine exchange fee based on an order and a trader.
127
127
  * This is the fee charged by the exchange only, excluding the white-label partner fee,
128
- * and it takes into account whether the order given here has been signed by a white-label partner or not.
128
+ * For regular perpetuals, the result takes into account whether the order given here has been
129
+ * signed by a white-label partner or not.
129
130
  * Use this, for instance, to verify that the fee to be charged for a given order is as expected,
130
131
  * before and after signing it with brokerTool.signOrder.
131
132
  * This fee is equal or lower than the white-label partner induced fee, provided the order is properly signed.
133
+ *
134
+ * For prediction markets, the correct fee is to be applied as tradeamt * fee/s3.
135
+ *
132
136
  * @param {Order} order Order structure. As a minimum the structure needs to
133
137
  * specify symbol, side, type and quantity.
134
138
  * @param {string} traderAddr Address of the trader for whom to determine the fee.
@@ -9,6 +9,7 @@ const writeAccessHandler_1 = __importDefault(require("./writeAccessHandler"));
9
9
  const buffer_1 = require("buffer");
10
10
  const accountTrade_1 = __importDefault(require("./accountTrade"));
11
11
  const ethers_1 = require("ethers");
12
+ const constants_1 = require("./constants");
12
13
  /**
13
14
  * Functions for white-label partners to determine fees, deposit lots, and sign-up traders.
14
15
  * This class requires a private key and executes smart-contract interactions that
@@ -178,10 +179,14 @@ class BrokerTool extends writeAccessHandler_1.default {
178
179
  /**
179
180
  * Determine exchange fee based on an order and a trader.
180
181
  * This is the fee charged by the exchange only, excluding the white-label partner fee,
181
- * and it takes into account whether the order given here has been signed by a white-label partner or not.
182
+ * For regular perpetuals, the result takes into account whether the order given here has been
183
+ * signed by a white-label partner or not.
182
184
  * Use this, for instance, to verify that the fee to be charged for a given order is as expected,
183
185
  * before and after signing it with brokerTool.signOrder.
184
186
  * This fee is equal or lower than the white-label partner induced fee, provided the order is properly signed.
187
+ *
188
+ * For prediction markets, the correct fee is to be applied as tradeamt * fee/s3.
189
+ *
185
190
  * @param {Order} order Order structure. As a minimum the structure needs to
186
191
  * specify symbol, side, type and quantity.
187
192
  * @param {string} traderAddr Address of the trader for whom to determine the fee.
@@ -214,6 +219,14 @@ class BrokerTool extends writeAccessHandler_1.default {
214
219
  if (this.proxyContract == null || this.signer == null) {
215
220
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
216
221
  }
222
+ if (this.isPredictionMarket(order.symbol)) {
223
+ const id = BrokerTool.symbolToPerpetualId(order.symbol, this.symbolToPerpStaticInfo);
224
+ const fAmount = order.side == constants_1.BUY_SIDE ? (0, d8XMath_1.floatToABK64x64)(order.quantity) : (0, d8XMath_1.floatToABK64x64)(-order.quantity);
225
+ const lvgTdr = order.leverage == undefined ? 0 : Math.round(100 * order.leverage);
226
+ const feeTbps = await this.proxyContract.getExchangeFeePrdMkts(id, fAmount, lvgTdr);
227
+ return feeTbps / 100000;
228
+ }
229
+ // regular markets
217
230
  let scOrder = accountTrade_1.default.toSmartContractOrder(order, traderAddr, this.symbolToPerpStaticInfo);
218
231
  let feeTbps = await this.proxyContract.determineExchangeFee(scOrder, overrides || {});
219
232
  return feeTbps / 100000;
@@ -1 +1 @@
1
- {"version":3,"file":"brokerTool.js","sourceRoot":"","sources":["../../src/brokerTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"brokerTool.js","sourceRoot":"","sources":["../../src/brokerTool.ts"],"names":[],"mappings":"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"}