bitmart 0.0.24__tar.gz → 0.0.25__tar.gz

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.

Potentially problematic release.


This version of bitmart might be problematic. Click here for more details.

Files changed (289) hide show
  1. {bitmart-0.0.24 → bitmart-0.0.25}/PKG-INFO +11 -3
  2. {bitmart-0.0.24 → bitmart-0.0.25}/README.md +10 -2
  3. {bitmart-0.0.24 → bitmart-0.0.25}/pyproject.toml +1 -1
  4. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/__init__.py +2 -3
  5. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/abstract/bitmart.py +2 -0
  6. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/async_support/__init__.py +2 -3
  7. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/async_support/base/exchange.py +1 -1
  8. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/async_support/bitmart.py +70 -6
  9. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/base/exchange.py +34 -21
  10. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/bitmart.py +70 -6
  11. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/pro/__init__.py +2 -3
  12. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/pro/bitmart.py +9 -1
  13. {bitmart-0.0.24 → bitmart-0.0.25}/.gitignore +0 -0
  14. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/__init__.py +0 -0
  15. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/async_support/base/__init__.py +0 -0
  16. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/async_support/base/throttler.py +0 -0
  17. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/async_support/base/ws/__init__.py +0 -0
  18. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/async_support/base/ws/aiohttp_client.py +0 -0
  19. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/async_support/base/ws/cache.py +0 -0
  20. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/async_support/base/ws/client.py +0 -0
  21. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/async_support/base/ws/fast_client.py +0 -0
  22. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/async_support/base/ws/functions.py +0 -0
  23. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/async_support/base/ws/future.py +0 -0
  24. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/async_support/base/ws/order_book.py +0 -0
  25. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/async_support/base/ws/order_book_side.py +0 -0
  26. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/base/__init__.py +0 -0
  27. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/base/decimal_to_precision.py +0 -0
  28. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/base/errors.py +0 -0
  29. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/base/precise.py +0 -0
  30. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/base/types.py +0 -0
  31. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/README.md +0 -0
  32. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/__init__.py +0 -0
  33. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ecdsa/__init__.py +0 -0
  34. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ecdsa/_version.py +0 -0
  35. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ecdsa/curves.py +0 -0
  36. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ecdsa/der.py +0 -0
  37. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ecdsa/ecdsa.py +0 -0
  38. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ecdsa/ellipticcurve.py +0 -0
  39. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ecdsa/keys.py +0 -0
  40. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ecdsa/numbertheory.py +0 -0
  41. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ecdsa/rfc6979.py +0 -0
  42. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ecdsa/util.py +0 -0
  43. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/__init__.py +0 -0
  44. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/__init__.py +0 -0
  45. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/abi.py +0 -0
  46. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/base.py +0 -0
  47. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/codec.py +0 -0
  48. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/constants.py +0 -0
  49. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/decoding.py +0 -0
  50. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/encoding.py +0 -0
  51. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/exceptions.py +0 -0
  52. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/grammar.py +0 -0
  53. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/packed.py +0 -0
  54. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/py.typed +0 -0
  55. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/registry.py +0 -0
  56. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/tools/__init__.py +0 -0
  57. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/tools/_strategies.py +0 -0
  58. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/utils/__init__.py +0 -0
  59. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/utils/numeric.py +0 -0
  60. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/utils/padding.py +0 -0
  61. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/abi/utils/string.py +0 -0
  62. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/account/__init__.py +0 -0
  63. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/account/encode_typed_data/__init__.py +0 -0
  64. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/account/encode_typed_data/encoding_and_hashing.py +0 -0
  65. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/account/encode_typed_data/helpers.py +0 -0
  66. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/account/messages.py +0 -0
  67. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/account/py.typed +0 -0
  68. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/hexbytes/__init__.py +0 -0
  69. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/hexbytes/_utils.py +0 -0
  70. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/hexbytes/main.py +0 -0
  71. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/hexbytes/py.typed +0 -0
  72. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/typing/__init__.py +0 -0
  73. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/typing/abi.py +0 -0
  74. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/typing/bls.py +0 -0
  75. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/typing/discovery.py +0 -0
  76. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/typing/encoding.py +0 -0
  77. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/typing/enums.py +0 -0
  78. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/typing/ethpm.py +0 -0
  79. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/typing/evm.py +0 -0
  80. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/typing/networks.py +0 -0
  81. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/typing/py.typed +0 -0
  82. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/__init__.py +0 -0
  83. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/abi.py +0 -0
  84. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/address.py +0 -0
  85. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/applicators.py +0 -0
  86. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/conversions.py +0 -0
  87. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/currency.py +0 -0
  88. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/curried/__init__.py +0 -0
  89. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/debug.py +0 -0
  90. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/decorators.py +0 -0
  91. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/encoding.py +0 -0
  92. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/exceptions.py +0 -0
  93. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/functional.py +0 -0
  94. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/hexadecimal.py +0 -0
  95. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/humanize.py +0 -0
  96. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/logging.py +0 -0
  97. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/module_loading.py +0 -0
  98. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/numeric.py +0 -0
  99. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/py.typed +0 -0
  100. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/toolz.py +0 -0
  101. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/types.py +0 -0
  102. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/typing/__init__.py +0 -0
  103. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/typing/misc.py +0 -0
  104. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/ethereum/utils/units.py +0 -0
  105. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/keccak/__init__.py +0 -0
  106. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/keccak/keccak.py +0 -0
  107. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/__init__.py +0 -0
  108. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/__pyinstaller/__init__.py +0 -0
  109. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/__pyinstaller/hook-lark.py +0 -0
  110. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/ast_utils.py +0 -0
  111. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/common.py +0 -0
  112. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/exceptions.py +0 -0
  113. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/grammar.py +0 -0
  114. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/grammars/__init__.py +0 -0
  115. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/grammars/common.lark +0 -0
  116. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/grammars/lark.lark +0 -0
  117. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/grammars/python.lark +0 -0
  118. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/grammars/unicode.lark +0 -0
  119. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/indenter.py +0 -0
  120. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/lark.py +0 -0
  121. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/lexer.py +0 -0
  122. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/load_grammar.py +0 -0
  123. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/parse_tree_builder.py +0 -0
  124. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/parser_frontends.py +0 -0
  125. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/parsers/__init__.py +0 -0
  126. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/parsers/cyk.py +0 -0
  127. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/parsers/earley.py +0 -0
  128. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/parsers/earley_common.py +0 -0
  129. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/parsers/earley_forest.py +0 -0
  130. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/parsers/grammar_analysis.py +0 -0
  131. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/parsers/lalr_analysis.py +0 -0
  132. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/parsers/lalr_interactive_parser.py +0 -0
  133. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/parsers/lalr_parser.py +0 -0
  134. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/parsers/lalr_parser_state.py +0 -0
  135. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/parsers/xearley.py +0 -0
  136. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/py.typed +0 -0
  137. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/reconstruct.py +0 -0
  138. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/tools/__init__.py +0 -0
  139. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/tools/nearley.py +0 -0
  140. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/tools/serialize.py +0 -0
  141. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/tools/standalone.py +0 -0
  142. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/tree.py +0 -0
  143. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/tree_matcher.py +0 -0
  144. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/tree_templates.py +0 -0
  145. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/utils.py +0 -0
  146. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/lark/visitors.py +0 -0
  147. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow/__init__.py +0 -0
  148. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow/base.py +0 -0
  149. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow/class_registry.py +0 -0
  150. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow/decorators.py +0 -0
  151. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow/error_store.py +0 -0
  152. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow/exceptions.py +0 -0
  153. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow/fields.py +0 -0
  154. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow/orderedset.py +0 -0
  155. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow/py.typed +0 -0
  156. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow/schema.py +0 -0
  157. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow/types.py +0 -0
  158. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow/utils.py +0 -0
  159. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow/validate.py +0 -0
  160. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow/warnings.py +0 -0
  161. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow_dataclass/__init__.py +0 -0
  162. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow_dataclass/collection_field.py +0 -0
  163. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow_dataclass/lazy_class_attribute.py +0 -0
  164. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow_dataclass/mypy.py +0 -0
  165. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow_dataclass/py.typed +0 -0
  166. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow_dataclass/typing.py +0 -0
  167. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow_dataclass/union_field.py +0 -0
  168. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow_oneofschema/__init__.py +0 -0
  169. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow_oneofschema/one_of_schema.py +0 -0
  170. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/marshmallow_oneofschema/py.typed +0 -0
  171. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/msgpack/__init__.py +0 -0
  172. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/msgpack/_cmsgpack.pyx +0 -0
  173. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/msgpack/_packer.pyx +0 -0
  174. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/msgpack/_unpacker.pyx +0 -0
  175. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/msgpack/buff_converter.h +0 -0
  176. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/msgpack/exceptions.py +0 -0
  177. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/msgpack/ext.py +0 -0
  178. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/msgpack/fallback.py +0 -0
  179. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/msgpack/pack.h +0 -0
  180. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/msgpack/pack_template.h +0 -0
  181. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/msgpack/sysdep.h +0 -0
  182. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/msgpack/unpack.h +0 -0
  183. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/msgpack/unpack_define.h +0 -0
  184. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/msgpack/unpack_template.h +0 -0
  185. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/parsimonious/__init__.py +0 -0
  186. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/parsimonious/exceptions.py +0 -0
  187. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/parsimonious/expressions.py +0 -0
  188. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/parsimonious/grammar.py +0 -0
  189. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/parsimonious/nodes.py +0 -0
  190. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/parsimonious/utils.py +0 -0
  191. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/__init__.py +0 -0
  192. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v0/__init__.py +0 -0
  193. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v0/model.py +0 -0
  194. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v0/parser.py +0 -0
  195. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v0/schemas.py +0 -0
  196. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v0/shape.py +0 -0
  197. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v1/__init__.py +0 -0
  198. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v1/core_structures.json +0 -0
  199. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v1/model.py +0 -0
  200. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v1/parser.py +0 -0
  201. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v1/parser_transformer.py +0 -0
  202. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v1/schemas.py +0 -0
  203. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v1/shape.py +0 -0
  204. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v2/__init__.py +0 -0
  205. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v2/model.py +0 -0
  206. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v2/parser.py +0 -0
  207. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v2/parser_transformer.py +0 -0
  208. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v2/schemas.py +0 -0
  209. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/abi/v2/shape.py +0 -0
  210. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/cairo/__init__.py +0 -0
  211. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/cairo/data_types.py +0 -0
  212. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/cairo/deprecated_parse/__init__.py +0 -0
  213. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/cairo/deprecated_parse/cairo_types.py +0 -0
  214. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser.py +0 -0
  215. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser_transformer.py +0 -0
  216. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/cairo/felt.py +0 -0
  217. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/cairo/type_parser.py +0 -0
  218. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/cairo/v1/__init__.py +0 -0
  219. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/cairo/v1/type_parser.py +0 -0
  220. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/cairo/v2/__init__.py +0 -0
  221. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/cairo/v2/type_parser.py +0 -0
  222. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/ccxt_utils.py +0 -0
  223. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/common.py +0 -0
  224. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/constants.py +0 -0
  225. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/hash/__init__.py +0 -0
  226. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/hash/address.py +0 -0
  227. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/hash/compiled_class_hash_objects.py +0 -0
  228. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/hash/selector.py +0 -0
  229. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/hash/storage.py +0 -0
  230. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/hash/utils.py +0 -0
  231. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/models/__init__.py +0 -0
  232. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/models/typed_data.py +0 -0
  233. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/__init__.py +0 -0
  234. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/_calldata_reader.py +0 -0
  235. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/_context.py +0 -0
  236. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/__init__.py +0 -0
  237. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/_common.py +0 -0
  238. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/array_serializer.py +0 -0
  239. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/bool_serializer.py +0 -0
  240. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/byte_array_serializer.py +0 -0
  241. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/cairo_data_serializer.py +0 -0
  242. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/enum_serializer.py +0 -0
  243. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/felt_serializer.py +0 -0
  244. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/named_tuple_serializer.py +0 -0
  245. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/option_serializer.py +0 -0
  246. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/output_serializer.py +0 -0
  247. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/payload_serializer.py +0 -0
  248. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/struct_serializer.py +0 -0
  249. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/tuple_serializer.py +0 -0
  250. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/uint256_serializer.py +0 -0
  251. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/uint_serializer.py +0 -0
  252. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/data_serializers/unit_serializer.py +0 -0
  253. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/errors.py +0 -0
  254. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/factory.py +0 -0
  255. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/function_serialization_adapter.py +0 -0
  256. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/serialization/tuple_dataclass.py +0 -0
  257. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/utils/__init__.py +0 -0
  258. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/utils/constructor_args_translator.py +0 -0
  259. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/utils/iterable.py +0 -0
  260. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/utils/schema.py +0 -0
  261. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starknet/utils/typed_data.py +0 -0
  262. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starkware/__init__.py +0 -0
  263. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starkware/crypto/__init__.py +0 -0
  264. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starkware/crypto/fast_pedersen_hash.py +0 -0
  265. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starkware/crypto/math_utils.py +0 -0
  266. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starkware/crypto/signature.py +0 -0
  267. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/starkware/crypto/utils.py +0 -0
  268. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/sympy/__init__.py +0 -0
  269. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/sympy/core/__init__.py +0 -0
  270. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/sympy/core/intfunc.py +0 -0
  271. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/sympy/external/__init__.py +0 -0
  272. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/sympy/external/gmpy.py +0 -0
  273. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/sympy/external/importtools.py +0 -0
  274. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/sympy/external/ntheory.py +0 -0
  275. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/sympy/external/pythonmpq.py +0 -0
  276. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/toolz/__init__.py +0 -0
  277. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/toolz/_signatures.py +0 -0
  278. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/toolz/_version.py +0 -0
  279. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/toolz/compatibility.py +0 -0
  280. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/toolz/curried/__init__.py +0 -0
  281. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/toolz/curried/exceptions.py +0 -0
  282. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/toolz/curried/operator.py +0 -0
  283. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/toolz/dicttoolz.py +0 -0
  284. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/toolz/functoolz.py +0 -0
  285. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/toolz/itertoolz.py +0 -0
  286. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/toolz/recipes.py +0 -0
  287. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/toolz/utils.py +0 -0
  288. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/typing_inspect/__init__.py +0 -0
  289. {bitmart-0.0.24 → bitmart-0.0.25}/src/bitmart/ccxt/static_dependencies/typing_inspect/typing_inspect.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bitmart
