ccxt 4.5.3 → 4.5.5

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 (920) hide show
  1. package/README.md +7 -6
  2. package/dist/ccxt.browser.min.js +6 -6
  3. package/dist/cjs/ccxt.js +6 -1
  4. package/dist/cjs/src/abstract/alpaca.js +1 -1
  5. package/dist/cjs/src/abstract/apex.js +1 -1
  6. package/dist/cjs/src/abstract/ascendex.js +1 -1
  7. package/dist/cjs/src/abstract/backpack.js +11 -0
  8. package/dist/cjs/src/abstract/bigone.js +1 -1
  9. package/dist/cjs/src/abstract/binance.js +1 -1
  10. package/dist/cjs/src/abstract/bingx.js +1 -1
  11. package/dist/cjs/src/abstract/bit2c.js +1 -1
  12. package/dist/cjs/src/abstract/bitbank.js +1 -1
  13. package/dist/cjs/src/abstract/bitbns.js +1 -1
  14. package/dist/cjs/src/abstract/bitfinex.js +1 -1
  15. package/dist/cjs/src/abstract/bitflyer.js +1 -1
  16. package/dist/cjs/src/abstract/bitget.js +1 -1
  17. package/dist/cjs/src/abstract/bithumb.js +1 -1
  18. package/dist/cjs/src/abstract/bitmart.js +1 -1
  19. package/dist/cjs/src/abstract/bitmex.js +1 -1
  20. package/dist/cjs/src/abstract/bitopro.js +1 -1
  21. package/dist/cjs/src/abstract/bitrue.js +1 -1
  22. package/dist/cjs/src/abstract/bitso.js +1 -1
  23. package/dist/cjs/src/abstract/bitstamp.js +1 -1
  24. package/dist/cjs/src/abstract/bitteam.js +1 -1
  25. package/dist/cjs/src/abstract/bittrade.js +1 -1
  26. package/dist/cjs/src/abstract/bitvavo.js +1 -1
  27. package/dist/cjs/src/abstract/blockchaincom.js +1 -1
  28. package/dist/cjs/src/abstract/blofin.js +1 -1
  29. package/dist/cjs/src/abstract/btcalpha.js +1 -1
  30. package/dist/cjs/src/abstract/btcbox.js +1 -1
  31. package/dist/cjs/src/abstract/btcmarkets.js +1 -1
  32. package/dist/cjs/src/abstract/btcturk.js +1 -1
  33. package/dist/cjs/src/abstract/bybit.js +1 -1
  34. package/dist/cjs/src/abstract/cex.js +1 -1
  35. package/dist/cjs/src/abstract/coinbase.js +1 -1
  36. package/dist/cjs/src/abstract/coinbaseexchange.js +1 -1
  37. package/dist/cjs/src/abstract/coinbaseinternational.js +1 -1
  38. package/dist/cjs/src/abstract/coincatch.js +1 -1
  39. package/dist/cjs/src/abstract/coincheck.js +1 -1
  40. package/dist/cjs/src/abstract/coinex.js +1 -1
  41. package/dist/cjs/src/abstract/coinmate.js +1 -1
  42. package/dist/cjs/src/abstract/coinmetro.js +1 -1
  43. package/dist/cjs/src/abstract/coinone.js +1 -1
  44. package/dist/cjs/src/abstract/coinsph.js +1 -1
  45. package/dist/cjs/src/abstract/coinspot.js +1 -1
  46. package/dist/cjs/src/abstract/cryptocom.js +1 -1
  47. package/dist/cjs/src/abstract/cryptomus.js +1 -1
  48. package/dist/cjs/src/abstract/defx.js +1 -1
  49. package/dist/cjs/src/abstract/delta.js +1 -1
  50. package/dist/cjs/src/abstract/deribit.js +1 -1
  51. package/dist/cjs/src/abstract/derive.js +1 -1
  52. package/dist/cjs/src/abstract/digifinex.js +1 -1
  53. package/dist/cjs/src/abstract/exmo.js +1 -1
  54. package/dist/cjs/src/abstract/foxbit.js +1 -1
  55. package/dist/cjs/src/abstract/gate.js +1 -1
  56. package/dist/cjs/src/abstract/gemini.js +1 -1
  57. package/dist/cjs/src/abstract/hashkey.js +1 -1
  58. package/dist/cjs/src/abstract/hibachi.js +1 -1
  59. package/dist/cjs/src/abstract/hitbtc.js +1 -1
  60. package/dist/cjs/src/abstract/hollaex.js +1 -1
  61. package/dist/cjs/src/abstract/htx.js +1 -1
  62. package/dist/cjs/src/abstract/hyperliquid.js +1 -1
  63. package/dist/cjs/src/abstract/independentreserve.js +1 -1
  64. package/dist/cjs/src/abstract/indodax.js +1 -1
  65. package/dist/cjs/src/abstract/kraken.js +1 -1
  66. package/dist/cjs/src/abstract/krakenfutures.js +1 -1
  67. package/dist/cjs/src/abstract/kucoin.js +1 -1
  68. package/dist/cjs/src/abstract/kucoinfutures.js +1 -1
  69. package/dist/cjs/src/abstract/latoken.js +1 -1
  70. package/dist/cjs/src/abstract/lbank.js +1 -1
  71. package/dist/cjs/src/abstract/luno.js +1 -1
  72. package/dist/cjs/src/abstract/mercado.js +1 -1
  73. package/dist/cjs/src/abstract/mexc.js +1 -1
  74. package/dist/cjs/src/abstract/modetrade.js +1 -1
  75. package/dist/cjs/src/abstract/ndax.js +1 -1
  76. package/dist/cjs/src/abstract/novadax.js +1 -1
  77. package/dist/cjs/src/abstract/oceanex.js +1 -1
  78. package/dist/cjs/src/abstract/okcoin.js +1 -1
  79. package/dist/cjs/src/abstract/okx.js +1 -1
  80. package/dist/cjs/src/abstract/onetrading.js +1 -1
  81. package/dist/cjs/src/abstract/oxfun.js +1 -1
  82. package/dist/cjs/src/abstract/p2b.js +1 -1
  83. package/dist/cjs/src/abstract/paradex.js +1 -1
  84. package/dist/cjs/src/abstract/paymium.js +1 -1
  85. package/dist/cjs/src/abstract/phemex.js +1 -1
  86. package/dist/cjs/src/abstract/poloniex.js +1 -1
  87. package/dist/cjs/src/abstract/probit.js +1 -1
  88. package/dist/cjs/src/abstract/timex.js +1 -1
  89. package/dist/cjs/src/abstract/tokocrypto.js +1 -1
  90. package/dist/cjs/src/abstract/tradeogre.js +1 -1
  91. package/dist/cjs/src/abstract/upbit.js +1 -1
  92. package/dist/cjs/src/abstract/wavesexchange.js +1 -1
  93. package/dist/cjs/src/abstract/whitebit.js +1 -1
  94. package/dist/cjs/src/abstract/woo.js +1 -1
  95. package/dist/cjs/src/abstract/woofipro.js +1 -1
  96. package/dist/cjs/src/abstract/xt.js +1 -1
  97. package/dist/cjs/src/abstract/yobit.js +1 -1
  98. package/dist/cjs/src/abstract/zaif.js +1 -1
  99. package/dist/cjs/src/abstract/zonda.js +1 -1
  100. package/dist/cjs/src/alpaca.js +1 -1
  101. package/dist/cjs/src/apex.js +1 -1
  102. package/dist/cjs/src/ascendex.js +1 -1
  103. package/dist/cjs/src/backpack.js +2280 -0
  104. package/dist/cjs/src/base/Exchange.js +164 -65
  105. package/dist/cjs/src/base/Precise.js +0 -6
  106. package/dist/cjs/src/base/errors.js +0 -6
  107. package/dist/cjs/src/base/functions/crypto.js +1 -1
  108. package/dist/cjs/src/base/functions/encode.js +9 -1
  109. package/dist/cjs/src/base/functions/misc.js +0 -1
  110. package/dist/cjs/src/base/functions/number.js +0 -6
  111. package/dist/cjs/src/base/functions/platform.js +0 -6
  112. package/dist/cjs/src/base/functions/rsa.js +14 -2
  113. package/dist/cjs/src/base/functions/string.js +0 -6
  114. package/dist/cjs/src/base/functions/throttle.js +1 -1
  115. package/dist/cjs/src/base/functions/time.js +0 -6
  116. package/dist/cjs/src/base/functions/totp.js +0 -1
  117. package/dist/cjs/src/base/functions/type.js +0 -6
  118. package/dist/cjs/src/base/functions.js +2 -1
  119. package/dist/cjs/src/base/ws/Cache.js +0 -6
  120. package/dist/cjs/src/base/ws/Client.js +0 -1
  121. package/dist/cjs/src/base/ws/Future.js +1 -1
  122. package/dist/cjs/src/base/ws/OrderBook.js +1 -1
  123. package/dist/cjs/src/base/ws/OrderBookSide.js +0 -6
  124. package/dist/cjs/src/base/ws/WsClient.js +1 -1
  125. package/dist/cjs/src/bequant.js +1 -1
  126. package/dist/cjs/src/bigone.js +1 -1
  127. package/dist/cjs/src/binance.js +8 -5
  128. package/dist/cjs/src/binancecoinm.js +1 -1
  129. package/dist/cjs/src/binanceus.js +1 -1
  130. package/dist/cjs/src/binanceusdm.js +1 -1
  131. package/dist/cjs/src/bingx.js +1 -1
  132. package/dist/cjs/src/bit2c.js +1 -1
  133. package/dist/cjs/src/bitbank.js +2 -2
  134. package/dist/cjs/src/bitbns.js +1 -1
  135. package/dist/cjs/src/bitfinex.js +1 -1
  136. package/dist/cjs/src/bitflyer.js +1 -1
  137. package/dist/cjs/src/bitget.js +57 -10
  138. package/dist/cjs/src/bithumb.js +1 -1
  139. package/dist/cjs/src/bitmart.js +1 -1
  140. package/dist/cjs/src/bitmex.js +1 -1
  141. package/dist/cjs/src/bitopro.js +1 -1
  142. package/dist/cjs/src/bitrue.js +1 -1
  143. package/dist/cjs/src/bitso.js +1 -1
  144. package/dist/cjs/src/bitstamp.js +1 -1
  145. package/dist/cjs/src/bitteam.js +1 -1
  146. package/dist/cjs/src/bittrade.js +1 -1
  147. package/dist/cjs/src/bitvavo.js +8 -0
  148. package/dist/cjs/src/blockchaincom.js +1 -1
  149. package/dist/cjs/src/blofin.js +1 -1
  150. package/dist/cjs/src/btcalpha.js +1 -1
  151. package/dist/cjs/src/btcbox.js +1 -1
  152. package/dist/cjs/src/btcmarkets.js +1 -1
  153. package/dist/cjs/src/btcturk.js +1 -1
  154. package/dist/cjs/src/bybit.js +21 -7
  155. package/dist/cjs/src/cex.js +1 -1
  156. package/dist/cjs/src/coinbase.js +28 -10
  157. package/dist/cjs/src/coinbaseadvanced.js +1 -1
  158. package/dist/cjs/src/coincatch.js +34 -21
  159. package/dist/cjs/src/coincheck.js +1 -1
  160. package/dist/cjs/src/coinex.js +1 -1
  161. package/dist/cjs/src/coinmate.js +1 -1
  162. package/dist/cjs/src/coinmetro.js +12 -1
  163. package/dist/cjs/src/coinone.js +1 -1
  164. package/dist/cjs/src/coinsph.js +0 -1
  165. package/dist/cjs/src/coinspot.js +1 -1
  166. package/dist/cjs/src/cryptocom.js +1 -1
  167. package/dist/cjs/src/cryptomus.js +1 -1
  168. package/dist/cjs/src/defx.js +1 -1
  169. package/dist/cjs/src/delta.js +2 -1
  170. package/dist/cjs/src/deribit.js +1 -1
  171. package/dist/cjs/src/derive.js +1 -1
  172. package/dist/cjs/src/digifinex.js +1 -1
  173. package/dist/cjs/src/exmo.js +1 -1
  174. package/dist/cjs/src/fmfwio.js +1 -1
  175. package/dist/cjs/src/foxbit.js +1 -1
  176. package/dist/cjs/src/gate.js +8 -2
  177. package/dist/cjs/src/gateio.js +1 -1
  178. package/dist/cjs/src/gemini.js +11 -6
  179. package/dist/cjs/src/hashkey.js +1 -1
  180. package/dist/cjs/src/hibachi.js +1 -1
  181. package/dist/cjs/src/hitbtc.js +0 -1
  182. package/dist/cjs/src/hollaex.js +1 -1
  183. package/dist/cjs/src/htx.js +1 -1
  184. package/dist/cjs/src/huobi.js +1 -1
  185. package/dist/cjs/src/hyperliquid.js +1 -1
  186. package/dist/cjs/src/independentreserve.js +1 -1
  187. package/dist/cjs/src/indodax.js +1 -1
  188. package/dist/cjs/src/kraken.js +1 -1
  189. package/dist/cjs/src/krakenfutures.js +2 -2
  190. package/dist/cjs/src/kucoin.js +1 -1
  191. package/dist/cjs/src/kucoinfutures.js +55 -6
  192. package/dist/cjs/src/latoken.js +1 -1
  193. package/dist/cjs/src/lbank.js +1 -1
  194. package/dist/cjs/src/luno.js +1 -1
  195. package/dist/cjs/src/mercado.js +1 -1
  196. package/dist/cjs/src/mexc.js +1 -1
  197. package/dist/cjs/src/modetrade.js +1 -1
  198. package/dist/cjs/src/myokx.js +1 -1
  199. package/dist/cjs/src/ndax.js +1 -1
  200. package/dist/cjs/src/novadax.js +1 -1
  201. package/dist/cjs/src/oceanex.js +1 -1
  202. package/dist/cjs/src/okcoin.js +1 -1
  203. package/dist/cjs/src/okx.js +27 -16
  204. package/dist/cjs/src/okxus.js +1 -1
  205. package/dist/cjs/src/onetrading.js +161 -66
  206. package/dist/cjs/src/oxfun.js +1 -1
  207. package/dist/cjs/src/p2b.js +1 -1
  208. package/dist/cjs/src/paradex.js +1 -1
  209. package/dist/cjs/src/paymium.js +1 -1
  210. package/dist/cjs/src/phemex.js +15 -9
  211. package/dist/cjs/src/poloniex.js +1 -1
  212. package/dist/cjs/src/pro/alpaca.js +1 -1
  213. package/dist/cjs/src/pro/apex.js +1 -1
  214. package/dist/cjs/src/pro/ascendex.js +1 -1
  215. package/dist/cjs/src/pro/backpack.js +1325 -0
  216. package/dist/cjs/src/pro/bequant.js +1 -1
  217. package/dist/cjs/src/pro/binance.js +9 -0
  218. package/dist/cjs/src/pro/binancecoinm.js +1 -1
  219. package/dist/cjs/src/pro/binanceus.js +1 -1
  220. package/dist/cjs/src/pro/binanceusdm.js +1 -1
  221. package/dist/cjs/src/pro/bingx.js +1 -1
  222. package/dist/cjs/src/pro/bitfinex.js +1 -1
  223. package/dist/cjs/src/pro/bitget.js +152 -26
  224. package/dist/cjs/src/pro/bithumb.js +1 -1
  225. package/dist/cjs/src/pro/bitmart.js +1 -1
  226. package/dist/cjs/src/pro/bitmex.js +1 -1
  227. package/dist/cjs/src/pro/bitrue.js +1 -1
  228. package/dist/cjs/src/pro/bitstamp.js +1 -1
  229. package/dist/cjs/src/pro/bitvavo.js +1 -1
  230. package/dist/cjs/src/pro/blockchaincom.js +1 -1
  231. package/dist/cjs/src/pro/blofin.js +1 -1
  232. package/dist/cjs/src/pro/bybit.js +68 -9
  233. package/dist/cjs/src/pro/cex.js +1 -1
  234. package/dist/cjs/src/pro/coinbase.js +227 -1
  235. package/dist/cjs/src/pro/coinbaseadvanced.js +1 -1
  236. package/dist/cjs/src/pro/coinbaseexchange.js +1 -1
  237. package/dist/cjs/src/pro/coinbaseinternational.js +1 -1
  238. package/dist/cjs/src/pro/coincatch.js +1 -1
  239. package/dist/cjs/src/pro/coincheck.js +1 -1
  240. package/dist/cjs/src/pro/coinex.js +11 -12
  241. package/dist/cjs/src/pro/coinone.js +1 -1
  242. package/dist/cjs/src/pro/cryptocom.js +1 -1
  243. package/dist/cjs/src/pro/defx.js +1 -1
  244. package/dist/cjs/src/pro/deribit.js +1 -1
  245. package/dist/cjs/src/pro/exmo.js +1 -1
  246. package/dist/cjs/src/pro/gate.js +1 -1
  247. package/dist/cjs/src/pro/gateio.js +1 -1
  248. package/dist/cjs/src/pro/gemini.js +1 -1
  249. package/dist/cjs/src/pro/hashkey.js +1 -1
  250. package/dist/cjs/src/pro/hitbtc.js +1 -1
  251. package/dist/cjs/src/pro/hollaex.js +1 -1
  252. package/dist/cjs/src/pro/htx.js +1 -1
  253. package/dist/cjs/src/pro/huobi.js +1 -1
  254. package/dist/cjs/src/pro/hyperliquid.js +1 -1
  255. package/dist/cjs/src/pro/independentreserve.js +1 -1
  256. package/dist/cjs/src/pro/kraken.js +1 -1
  257. package/dist/cjs/src/pro/krakenfutures.js +1 -1
  258. package/dist/cjs/src/pro/kucoin.js +1 -1
  259. package/dist/cjs/src/pro/kucoinfutures.js +1 -1
  260. package/dist/cjs/src/pro/lbank.js +0 -1
  261. package/dist/cjs/src/pro/luno.js +1 -1
  262. package/dist/cjs/src/pro/mexc.js +1 -1
  263. package/dist/cjs/src/pro/myokx.js +1 -1
  264. package/dist/cjs/src/pro/ndax.js +1 -1
  265. package/dist/cjs/src/pro/okcoin.js +1 -1
  266. package/dist/cjs/src/pro/okx.js +1 -1
  267. package/dist/cjs/src/pro/okxus.js +1 -1
  268. package/dist/cjs/src/pro/onetrading.js +1 -1
  269. package/dist/cjs/src/pro/oxfun.js +1 -1
  270. package/dist/cjs/src/pro/p2b.js +1 -1
  271. package/dist/cjs/src/pro/paradex.js +1 -1
  272. package/dist/cjs/src/pro/phemex.js +1 -1
  273. package/dist/cjs/src/pro/poloniex.js +1 -1
  274. package/dist/cjs/src/pro/probit.js +1 -1
  275. package/dist/cjs/src/pro/tradeogre.js +1 -1
  276. package/dist/cjs/src/pro/upbit.js +1 -1
  277. package/dist/cjs/src/pro/whitebit.js +1 -1
  278. package/dist/cjs/src/pro/xt.js +1 -1
  279. package/dist/cjs/src/probit.js +1 -1
  280. package/dist/cjs/src/protobuf/mexc/compiled.cjs.js +1 -0
  281. package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +0 -6
  282. package/dist/cjs/src/static_dependencies/ethers/address/address.js +1 -1
  283. package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +0 -6
  284. package/dist/cjs/src/static_dependencies/ethers/coders/address.js +0 -1
  285. package/dist/cjs/src/static_dependencies/ethers/coders/anonymous.js +0 -1
  286. package/dist/cjs/src/static_dependencies/ethers/coders/array.js +0 -1
  287. package/dist/cjs/src/static_dependencies/ethers/coders/boolean.js +0 -1
  288. package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +0 -1
  289. package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +0 -1
  290. package/dist/cjs/src/static_dependencies/ethers/coders/null.js +0 -1
  291. package/dist/cjs/src/static_dependencies/ethers/coders/number.js +0 -1
  292. package/dist/cjs/src/static_dependencies/ethers/coders/string.js +0 -1
  293. package/dist/cjs/src/static_dependencies/ethers/coders/tuple.js +0 -1
  294. package/dist/cjs/src/static_dependencies/ethers/fragments.js +0 -6
  295. package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +0 -6
  296. package/dist/cjs/src/static_dependencies/ethers/index.js +10 -1
  297. package/dist/cjs/src/static_dependencies/ethers/interface.js +0 -6
  298. package/dist/cjs/src/static_dependencies/ethers/typed.js +0 -6
  299. package/dist/cjs/src/static_dependencies/ethers/utils/base58.js +13 -1
  300. package/dist/cjs/src/static_dependencies/ethers/utils/data.js +6 -1
  301. package/dist/cjs/src/static_dependencies/ethers/utils/errors.js +9 -1
  302. package/dist/cjs/src/static_dependencies/ethers/utils/events.js +0 -6
  303. package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +0 -6
  304. package/dist/cjs/src/static_dependencies/ethers/utils/index.js +7 -1
  305. package/dist/cjs/src/static_dependencies/ethers/utils/maths.js +5 -1
  306. package/dist/cjs/src/static_dependencies/ethers/utils/properties.js +0 -6
  307. package/dist/cjs/src/static_dependencies/ethers/utils/utf8.js +8 -1
  308. package/dist/cjs/src/static_dependencies/fflake/browser.js +1 -1
  309. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -1
  310. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -1
  311. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +1 -1
  312. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -6
  313. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -6
  314. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -6
  315. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -1
  316. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +1 -1
  317. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -6
  318. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +1 -1
  319. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +1 -1
  320. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/util.js +0 -6
  321. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +1 -1
  322. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +0 -6
  323. package/dist/cjs/src/static_dependencies/messagepack/msgpack.js +0 -6
  324. package/dist/cjs/src/static_dependencies/noble-curves/_shortw_utils.js +1 -1
  325. package/dist/cjs/src/static_dependencies/noble-curves/abstract/curve.js +1 -1
  326. package/dist/cjs/src/static_dependencies/noble-curves/abstract/edwards.js +1 -1
  327. package/dist/cjs/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +0 -1
  328. package/dist/cjs/src/static_dependencies/noble-curves/abstract/modular.js +1 -1
  329. package/dist/cjs/src/static_dependencies/noble-curves/abstract/montgomery.js +1 -1
  330. package/dist/cjs/src/static_dependencies/noble-curves/abstract/poseidon.js +1 -1
  331. package/dist/cjs/src/static_dependencies/noble-curves/abstract/utils.js +0 -6
  332. package/dist/cjs/src/static_dependencies/noble-curves/abstract/weierstrass.js +1 -1
  333. package/dist/cjs/src/static_dependencies/noble-curves/ed25519.js +1 -1
  334. package/dist/cjs/src/static_dependencies/noble-curves/p256.js +1 -1
  335. package/dist/cjs/src/static_dependencies/noble-curves/secp256k1.js +1 -1
  336. package/dist/cjs/src/static_dependencies/noble-hashes/_assert.js +0 -6
  337. package/dist/cjs/src/static_dependencies/noble-hashes/_sha2.js +0 -1
  338. package/dist/cjs/src/static_dependencies/noble-hashes/_u64.js +0 -6
  339. package/dist/cjs/src/static_dependencies/noble-hashes/crypto.js +0 -6
  340. package/dist/cjs/src/static_dependencies/noble-hashes/hmac.js +0 -1
  341. package/dist/cjs/src/static_dependencies/noble-hashes/md5.js +0 -1
  342. package/dist/cjs/src/static_dependencies/noble-hashes/sha1.js +0 -1
  343. package/dist/cjs/src/static_dependencies/noble-hashes/sha256.js +0 -1
  344. package/dist/cjs/src/static_dependencies/noble-hashes/sha3.js +0 -1
  345. package/dist/cjs/src/static_dependencies/noble-hashes/sha512.js +0 -1
  346. package/dist/cjs/src/static_dependencies/noble-hashes/utils.js +1 -1
  347. package/dist/cjs/src/static_dependencies/node-fetch/body.js +5 -1
  348. package/dist/cjs/src/static_dependencies/node-fetch/errors/abort-error.js +0 -1
  349. package/dist/cjs/src/static_dependencies/node-fetch/errors/base.js +0 -6
  350. package/dist/cjs/src/static_dependencies/node-fetch/errors/fetch-error.js +0 -1
  351. package/dist/cjs/src/static_dependencies/node-fetch/headers.js +5 -1
  352. package/dist/cjs/src/static_dependencies/node-fetch/index.js +7 -1
  353. package/dist/cjs/src/static_dependencies/node-fetch/request.js +7 -1
  354. package/dist/cjs/src/static_dependencies/node-fetch/response.js +5 -1
  355. package/dist/cjs/src/static_dependencies/node-fetch/utils/get-search.js +0 -6
  356. package/dist/cjs/src/static_dependencies/node-fetch/utils/is-redirect.js +0 -6
  357. package/dist/cjs/src/static_dependencies/node-fetch/utils/is.js +0 -6
  358. package/dist/cjs/src/static_dependencies/node-fetch/utils/referrer.js +0 -1
  359. package/dist/cjs/src/static_dependencies/proxies/agent-base/index.js +0 -1
  360. package/dist/cjs/src/static_dependencies/proxies/http-proxy-agent/index.js +0 -1
  361. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/index.js +0 -1
  362. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +0 -6
  363. package/dist/cjs/src/static_dependencies/scure-base/index.js +0 -6
  364. package/dist/cjs/src/static_dependencies/scure-starknet/index.js +1 -1
  365. package/dist/cjs/src/static_dependencies/starknet/constants.js +1 -1
  366. package/dist/cjs/src/static_dependencies/starknet/types/calldata.js +0 -6
  367. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/abi.js +0 -6
  368. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/index.js +0 -6
  369. package/dist/cjs/src/static_dependencies/starknet/types/lib/index.js +0 -6
  370. package/dist/cjs/src/static_dependencies/starknet/types/typedData.js +0 -6
  371. package/dist/cjs/src/static_dependencies/starknet/utils/assert.js +0 -6
  372. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +1 -1
  373. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +1 -1
  374. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +1 -1
  375. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/byteArray.js +0 -1
  376. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/cairo.js +0 -1
  377. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +0 -6
  378. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +0 -6
  379. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +0 -6
  380. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/formatter.js +0 -1
  381. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/index.js +1 -1
  382. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/index.js +0 -1
  383. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +0 -1
  384. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +0 -6
  385. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +0 -1
  386. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/requestParser.js +0 -1
  387. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/responseParser.js +0 -1
  388. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/tuple.js +1 -1
  389. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/validate.js +4 -1
  390. package/dist/cjs/src/static_dependencies/starknet/utils/encode.js +0 -1
  391. package/dist/cjs/src/static_dependencies/starknet/utils/hash/classHash.js +3 -1
  392. package/dist/cjs/src/static_dependencies/starknet/utils/merkle.js +0 -1
  393. package/dist/cjs/src/static_dependencies/starknet/utils/num.js +0 -1
  394. package/dist/cjs/src/static_dependencies/starknet/utils/selector.js +0 -1
  395. package/dist/cjs/src/static_dependencies/starknet/utils/shortString.js +0 -1
  396. package/dist/cjs/src/static_dependencies/starknet/utils/typedData.js +1 -1
  397. package/dist/cjs/src/static_dependencies/watchable/src/unpromise.js +0 -6
  398. package/dist/cjs/src/static_dependencies/zklink/zklink-sdk-web.js +0 -6
  399. package/dist/cjs/src/timex.js +0 -1
  400. package/dist/cjs/src/tokocrypto.js +1 -1
  401. package/dist/cjs/src/tradeogre.js +1 -1
  402. package/dist/cjs/src/upbit.js +1 -1
  403. package/dist/cjs/src/wavesexchange.js +1 -1
  404. package/dist/cjs/src/whitebit.js +1 -1
  405. package/dist/cjs/src/woo.js +1 -1
  406. package/dist/cjs/src/woofipro.js +1 -1
  407. package/dist/cjs/src/xt.js +10 -1
  408. package/dist/cjs/src/yobit.js +10 -1
  409. package/dist/cjs/src/zaif.js +1 -1
  410. package/dist/cjs/src/zonda.js +1 -1
  411. package/js/ccxt.d.ts +8 -2
  412. package/js/ccxt.js +6 -8
  413. package/js/src/abstract/alpaca.js +0 -6
  414. package/js/src/abstract/apex.js +0 -6
  415. package/js/src/abstract/ascendex.js +0 -6
  416. package/js/src/abstract/backpack.d.ts +63 -0
  417. package/js/src/abstract/backpack.js +5 -0
  418. package/js/src/abstract/bequant.js +0 -6
  419. package/js/src/abstract/bigone.js +0 -6
  420. package/js/src/abstract/binance.js +0 -6
  421. package/js/src/abstract/binancecoinm.js +0 -6
  422. package/js/src/abstract/binanceus.js +0 -6
  423. package/js/src/abstract/binanceusdm.js +0 -6
  424. package/js/src/abstract/bingx.js +0 -6
  425. package/js/src/abstract/bit2c.js +0 -6
  426. package/js/src/abstract/bitbank.js +0 -6
  427. package/js/src/abstract/bitbns.js +0 -6
  428. package/js/src/abstract/bitfinex.js +0 -6
  429. package/js/src/abstract/bitflyer.js +0 -6
  430. package/js/src/abstract/bitget.js +0 -6
  431. package/js/src/abstract/bithumb.js +0 -6
  432. package/js/src/abstract/bitmart.js +0 -6
  433. package/js/src/abstract/bitmex.js +0 -6
  434. package/js/src/abstract/bitopro.js +0 -6
  435. package/js/src/abstract/bitrue.js +0 -6
  436. package/js/src/abstract/bitso.js +0 -6
  437. package/js/src/abstract/bitstamp.js +0 -6
  438. package/js/src/abstract/bitteam.js +0 -6
  439. package/js/src/abstract/bittrade.js +0 -6
  440. package/js/src/abstract/bitvavo.js +0 -6
  441. package/js/src/abstract/blockchaincom.js +0 -6
  442. package/js/src/abstract/blofin.js +0 -6
  443. package/js/src/abstract/btcalpha.js +0 -6
  444. package/js/src/abstract/btcbox.js +0 -6
  445. package/js/src/abstract/btcmarkets.js +0 -6
  446. package/js/src/abstract/btcturk.js +0 -6
  447. package/js/src/abstract/bybit.js +0 -6
  448. package/js/src/abstract/cex.js +0 -6
  449. package/js/src/abstract/coinbase.js +0 -6
  450. package/js/src/abstract/coinbaseadvanced.js +0 -6
  451. package/js/src/abstract/coinbaseexchange.js +0 -6
  452. package/js/src/abstract/coinbaseinternational.js +0 -6
  453. package/js/src/abstract/coincatch.js +0 -6
  454. package/js/src/abstract/coincheck.js +0 -6
  455. package/js/src/abstract/coinex.js +0 -6
  456. package/js/src/abstract/coinmate.js +0 -6
  457. package/js/src/abstract/coinmetro.js +0 -6
  458. package/js/src/abstract/coinone.js +0 -6
  459. package/js/src/abstract/coinsph.js +0 -6
  460. package/js/src/abstract/coinspot.js +0 -6
  461. package/js/src/abstract/cryptocom.js +0 -6
  462. package/js/src/abstract/cryptomus.js +0 -6
  463. package/js/src/abstract/defx.js +0 -6
  464. package/js/src/abstract/delta.js +0 -6
  465. package/js/src/abstract/deribit.js +0 -6
  466. package/js/src/abstract/derive.js +0 -6
  467. package/js/src/abstract/digifinex.js +0 -6
  468. package/js/src/abstract/exmo.js +0 -6
  469. package/js/src/abstract/fmfwio.js +0 -6
  470. package/js/src/abstract/foxbit.js +0 -6
  471. package/js/src/abstract/gate.js +0 -6
  472. package/js/src/abstract/gateio.js +0 -6
  473. package/js/src/abstract/gemini.js +0 -6
  474. package/js/src/abstract/hashkey.js +0 -6
  475. package/js/src/abstract/hibachi.js +0 -6
  476. package/js/src/abstract/hitbtc.js +0 -6
  477. package/js/src/abstract/hollaex.js +0 -6
  478. package/js/src/abstract/htx.js +0 -6
  479. package/js/src/abstract/huobi.js +0 -6
  480. package/js/src/abstract/hyperliquid.js +0 -6
  481. package/js/src/abstract/independentreserve.js +0 -6
  482. package/js/src/abstract/indodax.js +0 -6
  483. package/js/src/abstract/kraken.js +0 -6
  484. package/js/src/abstract/krakenfutures.js +0 -6
  485. package/js/src/abstract/kucoin.js +0 -6
  486. package/js/src/abstract/kucoinfutures.d.ts +1 -0
  487. package/js/src/abstract/kucoinfutures.js +0 -6
  488. package/js/src/abstract/latoken.js +0 -6
  489. package/js/src/abstract/lbank.js +0 -6
  490. package/js/src/abstract/luno.js +0 -6
  491. package/js/src/abstract/mercado.js +0 -6
  492. package/js/src/abstract/mexc.js +0 -6
  493. package/js/src/abstract/modetrade.js +0 -6
  494. package/js/src/abstract/myokx.d.ts +1 -0
  495. package/js/src/abstract/myokx.js +0 -6
  496. package/js/src/abstract/ndax.js +0 -6
  497. package/js/src/abstract/novadax.js +0 -6
  498. package/js/src/abstract/oceanex.js +0 -6
  499. package/js/src/abstract/okcoin.js +0 -6
  500. package/js/src/abstract/okx.d.ts +1 -0
  501. package/js/src/abstract/okx.js +0 -6
  502. package/js/src/abstract/okxus.d.ts +1 -0
  503. package/js/src/abstract/okxus.js +0 -6
  504. package/js/src/abstract/onetrading.js +0 -6
  505. package/js/src/abstract/oxfun.js +0 -6
  506. package/js/src/abstract/p2b.js +0 -6
  507. package/js/src/abstract/paradex.js +0 -6
  508. package/js/src/abstract/paymium.js +0 -6
  509. package/js/src/abstract/phemex.d.ts +1 -1
  510. package/js/src/abstract/phemex.js +0 -6
  511. package/js/src/abstract/poloniex.js +0 -6
  512. package/js/src/abstract/probit.js +0 -6
  513. package/js/src/abstract/timex.js +0 -6
  514. package/js/src/abstract/tokocrypto.js +0 -6
  515. package/js/src/abstract/tradeogre.js +0 -6
  516. package/js/src/abstract/upbit.js +0 -6
  517. package/js/src/abstract/wavesexchange.js +0 -6
  518. package/js/src/abstract/whitebit.js +0 -6
  519. package/js/src/abstract/woo.js +0 -6
  520. package/js/src/abstract/woofipro.js +0 -6
  521. package/js/src/abstract/xt.js +0 -6
  522. package/js/src/abstract/yobit.js +0 -6
  523. package/js/src/abstract/zaif.js +0 -6
  524. package/js/src/abstract/zonda.js +0 -6
  525. package/js/src/alpaca.js +0 -6
  526. package/js/src/apex.js +0 -6
  527. package/js/src/ascendex.js +0 -6
  528. package/js/src/backpack.d.ts +371 -0
  529. package/js/src/backpack.js +2273 -0
  530. package/js/src/base/Exchange.d.ts +43 -40
  531. package/js/src/base/Exchange.js +169 -75
  532. package/js/src/base/Precise.js +0 -6
  533. package/js/src/base/errorHierarchy.js +0 -6
  534. package/js/src/base/errors.js +0 -6
  535. package/js/src/base/functions/crypto.js +0 -6
  536. package/js/src/base/functions/encode.d.ts +2 -1
  537. package/js/src/base/functions/encode.js +8 -7
  538. package/js/src/base/functions/generic.js +0 -6
  539. package/js/src/base/functions/misc.js +0 -6
  540. package/js/src/base/functions/number.js +0 -6
  541. package/js/src/base/functions/platform.js +0 -6
  542. package/js/src/base/functions/rsa.js +16 -9
  543. package/js/src/base/functions/string.js +0 -6
  544. package/js/src/base/functions/throttle.js +0 -6
  545. package/js/src/base/functions/time.js +0 -6
  546. package/js/src/base/functions/totp.js +0 -6
  547. package/js/src/base/functions/type.js +0 -6
  548. package/js/src/base/functions.js +0 -6
  549. package/js/src/base/types.d.ts +1 -3
  550. package/js/src/base/types.js +0 -6
  551. package/js/src/base/ws/Cache.js +0 -6
  552. package/js/src/base/ws/Client.js +0 -6
  553. package/js/src/base/ws/Future.js +0 -6
  554. package/js/src/base/ws/OrderBook.js +0 -6
  555. package/js/src/base/ws/OrderBookSide.js +0 -6
  556. package/js/src/base/ws/WsClient.js +0 -6
  557. package/js/src/base/ws/functions.js +0 -6
  558. package/js/src/bequant.js +0 -6
  559. package/js/src/bigone.js +0 -6
  560. package/js/src/binance.d.ts +1 -1
  561. package/js/src/binance.js +7 -10
  562. package/js/src/binancecoinm.js +0 -6
  563. package/js/src/binanceus.js +0 -6
  564. package/js/src/binanceusdm.js +0 -6
  565. package/js/src/bingx.js +0 -6
  566. package/js/src/bit2c.js +0 -6
  567. package/js/src/bitbank.js +1 -7
  568. package/js/src/bitbns.js +0 -6
  569. package/js/src/bitfinex.js +0 -6
  570. package/js/src/bitflyer.js +0 -6
  571. package/js/src/bitget.d.ts +3 -1
  572. package/js/src/bitget.js +56 -15
  573. package/js/src/bithumb.js +0 -6
  574. package/js/src/bitmart.js +0 -6
  575. package/js/src/bitmex.js +0 -6
  576. package/js/src/bitopro.js +0 -6
  577. package/js/src/bitrue.js +0 -6
  578. package/js/src/bitso.js +0 -6
  579. package/js/src/bitstamp.js +0 -6
  580. package/js/src/bitteam.js +0 -6
  581. package/js/src/bittrade.js +0 -6
  582. package/js/src/bitvavo.js +8 -6
  583. package/js/src/blockchaincom.js +0 -6
  584. package/js/src/blofin.js +0 -6
  585. package/js/src/btcalpha.js +0 -6
  586. package/js/src/btcbox.js +0 -6
  587. package/js/src/btcmarkets.js +0 -6
  588. package/js/src/btcturk.js +0 -6
  589. package/js/src/bybit.js +20 -12
  590. package/js/src/cex.js +0 -6
  591. package/js/src/coinbase.d.ts +2 -2
  592. package/js/src/coinbase.js +28 -16
  593. package/js/src/coinbaseadvanced.js +0 -6
  594. package/js/src/coinbaseexchange.js +0 -6
  595. package/js/src/coinbaseinternational.js +0 -6
  596. package/js/src/coincatch.d.ts +2 -0
  597. package/js/src/coincatch.js +33 -26
  598. package/js/src/coincheck.js +0 -6
  599. package/js/src/coinex.js +0 -6
  600. package/js/src/coinmate.js +0 -6
  601. package/js/src/coinmetro.js +11 -6
  602. package/js/src/coinone.js +0 -6
  603. package/js/src/coinsph.js +0 -6
  604. package/js/src/coinspot.js +0 -6
  605. package/js/src/cryptocom.js +0 -6
  606. package/js/src/cryptomus.js +0 -6
  607. package/js/src/defx.js +0 -6
  608. package/js/src/delta.js +1 -6
  609. package/js/src/deribit.js +0 -6
  610. package/js/src/derive.js +0 -6
  611. package/js/src/digifinex.js +0 -6
  612. package/js/src/exmo.js +0 -6
  613. package/js/src/fmfwio.js +0 -6
  614. package/js/src/foxbit.js +0 -6
  615. package/js/src/gate.d.ts +6 -0
  616. package/js/src/gate.js +7 -7
  617. package/js/src/gateio.js +0 -6
  618. package/js/src/gemini.js +10 -11
  619. package/js/src/hashkey.js +0 -6
  620. package/js/src/hibachi.js +0 -6
  621. package/js/src/hitbtc.js +0 -6
  622. package/js/src/hollaex.js +0 -6
  623. package/js/src/htx.js +0 -6
  624. package/js/src/huobi.js +0 -6
  625. package/js/src/hyperliquid.js +0 -6
  626. package/js/src/independentreserve.js +0 -6
  627. package/js/src/indodax.js +0 -6
  628. package/js/src/kraken.js +0 -6
  629. package/js/src/krakenfutures.js +1 -7
  630. package/js/src/kucoin.js +0 -6
  631. package/js/src/kucoinfutures.d.ts +14 -1
  632. package/js/src/kucoinfutures.js +54 -11
  633. package/js/src/latoken.js +0 -6
  634. package/js/src/lbank.js +0 -6
  635. package/js/src/luno.js +0 -6
  636. package/js/src/mercado.js +0 -6
  637. package/js/src/mexc.js +0 -6
  638. package/js/src/modetrade.js +0 -6
  639. package/js/src/myokx.js +0 -6
  640. package/js/src/ndax.js +0 -6
  641. package/js/src/novadax.js +0 -6
  642. package/js/src/oceanex.js +0 -6
  643. package/js/src/okcoin.js +0 -6
  644. package/js/src/okx.js +26 -21
  645. package/js/src/okxus.js +0 -6
  646. package/js/src/onetrading.d.ts +1 -0
  647. package/js/src/onetrading.js +160 -71
  648. package/js/src/oxfun.js +0 -6
  649. package/js/src/p2b.js +0 -6
  650. package/js/src/paradex.js +0 -6
  651. package/js/src/paymium.js +0 -6
  652. package/js/src/phemex.d.ts +3 -3
  653. package/js/src/phemex.js +15 -15
  654. package/js/src/poloniex.js +0 -6
  655. package/js/src/pro/alpaca.js +0 -6
  656. package/js/src/pro/apex.js +0 -6
  657. package/js/src/pro/ascendex.js +0 -6
  658. package/js/src/pro/backpack.d.ts +264 -0
  659. package/js/src/pro/backpack.js +1318 -0
  660. package/js/src/pro/bequant.js +0 -6
  661. package/js/src/pro/binance.js +9 -6
  662. package/js/src/pro/binancecoinm.js +0 -6
  663. package/js/src/pro/binanceus.js +0 -6
  664. package/js/src/pro/binanceusdm.js +0 -6
  665. package/js/src/pro/bingx.js +0 -6
  666. package/js/src/pro/bitfinex.js +0 -6
  667. package/js/src/pro/bitget.d.ts +9 -1
  668. package/js/src/pro/bitget.js +151 -31
  669. package/js/src/pro/bithumb.js +0 -6
  670. package/js/src/pro/bitmart.js +0 -6
  671. package/js/src/pro/bitmex.js +0 -6
  672. package/js/src/pro/bitopro.js +0 -6
  673. package/js/src/pro/bitrue.js +0 -6
  674. package/js/src/pro/bitstamp.js +0 -6
  675. package/js/src/pro/bittrade.js +0 -6
  676. package/js/src/pro/bitvavo.js +0 -6
  677. package/js/src/pro/blockchaincom.js +0 -6
  678. package/js/src/pro/blofin.js +0 -6
  679. package/js/src/pro/bybit.d.ts +4 -0
  680. package/js/src/pro/bybit.js +67 -14
  681. package/js/src/pro/cex.js +0 -6
  682. package/js/src/pro/coinbase.d.ts +85 -0
  683. package/js/src/pro/coinbase.js +226 -6
  684. package/js/src/pro/coinbaseadvanced.js +0 -6
  685. package/js/src/pro/coinbaseexchange.js +0 -6
  686. package/js/src/pro/coinbaseinternational.js +0 -6
  687. package/js/src/pro/coincatch.js +0 -6
  688. package/js/src/pro/coincheck.js +0 -6
  689. package/js/src/pro/coinex.js +11 -18
  690. package/js/src/pro/coinone.js +0 -6
  691. package/js/src/pro/cryptocom.js +0 -6
  692. package/js/src/pro/defx.js +0 -6
  693. package/js/src/pro/deribit.js +0 -6
  694. package/js/src/pro/derive.js +0 -6
  695. package/js/src/pro/exmo.js +0 -6
  696. package/js/src/pro/gate.js +0 -6
  697. package/js/src/pro/gateio.js +0 -6
  698. package/js/src/pro/gemini.js +0 -6
  699. package/js/src/pro/hashkey.js +0 -6
  700. package/js/src/pro/hitbtc.js +0 -6
  701. package/js/src/pro/hollaex.js +0 -6
  702. package/js/src/pro/htx.js +0 -6
  703. package/js/src/pro/huobi.js +0 -6
  704. package/js/src/pro/hyperliquid.js +0 -6
  705. package/js/src/pro/independentreserve.js +0 -6
  706. package/js/src/pro/kraken.js +0 -6
  707. package/js/src/pro/krakenfutures.js +0 -6
  708. package/js/src/pro/kucoin.js +0 -6
  709. package/js/src/pro/kucoinfutures.js +0 -6
  710. package/js/src/pro/lbank.js +0 -6
  711. package/js/src/pro/luno.js +0 -6
  712. package/js/src/pro/mexc.js +0 -6
  713. package/js/src/pro/modetrade.js +0 -6
  714. package/js/src/pro/myokx.js +0 -6
  715. package/js/src/pro/ndax.js +0 -6
  716. package/js/src/pro/okcoin.js +0 -6
  717. package/js/src/pro/okx.js +0 -6
  718. package/js/src/pro/okxus.js +0 -6
  719. package/js/src/pro/onetrading.js +0 -6
  720. package/js/src/pro/oxfun.js +0 -6
  721. package/js/src/pro/p2b.js +0 -6
  722. package/js/src/pro/paradex.js +0 -6
  723. package/js/src/pro/phemex.js +0 -6
  724. package/js/src/pro/poloniex.js +0 -6
  725. package/js/src/pro/probit.js +0 -6
  726. package/js/src/pro/tradeogre.js +0 -6
  727. package/js/src/pro/upbit.js +0 -6
  728. package/js/src/pro/whitebit.js +0 -6
  729. package/js/src/pro/woo.js +0 -6
  730. package/js/src/pro/woofipro.js +0 -6
  731. package/js/src/pro/xt.js +0 -6
  732. package/js/src/probit.js +0 -6
  733. package/js/src/protobuf/mexc/compiled.cjs +0 -6
  734. package/js/src/static_dependencies/ethers/abi-coder.js +0 -6
  735. package/js/src/static_dependencies/ethers/address/address.js +0 -6
  736. package/js/src/static_dependencies/ethers/address/checks.js +0 -6
  737. package/js/src/static_dependencies/ethers/address/contract-address.js +0 -6
  738. package/js/src/static_dependencies/ethers/address/index.js +0 -6
  739. package/js/src/static_dependencies/ethers/bytes32.js +0 -6
  740. package/js/src/static_dependencies/ethers/coders/abstract-coder.js +0 -6
  741. package/js/src/static_dependencies/ethers/coders/address.js +0 -6
  742. package/js/src/static_dependencies/ethers/coders/anonymous.js +0 -6
  743. package/js/src/static_dependencies/ethers/coders/array.js +0 -6
  744. package/js/src/static_dependencies/ethers/coders/boolean.js +0 -6
  745. package/js/src/static_dependencies/ethers/coders/bytes.js +0 -6
  746. package/js/src/static_dependencies/ethers/coders/fixed-bytes.js +0 -6
  747. package/js/src/static_dependencies/ethers/coders/null.js +0 -6
  748. package/js/src/static_dependencies/ethers/coders/number.js +0 -6
  749. package/js/src/static_dependencies/ethers/coders/string.js +0 -6
  750. package/js/src/static_dependencies/ethers/coders/tuple.js +0 -6
  751. package/js/src/static_dependencies/ethers/fragments.js +0 -6
  752. package/js/src/static_dependencies/ethers/hash/index.js +0 -6
  753. package/js/src/static_dependencies/ethers/hash/solidity.js +0 -6
  754. package/js/src/static_dependencies/ethers/hash/typed-data.js +0 -6
  755. package/js/src/static_dependencies/ethers/index.js +0 -6
  756. package/js/src/static_dependencies/ethers/interface.js +0 -6
  757. package/js/src/static_dependencies/ethers/typed.js +0 -6
  758. package/js/src/static_dependencies/ethers/utils/base58.js +0 -6
  759. package/js/src/static_dependencies/ethers/utils/base64-browser.js +0 -6
  760. package/js/src/static_dependencies/ethers/utils/base64.js +0 -6
  761. package/js/src/static_dependencies/ethers/utils/data.js +0 -6
  762. package/js/src/static_dependencies/ethers/utils/errors.js +0 -6
  763. package/js/src/static_dependencies/ethers/utils/events.js +0 -6
  764. package/js/src/static_dependencies/ethers/utils/fixednumber.js +0 -6
  765. package/js/src/static_dependencies/ethers/utils/index.js +0 -6
  766. package/js/src/static_dependencies/ethers/utils/maths.js +0 -6
  767. package/js/src/static_dependencies/ethers/utils/properties.js +0 -6
  768. package/js/src/static_dependencies/ethers/utils/rlp-decode.js +0 -6
  769. package/js/src/static_dependencies/ethers/utils/rlp-encode.js +0 -6
  770. package/js/src/static_dependencies/ethers/utils/rlp.js +0 -6
  771. package/js/src/static_dependencies/ethers/utils/units.js +0 -6
  772. package/js/src/static_dependencies/ethers/utils/utf8.js +0 -6
  773. package/js/src/static_dependencies/ethers/utils/uuid.js +0 -6
  774. package/js/src/static_dependencies/fflake/browser.js +0 -6
  775. package/js/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -6
  776. package/js/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -6
  777. package/js/src/static_dependencies/jsencrypt/index.js +0 -6
  778. package/js/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +0 -6
  779. package/js/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -6
  780. package/js/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -6
  781. package/js/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -6
  782. package/js/src/static_dependencies/jsencrypt/lib/asn1js/oids.js +0 -6
  783. package/js/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -6
  784. package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +0 -6
  785. package/js/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -6
  786. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +0 -6
  787. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +0 -6
  788. package/js/src/static_dependencies/jsencrypt/lib/jsbn/util.js +0 -6
  789. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +0 -6
  790. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +0 -6
  791. package/js/src/static_dependencies/messagepack/msgpack.js +0 -6
  792. package/js/src/static_dependencies/noble-curves/_shortw_utils.js +0 -6
  793. package/js/src/static_dependencies/noble-curves/abstract/curve.js +0 -6
  794. package/js/src/static_dependencies/noble-curves/abstract/edwards.js +0 -6
  795. package/js/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +0 -6
  796. package/js/src/static_dependencies/noble-curves/abstract/modular.js +0 -6
  797. package/js/src/static_dependencies/noble-curves/abstract/montgomery.js +0 -6
  798. package/js/src/static_dependencies/noble-curves/abstract/poseidon.js +0 -6
  799. package/js/src/static_dependencies/noble-curves/abstract/utils.js +0 -6
  800. package/js/src/static_dependencies/noble-curves/abstract/weierstrass.js +0 -6
  801. package/js/src/static_dependencies/noble-curves/bn.js +0 -6
  802. package/js/src/static_dependencies/noble-curves/ed25519.js +0 -6
  803. package/js/src/static_dependencies/noble-curves/ed448.js +0 -6
  804. package/js/src/static_dependencies/noble-curves/index.js +0 -6
  805. package/js/src/static_dependencies/noble-curves/jubjub.js +0 -6
  806. package/js/src/static_dependencies/noble-curves/p256.js +0 -6
  807. package/js/src/static_dependencies/noble-curves/p384.js +0 -6
  808. package/js/src/static_dependencies/noble-curves/p521.js +0 -6
  809. package/js/src/static_dependencies/noble-curves/pasta.js +0 -6
  810. package/js/src/static_dependencies/noble-curves/secp256k1.js +0 -6
  811. package/js/src/static_dependencies/noble-hashes/_assert.js +0 -6
  812. package/js/src/static_dependencies/noble-hashes/_blake2.js +0 -6
  813. package/js/src/static_dependencies/noble-hashes/_sha2.js +0 -6
  814. package/js/src/static_dependencies/noble-hashes/_u64.js +0 -6
  815. package/js/src/static_dependencies/noble-hashes/argon2.js +0 -6
  816. package/js/src/static_dependencies/noble-hashes/blake2b.js +0 -6
  817. package/js/src/static_dependencies/noble-hashes/blake2s.js +0 -6
  818. package/js/src/static_dependencies/noble-hashes/blake3.js +0 -6
  819. package/js/src/static_dependencies/noble-hashes/crypto.js +0 -6
  820. package/js/src/static_dependencies/noble-hashes/cryptoNode.js +0 -6
  821. package/js/src/static_dependencies/noble-hashes/eskdf.js +0 -6
  822. package/js/src/static_dependencies/noble-hashes/hkdf.js +0 -6
  823. package/js/src/static_dependencies/noble-hashes/hmac.js +0 -6
  824. package/js/src/static_dependencies/noble-hashes/index.js +0 -6
  825. package/js/src/static_dependencies/noble-hashes/md5.js +0 -6
  826. package/js/src/static_dependencies/noble-hashes/pbkdf2.js +0 -6
  827. package/js/src/static_dependencies/noble-hashes/ripemd160.js +0 -6
  828. package/js/src/static_dependencies/noble-hashes/scrypt.js +0 -6
  829. package/js/src/static_dependencies/noble-hashes/sha1.js +0 -6
  830. package/js/src/static_dependencies/noble-hashes/sha256.js +0 -6
  831. package/js/src/static_dependencies/noble-hashes/sha3-addons.js +0 -6
  832. package/js/src/static_dependencies/noble-hashes/sha3.js +0 -6
  833. package/js/src/static_dependencies/noble-hashes/sha512.js +0 -6
  834. package/js/src/static_dependencies/noble-hashes/utils.js +0 -6
  835. package/js/src/static_dependencies/node-fetch/body.js +0 -6
  836. package/js/src/static_dependencies/node-fetch/errors/abort-error.js +0 -6
  837. package/js/src/static_dependencies/node-fetch/errors/base.js +0 -6
  838. package/js/src/static_dependencies/node-fetch/errors/fetch-error.js +0 -6
  839. package/js/src/static_dependencies/node-fetch/headers.js +0 -6
  840. package/js/src/static_dependencies/node-fetch/index.js +0 -6
  841. package/js/src/static_dependencies/node-fetch/request.js +0 -6
  842. package/js/src/static_dependencies/node-fetch/response.js +0 -6
  843. package/js/src/static_dependencies/node-fetch/utils/get-search.js +0 -6
  844. package/js/src/static_dependencies/node-fetch/utils/is-redirect.js +0 -6
  845. package/js/src/static_dependencies/node-fetch/utils/is.js +0 -6
  846. package/js/src/static_dependencies/node-fetch/utils/referrer.js +0 -6
  847. package/js/src/static_dependencies/proxies/agent-base/helpers.js +0 -6
  848. package/js/src/static_dependencies/proxies/agent-base/index.js +0 -6
  849. package/js/src/static_dependencies/proxies/http-proxy-agent/index.js +0 -6
  850. package/js/src/static_dependencies/proxies/https-proxy-agent/index.js +0 -6
  851. package/js/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +0 -6
  852. package/js/src/static_dependencies/qs/formats.cjs +0 -6
  853. package/js/src/static_dependencies/qs/index.cjs +0 -6
  854. package/js/src/static_dependencies/qs/parse.cjs +0 -6
  855. package/js/src/static_dependencies/qs/stringify.cjs +0 -6
  856. package/js/src/static_dependencies/qs/utils.cjs +0 -6
  857. package/js/src/static_dependencies/scure-base/index.js +0 -6
  858. package/js/src/static_dependencies/scure-starknet/index.js +0 -6
  859. package/js/src/static_dependencies/starknet/constants.js +0 -6
  860. package/js/src/static_dependencies/starknet/index.js +0 -6
  861. package/js/src/static_dependencies/starknet/types/cairoEnum.js +0 -6
  862. package/js/src/static_dependencies/starknet/types/calldata.js +0 -6
  863. package/js/src/static_dependencies/starknet/types/index.js +0 -6
  864. package/js/src/static_dependencies/starknet/types/lib/contract/abi.js +0 -6
  865. package/js/src/static_dependencies/starknet/types/lib/contract/index.js +0 -6
  866. package/js/src/static_dependencies/starknet/types/lib/contract/legacy.js +0 -6
  867. package/js/src/static_dependencies/starknet/types/lib/contract/sierra.js +0 -6
  868. package/js/src/static_dependencies/starknet/types/lib/index.js +0 -6
  869. package/js/src/static_dependencies/starknet/types/typedData.js +0 -6
  870. package/js/src/static_dependencies/starknet/utils/address.js +0 -6
  871. package/js/src/static_dependencies/starknet/utils/assert.js +0 -6
  872. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +0 -6
  873. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +0 -6
  874. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +0 -6
  875. package/js/src/static_dependencies/starknet/utils/calldata/byteArray.js +0 -6
  876. package/js/src/static_dependencies/starknet/utils/calldata/cairo.js +0 -6
  877. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +0 -6
  878. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +0 -6
  879. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +0 -6
  880. package/js/src/static_dependencies/starknet/utils/calldata/enum/index.js +0 -6
  881. package/js/src/static_dependencies/starknet/utils/calldata/formatter.js +0 -6
  882. package/js/src/static_dependencies/starknet/utils/calldata/index.js +0 -6
  883. package/js/src/static_dependencies/starknet/utils/calldata/parser/index.js +0 -6
  884. package/js/src/static_dependencies/starknet/utils/calldata/parser/interface.js +0 -6
  885. package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +0 -6
  886. package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +0 -6
  887. package/js/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +0 -6
  888. package/js/src/static_dependencies/starknet/utils/calldata/requestParser.js +0 -6
  889. package/js/src/static_dependencies/starknet/utils/calldata/responseParser.js +0 -6
  890. package/js/src/static_dependencies/starknet/utils/calldata/tuple.js +0 -6
  891. package/js/src/static_dependencies/starknet/utils/calldata/validate.js +0 -6
  892. package/js/src/static_dependencies/starknet/utils/encode.js +0 -6
  893. package/js/src/static_dependencies/starknet/utils/hash/classHash.js +0 -6
  894. package/js/src/static_dependencies/starknet/utils/hash/index.js +0 -6
  895. package/js/src/static_dependencies/starknet/utils/merkle.js +0 -6
  896. package/js/src/static_dependencies/starknet/utils/num.js +0 -6
  897. package/js/src/static_dependencies/starknet/utils/selector.js +0 -6
  898. package/js/src/static_dependencies/starknet/utils/shortString.js +0 -6
  899. package/js/src/static_dependencies/starknet/utils/starknetId.js +0 -6
  900. package/js/src/static_dependencies/starknet/utils/typedData.js +0 -6
  901. package/js/src/static_dependencies/starknet/utils/uint256.js +0 -6
  902. package/js/src/static_dependencies/starknet/utils/url.js +0 -6
  903. package/js/src/static_dependencies/watchable/src/index.js +0 -6
  904. package/js/src/static_dependencies/watchable/src/types.js +0 -6
  905. package/js/src/static_dependencies/watchable/src/unpromise.js +0 -6
  906. package/js/src/static_dependencies/zklink/zklink-sdk-web.js +0 -6
  907. package/js/src/timex.js +0 -6
  908. package/js/src/tokocrypto.js +0 -6
  909. package/js/src/tradeogre.js +0 -6
  910. package/js/src/upbit.js +0 -6
  911. package/js/src/wavesexchange.js +0 -6
  912. package/js/src/whitebit.js +0 -6
  913. package/js/src/woo.js +0 -6
  914. package/js/src/woofipro.js +0 -6
  915. package/js/src/xt.d.ts +1 -0
  916. package/js/src/xt.js +9 -6
  917. package/js/src/yobit.js +9 -6
  918. package/js/src/zaif.js +0 -6
  919. package/js/src/zonda.js +0 -6
  920. package/package.json +3 -3
