ccxt-ir 4.3.46.0.2__py2.py3-none-any.whl → 4.5.0__py2.py3-none-any.whl

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 (528) hide show
  1. ccxt/__init__.py +39 -35
  2. ccxt/abantether.py +9 -9
  3. ccxt/abstract/alpaca.py +4 -0
  4. ccxt/abstract/apex.py +31 -0
  5. ccxt/abstract/bigone.py +1 -1
  6. ccxt/abstract/binance.py +106 -48
  7. ccxt/abstract/binancecoinm.py +106 -48
  8. ccxt/abstract/binanceus.py +141 -83
  9. ccxt/abstract/binanceusdm.py +106 -48
  10. ccxt/abstract/bingx.py +50 -1
  11. ccxt/abstract/bitbank.py +5 -0
  12. ccxt/abstract/bitfinex.py +136 -65
  13. ccxt/abstract/bitflyer.py +1 -0
  14. ccxt/abstract/bitget.py +67 -0
  15. ccxt/abstract/bitmart.py +19 -1
  16. ccxt/abstract/bitopro.py +1 -0
  17. ccxt/abstract/bitrue.py +68 -68
  18. ccxt/abstract/bitstamp.py +1 -0
  19. ccxt/abstract/blofin.py +30 -0
  20. ccxt/abstract/btcbox.py +2 -0
  21. ccxt/abstract/bybit.py +28 -13
  22. ccxt/abstract/cex.py +28 -29
  23. ccxt/abstract/coinbaseexchange.py +1 -0
  24. ccxt/abstract/coinbaseinternational.py +1 -1
  25. ccxt/abstract/cryptocom.py +16 -0
  26. ccxt/abstract/cryptomus.py +20 -0
  27. ccxt/abstract/defx.py +69 -0
  28. ccxt/abstract/deribit.py +1 -0
  29. ccxt/abstract/derive.py +117 -0
  30. ccxt/abstract/digifinex.py +1 -0
  31. ccxt/abstract/ellipx.py +25 -0
  32. ccxt/abstract/foxbit.py +26 -0
  33. ccxt/abstract/gate.py +19 -0
  34. ccxt/abstract/gateio.py +19 -0
  35. ccxt/abstract/gemini.py +1 -0
  36. ccxt/abstract/hibachi.py +26 -0
  37. ccxt/abstract/hyperliquid.py +1 -1
  38. ccxt/abstract/independentreserve.py +6 -0
  39. ccxt/abstract/kraken.py +1 -0
  40. ccxt/abstract/krakenfutures.py +4 -0
  41. ccxt/abstract/kucoin.py +10 -0
  42. ccxt/abstract/kucoinfutures.py +18 -0
  43. ccxt/abstract/lbank.py +2 -1
  44. ccxt/abstract/luno.py +1 -0
  45. ccxt/abstract/mexc.py +2 -0
  46. ccxt/abstract/modetrade.py +119 -0
  47. ccxt/abstract/myokx.py +349 -0
  48. ccxt/abstract/oceanex.py +5 -0
  49. ccxt/abstract/okx.py +25 -0
  50. ccxt/abstract/okxus.py +349 -0
  51. ccxt/abstract/onetrading.py +0 -12
  52. ccxt/abstract/paradex.py +23 -0
  53. ccxt/abstract/phemex.py +2 -0
  54. ccxt/abstract/poloniex.py +36 -0
  55. ccxt/abstract/tradeogre.py +3 -1
  56. ccxt/abstract/upbit.py +51 -34
  57. ccxt/abstract/whitebit.py +16 -0
  58. ccxt/abstract/woo.py +64 -6
  59. ccxt/abstract/xt.py +10 -5
  60. ccxt/afratether.py +7 -7
  61. ccxt/alpaca.py +828 -51
  62. ccxt/apex.py +1875 -0
  63. ccxt/arzinja.py +7 -7
  64. ccxt/arzplus.py +9 -9
  65. ccxt/ascendex.py +501 -306
  66. ccxt/async_support/__init__.py +39 -35
  67. ccxt/async_support/abantether.py +10 -10
  68. ccxt/async_support/afratether.py +9 -9
  69. ccxt/async_support/alpaca.py +828 -51
  70. ccxt/async_support/apex.py +1875 -0
  71. ccxt/async_support/arzinja.py +10 -10
  72. ccxt/async_support/arzplus.py +12 -12
  73. ccxt/async_support/ascendex.py +502 -306
  74. ccxt/async_support/base/exchange.py +303 -89
  75. ccxt/async_support/base/ws/cache.py +9 -3
  76. ccxt/async_support/base/ws/client.py +173 -38
  77. ccxt/async_support/base/ws/future.py +25 -37
  78. ccxt/async_support/bequant.py +5 -3
  79. ccxt/async_support/bigone.py +279 -144
  80. ccxt/async_support/binance.py +2347 -1158
  81. ccxt/async_support/binancecoinm.py +9 -3
  82. ccxt/async_support/binanceus.py +17 -3
  83. ccxt/async_support/binanceusdm.py +9 -4
  84. ccxt/async_support/bingx.py +2962 -920
  85. ccxt/async_support/bit2c.py +147 -27
  86. ccxt/async_support/bitbank.py +151 -23
  87. ccxt/async_support/bitbns.py +104 -30
  88. ccxt/async_support/bitfinex.py +3291 -1113
  89. ccxt/async_support/bitflyer.py +202 -27
  90. ccxt/async_support/bitget.py +3683 -1538
  91. ccxt/async_support/bithumb.py +195 -38
  92. ccxt/async_support/bitimen.py +12 -12
  93. ccxt/async_support/bitir.py +38 -38
  94. ccxt/async_support/bitmart.py +1288 -350
  95. ccxt/async_support/bitmex.py +260 -75
  96. ccxt/async_support/bitopro.py +262 -62
  97. ccxt/async_support/bitpin.py +17 -16
  98. ccxt/async_support/bitrue.py +459 -290
  99. ccxt/async_support/bitso.py +199 -54
  100. ccxt/async_support/bitstamp.py +230 -96
  101. ccxt/async_support/bitteam.py +167 -25
  102. ccxt/async_support/{huobijp.py → bittrade.py} +158 -30
  103. ccxt/async_support/bitvavo.py +213 -49
  104. ccxt/async_support/blockchaincom.py +160 -46
  105. ccxt/async_support/blofin.py +502 -120
  106. ccxt/async_support/btcalpha.py +169 -31
  107. ccxt/async_support/btcbox.py +292 -23
  108. ccxt/async_support/btcmarkets.py +211 -58
  109. ccxt/async_support/btcturk.py +161 -38
  110. ccxt/async_support/bybit.py +1775 -1030
  111. ccxt/async_support/cex.py +1440 -1303
  112. ccxt/async_support/coinbase.py +724 -212
  113. ccxt/async_support/coinbaseadvanced.py +2 -1
  114. ccxt/async_support/coinbaseexchange.py +388 -89
  115. ccxt/async_support/coinbaseinternational.py +412 -57
  116. ccxt/async_support/coincatch.py +177 -78
  117. ccxt/async_support/coincheck.py +135 -19
  118. ccxt/async_support/coinex.py +606 -232
  119. ccxt/async_support/coinmate.py +189 -63
  120. ccxt/async_support/coinmetro.py +195 -54
  121. ccxt/async_support/coinone.py +158 -51
  122. ccxt/async_support/coinsph.py +336 -61
  123. ccxt/async_support/coinspot.py +151 -52
  124. ccxt/async_support/cryptocom.py +661 -111
  125. ccxt/async_support/cryptomus.py +1137 -0
  126. ccxt/async_support/defx.py +2071 -0
  127. ccxt/async_support/delta.py +299 -99
  128. ccxt/async_support/deribit.py +348 -126
  129. ccxt/async_support/derive.py +2572 -0
  130. ccxt/async_support/digifinex.py +430 -214
  131. ccxt/async_support/ellipx.py +2029 -0
  132. ccxt/async_support/eterex.py +10 -10
  133. ccxt/async_support/excoino.py +31 -31
  134. ccxt/async_support/exir.py +14 -14
  135. ccxt/async_support/exmo.py +344 -131
  136. ccxt/async_support/exnovin.py +10 -10
  137. ccxt/async_support/farhadexchange.py +12 -12
  138. ccxt/async_support/fmfwio.py +2 -1
  139. ccxt/async_support/foxbit.py +1935 -0
  140. ccxt/async_support/gate.py +1351 -529
  141. ccxt/async_support/gateio.py +2 -1
  142. ccxt/async_support/gemini.py +144 -39
  143. ccxt/async_support/hashkey.py +152 -109
  144. ccxt/async_support/hibachi.py +2080 -0
  145. ccxt/async_support/hitbtc.py +395 -167
  146. ccxt/async_support/hitobit.py +12 -12
  147. ccxt/async_support/hollaex.py +307 -119
  148. ccxt/async_support/htx.py +851 -383
  149. ccxt/async_support/huobi.py +2 -1
  150. ccxt/async_support/hyperliquid.py +1848 -536
  151. ccxt/async_support/independentreserve.py +288 -15
  152. ccxt/async_support/indodax.py +190 -33
  153. ccxt/async_support/jibitex.py +12 -12
  154. ccxt/async_support/kraken.py +795 -351
  155. ccxt/async_support/krakenfutures.py +214 -62
  156. ccxt/async_support/kucoin.py +715 -396
  157. ccxt/async_support/kucoinfutures.py +652 -89
  158. ccxt/async_support/latoken.py +217 -113
  159. ccxt/async_support/lbank.py +425 -97
  160. ccxt/async_support/luno.py +382 -35
  161. ccxt/async_support/mercado.py +113 -6
  162. ccxt/async_support/mexc.py +874 -437
  163. ccxt/async_support/modetrade.py +2818 -0
  164. ccxt/async_support/myokx.py +54 -0
  165. ccxt/async_support/ndax.py +221 -64
  166. ccxt/async_support/nobitex.py +31 -37
  167. ccxt/async_support/novadax.py +190 -34
  168. ccxt/async_support/oceanex.py +217 -28
  169. ccxt/async_support/okcoin.py +253 -145
  170. ccxt/async_support/okexchange.py +11 -11
  171. ccxt/async_support/okx.py +1088 -351
  172. ccxt/async_support/okxus.py +54 -0
  173. ccxt/async_support/ompfinex.py +25 -24
  174. ccxt/async_support/onetrading.py +213 -392
  175. ccxt/async_support/oxfun.py +245 -166
  176. ccxt/async_support/p2b.py +151 -29
  177. ccxt/async_support/paradex.py +562 -49
  178. ccxt/async_support/paymium.py +82 -19
  179. ccxt/async_support/phemex.py +713 -172
  180. ccxt/async_support/poloniex.py +1602 -283
  181. ccxt/async_support/probit.py +224 -95
  182. ccxt/async_support/ramzinex.py +30 -27
  183. ccxt/async_support/sarmayex.py +9 -9
  184. ccxt/async_support/sarrafex.py +13 -13
  185. ccxt/async_support/tabdeal.py +14 -13
  186. ccxt/async_support/tetherland.py +9 -9
  187. ccxt/async_support/timex.py +210 -51
  188. ccxt/async_support/tokocrypto.py +167 -47
  189. ccxt/async_support/tradeogre.py +266 -31
  190. ccxt/async_support/twox.py +9 -9
  191. ccxt/async_support/ubitex.py +12 -12
  192. ccxt/async_support/upbit.py +568 -165
  193. ccxt/async_support/vertex.py +160 -32
  194. ccxt/async_support/wallex.py +12 -12
  195. ccxt/async_support/wavesexchange.py +165 -30
  196. ccxt/async_support/whitebit.py +975 -127
  197. ccxt/async_support/woo.py +1918 -1016
  198. ccxt/async_support/woofipro.py +433 -141
  199. ccxt/async_support/xt.py +649 -193
  200. ccxt/async_support/yobit.py +195 -70
  201. ccxt/async_support/zaif.py +91 -15
  202. ccxt/async_support/zonda.py +151 -36
  203. ccxt/base/decimal_to_precision.py +14 -10
  204. ccxt/base/errors.py +49 -18
  205. ccxt/base/exchange.py +1556 -450
  206. ccxt/base/precise.py +10 -0
  207. ccxt/base/types.py +114 -6
  208. ccxt/bequant.py +5 -3
  209. ccxt/bigone.py +279 -144
  210. ccxt/binance.py +2347 -1158
  211. ccxt/binancecoinm.py +9 -3
  212. ccxt/binanceus.py +17 -3
  213. ccxt/binanceusdm.py +9 -4
  214. ccxt/bingx.py +2962 -920
  215. ccxt/bit2c.py +147 -27
  216. ccxt/bitbank.py +151 -23
  217. ccxt/bitbns.py +104 -30
  218. ccxt/bitfinex.py +3290 -1113
  219. ccxt/bitflyer.py +202 -27
  220. ccxt/bitget.py +3683 -1538
  221. ccxt/bithumb.py +194 -38
  222. ccxt/bitimen.py +9 -9
  223. ccxt/bitir.py +35 -35
  224. ccxt/bitmart.py +1288 -350
  225. ccxt/bitmex.py +260 -75
  226. ccxt/bitopro.py +262 -62
  227. ccxt/bitpin.py +15 -14
  228. ccxt/bitrue.py +459 -290
  229. ccxt/bitso.py +199 -54
  230. ccxt/bitstamp.py +230 -96
  231. ccxt/bitteam.py +167 -25
  232. ccxt/{huobijp.py → bittrade.py} +158 -30
  233. ccxt/bitvavo.py +213 -49
  234. ccxt/blockchaincom.py +160 -46
  235. ccxt/blofin.py +502 -120
  236. ccxt/btcalpha.py +169 -31
  237. ccxt/btcbox.py +291 -23
  238. ccxt/btcmarkets.py +211 -58
  239. ccxt/btcturk.py +161 -38
  240. ccxt/bybit.py +1775 -1030
  241. ccxt/cex.py +1439 -1303
  242. ccxt/coinbase.py +724 -212
  243. ccxt/coinbaseadvanced.py +2 -1
  244. ccxt/coinbaseexchange.py +388 -89
  245. ccxt/coinbaseinternational.py +412 -57
  246. ccxt/coincatch.py +177 -78
  247. ccxt/coincheck.py +135 -19
  248. ccxt/coinex.py +606 -232
  249. ccxt/coinmate.py +189 -63
  250. ccxt/coinmetro.py +194 -54
  251. ccxt/coinone.py +158 -51
  252. ccxt/coinsph.py +336 -61
  253. ccxt/coinspot.py +151 -52
  254. ccxt/cryptocom.py +661 -111
  255. ccxt/cryptomus.py +1137 -0
  256. ccxt/defx.py +2070 -0
  257. ccxt/delta.py +299 -99
  258. ccxt/deribit.py +348 -126
  259. ccxt/derive.py +2571 -0
  260. ccxt/digifinex.py +430 -214
  261. ccxt/ellipx.py +2029 -0
  262. ccxt/eterex.py +7 -7
  263. ccxt/excoino.py +29 -29
  264. ccxt/exir.py +11 -11
  265. ccxt/exmo.py +343 -131
  266. ccxt/exnovin.py +8 -8
  267. ccxt/farhadexchange.py +10 -10
  268. ccxt/fmfwio.py +2 -1
  269. ccxt/foxbit.py +1935 -0
  270. ccxt/gate.py +1351 -529
  271. ccxt/gateio.py +2 -1
  272. ccxt/gemini.py +144 -39
  273. ccxt/hashkey.py +152 -109
  274. ccxt/hibachi.py +2079 -0
  275. ccxt/hitbtc.py +395 -167
  276. ccxt/hitobit.py +9 -9
  277. ccxt/hollaex.py +307 -119
  278. ccxt/htx.py +851 -383
  279. ccxt/huobi.py +2 -1
  280. ccxt/hyperliquid.py +1848 -536
  281. ccxt/independentreserve.py +287 -15
  282. ccxt/indodax.py +190 -33
  283. ccxt/jibitex.py +9 -9
  284. ccxt/kraken.py +794 -351
  285. ccxt/krakenfutures.py +214 -62
  286. ccxt/kucoin.py +715 -396
  287. ccxt/kucoinfutures.py +652 -89
  288. ccxt/latoken.py +217 -113
  289. ccxt/lbank.py +425 -97
  290. ccxt/luno.py +382 -35
  291. ccxt/mercado.py +113 -6
  292. ccxt/mexc.py +873 -437
  293. ccxt/modetrade.py +2818 -0
  294. ccxt/myokx.py +54 -0
  295. ccxt/ndax.py +221 -64
  296. ccxt/nobitex.py +29 -35
  297. ccxt/novadax.py +190 -34
  298. ccxt/oceanex.py +217 -28
  299. ccxt/okcoin.py +253 -145
  300. ccxt/okexchange.py +9 -9
  301. ccxt/okx.py +1088 -351
  302. ccxt/okxus.py +54 -0
  303. ccxt/ompfinex.py +22 -21
  304. ccxt/onetrading.py +213 -392
  305. ccxt/oxfun.py +245 -166
  306. ccxt/p2b.py +151 -29
  307. ccxt/paradex.py +562 -49
  308. ccxt/paymium.py +82 -19
  309. ccxt/phemex.py +712 -172
  310. ccxt/poloniex.py +1601 -283
  311. ccxt/pro/__init__.py +76 -17
  312. ccxt/pro/alpaca.py +21 -6
  313. ccxt/pro/apex.py +984 -0
  314. ccxt/pro/ascendex.py +58 -10
  315. ccxt/pro/bequant.py +6 -1
  316. ccxt/pro/binance.py +728 -156
  317. ccxt/pro/binancecoinm.py +6 -2
  318. ccxt/pro/binanceus.py +8 -4
  319. ccxt/pro/binanceusdm.py +7 -2
  320. ccxt/pro/bingx.py +333 -142
  321. ccxt/pro/bitfinex.py +727 -262
  322. ccxt/pro/bitget.py +570 -79
  323. ccxt/pro/bithumb.py +20 -6
  324. ccxt/pro/bitmart.py +216 -87
  325. ccxt/pro/bitmex.py +47 -9
  326. ccxt/pro/bitopro.py +26 -14
  327. ccxt/pro/bitrue.py +22 -22
  328. ccxt/pro/bitstamp.py +54 -21
  329. ccxt/pro/{huobijp.py → bittrade.py} +7 -6
  330. ccxt/pro/bitvavo.py +191 -67
  331. ccxt/pro/blockchaincom.py +21 -8
  332. ccxt/pro/blofin.py +9 -1
  333. ccxt/pro/bybit.py +632 -245
  334. ccxt/pro/cex.py +59 -24
  335. ccxt/pro/coinbase.py +102 -73
  336. ccxt/pro/coinbaseadvanced.py +2 -1
  337. ccxt/pro/coinbaseexchange.py +8 -8
  338. ccxt/pro/coinbaseinternational.py +181 -25
  339. ccxt/pro/coincatch.py +6 -7
  340. ccxt/pro/coincheck.py +11 -6
  341. ccxt/pro/coinex.py +967 -665
  342. ccxt/pro/coinone.py +16 -9
  343. ccxt/pro/cryptocom.py +448 -45
  344. ccxt/pro/defx.py +831 -0
  345. ccxt/pro/deribit.py +150 -14
  346. ccxt/pro/derive.py +704 -0
  347. ccxt/pro/exmo.py +239 -6
  348. ccxt/pro/gate.py +623 -65
  349. ccxt/pro/gateio.py +2 -1
  350. ccxt/pro/gemini.py +27 -11
  351. ccxt/pro/hashkey.py +2 -2
  352. ccxt/pro/hitbtc.py +196 -91
  353. ccxt/pro/hollaex.py +23 -7
  354. ccxt/pro/htx.py +51 -14
  355. ccxt/pro/huobi.py +2 -1
  356. ccxt/pro/hyperliquid.py +591 -27
  357. ccxt/pro/independentreserve.py +9 -6
  358. ccxt/pro/kraken.py +640 -320
  359. ccxt/pro/krakenfutures.py +62 -35
  360. ccxt/pro/kucoin.py +267 -46
  361. ccxt/pro/kucoinfutures.py +165 -21
  362. ccxt/pro/lbank.py +102 -21
  363. ccxt/pro/luno.py +12 -8
  364. ccxt/pro/mexc.py +877 -111
  365. ccxt/pro/modetrade.py +1271 -0
  366. ccxt/pro/myokx.py +38 -0
  367. ccxt/pro/ndax.py +15 -2
  368. ccxt/pro/okcoin.py +23 -4
  369. ccxt/pro/okx.py +573 -98
  370. ccxt/pro/okxus.py +38 -0
  371. ccxt/pro/onetrading.py +30 -13
  372. ccxt/pro/oxfun.py +131 -27
  373. ccxt/pro/p2b.py +88 -22
  374. ccxt/pro/paradex.py +3 -3
  375. ccxt/pro/phemex.py +75 -21
  376. ccxt/pro/poloniex.py +124 -41
  377. ccxt/pro/probit.py +87 -80
  378. ccxt/pro/tradeogre.py +272 -0
  379. ccxt/pro/upbit.py +152 -12
  380. ccxt/pro/vertex.py +8 -3
  381. ccxt/pro/whitebit.py +58 -5
  382. ccxt/pro/woo.py +228 -37
  383. ccxt/pro/woofipro.py +106 -18
  384. ccxt/pro/xt.py +111 -5
  385. ccxt/probit.py +224 -95
  386. ccxt/protobuf/__init__.py +0 -0
  387. ccxt/protobuf/mexc/PrivateAccountV3Api_pb2.py +37 -0
  388. ccxt/protobuf/mexc/PrivateDealsV3Api_pb2.py +37 -0
  389. ccxt/protobuf/mexc/PrivateOrdersV3Api_pb2.py +37 -0
  390. ccxt/protobuf/mexc/PublicAggreBookTickerV3Api_pb2.py +37 -0
  391. ccxt/protobuf/mexc/PublicAggreDealsV3Api_pb2.py +39 -0
  392. ccxt/protobuf/mexc/PublicAggreDepthsV3Api_pb2.py +39 -0
  393. ccxt/protobuf/mexc/PublicBookTickerBatchV3Api_pb2.py +38 -0
  394. ccxt/protobuf/mexc/PublicBookTickerV3Api_pb2.py +37 -0
  395. ccxt/protobuf/mexc/PublicDealsV3Api_pb2.py +39 -0
  396. ccxt/protobuf/mexc/PublicIncreaseDepthsBatchV3Api_pb2.py +38 -0
  397. ccxt/protobuf/mexc/PublicIncreaseDepthsV3Api_pb2.py +39 -0
  398. ccxt/protobuf/mexc/PublicLimitDepthsV3Api_pb2.py +39 -0
  399. ccxt/protobuf/mexc/PublicMiniTickerV3Api_pb2.py +37 -0
  400. ccxt/protobuf/mexc/PublicMiniTickersV3Api_pb2.py +38 -0
  401. ccxt/protobuf/mexc/PublicSpotKlineV3Api_pb2.py +37 -0
  402. ccxt/protobuf/mexc/PushDataV3ApiWrapper_pb2.py +52 -0
  403. ccxt/protobuf/mexc/__init__.py +0 -0
  404. ccxt/ramzinex.py +28 -25
  405. ccxt/sarmayex.py +7 -7
  406. ccxt/sarrafex.py +10 -10
  407. ccxt/static_dependencies/__init__.py +1 -1
  408. ccxt/static_dependencies/lark/py.typed +0 -0
  409. ccxt/static_dependencies/marshmallow/py.typed +0 -0
  410. ccxt/static_dependencies/marshmallow_dataclass/py.typed +0 -0
  411. ccxt/static_dependencies/marshmallow_oneofschema/py.typed +0 -0
  412. ccxt/tabdeal.py +12 -11
  413. ccxt/test/tests_async.py +261 -57
  414. ccxt/test/tests_helpers.py +1 -3
  415. ccxt/test/tests_init.py +4 -3
  416. ccxt/test/tests_sync.py +261 -57
  417. ccxt/tetherland.py +7 -7
  418. ccxt/timex.py +210 -51
  419. ccxt/tokocrypto.py +167 -47
  420. ccxt/tradeogre.py +266 -31
  421. ccxt/twox.py +7 -7
  422. ccxt/ubitex.py +9 -9
  423. ccxt/upbit.py +568 -165
  424. ccxt/vertex.py +160 -32
  425. ccxt/wallex.py +9 -9
  426. ccxt/wavesexchange.py +165 -30
  427. ccxt/whitebit.py +975 -127
  428. ccxt/woo.py +1917 -1016
  429. ccxt/woofipro.py +432 -141
  430. ccxt/xt.py +649 -193
  431. ccxt/yobit.py +194 -70
  432. ccxt/zaif.py +91 -15
  433. ccxt/zonda.py +151 -36
  434. {ccxt_ir-4.3.46.0.2.dist-info → ccxt_ir-4.5.0.dist-info}/METADATA +225 -73
  435. ccxt_ir-4.5.0.dist-info/RECORD +743 -0
  436. {ccxt_ir-4.3.46.0.2.dist-info → ccxt_ir-4.5.0.dist-info}/WHEEL +1 -1
  437. ccxt/abstract/ace.py +0 -15
  438. ccxt/abstract/bitbay.py +0 -53
  439. ccxt/abstract/bitcoincom.py +0 -115
  440. ccxt/abstract/bitfinex2.py +0 -139
  441. ccxt/abstract/bitpanda.py +0 -35
  442. ccxt/abstract/bl3p.py +0 -19
  443. ccxt/abstract/coinlist.py +0 -54
  444. ccxt/abstract/currencycom.py +0 -68
  445. ccxt/abstract/hitbtc3.py +0 -115
  446. ccxt/abstract/idex.py +0 -26
  447. ccxt/abstract/kuna.py +0 -182
  448. ccxt/abstract/lykke.py +0 -29
  449. ccxt/abstract/poloniexfutures.py +0 -48
  450. ccxt/abstract/wazirx.py +0 -30
  451. ccxt/ace.py +0 -1012
  452. ccxt/async_support/ace.py +0 -1012
  453. ccxt/async_support/base/ws/aiohttp_client.py +0 -125
  454. ccxt/async_support/base/ws/fast_client.py +0 -96
  455. ccxt/async_support/bitbay.py +0 -17
  456. ccxt/async_support/bitcoincom.py +0 -17
  457. ccxt/async_support/bitfinex2.py +0 -3552
  458. ccxt/async_support/bitpanda.py +0 -16
  459. ccxt/async_support/bl3p.py +0 -485
  460. ccxt/async_support/coinlist.py +0 -2243
  461. ccxt/async_support/currencycom.py +0 -1950
  462. ccxt/async_support/hitbtc3.py +0 -16
  463. ccxt/async_support/idex.py +0 -1766
  464. ccxt/async_support/kuna.py +0 -1841
  465. ccxt/async_support/lykke.py +0 -1270
  466. ccxt/async_support/poloniexfutures.py +0 -1717
  467. ccxt/async_support/wazirx.py +0 -1224
  468. ccxt/bitbay.py +0 -17
  469. ccxt/bitcoincom.py +0 -17
  470. ccxt/bitfinex2.py +0 -3552
  471. ccxt/bitpanda.py +0 -16
  472. ccxt/bl3p.py +0 -485
  473. ccxt/coinlist.py +0 -2243
  474. ccxt/currencycom.py +0 -1950
  475. ccxt/hitbtc3.py +0 -16
  476. ccxt/idex.py +0 -1766
  477. ccxt/kuna.py +0 -1841
  478. ccxt/lykke.py +0 -1270
  479. ccxt/poloniexfutures.py +0 -1717
  480. ccxt/pro/bitcoincom.py +0 -34
  481. ccxt/pro/bitfinex2.py +0 -1083
  482. ccxt/pro/bitpanda.py +0 -15
  483. ccxt/pro/currencycom.py +0 -536
  484. ccxt/pro/idex.py +0 -672
  485. ccxt/pro/poloniexfutures.py +0 -990
  486. ccxt/pro/wazirx.py +0 -749
  487. ccxt/test/base/__init__.py +0 -29
  488. ccxt/test/base/test_account.py +0 -26
  489. ccxt/test/base/test_balance.py +0 -56
  490. ccxt/test/base/test_borrow_interest.py +0 -35
  491. ccxt/test/base/test_borrow_rate.py +0 -32
  492. ccxt/test/base/test_calculate_fee.py +0 -51
  493. ccxt/test/base/test_crypto.py +0 -127
  494. ccxt/test/base/test_currency.py +0 -76
  495. ccxt/test/base/test_datetime.py +0 -109
  496. ccxt/test/base/test_decimal_to_precision.py +0 -392
  497. ccxt/test/base/test_deep_extend.py +0 -68
  498. ccxt/test/base/test_deposit_withdrawal.py +0 -50
  499. ccxt/test/base/test_exchange_datetime_functions.py +0 -76
  500. ccxt/test/base/test_funding_rate_history.py +0 -29
  501. ccxt/test/base/test_last_price.py +0 -31
  502. ccxt/test/base/test_ledger_entry.py +0 -45
  503. ccxt/test/base/test_ledger_item.py +0 -48
  504. ccxt/test/base/test_leverage_tier.py +0 -33
  505. ccxt/test/base/test_liquidation.py +0 -50
  506. ccxt/test/base/test_margin_mode.py +0 -24
  507. ccxt/test/base/test_margin_modification.py +0 -35
  508. ccxt/test/base/test_market.py +0 -193
  509. ccxt/test/base/test_number.py +0 -411
  510. ccxt/test/base/test_ohlcv.py +0 -33
  511. ccxt/test/base/test_open_interest.py +0 -32
  512. ccxt/test/base/test_order.py +0 -64
  513. ccxt/test/base/test_order_book.py +0 -69
  514. ccxt/test/base/test_position.py +0 -60
  515. ccxt/test/base/test_shared_methods.py +0 -353
  516. ccxt/test/base/test_status.py +0 -24
  517. ccxt/test/base/test_throttle.py +0 -126
  518. ccxt/test/base/test_ticker.py +0 -92
  519. ccxt/test/base/test_trade.py +0 -47
  520. ccxt/test/base/test_trading_fee.py +0 -26
  521. ccxt/test/base/test_transaction.py +0 -39
  522. ccxt/test/test_async.py +0 -1649
  523. ccxt/test/test_sync.py +0 -1648
  524. ccxt/wazirx.py +0 -1224
  525. ccxt_ir-4.3.46.0.2.dist-info/RECORD +0 -772
  526. /ccxt/abstract/{huobijp.py → bittrade.py} +0 -0
  527. {ccxt_ir-4.3.46.0.2.dist-info → ccxt_ir-4.5.0.dist-info/licenses}/LICENSE.txt +0 -0
  528. {ccxt_ir-4.3.46.0.2.dist-info → ccxt_ir-4.5.0.dist-info}/top_level.txt +0 -0
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.btcturk import ImplicitAPI
8
8
  import hashlib