3
- Version: 0.0.24
3
+ Version: 0.0.25
4
4
  Summary: bitmart crypto exchange api client
5
5
  Project-URL: Homepage, https://github.com/ccxt/ccxt
6
6
  Project-URL: Issues, https://github.com/ccxt/ccxt
@@ -20,8 +20,10 @@ Description-Content-Type: text/markdown
20
20
  # bitmart-python
21
21
  Python SDK (sync and async) for Bitmart cryptocurrency exchange with Rest and WS capabilities.
22
22
 
23
- You can check the SDK docs here: [SDK](https://docs.ccxt.com/#/exchanges/bitmart)
24
- You can check Bitmart's docs here: [Docs](https://www.google.com/search?q=google+bitmart+cryptocurrency+exchange+api+docs)
23
+ - You can check the SDK docs here: [SDK](https://docs.ccxt.com/#/exchanges/bitmart)
24
+ - You can check Bitmart's docs here: [Docs](https://www.google.com/search?q=google+bitmart+cryptocurrency+exchange+api+docs)
25
+ - Github repo: https://github.com/ccxt/bitmart-python
26
+ - Pypi package: https://pypi.org/project/bitmart
25
27
 
26
28
 
27
29
  ## Installation
@@ -44,6 +46,8 @@ def main():
44
46
  #
45
47
  # balance = instance.fetch_balance()
46
48
  # order = instance.create_order("BTC/USDC", "limit", "buy", 1, 100000)
49
+
50
+ main()
47
51
  ```
48
52
 
49
53
  ### Async
@@ -153,6 +157,7 @@ You can also construct custom requests to available "implicit" endpoints
153
157
  - `fetch_order_trades(self, id: str, symbol: Str = None, since: Int = None, limit: Int = None, params={})`
154
158
  - `fetch_order(self, id: str, symbol: Str = None, params={})`
155
159
  - `fetch_orders_by_status(self, status, symbol: Str = None, since: Int = None, limit: Int = None, params={})`
160
+ - `fetch_position_mode(self, symbol: Str = None, params={})`
156
161
  - `fetch_position(self, symbol: str, params={})`
157
162
  - `fetch_positions(self, symbols: Strings = None, params={})`
158
163
  - `fetch_spot_markets(self, params={})`
@@ -180,6 +185,7 @@ You can also construct custom requests to available "implicit" endpoints
180
185
  - `nonce(self)`
181
186
  - `repay_isolated_margin(self, symbol: str, code: str, amount, params={})`
182
187
  - `set_leverage(self, leverage: Int, symbol: Str = None, params={})`
188
+ - `set_position_mode(self, hedged: bool, symbol: Str = None, params={})`
183
189
  - `transfer(self, code: str, amount: float, fromAccount: str, toAccount: str, params={})`
184
190
  - `withdraw(self, code: str, amount: float, address: str, tag=None, params={})`
185
191
 
@@ -251,6 +257,7 @@ You can also construct custom requests to available "implicit" endpoints
251
257
  - `private_get_contract_private_affilate_rebate_list(request)`
252
258
  - `private_get_contract_private_affilate_trade_list(request)`
253
259
  - `private_get_contract_private_transaction_history(request)`
260
+ - `private_get_contract_private_get_position_mode(request)`
254
261
  - `private_post_account_sub_account_main_v1_sub_to_main(request)`
255
262
  - `private_post_account_sub_account_sub_v1_sub_to_main(request)`
256
263
  - `private_post_account_sub_account_main_v1_main_to_sub(request)`
@@ -295,6 +302,7 @@ You can also construct custom requests to available "implicit" endpoints
295
302
  - `private_post_contract_private_modify_tp_sl_order(request)`
296
303
  - `private_post_contract_private_submit_trail_order(request)`
297
304
  - `private_post_contract_private_cancel_trail_order(request)`
305
+ - `private_post_contract_private_set_position_mode(request)`
298
306
 
299
307
  ### WS Unified
300
308
 
@@ -1,8 +1,10 @@
1
1
  # bitmart-python
2
2
  Python SDK (sync and async) for Bitmart cryptocurrency exchange with Rest and WS capabilities.
3
3
 
4
- You can check the SDK docs here: [SDK](https://docs.ccxt.com/#/exchanges/bitmart)
5
- You can check Bitmart's docs here: [Docs](https://www.google.com/search?q=google+bitmart+cryptocurrency+exchange+api+docs)
4
+ - You can check the SDK docs here: [SDK](https://docs.ccxt.com/#/exchanges/bitmart)
5
+ - You can check Bitmart's docs here: [Docs](https://www.google.com/search?q=google+bitmart+cryptocurrency+exchange+api+docs)
6
+ - Github repo: https://github.com/ccxt/bitmart-python
7
+ - Pypi package: https://pypi.org/project/bitmart
6
8
 
7
9
 
8
10
  ## Installation
@@ -25,6 +27,8 @@ def main():
25
27
  #
26
28
  # balance = instance.fetch_balance()
27
29
  # order = instance.create_order("BTC/USDC", "limit", "buy", 1, 100000)
30
+
31
+ main()
28
32
  ```
29
33
 
30
34
  ### Async
@@ -134,6 +138,7 @@ You can also construct custom requests to available "implicit" endpoints
134
138
  - `fetch_order_trades(self, id: str, symbol: Str = None, since: Int = None, limit: Int = None, params={})`
135
139
  - `fetch_order(self, id: str, symbol: Str = None, params={})`
136
140
  - `fetch_orders_by_status(self, status, symbol: Str = None, since: Int = None, limit: Int = None, params={})`
141
+ - `fetch_position_mode(self, symbol: Str = None, params={})`
137
142
  - `fetch_position(self, symbol: str, params={})`
138
143
  - `fetch_positions(self, symbols: Strings = None, params={})`
139
144
  - `fetch_spot_markets(self, params={})`
@@ -161,6 +166,7 @@ You can also construct custom requests to available "implicit" endpoints
161
166
  - `nonce(self)`
162
167
  - `repay_isolated_margin(self, symbol: str, code: str, amount, params={})`
163
168
  - `set_leverage(self, leverage: Int, symbol: Str = None, params={})`
169
+ - `set_position_mode(self, hedged: bool, symbol: Str = None, params={})`
164
170
  - `transfer(self, code: str, amount: float, fromAccount: str, toAccount: str, params={})`
165
171
  - `withdraw(self, code: str, amount: float, address: str, tag=None, params={})`
166
172
 
@@ -232,6 +238,7 @@ You can also construct custom requests to available "implicit" endpoints
232
238
  - `private_get_contract_private_affilate_rebate_list(request)`
233
239
  - `private_get_contract_private_affilate_trade_list(request)`
234
240
  - `private_get_contract_private_transaction_history(request)`
241
+ - `private_get_contract_private_get_position_mode(request)`
235
242
  - `private_post_account_sub_account_main_v1_sub_to_main(request)`
236
243
  - `private_post_account_sub_account_sub_v1_sub_to_main(request)`
237
244
  - `private_post_account_sub_account_main_v1_main_to_sub(request)`
@@ -276,6 +283,7 @@ You can also construct custom requests to available "implicit" endpoints
276
283
  - `private_post_contract_private_modify_tp_sl_order(request)`
277
284
  - `private_post_contract_private_submit_trail_order(request)`
278
285
  - `private_post_contract_private_cancel_trail_order(request)`
286
+ - `private_post_contract_private_set_position_mode(request)`
279
287
 
280
288
  ### WS Unified
281
289
 
@@ -11,7 +11,7 @@ only-include = ["src/bitmart"]
11
11
 
12
12
  [project]
13
13
  name = "bitmart"
14
- version = "0.0.24"
14
+ version = "0.0.25"
15
15
  authors = [
16
16
  { name="CCXT", email="info@ccxt.trade" },
17
17
  ]
@@ -26,7 +26,7 @@ sys.modules['ccxt'] = ccxt_module
26
26
 
27
27
  # ----------------------------------------------------------------------------
28
28
 
29
- __version__ = '4.4.72'
29
+ __version__ = '4.4.75'
30
30
 
31
31
  # ----------------------------------------------------------------------------
32
32
 
@@ -87,10 +87,9 @@ from ccxt.base.errors import CancelPending # noqa: F4
87
87
  from ccxt.base.errors import UnsubscribeError # noqa: F401
88
88
  from ccxt.base.errors import error_hierarchy # noqa: F401
89
89
 
90
- from ccxt.bitfinex1 import bitfinex1 # noqa: F401
91
90
  from ccxt.bitmart import bitmart # noqa: F401
92
91
 
93
- exchanges = [ 'bitfinex1', 'bitmart',]
92
+ exchanges = [ 'bitmart',]
94
93
 
95
94
  base = [
96
95
  'Exchange',
@@ -68,6 +68,7 @@ class ImplicitAPI:
68
68
  private_get_contract_private_affilate_rebate_list = privateGetContractPrivateAffilateRebateList = Entry('contract/private/affilate/rebate-list', 'private', 'GET', {'cost': 10})
69
69
  private_get_contract_private_affilate_trade_list = privateGetContractPrivateAffilateTradeList = Entry('contract/private/affilate/trade-list', 'private', 'GET', {'cost': 10})
70
70
  private_get_contract_private_transaction_history = privateGetContractPrivateTransactionHistory = Entry('contract/private/transaction-history', 'private', 'GET', {'cost': 10})
71
+ private_get_contract_private_get_position_mode = privateGetContractPrivateGetPositionMode = Entry('contract/private/get-position-mode', 'private', 'GET', {'cost': 1})
71
72
  private_post_account_sub_account_main_v1_sub_to_main = privatePostAccountSubAccountMainV1SubToMain = Entry('account/sub-account/main/v1/sub-to-main', 'private', 'POST', {'cost': 30})
72
73
  private_post_account_sub_account_sub_v1_sub_to_main = privatePostAccountSubAccountSubV1SubToMain = Entry('account/sub-account/sub/v1/sub-to-main', 'private', 'POST', {'cost': 30})
73
74
  private_post_account_sub_account_main_v1_main_to_sub = privatePostAccountSubAccountMainV1MainToSub = Entry('account/sub-account/main/v1/main-to-sub', 'private', 'POST', {'cost': 30})
@@ -112,3 +113,4 @@ class ImplicitAPI:
112
113
  private_post_contract_private_modify_tp_sl_order = privatePostContractPrivateModifyTpSlOrder = Entry('contract/private/modify-tp-sl-order', 'private', 'POST', {'cost': 2.5})
113
114
  private_post_contract_private_submit_trail_order = privatePostContractPrivateSubmitTrailOrder = Entry('contract/private/submit-trail-order', 'private', 'POST', {'cost': 2.5})
114
115
  private_post_contract_private_cancel_trail_order = privatePostContractPrivateCancelTrailOrder = Entry('contract/private/cancel-trail-order', 'private', 'POST', {'cost': 1.5})
116
+ private_post_contract_private_set_position_mode = privatePostContractPrivateSetPositionMode = Entry('contract/private/set-position-mode', 'private', 'POST', {'cost': 1})
@@ -8,7 +8,7 @@ sys.modules['ccxt'] = ccxt_module
8
8
 
9
9
  # -----------------------------------------------------------------------------
10
10
 
11
- __version__ = '4.4.72'
11
+ __version__ = '4.4.75'
12
12
 
13
13
  # -----------------------------------------------------------------------------
14
14
 
@@ -67,10 +67,9 @@ from ccxt.base.errors import UnsubscribeError # noqa: F4
67
67
  from ccxt.base.errors import error_hierarchy # noqa: F401
68
68
 
69
69
 
70
- from ccxt.async_support.bitfinex1 import bitfinex1 # noqa: F401
71
70
  from ccxt.async_support.bitmart import bitmart # noqa: F401
72
71
 
73
- exchanges = [ 'bitfinex1', 'bitmart',]
72
+ exchanges = [ 'bitmart',]
74
73
 
75
74
  base = [
76
75
  'Exchange',
@@ -2,7 +2,7 @@
2
2
 
3
3
  # -----------------------------------------------------------------------------
4
4
 
5
- __version__ = '4.4.72'
5
+ __version__ = '4.4.75'
6
6
 
7
7
  # -----------------------------------------------------------------------------
8
8
 
@@ -104,7 +104,7 @@ class bitmart(Exchange, ImplicitAPI):
104
104
  'fetchOrders': False,
105
105
  'fetchOrderTrades': True,
106
106
  'fetchPosition': True,
107
- 'fetchPositionMode': False,
107
+ 'fetchPositionMode': True,
108
108
  'fetchPositions': True,
109
109
  'fetchStatus': True,
110
110
  'fetchTicker': True,
@@ -126,6 +126,7 @@ class bitmart(Exchange, ImplicitAPI):
126
126
  'repayIsolatedMargin': True,
127
127
  'setLeverage': True,
128
128
  'setMarginMode': False,
129
+ 'setPositionMode': True,
129
130
  'transfer': True,
130
131
  'withdraw': True,
131
132
  },
@@ -231,6 +232,7 @@ class bitmart(Exchange, ImplicitAPI):
231
232
  'contract/private/affilate/rebate-list': 10,
232
233
  'contract/private/affilate/trade-list': 10,
233
234
  'contract/private/transaction-history': 10,
235
+ 'contract/private/get-position-mode': 1,
234
236
  },
235
237
  'post': {
236
238
  # sub-account endpoints
@@ -283,6 +285,7 @@ class bitmart(Exchange, ImplicitAPI):
283
285
  'contract/private/modify-tp-sl-order': 2.5,
284
286
  'contract/private/submit-trail-order': 2.5, # weight is not provided by the exchange, is set order
285
287
  'contract/private/cancel-trail-order': 1.5, # weight is not provided by the exchange, is set order
288
+ 'contract/private/set-position-mode': 1,
286
289
  },
287
290
  },
288
291
  },