package/js/src/okx.js CHANGED
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  // ---------------------------------------------------------------------------
8
2
  import Exchange from './abstract/okx.js';
9
3
  import { ExchangeError, ExchangeNotAvailable, OnMaintenance, ArgumentsRequired, BadRequest, AccountSuspended, InvalidAddress, DDoSProtection, PermissionDenied, InsufficientFunds, InvalidNonce, InvalidOrder, OrderNotFound, AuthenticationError, RequestTimeout, BadSymbol, RateLimitExceeded, NetworkError, CancelPending, NotSupported, AccountNotEnabled, ContractUnavailable, ManualInteractionNeeded, OperationRejected, RestrictedLocation } from './base/errors.js';
@@ -214,6 +208,7 @@ export default class okx extends Exchange {
214
208
  'market/open-oracle': 50,
215
209
  'market/exchange-rate': 20,
216
210
  'market/index-components': 1,
211
+ 'public/market-data-history': 4,
217
212
  'public/economic-calendar': 50,
218
213
  'market/block-tickers': 1,
219
214
  'market/block-ticker': 1,
@@ -365,7 +360,7 @@ export default class okx extends Exchange {
365
360
  'account/fixed-loan/borrowing-limit': 4,
366
361
  'account/fixed-loan/borrowing-quote': 5,
367
362
  'account/fixed-loan/borrowing-orders-list': 5,
368
- 'account/spot-manual-borrow-repay': 10,
363
+ 'account/spot-manual-borrow-repay': 30,
369
364
  'account/set-auto-repay': 4,
370
365
  'account/spot-borrow-repay-history': 4,
371
366
  'account/move-positions-history': 10,
@@ -3065,13 +3060,15 @@ export default class okx extends Exchange {
3065
3060
  request['ordType'] = 'move_order_stop';
3066
3061
  }
3067
3062
  else if (stopLossDefined || takeProfitDefined) {
3063
+ let attachAlgoOrd = {};
3068
3064
  if (stopLossDefined) {
3069
3065
  const stopLossTriggerPrice = this.safeValueN(stopLoss, ['triggerPrice', 'stopPrice', 'slTriggerPx']);
3070
3066
  if (stopLossTriggerPrice === undefined) {
3071
3067
  throw new InvalidOrder(this.id + ' createOrder() requires a trigger price in params["stopLoss"]["triggerPrice"], or params["stopLoss"]["stopPrice"], or params["stopLoss"]["slTriggerPx"] for a stop loss order');
3072
3068
  }
3073
3069
  const slTriggerPx = this.priceToPrecision(symbol, stopLossTriggerPrice);
3074
- request['slTriggerPx'] = slTriggerPx;
3070
+ const slOrder = {};
3071
+ slOrder['slTriggerPx'] = slTriggerPx;
3075
3072
  const stopLossLimitPrice = this.safeValueN(stopLoss, ['price', 'stopLossPrice', 'slOrdPx']);
3076
3073
  const stopLossOrderType = this.safeString(stopLoss, 'type');
3077
3074
  if (stopLossOrderType !== undefined) {
@@ -3085,33 +3082,35 @@ export default class okx extends Exchange {
3085
3082
  throw new InvalidOrder(this.id + ' createOrder() requires a limit price in params["stopLoss"]["price"] or params["stopLoss"]["slOrdPx"] for a stop loss limit order');
3086
3083
  }
3087
3084
  else {
3088
- request['slOrdPx'] = this.priceToPrecision(symbol, stopLossLimitPrice);
3085
+ slOrder['slOrdPx'] = this.priceToPrecision(symbol, stopLossLimitPrice);
3089
3086
  }
3090
3087
  }
3091
3088
  else if (stopLossOrderType === 'market') {
3092
- request['slOrdPx'] = '-1';
3089
+ slOrder['slOrdPx'] = '-1';
3093
3090
  }
3094
3091
  }
3095
3092
  else if (stopLossLimitPrice !== undefined) {
3096
- request['slOrdPx'] = this.priceToPrecision(symbol, stopLossLimitPrice); // limit sl order
3093
+ slOrder['slOrdPx'] = this.priceToPrecision(symbol, stopLossLimitPrice); // limit sl order
3097
3094
  }
3098
3095
  else {
3099
- request['slOrdPx'] = '-1'; // market sl order
3096
+ slOrder['slOrdPx'] = '-1'; // market sl order
3100
3097
  }
3101
3098
  const stopLossTriggerPriceType = this.safeString2(stopLoss, 'triggerPriceType', 'slTriggerPxType', 'last');
3102
3099
  if (stopLossTriggerPriceType !== undefined) {
3103
3100
  if ((stopLossTriggerPriceType !== 'last') && (stopLossTriggerPriceType !== 'index') && (stopLossTriggerPriceType !== 'mark')) {
3104
3101
  throw new InvalidOrder(this.id + ' createOrder() stop loss trigger price type must be one of "last", "index" or "mark"');
3105
3102
  }
3106
- request['slTriggerPxType'] = stopLossTriggerPriceType;
3103
+ slOrder['slTriggerPxType'] = stopLossTriggerPriceType;
3107
3104
  }
3105
+ attachAlgoOrd = this.extend(attachAlgoOrd, slOrder);
3108
3106
  }
3109
3107
  if (takeProfitDefined) {
3110
3108
  const takeProfitTriggerPrice = this.safeValueN(takeProfit, ['triggerPrice', 'stopPrice', 'tpTriggerPx']);
3111
3109
  if (takeProfitTriggerPrice === undefined) {
3112
3110
  throw new InvalidOrder(this.id + ' createOrder() requires a trigger price in params["takeProfit"]["triggerPrice"], or params["takeProfit"]["stopPrice"], or params["takeProfit"]["tpTriggerPx"] for a take profit order');
3113
3111
  }
3114
- request['tpTriggerPx'] = this.priceToPrecision(symbol, takeProfitTriggerPrice);
3112
+ const tpOrder = {};
3113
+ tpOrder['tpTriggerPx'] = this.priceToPrecision(symbol, takeProfitTriggerPrice);
3115
3114
  const takeProfitLimitPrice = this.safeValueN(takeProfit, ['price', 'takeProfitPrice', 'tpOrdPx']);
3116
3115
  const takeProfitOrderType = this.safeString2(takeProfit, 'type', 'tpOrdKind');
3117
3116
  if (takeProfitOrderType !== undefined) {
@@ -3125,28 +3124,34 @@ export default class okx extends Exchange {
3125
3124
  throw new InvalidOrder(this.id + ' createOrder() requires a limit price in params["takeProfit"]["price"] or params["takeProfit"]["tpOrdPx"] for a take profit limit order');
3126
3125
  }
3127
3126
  else {
3128
- request['tpOrdKind'] = takeProfitOrderType;
3129
- request['tpOrdPx'] = this.priceToPrecision(symbol, takeProfitLimitPrice);
3127
+ tpOrder['tpOrdKind'] = takeProfitOrderType;
3128
+ tpOrder['tpOrdPx'] = this.priceToPrecision(symbol, takeProfitLimitPrice);
3130
3129
  }
3131
3130
  }
3132
3131
  else if (takeProfitOrderType === 'market') {
3133
- request['tpOrdPx'] = '-1';
3132
+ tpOrder['tpOrdPx'] = '-1';
3134
3133
  }
3135
3134
  }
3136
3135
  else if (takeProfitLimitPrice !== undefined) {
3137
- request['tpOrdKind'] = 'limit';
3138
- request['tpOrdPx'] = this.priceToPrecision(symbol, takeProfitLimitPrice); // limit tp order
3136
+ tpOrder['tpOrdKind'] = 'limit';
3137
+ tpOrder['tpOrdPx'] = this.priceToPrecision(symbol, takeProfitLimitPrice); // limit tp order
3139
3138
  }
3140
3139
  else {
3141
- request['tpOrdPx'] = '-1'; // market tp order
3140
+ tpOrder['tpOrdPx'] = '-1'; // market tp order
3142
3141
  }
3143
3142
  const takeProfitTriggerPriceType = this.safeString2(takeProfit, 'triggerPriceType', 'tpTriggerPxType', 'last');
3144
3143
  if (takeProfitTriggerPriceType !== undefined) {
3145
3144
  if ((takeProfitTriggerPriceType !== 'last') && (takeProfitTriggerPriceType !== 'index') && (takeProfitTriggerPriceType !== 'mark')) {
3146
3145
  throw new InvalidOrder(this.id + ' createOrder() take profit trigger price type must be one of "last", "index" or "mark"');
3147
3146
  }
3148
- request['tpTriggerPxType'] = takeProfitTriggerPriceType;
3147
+ tpOrder['tpTriggerPxType'] = takeProfitTriggerPriceType;
3149
3148
  }
3149
+ attachAlgoOrd = this.extend(attachAlgoOrd, tpOrder);
3150
+ }
3151
+ const attachOrdKeys = Object.keys(attachAlgoOrd);
3152
+ const attachOrdLen = attachOrdKeys.length;
3153
+ if (attachOrdLen > 0) {
3154
+ request['attachAlgoOrds'] = [attachAlgoOrd];
3150
3155
  }
3151
3156
  }