9
9
  import math
10
- from ccxt.base.types import Balances, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
10
+ from ccxt.base.types import Any, Balances, Bool, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
11
11
  from typing import List
12
12
  from ccxt.base.errors import ExchangeError
13
13
  from ccxt.base.errors import BadRequest
@@ -19,7 +19,7 @@ from ccxt.base.precise import Precise
19
19
 
20
20
  class btcturk(Exchange, ImplicitAPI):
21
21
 
22
- def describe(self):
22
+ def describe(self) -> Any:
23
23
  return self.deep_extend(super(btcturk, self).describe(), {
24
24
  'id': 'btcturk',
25
25
  'name': 'BTCTurk',
@@ -34,35 +34,64 @@ class btcturk(Exchange, ImplicitAPI):
34
34
  'future': False,
35
35
  'option': False,
36
36
  'addMargin': False,
37
+ 'borrowCrossMargin': False,
38
+ 'borrowIsolatedMargin': False,
39
+ 'borrowMargin': False,
37
40
  'cancelOrder': True,
38
41
  'closeAllPositions': False,
39
42
  'closePosition': False,
40
43
  'createDepositAddress': False,
41
44
  'createOrder': True,
45
+ 'createOrderWithTakeProfitAndStopLoss': False,
46
+ 'createOrderWithTakeProfitAndStopLossWs': False,
47
+ 'createPostOnlyOrder': False,
42
48
  'createReduceOnlyOrder': False,
43
49
  'fetchBalance': True,
50
+ 'fetchBorrowInterest': False,
51
+ 'fetchBorrowRate': False,
44
52
  'fetchBorrowRateHistories': False,
45
53
  'fetchBorrowRateHistory': False,
54
+ 'fetchBorrowRates': False,
55
+ 'fetchBorrowRatesPerSymbol': False,
46
56
  'fetchCrossBorrowRate': False,
47
57
  'fetchCrossBorrowRates': False,
48
58
  'fetchDepositAddress': False,
49
59
  'fetchDepositAddresses': False,
50
60
  'fetchDepositAddressesByNetwork': False,
51
61
  'fetchFundingHistory': False,
62
+ 'fetchFundingInterval': False,
63
+ 'fetchFundingIntervals': False,
52
64
  'fetchFundingRate': False,
53
65
  'fetchFundingRateHistory': False,
54
66
  'fetchFundingRates': False,
67
+ 'fetchGreeks': False,
55
68
  'fetchIndexOHLCV': False,
56
69
  'fetchIsolatedBorrowRate': False,
57
70
  'fetchIsolatedBorrowRates': False,
71
+ 'fetchIsolatedPositions': False,
58
72
  'fetchLeverage': False,
73
+ 'fetchLeverages': False,
74
+ 'fetchLeverageTiers': False,
75
+ 'fetchLiquidations': False,
76
+ 'fetchLongShortRatio': False,
77
+ 'fetchLongShortRatioHistory': False,
78
+ 'fetchMarginAdjustmentHistory': False,
59
79
  'fetchMarginMode': False,
80
+ 'fetchMarginModes': False,
81
+ 'fetchMarketLeverageTiers': False,
60
82
  'fetchMarkets': True,
61
83
  'fetchMarkOHLCV': False,
84
+ 'fetchMarkPrices': False,
85
+ 'fetchMyLiquidations': False,
86
+ 'fetchMySettlementHistory': False,
62
87
  'fetchMyTrades': True,
63
88
  'fetchOHLCV': True,
89
+ 'fetchOpenInterest': False,
64
90
  'fetchOpenInterestHistory': False,
91
+ 'fetchOpenInterests': False,
65
92
  'fetchOpenOrders': True,
93
+ 'fetchOption': False,
94
+ 'fetchOptionChain': False,
66
95
  'fetchOrderBook': True,
67
96
  'fetchOrders': True,
68
97
  'fetchPosition': False,
@@ -73,11 +102,17 @@ class btcturk(Exchange, ImplicitAPI):
73
102
  'fetchPositionsHistory': False,
74
103
  'fetchPositionsRisk': False,
75
104
  'fetchPremiumIndexOHLCV': False,
105
+ 'fetchSettlementHistory': False,
76
106
  'fetchTicker': True,
77
107
  'fetchTickers': True,
78
108
  'fetchTrades': True,
109
+ 'fetchVolatilityHistory': False,
79
110
  'reduceMargin': False,
111
+ 'repayCrossMargin': False,
112
+ 'repayIsolatedMargin': False,
113
+ 'repayMargin': False,
80
114
  'setLeverage': False,
115
+ 'setMargin': False,
81
116
  'setMarginMode': False,
82
117
  'setPositionMode': False,
83
118
  'ws': False,
@@ -93,7 +128,7 @@ class btcturk(Exchange, ImplicitAPI):
93
128
  '1y': '1 y',
94
129
  },
95
130
  'urls': {
96
- 'logo': 'https://user-images.githubusercontent.com/51840849/87153926-efbef500-c2c0-11ea-9842-05b63612c4b9.jpg',
131
+ 'logo': 'https://github.com/user-attachments/assets/10e0a238-9f60-4b06-9dda-edfc7602f1d6',
97
132
  'api': {
98
133
  'public': 'https://api.btcturk.com/api/v2',
99
134
  'private': 'https://api.btcturk.com/api/v1',
@@ -136,6 +171,70 @@ class btcturk(Exchange, ImplicitAPI):
136
171
  },
137
172
  },
138
173
  },