@@ -1205,7 +1208,7 @@ class bitmart(Exchange, ImplicitAPI):
1205
1208
  # {
1206
1209
  # "message": "OK",
1207
1210
  # "code": 1000,
1208
- # "trace": "619294ecef584282b26a3be322b1e01f.66.17403093228242228",
1211
+ # "trace": "619294ecef584282b26a3be322b1e01f.66.17403093228242229",
1209
1212
  # "data": {
1210
1213
  # "currencies": [
1211
1214
  # {
@@ -3847,10 +3850,11 @@ class bitmart(Exchange, ImplicitAPI):
3847
3850
  timestamp = self.safe_integer(transaction, 'apply_time')
3848
3851
  currencyId = self.safe_string(transaction, 'currency')
3849
3852
  networkId: Str = None
3850
- if currencyId.find('NFT') < 0:
3851
- parts = currencyId.split('-')
3852
- currencyId = self.safe_string(parts, 0)
3853
- networkId = self.safe_string(parts, 1)
3853
+ if currencyId is not None:
3854
+ if currencyId.find('NFT') < 0:
3855
+ parts = currencyId.split('-')
3856
+ currencyId = self.safe_string(parts, 0)
3857
+ networkId = self.safe_string(parts, 1)
3854
3858
  code = self.safe_currency_code(currencyId, currency)