3152
3157
  else if (trigger) {
package/js/src/okxus.js CHANGED
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  // ---------------------------------------------------------------------------
8
2
  import okx from './okx.js';
9
3
  // ---------------------------------------------------------------------------
@@ -41,6 +41,7 @@ export default class onetrading extends Exchange {
41
41
  * @see https://docs.onetrading.com/#fee-groups
42
42
  * @see https://docs.onetrading.com/#fees
43
43
  * @param {object} [params] extra parameters specific to the exchange API endpoint
44
+ * @param {string} [params.method] fetchPrivateTradingFees or fetchPublicTradingFees
44
45
  * @returns {object} a dictionary of [fee structures]{@link https://docs.ccxt.com/#/?id=fee-structure} indexed by market symbols
45
46
  */
46
47
  fetchTradingFees(params?: {}): Promise<TradingFees>;
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  // ---------------------------------------------------------------------------
8
2
  import Exchange from './abstract/onetrading.js';
9
3
  import { AuthenticationError, ExchangeError, PermissionDenied, BadRequest, ArgumentsRequired, OrderNotFound, InsufficientFunds, ExchangeNotAvailable, DDoSProtection, InvalidAddress, InvalidOrder, NotSupported } from './base/errors.js';
@@ -485,34 +479,80 @@ export default class onetrading extends Exchange {
485
479
  return this.parseMarkets(response);
486
480
  }
487
481
  parseMarket(market) {
488
- const baseAsset = this.safeValue(market, 'base', {});
489
- const quoteAsset = this.safeValue(market, 'quote', {});
482
+ //
483
+ // {
484
+ // "base":{
485
+ // "code":"BTC",
486
+ // "precision":"5"
487
+ // },
488
+ // "quote":{
489
+ // "code":"USDC",
490
+ // "precision":"2"
491
+ // },
492
+ // "amount_precision":"5",
493
+ // "market_precision":"2",
494
+ // "min_size":"10.0",
495
+ // "min_price":"1000",
496
+ // "max_price":"10000000",
497
+ // "id":"BTC_USDC",
498
+ // "type":"SPOT",
499
+ // "state":"ACTIVE"
500
+ // }
501
+ //
502
+ //
503
+ // {
504
+ // "base": {
505
+ // "code": "BTC",
506
+ // "precision": 5
507
+ // },
508
+ // "quote": {
509
+ // "code": "EUR",
510
+ // "precision": 2
511
+ // },
512
+ // "amount_precision": 5,
513
+ // "market_precision": 2,
514
+ // "min_size": "10.0",
515
+ // "min_price": "1000",
516
+ // "max_price": "10000000",
517
+ // "id": "BTC_EUR_P",
518
+ // "type": "PERP",
519
+ // "state": "ACTIVE"
520
+ // }
521
+ //
522
+ const baseAsset = this.safeDict(market, 'base', {});
523
+ const quoteAsset = this.safeDict(market, 'quote', {});
490
524
  const baseId = this.safeString(baseAsset, 'code');
491
525
  const quoteId = this.safeString(quoteAsset, 'code');
492
- const id = baseId + '_' + quoteId;
526
+ const id = this.safeString(market, 'id');
493
527
  const base = this.safeCurrencyCode(baseId);
494
528
  const quote = this.safeCurrencyCode(quoteId);
495
529
  const state = this.safeString(market, 'state');
530
+ const type = this.safeString(market, 'type');
531
+ const isPerp = type === 'PERP';
532
+ let symbol = base + '/' + quote;
533
+ if (isPerp) {
534
+ symbol = symbol + ':' + quote;
535
+ }
496
536
  return {
497
537
  'id': id,
498
- 'symbol': base + '/' + quote,
538
+ 'symbol': symbol,
499
539
  'base': base,
500
540
  'quote': quote,
501
- 'settle': undefined,
541
+ 'settle': isPerp ? quote : undefined,
502
542
  'baseId': baseId,
503
543
  'quoteId': quoteId,
504
- 'settleId': undefined,
505
- 'type': 'spot',
506
- 'spot': true,
544
+ 'settleId': isPerp ? quoteId : undefined,
545
+ 'type': isPerp ? 'swap' : 'spot',
546
+ 'spot': !isPerp,
507
547
  'margin': false,
508
- 'swap': false,
548
+ 'swap': isPerp,
509
549
  'future': false,
510
550
  'option': false,
511
551
  'active': (state === 'ACTIVE'),
512
- 'contract': false,
513
- 'linear': undefined,
514
- 'inverse': undefined,
515
- 'contractSize': undefined,
552
+ 'contract': isPerp,
553
+ 'linear': isPerp ? true : undefined,
554
+ 'inverse': isPerp ? false : undefined,
555
+ 'contractSize': isPerp ? this.parseNumber('1') : undefined,
516
556
  'expiry': undefined,
517
557
  'expiryDatetime': undefined,
518
558
  'strike': undefined,
@@ -550,6 +590,7 @@ export default class onetrading extends Exchange {
550
590
  * @see https://docs.onetrading.com/#fee-groups
551
591
  * @see https://docs.onetrading.com/#fees
552
592
  * @param {object} [params] extra parameters specific to the exchange API endpoint
593
+ * @param {string} [params.method] fetchPrivateTradingFees or fetchPublicTradingFees
553
594
  * @returns {object} a dictionary of [fee structures]{@link https://docs.ccxt.com/#/?id=fee-structure} indexed by market symbols
554
595
  */
555
596
  async fetchTradingFees(params = {}) {
@@ -573,39 +614,68 @@ export default class onetrading extends Exchange {
573
614
  await this.loadMarkets();
574
615
  const response = await this.publicGetFees(params);
575
616
  //
576
- // [
577
- // {
578
- // "fee_group_id":"default",
579
- // "display_text":"The standard fee plan.",
580
- // "fee_tiers":[
581
- // {"volume":"0.0","fee_group_id":"default","maker_fee":"0.1","taker_fee":"0.15"},
582
- // {"volume":"100.0","fee_group_id":"default","maker_fee":"0.1","taker_fee":"0.13"},
583
- // {"volume":"250.0","fee_group_id":"default","maker_fee":"0.09","taker_fee":"0.13"},
584
- // {"volume":"1000.0","fee_group_id":"default","maker_fee":"0.075","taker_fee":"0.1"},
585
- // {"volume":"5000.0","fee_group_id":"default","maker_fee":"0.06","taker_fee":"0.09"},
586
- // {"volume":"10000.0","fee_group_id":"default","maker_fee":"0.05","taker_fee":"0.075"},
587
- // {"volume":"20000.0","fee_group_id":"default","maker_fee":"0.05","taker_fee":"0.065"}
588
- // ],
589
- // "fee_discount_rate":"25.0",
590
- // "minimum_price_value":"0.12"
591
- // }
592
- // ]
617
+ // [
618
+ // {
619
+ // 'fee_group_id': 'SPOT',
620
+ // 'display_text': 'The fee plan for spot trading.',
621
+ // 'volume_currency': 'EUR',
622
+ // 'fee_tiers': [
623
+ // {
624
+ // 'volume': '0',
625
+ // 'fee_group_id': 'SPOT',
626
+ // 'maker_fee': '0.1000',
627
+ // 'taker_fee': '0.2000',
628
+ // },
629
+ // {
630
+ // 'volume': '10000',
631
+ // 'fee_group_id': 'SPOT',
632
+ // 'maker_fee': '0.0400',
633
+ // 'taker_fee': '0.0800',
634
+ // },
635
+ // ],
636
+ // },
637
+ // {
638
+ // 'fee_group_id': 'FUTURES',
639
+ // 'display_text': 'The fee plan for futures trading.',
640
+ // 'volume_currency': 'EUR',
641
+ // 'fee_tiers': [
642
+ // {
643
+ // 'volume': '0',
644
+ // 'fee_group_id': 'FUTURES',
645
+ // 'maker_fee': '0.1000',
646
+ // 'taker_fee': '0.2000',
647
+ // },
648
+ // {
649
+ // 'volume': '10000',
650
+ // 'fee_group_id': 'FUTURES',
651
+ // 'maker_fee': '0.0400',
652
+ // 'taker_fee': '0.0800',
653
+ // },
654
+ // ],
655
+ // },
656
+ // ];
593
657
  //
594
- const first = this.safeValue(response, 0, {});
595
- const feeTiers = this.safeValue(first, 'fee_tiers');
596
- const tiers = this.parseFeeTiers(feeTiers);
597
- const firstTier = this.safeValue(feeTiers, 0, {});
658
+ const spotFees = this.safeDict(response, 0, {});
659
+ const futuresFees = this.safeDict(response, 1, {});
660
+ const spotFeeTiers = this.safeList(spotFees, 'fee_tiers', []);
661
+ const futuresFeeTiers = this.safeList(futuresFees, 'fee_tiers', []);
662
+ const spotTiers = this.parseFeeTiers(spotFeeTiers);
663
+ const futuresTiers = this.parseFeeTiers(futuresFeeTiers);
664
+ const firstSpotTier = this.safeDict(spotTiers, 0, {});
665
+ const firstFuturesTier = this.safeDict(futuresTiers, 0, {});
598
666
  const result = {};
599
667
  for (let i = 0; i < this.symbols.length; i++) {
600
668
  const symbol = this.symbols[i];
669
+ const market = this.market(symbol);
670
+ const tierObject = (market['spot']) ? firstSpotTier : firstFuturesTier;
601
671
  result[symbol] = {
602
- 'info': first,
672
+ 'info': spotFees,
603
673
  'symbol': symbol,
604
- 'maker': this.safeNumber(firstTier, 'maker_fee'),
605
- 'taker': this.safeNumber(firstTier, 'taker_fee'),
674
+ 'maker': this.safeNumber(tierObject, 'maker_fee'),
675
+ 'taker': this.safeNumber(tierObject, 'taker_fee'),
606
676
  'percentage': true,
607
677
  'tierBased': true,
608
- 'tiers': tiers,
678
+ 'tiers': spotTiers,
609
679
  };
610
680
  }
611
681
  return result;
@@ -614,36 +684,55 @@ export default class onetrading extends Exchange {
614
684
  await this.loadMarkets();
615
685
  const response = await this.privateGetAccountFees(params);
616
686
  //
617
- // {
618
- // "account_id": "ed524d00-820a-11e9-8f1e-69602df16d85",
619
- // "running_trading_volume": "0.0",
620
- // "fee_group_id": "default",
621
- // "collect_fees_in_best": false,
622
- // "fee_discount_rate": "25.0",
623
- // "minimum_price_value": "0.12",
624
- // "fee_tiers": [
625
- // { "volume": "0.0", "fee_group_id": "default", "maker_fee": "0.1", "taker_fee": "0.1" },
626
- // { "volume": "100.0", "fee_group_id": "default", "maker_fee": "0.09", "taker_fee": "0.1" },
627
- // { "volume": "250.0", "fee_group_id": "default", "maker_fee": "0.08", "taker_fee": "0.1" },
628
- // { "volume": "1000.0", "fee_group_id": "default", "maker_fee": "0.07", "taker_fee": "0.09" },
629
- // { "volume": "5000.0", "fee_group_id": "default", "maker_fee": "0.06", "taker_fee": "0.08" },
630
- // { "volume": "10000.0", "fee_group_id": "default", "maker_fee": "0.05", "taker_fee": "0.07" },
631
- // { "volume": "20000.0", "fee_group_id": "default", "maker_fee": "0.05", "taker_fee": "0.06" },
632
- // { "volume": "50000.0", "fee_group_id": "default", "maker_fee": "0.05", "taker_fee": "0.05" }
633
- // ],
634
- // "active_fee_tier": { "volume": "0.0", "fee_group_id": "default", "maker_fee": "0.1", "taker_fee": "0.1" }
635
- // }
687
+ // {
688
+ // "account_id":"b7f4e27e-b34a-493a-b0d4-4bd341a3f2e0",
689
+ // "running_volumes":[
690
+ // {
691
+ // "fee_group_id":"SPOT",
692
+ // "volume":"0",
693
+ // "currency":"EUR"
694
+ // },
695
+ // {
696
+ // "fee_group_id":"FUTURES",
697
+ // "volume":"0",
698
+ // "currency":"EUR"
699
+ // }
700
+ // ],
701
+ // "active_fee_tiers":[
702
+ // {
703
+ // "fee_group_id":"SPOT",
704
+ // "volume":"0",
705
+ // "maker_fee":"0.1000",
706
+ // "taker_fee":"0.2000"
707
+ // },
708
+ // {
709
+ // "fee_group_id":"FUTURES",
710
+ // "volume":"0",
711
+ // "maker_fee":"0.1000",
712
+ // "taker_fee":"0.2000"
713
+ // }
714
+ // ]
715
+ // }
636
716
  //
637
- const activeFeeTier = this.safeValue(response, 'active_fee_tier', {});
638
- let makerFee = this.safeString(activeFeeTier, 'maker_fee');
639
- let takerFee = this.safeString(activeFeeTier, 'taker_fee');
640
- makerFee = Precise.stringDiv(makerFee, '100');
641
- takerFee = Precise.stringDiv(takerFee, '100');
642
- const feeTiers = this.safeValue(response, 'fee_tiers');
717
+ const activeFeeTier = this.safeList(response, 'active_fee_tiers');
718
+ const spotFees = this.safeDict(activeFeeTier, 0, {});
719
+ const futuresFees = this.safeDict(activeFeeTier, 1, {});
720
+ let spotMakerFee = this.safeString(spotFees, 'maker_fee');
721
+ let spotTakerFee = this.safeString(spotFees, 'taker_fee');
722
+ spotMakerFee = Precise.stringDiv(spotMakerFee, '100');
723
+ spotTakerFee = Precise.stringDiv(spotTakerFee, '100');
724
+ // const feeTiers = this.safeValue (response, 'fee_tiers');
725
+ let futuresMakerFee = this.safeString(futuresFees, 'maker_fee');
726
+ let futuresTakerFee = this.safeString(futuresFees, 'taker_fee');
727
+ futuresMakerFee = Precise.stringDiv(futuresMakerFee, '100');
728
+ futuresTakerFee = Precise.stringDiv(futuresTakerFee, '100');
643
729
  const result = {};
644
- const tiers = this.parseFeeTiers(feeTiers);
730
+ // const tiers = this.parseFeeTiers (feeTiers);
645
731
  for (let i = 0; i < this.symbols.length; i++) {
646
732
  const symbol = this.symbols[i];
733
+ const market = this.market(symbol);
734
+ const makerFee = (market['spot']) ? spotMakerFee : futuresMakerFee;
735
+ const takerFee = (market['spot']) ? spotTakerFee : futuresTakerFee;
647
736
  result[symbol] = {
648
737
  'info': response,
649
738
  'symbol': symbol,
@@ -651,7 +740,7 @@ export default class onetrading extends Exchange {
651
740
  'taker': this.parseNumber(takerFee),
652
741
  'percentage': true,
653
742
  'tierBased': true,
654
- 'tiers': tiers,
743
+ 'tiers': undefined,
655
744
  };
656
745
  }
657
746
  return result;
package/js/src/oxfun.js CHANGED
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  // ---------------------------------------------------------------------------
8
2
  import Exchange from './abstract/oxfun.js';
9
3
  import { AccountNotEnabled, ArgumentsRequired, AuthenticationError, BadRequest, BadSymbol, ExchangeError, InvalidOrder, InsufficientFunds, OrderNotFound, MarketClosed, NetworkError, NotSupported, OperationFailed, RateLimitExceeded, RequestTimeout } from './base/errors.js';
package/js/src/p2b.js CHANGED
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  // ---------------------------------------------------------------------------
8
2
  import Exchange from './abstract/p2b.js';
9
3
  import { InsufficientFunds, AuthenticationError, BadRequest, ExchangeNotAvailable, ArgumentsRequired } from './base/errors.js';
package/js/src/paradex.js CHANGED
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  // ---------------------------------------------------------------------------
8
2
  import { Precise } from './base/Precise.js';
9
3
  import Exchange from './abstract/paradex.js';
package/js/src/paymium.js CHANGED
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  // ---------------------------------------------------------------------------
8
2
  import Exchange from './abstract/paymium.js';
9
3
  import { ExchangeError } from './base/errors.js';
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/phemex.js';
2
- import type { TransferEntry, Balances, Currency, FundingHistory, FundingRateHistory, Int, Market, Num, OHLCV, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction, MarginModification, Currencies, Dict, LeverageTier, LeverageTiers, int, FundingRate, DepositAddress, Conversion, Position } from './base/types.js';
2
+ import type { TransferEntry, Balances, Currency, FundingHistory, FundingRateHistory, Int, Market, Num, OHLCV, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction, MarginModification, Currencies, Dict, LeverageTier, LeverageTiers, int, FundingRate, DepositAddress, Conversion, Position, Dictionary } from './base/types.js';
3
3
  /**
4
4
  * @class phemex
5
5
  * @augments Exchange
@@ -40,7 +40,7 @@ export default class phemex extends Exchange {
40
40
  */
41
41
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
42
42
  toEn(n: any, scale: any): number;
43
- toEv(amount: any, market?: Market): any;
43
+ toEv(amount: any, market?: Dictionary<any>): any;
44
44
  toEp(price: any, market?: Market): any;
45
45
  fromEn(en: any, scale: any): string;
46
46
  fromEp(ep: any, market?: Market): any;
@@ -291,7 +291,7 @@ export default class phemex extends Exchange {
291
291
  * @param {string[]} [symbols] list of unified market symbols
292
292
  * @param {object} [params] extra parameters specific to the exchange API endpoint
293
293
  * @param {string} [params.code] the currency code to fetch positions for, USD, BTC or USDT, USDT is the default
294
- * @param {string} [params.method] *USDT contracts only* 'privateGetGAccountsAccountPositions' or 'privateGetAccountsPositions' default is 'privateGetGAccountsAccountPositions'
294
+ * @param {string} [params.method] *USDT contracts only* 'privateGetGAccountsAccountPositions' or 'privateGetGAccountsAccountPositions' default is 'privateGetGAccountsAccountPositions'
295
295
  * @returns {object[]} a list of [position structure]{@link https://docs.ccxt.com/#/?id=position-structure}
296
296
  */
297
297
  fetchPositions(symbols?: Strings, params?: {}): Promise<Position[]>;
package/js/src/phemex.js CHANGED
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  // ----------------------------------------------------------------------------
8
2
  import Exchange from './abstract/phemex.js';
9
3
  import { ExchangeError, BadSymbol, AuthenticationError, InsufficientFunds, InvalidOrder, ArgumentsRequired, OrderNotFound, BadRequest, PermissionDenied, AccountSuspended, CancelPending, DDoSProtection, DuplicateOrderId, RateLimitExceeded } from './base/errors.js';
@@ -192,7 +186,7 @@ export default class phemex extends Exchange {
192
186
  // swap
193
187
  'accounts/accountPositions': 1,
194
188
  'g-accounts/accountPositions': 1,
195
- 'accounts/positions': 25,
189
+ 'g-accounts/positions': 25,
196
190
  'api-data/futures/funding-fees': 5,
197
191
  'api-data/g-futures/funding-fees': 5,
198
192
  'api-data/futures/orders': 5,
@@ -3817,7 +3811,7 @@ export default class phemex extends Exchange {
3817
3811
  * @param {string[]} [symbols] list of unified market symbols
3818
3812
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3819
3813
  * @param {string} [params.code] the currency code to fetch positions for, USD, BTC or USDT, USDT is the default
3820
- * @param {string} [params.method] *USDT contracts only* 'privateGetGAccountsAccountPositions' or 'privateGetAccountsPositions' default is 'privateGetGAccountsAccountPositions'
3814
+ * @param {string} [params.method] *USDT contracts only* 'privateGetGAccountsAccountPositions' or 'privateGetGAccountsAccountPositions' default is 'privateGetGAccountsAccountPositions'
3821
3815
  * @returns {object[]} a list of [position structure]{@link https://docs.ccxt.com/#/?id=position-structure}
3822
3816
  */
3823
3817
  async fetchPositions(symbols = undefined, params = {}) {
@@ -3860,7 +3854,7 @@ export default class phemex extends Exchange {
3860
3854
  response = await this.privateGetGAccountsAccountPositions(this.extend(request, params));
3861
3855
  }
3862
3856
  else {
3863
- response = await this.privateGetAccountsPositions(this.extend(request, params));
3857
+ response = await this.privateGetGAccountsPositions(this.extend(request, params));
3864
3858
  }
3865
3859
  }
3866
3860
  else {
@@ -4034,7 +4028,7 @@ export default class phemex extends Exchange {
4034
4028
  const initialMarginPercentageString = Precise.stringDiv(initialMarginString, notionalString);
4035
4029
  const liquidationPrice = this.safeNumber2(position, 'liquidationPrice', 'liquidationPriceRp');
4036
4030
  const markPriceString = this.safeString2(position, 'markPrice', 'markPriceRp');
4037
- const contracts = this.safeString(position, 'size');
4031
+ const contracts = this.safeString2(position, 'size', 'sizeRq');
4038
4032
  const contractSize = this.safeValue(market, 'contractSize');
4039
4033
  const contractSizeString = this.numberToString(contractSize);
4040
4034
  const leverage = this.parseNumber(Precise.stringAbs((this.safeString2(position, 'leverage', 'leverageRr'))));
@@ -4044,9 +4038,12 @@ export default class phemex extends Exchange {
4044
4038
  if (rawSide !== undefined) {
4045
4039
  side = (rawSide === 'Buy') ? 'long' : 'short';
4046
4040
  }
4041
+ // Inverse long contract: unRealizedPnl = (posSize * contractSize) / avgEntryPrice - (posSize * contractSize) / markPrice
4042
+ // Inverse short contract: unRealizedPnl = (posSize *contractSize) / markPrice - (posSize * contractSize) / avgEntryPrice
4043
+ // Linear long contract: unRealizedPnl = (posSize * contractSize) * markPrice - (posSize * contractSize) * avgEntryPrice
4044
+ // Linear short contract: unRealizedPnl = (posSize * contractSize) * avgEntryPrice - (posSize * contractSize) * markPrice
4047
4045
  let priceDiff = undefined;
4048
- const currency = this.safeString(position, 'currency');
4049
- if (currency === 'USD') {
4046
+ if (market['linear']) {
4050
4047
  if (side === 'long') {
4051
4048
  priceDiff = Precise.stringSub(markPriceString, entryPriceString);
4052
4049
  }
@@ -4064,6 +4061,8 @@ export default class phemex extends Exchange {
4064
4061
  }
4065
4062
  }
4066
4063
  const unrealizedPnl = Precise.stringMul(Precise.stringMul(priceDiff, contracts), contractSizeString);
4064
+ // the unrealizedPnl is only available in a specific endpoint which much higher RL limits
4065
+ const apiUnrealizedPnl = this.safeString(position, 'unRealisedPnlRv', unrealizedPnl);
4067
4066
  const marginRatio = Precise.stringDiv(maintenanceMarginString, collateral);
4068
4067
  const isCross = this.safeValue(position, 'crossMargin');
4069
4068
  return this.safePosition({
@@ -4072,7 +4071,8 @@ export default class phemex extends Exchange {
4072
4071
  'symbol': symbol,
4073
4072
  'contracts': this.parseNumber(contracts),
4074
4073
  'contractSize': contractSize,
4075
- 'unrealizedPnl': this.parseNumber(unrealizedPnl),
4074
+ 'realizedPnl': this.safeNumber(position, 'curTermRealisedPnlRv'),
4075
+ 'unrealizedPnl': this.parseNumber(apiUnrealizedPnl),
4076
4076
  'leverage': leverage,
4077
4077
  'liquidationPrice': liquidationPrice,
4078
4078
  'collateral': this.parseNumber(collateral),
@@ -4081,7 +4081,7 @@ export default class phemex extends Exchange {
4081
4081
  'lastPrice': undefined,
4082
4082
  'entryPrice': this.parseNumber(entryPriceString),
4083
4083
  'timestamp': undefined,
4084
- 'lastUpdateTimestamp': undefined,
4084
+ 'lastUpdateTimestamp': this.safeIntegerProduct(position, 'transactTimeNs', 0.000001),
4085
4085
  'initialMargin': this.parseNumber(initialMarginString),
4086
4086
  'initialMarginPercentage': this.parseNumber(initialMarginPercentageString),
4087
4087
  'maintenanceMargin': this.parseNumber(maintenanceMarginString),
@@ -4090,7 +4090,7 @@ export default class phemex extends Exchange {
4090
4090
  'datetime': undefined,
4091
4091
  'marginMode': isCross ? 'cross' : 'isolated',
4092
4092
  'side': side,
4093
- 'hedged': false,
4093
+ 'hedged': this.safeString(position, 'posMode') === 'Hedged',
4094
4094
  'percentage': undefined,
4095
4095
  'stopLossPrice': undefined,
4096
4096
  'takeProfitPrice': undefined,
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  // ---------------------------------------------------------------------------
8
2
  import Exchange from './abstract/poloniex.js';
9
3
  import { ArgumentsRequired, ExchangeError, ExchangeNotAvailable, NotSupported, RequestTimeout, AuthenticationError, PermissionDenied, InsufficientFunds, OrderNotFound, InvalidOrder, AccountSuspended, OnMaintenance, BadSymbol, BadRequest } from './base/errors.js';