174
+ 'features': {
175
+ 'spot': {
176
+ 'sandbox': False,
177
+ 'createOrder': {
178
+ 'marginMode': False,
179
+ 'triggerPrice': True,
180
+ 'triggerPriceType': None,
181
+ 'triggerDirection': False,
182
+ 'stopLossPrice': False,
183
+ 'takeProfitPrice': False,
184
+ 'attachedStopLossTakeProfit': None,
185
+ 'timeInForce': {
186
+ 'IOC': False,
187
+ 'FOK': False,
188
+ 'PO': False,
189
+ 'GTD': False,
190
+ },
191
+ 'hedged': False,
192
+ 'leverage': False,
193
+ 'marketBuyRequiresPrice': False,
194
+ 'marketBuyByCost': False,
195
+ 'selfTradePrevention': False,
196
+ 'trailing': False,
197
+ 'iceberg': False,
198
+ },
199
+ 'createOrders': None,
200
+ 'fetchMyTrades': {
201
+ 'marginMode': False,
202
+ 'limit': 100,
203
+ 'daysBack': 100000,
204
+ 'untilDays': 30,
205
+ 'symbolRequired': True,
206
+ },
207
+ 'fetchOrder': None,
208
+ 'fetchOpenOrders': {
209
+ 'marginMode': False,
210
+ 'limit': None,
211
+ 'trigger': False,
212
+ 'trailing': False,
213
+ 'symbolRequired': True,
214
+ },
215
+ 'fetchOrders': {
216
+ 'marginMode': False,
217
+ 'limit': 1000,
218
+ 'daysBack': 100000,
219
+ 'untilDays': 30,
220
+ 'trigger': False,
221
+ 'trailing': False,
222
+ 'symbolRequired': True,
223
+ },
224
+ 'fetchClosedOrders': None,
225
+ 'fetchOHLCV': {
226
+ 'limit': None,
227
+ },
228
+ },
229
+ 'swap': {
230
+ 'linear': None,
231
+ 'inverse': None,
232
+ },
233
+ 'future': {
234
+ 'linear': None,
235
+ 'inverse': None,
236
+ },
237
+ },
139
238
  'fees': {
140
239
  'trading': {
141
240
  'maker': self.parse_number('0.0005'),
@@ -155,7 +254,9 @@ class btcturk(Exchange, ImplicitAPI):
155
254
  async def fetch_markets(self, params={}) -> List[Market]:
156
255
  """
157
256
  retrieves data on all markets for btcturk
158
- :see: https://docs.btcturk.com/public-endpoints/exchange-info
257
+
258
+ https://docs.btcturk.com/public-endpoints/exchange-info
259
+
159
260
  :param dict [params]: extra parameters specific to the exchange API endpoint
160
261
  :returns dict[]: an array of objects representing market data
161
262
  """
@@ -182,7 +283,7 @@ class btcturk(Exchange, ImplicitAPI):
182
283
  # "minPrice": "0.0000000000001",
183
284
  # "maxPrice": "10000000",
184
285
  # "tickSize": "10",
185
- # "minExchangeValue": "99.91",
286
+ # "minExchangeValue": "99.92",
186
287
  # "minAmount": null,
187
288
  # "maxAmount": null
188
289
  # }
@@ -203,8 +304,8 @@ class btcturk(Exchange, ImplicitAPI):
203
304
  # ],
204
305
  # }
205
306
  #
206
- data = self.safe_value(response, 'data')
207
- markets = self.safe_value(data, 'symbols', [])
307
+ data = self.safe_dict(response, 'data', {})
308
+ markets = self.safe_list(data, 'symbols', [])
208
309
  return self.parse_markets(markets)
209
310
 
210
311
  def parse_market(self, entry) -> Market:
@@ -213,7 +314,7 @@ class btcturk(Exchange, ImplicitAPI):
213
314
  quoteId = self.safe_string(entry, 'denominator')
214
315
  base = self.safe_currency_code(baseId)
215
316
  quote = self.safe_currency_code(quoteId)
216
- filters = self.safe_value(entry, 'filters', [])
317
+ filters = self.safe_list(entry, 'filters', [])
217
318
  minPrice = None
218
319
  maxPrice = None
219
320
  minAmount = None
@@ -280,7 +381,7 @@ class btcturk(Exchange, ImplicitAPI):
280
381
  }
281
382
 
282
383
  def parse_balance(self, response) -> Balances:
283
- data = self.safe_value(response, 'data', [])
384
+ data = self.safe_list(response, 'data', [])
284
385
  result: dict = {
285
386
  'info': response,
286
387
  'timestamp': None,
@@ -300,7 +401,9 @@ class btcturk(Exchange, ImplicitAPI):
300
401
  async def fetch_balance(self, params={}) -> Balances:
301
402
  """
302
403
  query for balance and get the amount of funds available for trading or funds locked in orders
303
- :see: https://docs.btcturk.com/private-endpoints/account-balance
404
+
405
+ https://docs.btcturk.com/private-endpoints/account-balance
406
+
304
407
  :param dict [params]: extra parameters specific to the exchange API endpoint
305
408
  :returns dict: a `balance structure <https://docs.ccxt.com/#/?id=balance-structure>`
306
409
  """
@@ -327,7 +430,9 @@ class btcturk(Exchange, ImplicitAPI):
327
430
  async def fetch_order_book(self, symbol: str, limit: Int = None, params={}) -> OrderBook:
328
431
  """
329
432
  fetches information on open orders with bid(buy) and ask(sell) prices, volumes and other data
330
- :see: https://docs.btcturk.com/public-endpoints/orderbook
433
+
434
+ https://docs.btcturk.com/public-endpoints/orderbook
435
+
331
436
  :param str symbol: unified symbol of the market to fetch the order book for
332
437
  :param int [limit]: the maximum amount of order book entries to return
333
438
  :param dict [params]: extra parameters specific to the exchange API endpoint
@@ -350,7 +455,7 @@ class btcturk(Exchange, ImplicitAPI):
350
455
  # ]
351
456
  # }
352
457
  # }
353
- data = self.safe_value(response, 'data')
458
+ data = self.safe_dict(response, 'data', {})
354
459
  timestamp = self.safe_integer(data, 'timestamp')
355
460
  return self.parse_order_book(data, market['symbol'], timestamp, 'bids', 'asks', 0, 1)
356
461
 
@@ -406,7 +511,9 @@ class btcturk(Exchange, ImplicitAPI):
406
511
  async def fetch_tickers(self, symbols: Strings = None, params={}) -> Tickers:
407
512
  """
408
513
  fetches price tickers for multiple markets, statistical information calculated over the past 24 hours for each market
409
- :see: https://docs.btcturk.com/public-endpoints/ticker
514
+
515
+ https://docs.btcturk.com/public-endpoints/ticker
516
+
410
517
  :param str[]|None symbols: unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
411
518
  :param dict [params]: extra parameters specific to the exchange API endpoint
412
519
  :returns dict: a dictionary of `ticker structures <https://docs.ccxt.com/#/?id=ticker-structure>`
@@ -419,7 +526,9 @@ class btcturk(Exchange, ImplicitAPI):
419
526
  async def fetch_ticker(self, symbol: str, params={}) -> Ticker:
420
527
  """
421
528
  fetches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
422
- :see: https://docs.btcturk.com/public-endpoints/ticker
529
+
530
+ https://docs.btcturk.com/public-endpoints/ticker
531
+
423
532
  :param str symbol: unified symbol of the market to fetch the ticker for
424
533
  :param dict [params]: extra parameters specific to the exchange API endpoint
425
534
  :returns dict: a `ticker structure <https://docs.ccxt.com/#/?id=ticker-structure>`
@@ -492,7 +601,9 @@ class btcturk(Exchange, ImplicitAPI):
492
601
  async def fetch_trades(self, symbol: str, since: Int = None, limit: Int = None, params={}) -> List[Trade]:
493
602
  """
494
603
  get the list of most recent trades for a particular symbol
495
- :see: https://docs.btcturk.com/public-endpoints/trades
604
+
605
+ https://docs.btcturk.com/public-endpoints/trades
606
+
496
607
  :param str symbol: unified symbol of the market to fetch trades for
497
608
  :param int [since]: timestamp in ms of the earliest trade to fetch
498
609
  :param int [limit]: the maximum amount of trades to fetch
@@ -551,7 +662,9 @@ class btcturk(Exchange, ImplicitAPI):
551
662
  async def fetch_ohlcv(self, symbol: str, timeframe='1h', since: Int = None, limit: Int = None, params={}) -> List[list]:
552
663
  """
553
664
  fetches historical candlestick data containing the open, high, low, and close price, and the volume of a market
554
- :see: https://docs.btcturk.com/public-endpoints/get-kline-data
665
+
666
+ https://docs.btcturk.com/public-endpoints/get-kline-data
667
+
555
668
  :param str symbol: unified symbol of the market to fetch OHLCV data for
556
669
  :param str timeframe: the length of time each candle represents
557
670
  :param int [since]: timestamp in ms of the earliest candle to fetch
@@ -621,36 +734,38 @@ class btcturk(Exchange, ImplicitAPI):
621
734
  #
622
735
  return self.parse_ohlcvs(response, market, timeframe, since, limit)
623
736
 
624
- def parse_ohlcvs(self, ohlcvs, market=None, timeframe='1m', since: Int = None, limit: Int = None):
737
+ def parse_ohlcvs(self, ohlcvs, market=None, timeframe='1m', since: Int = None, limit: Int = None, tail: Bool = False):
625
738
  results = []
626
- timestamp = self.safe_value(ohlcvs, 't')
627
- high = self.safe_value(ohlcvs, 'h')
628
- open = self.safe_value(ohlcvs, 'o')
629
- low = self.safe_value(ohlcvs, 'l')
630
- close = self.safe_value(ohlcvs, 'c')
631
- volume = self.safe_value(ohlcvs, 'v')
739
+ timestamp = self.safe_list(ohlcvs, 't', [])
740
+ high = self.safe_list(ohlcvs, 'h', [])
741
+ open = self.safe_list(ohlcvs, 'o', [])
742
+ low = self.safe_list(ohlcvs, 'l', [])
743
+ close = self.safe_list(ohlcvs, 'c', [])
744
+ volume = self.safe_list(ohlcvs, 'v', [])
632
745
  for i in range(0, len(timestamp)):
633
746
  ohlcv: dict = {
634
- 'timestamp': self.safe_value(timestamp, i),
635
- 'high': self.safe_value(high, i),
636
- 'open': self.safe_value(open, i),
637
- 'low': self.safe_value(low, i),
638
- 'close': self.safe_value(close, i),
639
- 'volume': self.safe_value(volume, i),
747
+ 'timestamp': self.safe_integer(timestamp, i),
748
+ 'high': self.safe_number(high, i),
749
+ 'open': self.safe_number(open, i),
750
+ 'low': self.safe_number(low, i),
751
+ 'close': self.safe_number(close, i),
752
+ 'volume': self.safe_number(volume, i),
640
753
  }
641
754
  results.append(self.parse_ohlcv(ohlcv, market))
642
755
  sorted = self.sort_by(results, 0)
643
- return self.filter_by_since_limit(sorted, since, limit, 0)
756
+ return self.filter_by_since_limit(sorted, since, limit, 0, tail)
644
757
 
645
758
  async def create_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}):
646
759
  """
647
760
  create a trade order
648
- :see: https://docs.btcturk.com/private-endpoints/submit-order
761
+
762
+ https://docs.btcturk.com/private-endpoints/submit-order
763
+
649
764
  :param str symbol: unified symbol of the market to create an order in
650
765
  :param str type: 'market' or 'limit'
651
766
  :param str side: 'buy' or 'sell'
652
767
  :param float amount: how much of currency you want to trade in units of base currency
653
- :param float [price]: the price at which the order is to be fullfilled, in units of the quote currency, ignored in market orders
768
+ :param float [price]: the price at which the order is to be fulfilled, in units of the quote currency, ignored in market orders
654
769
  :param dict [params]: extra parameters specific to the exchange API endpoint
655
770
  :returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
656
771
  """
@@ -675,7 +790,9 @@ class btcturk(Exchange, ImplicitAPI):
675
790
  async def cancel_order(self, id: str, symbol: Str = None, params={}):
676
791
  """
677
792
  cancels an open order
678
- :see: https://docs.btcturk.com/private-endpoints/cancel-order
793
+
794
+ https://docs.btcturk.com/private-endpoints/cancel-order
795
+
679
796
  :param str id: order id
680
797
  :param str symbol: not used by btcturk cancelOrder()
681
798
  :param dict [params]: extra parameters specific to the exchange API endpoint
@@ -699,7 +816,9 @@ class btcturk(Exchange, ImplicitAPI):
699
816
  async def fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
700
817
  """
701
818
  fetch all unfilled currently open orders
702
- :see: https://docs.btcturk.com/private-endpoints/open-orders
819
+
820
+ https://docs.btcturk.com/private-endpoints/open-orders
821
+
703
822
  :param str symbol: unified market symbol
704
823
  :param int [since]: the earliest time in ms to fetch open orders for
705
824
  :param int [limit]: the maximum number of open orders structures to retrieve
@@ -713,15 +832,17 @@ class btcturk(Exchange, ImplicitAPI):
713
832
  market = self.market(symbol)
714
833
  request['pairSymbol'] = market['id']
715
834
  response = await self.privateGetOpenOrders(self.extend(request, params))
716
- data = self.safe_value(response, 'data')
717
- bids = self.safe_value(data, 'bids', [])
835
+ data = self.safe_dict(response, 'data', {})
836
+ bids = self.safe_list(data, 'bids', [])
718
837
  asks = self.safe_list(data, 'asks', [])
719
838
  return self.parse_orders(self.array_concat(bids, asks), market, since, limit)
720
839
 
721
840
  async def fetch_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
722
841
  """
723
842
  fetches information on multiple orders made by the user
724
- :see: https://docs.btcturk.com/private-endpoints/all-orders
843
+
844
+ https://docs.btcturk.com/private-endpoints/all-orders
845
+
725
846
  :param str symbol: unified market symbol of the market orders were made in
726
847
  :param int [since]: the earliest time in ms to fetch orders for
727
848
  :param int [limit]: the maximum number of order structures to retrieve
@@ -840,7 +961,9 @@ class btcturk(Exchange, ImplicitAPI):
840
961
  async def fetch_my_trades(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
841
962
  """
842
963
  fetch all trades made by the user
843
- :see: https://docs.btcturk.com/private-endpoints/user-transactions
964
+
965
+ https://docs.btcturk.com/private-endpoints/user-transactions
966
+
844
967
  :param str symbol: unified market symbol
845
968
  :param int [since]: the earliest time in ms to fetch trades for
846
969
  :param int [limit]: the maximum number of trades structures to retrieve