3855
3859
  status = self.parse_transaction_status(self.safe_string(transaction, 'status'))
3856
3860
  feeCost = self.safe_number(transaction, 'fee')
@@ -5212,6 +5216,66 @@ class bitmart(Exchange, ImplicitAPI):
5212
5216
  addresses.append(address)
5213
5217
  return addresses
5214
5218
 
5219
+ async def set_position_mode(self, hedged: bool, symbol: Str = None, params={}):
5220
+ """
5221
+ set hedged to True or False for a market
5222
+
5223
+ https://developer-pro.bitmart.com/en/futuresv2/#submit-leverage-signed
5224
+
5225
+ :param bool hedged: set to True to use dualSidePosition
5226
+ :param str symbol: not used by bingx setPositionMode()
5227
+ :param dict [params]: extra parameters specific to the exchange API endpoint
5228
+ :returns dict: response from the exchange
5229
+ """
5230
+ await self.load_markets()
5231
+ positionMode = None
5232
+ if hedged:
5233
+ positionMode = 'hedge_mode'
5234
+ else:
5235
+ positionMode = 'one_way_mode'
5236
+ request: dict = {
5237
+ 'position_mode': positionMode,
5238
+ }
5239
+ #
5240
+ # {
5241
+ # "code": 1000,
5242
+ # "trace": "0cc6f4c4-8b8c-4253-8e90-8d3195aa109c",
5243
+ # "message": "Ok",
5244
+ # "data": {
5245
+ # "position_mode":"one_way_mode"
5246
+ # }
5247
+ # }
5248
+ #
5249
+ return await self.privatePostContractPrivateSetPositionMode(self.extend(request, params))
5250
+
5251
+ async def fetch_position_mode(self, symbol: Str = None, params={}):
5252
+ """
5253
+ fetchs the position mode, hedged or one way, hedged for binance is set identically for all linear markets or all inverse markets
5254
+
5255
+ https://developer-pro.bitmart.com/en/futuresv2/#get-position-mode-keyed
5256
+
5257
+ :param str symbol: not used
5258
+ :param dict [params]: extra parameters specific to the exchange API endpoint
5259
+ :returns dict: an object detailing whether the market is in hedged or one-way mode
5260
+ """
5261
+ response = await self.privateGetContractPrivateGetPositionMode(params)
5262
+ #
5263
+ # {
5264
+ # "code": 1000,
5265
+ # "trace": "0cc6f4c4-8b8c-4253-8e90-8d3195aa109c",
5266
+ # "message": "Ok",
5267
+ # "data": {
5268
+ # "position_mode":"one_way_mode"
5269
+ # }
5270
+ # }
5271
+ #
5272
+ data = self.safe_dict(response, 'data')
5273
+ positionMode = self.safe_string(data, 'position_mode')
5274
+ return {
5275
+ 'info': response,
5276
+ 'hedged': (positionMode == 'hedge_mode'),
5277
+ }
5278
+
5215
5279
  def nonce(self):
5216
5280
  return self.milliseconds() - self.options['timeDifference']
5217
5281
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- __version__ = '4.4.72'
7
+ __version__ = '4.4.75'
8
8
 
9
9
  # -----------------------------------------------------------------------------
10
10
 
@@ -2913,9 +2913,6 @@ class Exchange(object):
2913
2913
 
2914
2914
  def safe_currency_structure(self, currency: object):
2915
2915
  # derive data from networks: deposit, withdraw, active, fee, limits, precision
2916
- currencyDeposit = self.safe_bool(currency, 'deposit')
2917
- currencyWithdraw = self.safe_bool(currency, 'withdraw')
2918
- currencyActive = self.safe_bool(currency, 'active')
2919
2916
  networks = self.safe_dict(currency, 'networks', {})
2920
2917
  keys = list(networks.keys())
2921
2918
  length = len(keys)
@@ -2924,20 +2921,24 @@ class Exchange(object):
2924
2921
  key = keys[i]
2925
2922
  network = networks[key]
2926
2923
  deposit = self.safe_bool(network, 'deposit')
2924
+ currencyDeposit = self.safe_bool(currency, 'deposit')
2927
2925
  if currencyDeposit is None or deposit:
2928
2926
  currency['deposit'] = deposit
2929
2927
  withdraw = self.safe_bool(network, 'withdraw')
2928
+ currencyWithdraw = self.safe_bool(currency, 'withdraw')
2930
2929
  if currencyWithdraw is None or withdraw:
2931
2930
  currency['withdraw'] = withdraw
2932
- active = self.safe_bool(network, 'active')
2933
- if currencyActive is None or active:
2934
- currency['active'] = active
2935
2931
  # set network 'active' to False if D or W is disabled
2936
- if self.safe_bool(network, 'active') is None:
2932
+ active = self.safe_bool(network, 'active')
2933
+ if active is None:
2937
2934
  if deposit and withdraw:
2938
2935
  currency['networks'][key]['active'] = True
2939
2936
  elif deposit is not None and withdraw is not None:
2940
2937
  currency['networks'][key]['active'] = False
2938
+ active = self.safe_bool(network, 'active')
2939
+ currencyActive = self.safe_bool(currency, 'active')
2940
+ if currencyActive is None or active:
2941
+ currency['active'] = active
2941
2942
  # find lowest fee(which is more desired)
2942
2943
  fee = self.safe_string(network, 'fee')
2943
2944
  feeMain = self.safe_string(currency, 'fee')
@@ -6471,24 +6472,36 @@ class Exchange(object):
6471
6472
  return self.sort_by(result, 'id', True)
6472
6473
  return result
6473
6474
 
6474
- def remove_repeated_elements_from_array(self, input):
6475
+ def remove_repeated_elements_from_array(self, input, fallbackToTimestamp: bool = True):
6476
+ uniqueDic = {}
6477
+ uniqueResult = []
6478
+ for i in range(0, len(input)):
6479
+ entry = input[i]
6480
+ uniqValue = self.safe_string_n(entry, ['id', 'timestamp', 0]) if fallbackToTimestamp else self.safe_string(entry, 'id')
6481
+ if uniqValue is not None and not (uniqValue in uniqueDic):
6482
+ uniqueDic[uniqValue] = 1
6483
+ uniqueResult.append(entry)
6484
+ valuesLength = len(uniqueResult)
6485
+ if valuesLength > 0:
6486
+ return uniqueResult
6487
+ return input
6488
+
6489
+ def remove_repeated_trades_from_array(self, input):
6475
6490
  uniqueResult = {}
6476
6491
  for i in range(0, len(input)):
6477
6492
  entry = input[i]
6478
6493
  id = self.safe_string(entry, 'id')
6479
- if id is not None:
6480
- if self.safe_string(uniqueResult, id) is None:
6481
- uniqueResult[id] = entry
6482
- else:
6483
- timestamp = self.safe_integer_2(entry, 'timestamp', 0)
6484
- if timestamp is not None:
6485
- if self.safe_string(uniqueResult, timestamp) is None:
6486
- uniqueResult[timestamp] = entry
6494
+ if id is None:
6495
+ price = self.safe_string(entry, 'price')
6496
+ amount = self.safe_string(entry, 'amount')
6497
+ timestamp = self.safe_string(entry, 'timestamp')
6498
+ side = self.safe_string(entry, 'side')
6499
+ # unique trade identifier
6500
+ id = 't_' + str(timestamp) + '_' + side + '_' + price + '_' + amount
6501
+ if id is not None and not (id in uniqueResult):
6502
+ uniqueResult[id] = entry
6487
6503
  values = list(uniqueResult.values())
6488
- valuesLength = len(values)
6489
- if valuesLength > 0:
6490
- return values
6491
- return input
6504
+ return values
6492
6505
 
6493
6506
  def handle_until_option(self, key: str, request, params, multiplier=1):
6494
6507
  until = self.safe_integer_2(params, 'until', 'till')
@@ -104,7 +104,7 @@ class bitmart(Exchange, ImplicitAPI):
104
104
  'fetchOrders': False,
105
105
  'fetchOrderTrades': True,
106
106
  'fetchPosition': True,
107
- 'fetchPositionMode': False,
107
+ 'fetchPositionMode': True,
108
108
  'fetchPositions': True,
109
109
  'fetchStatus': True,
110
110
  'fetchTicker': True,
@@ -126,6 +126,7 @@ class bitmart(Exchange, ImplicitAPI):
126
126
  'repayIsolatedMargin': True,
127
127
  'setLeverage': True,
128
128
  'setMarginMode': False,
129
+ 'setPositionMode': True,
129
130
  'transfer': True,
130
131
  'withdraw': True,
131
132
  },
@@ -231,6 +232,7 @@ class bitmart(Exchange, ImplicitAPI):
231
232
  'contract/private/affilate/rebate-list': 10,
232
233
  'contract/private/affilate/trade-list': 10,
233
234
  'contract/private/transaction-history': 10,
235
+ 'contract/private/get-position-mode': 1,
234
236
  },
235
237
  'post': {
236
238
  # sub-account endpoints
@@ -283,6 +285,7 @@ class bitmart(Exchange, ImplicitAPI):
283
285
  'contract/private/modify-tp-sl-order': 2.5,
284
286
  'contract/private/submit-trail-order': 2.5, # weight is not provided by the exchange, is set order
285
287
  'contract/private/cancel-trail-order': 1.5, # weight is not provided by the exchange, is set order
288
+ 'contract/private/set-position-mode': 1,
286
289
  },
287
290
  },
288
291
  },
@@ -1205,7 +1208,7 @@ class bitmart(Exchange, ImplicitAPI):
1205
1208
  # {
1206
1209
  # "message": "OK",
1207
1210
  # "code": 1000,
1208
- # "trace": "619294ecef584282b26a3be322b1e01f.66.17403093228242228",
1211
+ # "trace": "619294ecef584282b26a3be322b1e01f.66.17403093228242229",
1209
1212
  # "data": {
1210
1213
  # "currencies": [
1211
1214
  # {
@@ -3847,10 +3850,11 @@ class bitmart(Exchange, ImplicitAPI):
3847
3850
  timestamp = self.safe_integer(transaction, 'apply_time')
3848
3851
  currencyId = self.safe_string(transaction, 'currency')
3849
3852
  networkId: Str = None
3850
- if currencyId.find('NFT') < 0:
3851
- parts = currencyId.split('-')
3852
- currencyId = self.safe_string(parts, 0)
3853
- networkId = self.safe_string(parts, 1)
3853
+ if currencyId is not None:
3854
+ if currencyId.find('NFT') < 0:
3855
+ parts = currencyId.split('-')
3856
+ currencyId = self.safe_string(parts, 0)
3857
+ networkId = self.safe_string(parts, 1)
3854
3858
  code = self.safe_currency_code(currencyId, currency)
3855
3859
  status = self.parse_transaction_status(self.safe_string(transaction, 'status'))
3856
3860
  feeCost = self.safe_number(transaction, 'fee')
@@ -5212,6 +5216,66 @@ class bitmart(Exchange, ImplicitAPI):
5212
5216
  addresses.append(address)
5213
5217
  return addresses
5214
5218
 
5219
+ def set_position_mode(self, hedged: bool, symbol: Str = None, params={}):
5220
+ """
5221
+ set hedged to True or False for a market
5222
+
5223
+ https://developer-pro.bitmart.com/en/futuresv2/#submit-leverage-signed
5224
+
5225
+ :param bool hedged: set to True to use dualSidePosition
5226
+ :param str symbol: not used by bingx setPositionMode()
5227
+ :param dict [params]: extra parameters specific to the exchange API endpoint
5228
+ :returns dict: response from the exchange
5229
+ """
5230
+ self.load_markets()
5231
+ positionMode = None
5232
+ if hedged:
5233
+ positionMode = 'hedge_mode'
5234
+ else:
5235
+ positionMode = 'one_way_mode'
5236
+ request: dict = {
5237
+ 'position_mode': positionMode,
5238
+ }
5239
+ #
5240
+ # {
5241
+ # "code": 1000,
5242
+ # "trace": "0cc6f4c4-8b8c-4253-8e90-8d3195aa109c",
5243
+ # "message": "Ok",
5244
+ # "data": {
5245
+ # "position_mode":"one_way_mode"
5246
+ # }
5247
+ # }
5248
+ #
5249
+ return self.privatePostContractPrivateSetPositionMode(self.extend(request, params))
5250
+
5251
+ def fetch_position_mode(self, symbol: Str = None, params={}):
5252
+ """
5253
+ fetchs the position mode, hedged or one way, hedged for binance is set identically for all linear markets or all inverse markets
5254
+
5255
+ https://developer-pro.bitmart.com/en/futuresv2/#get-position-mode-keyed
5256
+
5257
+ :param str symbol: not used
5258
+ :param dict [params]: extra parameters specific to the exchange API endpoint
5259
+ :returns dict: an object detailing whether the market is in hedged or one-way mode
5260
+ """
5261
+ response = self.privateGetContractPrivateGetPositionMode(params)
5262
+ #
5263
+ # {
5264
+ # "code": 1000,
5265
+ # "trace": "0cc6f4c4-8b8c-4253-8e90-8d3195aa109c",
5266
+ # "message": "Ok",
5267
+ # "data": {
5268
+ # "position_mode":"one_way_mode"
5269
+ # }
5270
+ # }
5271
+ #
5272
+ data = self.safe_dict(response, 'data')
5273
+ positionMode = self.safe_string(data, 'position_mode')
5274
+ return {
5275
+ 'info': response,
5276
+ 'hedged': (positionMode == 'hedge_mode'),
5277
+ }
5278
+
5215
5279
  def nonce(self):
5216
5280
  return self.milliseconds() - self.options['timeDifference']
5217
5281
 
@@ -8,7 +8,7 @@ sys.modules['ccxt'] = ccxt_module
8
8
 
9
9
  # ----------------------------------------------------------------------------
10
10
 
11
- __version__ = '4.4.72'
11
+ __version__ = '4.4.75'
12
12
 
13
13
  # ----------------------------------------------------------------------------
14
14
 
@@ -16,7 +16,6 @@ from ccxt.async_support.base.exchange import Exchange # noqa: F401
16
16
 
17
17
  # CCXT Pro exchanges (now this is mainly used for importing exchanges in WS tests)
18
18
 
19
- from ccxt.pro.bitfinex1 import bitfinex1 # noqa: F401
20
19
  from ccxt.pro.bitmart import bitmart # noqa: F401
21
20
 
22
- exchanges = [ 'bitfinex1', 'bitmart',]
21
+ exchanges = [ 'bitmart',]
@@ -74,6 +74,9 @@ class bitmart(bitmartAsync):
74
74
  'watchOrderBookForSymbols': {
75
75
  'depth': 'depth/increase100',
76
76
  },
77
+ 'watchTrades': {
78
+ 'ignoreDuplicates': True,
79
+ },
77
80
  'ws': {
78
81
  'inflate': True,
79
82
  },
@@ -302,7 +305,12 @@ class bitmart(bitmartAsync):
302
305
  first = self.safe_dict(trades, 0)
303
306
  tradeSymbol = self.safe_string(first, 'symbol')
304
307
  limit = trades.getLimit(tradeSymbol, limit)
305
- return self.filter_by_since_limit(trades, since, limit, 'timestamp', True)
308
+ result = self.filter_by_since_limit(trades, since, limit, 'timestamp', True)
309
+ if self.handle_option('watchTrades', 'ignoreDuplicates', True):
310
+ filtered = self.remove_repeated_trades_from_array(result)
311
+ filtered = self.sort_by(filtered, 'timestamp')
312
+ return filtered
313
+ return result
306
314
 
307
315
  def get_params_for_multiple_sub(self, methodName: str, symbols: List[str], limit: Int = None, params={}):
308
316
  symbols = self.market_symbols(symbols, None, False, True)
File without changes