Saravanan666/pypi-org huggingface dataset:
Package: bitcoin-usb
Wrapper around hwi, such that one can sign bdk PSBTs directlyThis provides an abstraction layer ontop of hwi, such that only bdk is needed from the outsideCurrently supported areColdcardIt also providesAddressTypes, which are the commonly used bitcoin output descriptor templatesseed_tools.derive_spk_provider  to derive xpubs from seeds for all AddressTypes  (bdk does not support multisig templates currentlyhttps://github.com/bitcoindevkit/bdk/issues/1020)SoftwareSigner which can sign single and multisig PSBTs, this doesn't do any security checks, so only use it on testnetDemoRun the demo withpython demo.pyTestsRun testspython -m pytest -vvv  --log-cli-level=0Library UsageFor xpub derivation bip_utils is usedFor signing a psbt python-bitcointx is usedInstall packageFrom pypipipinstallbitcoin_usbFrom gitInstall  requirements:poetryinstallAutomatic commit formattingpipinstallpre-commit
pre-commitinstallRun the precommit manually for debuggingpre-commitrun--all-files
Package: bitcoinUsingIFTTT
bitcoinAlertWithTelegramThis is Python based Bitcoin alert system .github link :https://github.com/praveenNagaraj97-au7/Bitcoin-Alert-Based-on-PythonCreate IFTTT service using IFTTT app or websiteuse webhooks and telegram serviceHow to run the codethis line will run the code :import bitcoinTo link Your IFTTT Key and Event namebitcoin.link_telegram()to get the latest bitcoin price with respect to countrybitcoin.getPrice()to get Indian bitcoin updatesbitcoin.joinChannel()join the channel here : Telegram link:http://t.me/praveenNagarajto get notified!
Package: bitcoin-value
Bitcoin ValueA Python module to fetch the latest value of Bitcoin in different currencies.Table of ContentsInstallationUsageGetting Bitcoin ValueContributingLicenseInstallationYou can install thebitcoin-valuemodule using pip:pipinstallbitcoin-valueUsageGetting Bitcoin ValueYou can use this module to get the current value of Bitcoin in various currencies. Here's an example of how to use it:frombitcoin_valueimportcurrency# Specify the currency code (e.g., "USD", "EUR")bitcoin_value=currency("USD")# Print the Bitcoin value in the specified currencyprint(f"1 BTC is equivalent to{bitcoin_value}USD")ContributingContributions to this project are welcome. If you have any improvements or bug fixes, please submit a pull request.LicenseThis project is licensed under the MIT License.
Package: bitcom
bitcom-python-apiAPI Dochttps://www.bit.com/docs/en-us/#introductionQuick StartPrerequisitePython3Install packagepip3installbitcomHostYou can get the latest production/testnet hosts here, including REST API and WebSocket.https://www.bit.com/docs/en-us/#api-hosts-productionRest public client examplefrombitcom.client.market_clientimportMarketClientfrombitcom.utilsimport*frombitcom.constantimport*market_client=MarketClient(url=USER1_HOST)param_map={'instrument_id':'BTC-PERPETUAL',}funding_rate_response=market_client.get_funding_rate(param_map)LogInfo.output("Get funding rate: ",funding_rate_response)Rest private client examplefrombitcom.client.order_clientimportOrderClientorder_client=OrderClient(url=USER1_HOST,access_key='<your-access-key>',secret_key='<your-secret-key>')ret=order_client.place_new_order({'instrument_id':'BTC-PERPETUAL','qty':'1500','side':'buy','order_type':'market',})print(ret)Websocket subscribe examplefrombitcom.client.ws_auth_clientimportWsAuthClientfrombitcom.client.subscribe_clientimportSubscribeClientfrombitcom.utilsimport*frombitcom.constantimport*importjsonimporttimews_client=WsAuthClient(url=USER1_HOST,access_key=USER1_ACCESS_KEY,secret_key=USER1_SECRET_KEY)token_response=ws_client.get_ws_auth_token()LogInfo.output("Get websocket token: ",token_response)defon_wss_open(ws):cmd={"type":"subscribe","instruments":["BTC-PERPETUAL"],"channels":["ticker"],"interval":"raw","token":"{your_token}"}# convert to stringcmdStr=json.dumps(cmd)print('send subscribe cmd: '+cmdStr)ws.send(cmdStr)defon_wss_msg(ws,data):print(data)channel=SubscribeClient(WS_HOST,on_wss_open,on_wss_msg)channel.start()time.sleep(3)
Package: bit-counter
bit-counterPackage for counting the number of one bits in a numpy array of uint8 values.
Implemented as a Python module using Rust, providing high performance counting.BuildingTo build this package an installation of Rust and Python with thematurinpackage is required. The Maturin documentation onmaturin local developmentis a useful reference for more details.This project is configured by default to target CPUs with thePOPCNTinstruction.
The builds available on PyPI have been built with this configuration.
If you require a version for an older CPU withoutpopcntsupport, build with
the RUSTFLAGS environment variable to exclude thepopcnttarget-feature.
i.e.RUSTFLAGS='-C target-feature=-popcnt' maturin build -r.By default the bit counting is done with a parallel map across all available
CPUs through the use ofrayon. Number of threads
can be configured with the environment variableRAYON_NUM_THREADS.Example usageimport numpy as np
from bit_counter import count_ones

arr = np.packbits(np.random.choice([True, False], 1000000))

count_of_true_values = count_ones(arr)PerformanceWhen built to target a CPU withpopcntsupport thecount_onesmethod
provided is substantially faster than a naivenp.unpackbits(arr).sum().
Thecount_onesmethod also doesn't require unpacking the bit packed numpy
array, so doesn't require any addtional memory to do the calculation.For example with the following test code for 100 million True/False values that
are packed:import numpy as np
from bit_counter import count_ones

arr = np.packbits(np.random.choice([True, False], 100000000))Using this package on an AMD Ryzen 9 3900X 12-Core Processor yields:%timeit count_ones(arr)

905 µs ± 4.64 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)Compared to the simple unpack and sum case:%timeit np.unpackbits(arr).sum()

60.4 ms ± 421 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)
Package: bitdataset
BitDataset pythonIt contains a BitDatasetAPI for simple api queries. And BitDataset-pandas to load data into pandas DataFrameInstallationpip install bitdatasetExamples BitDatasetAPIimportdatetimefrombitdatasetimportBitDatasetAPItest_key='YOUR_API_KEY'api=BitDatasetAPI(test_key)# Exchangesexchanges=api.list_exchanges()forexchangeinexchanges:print(exchange)# BTCUSDT symbolssymbols=api.list_symbols({'filter':'BTCUSDT'})forsymbolinsymbols:print(symbol)# OHLCV periodsperiods=api.ohlcv_list_all_periods()forperiodinperiods:print(period)# OHLCV latestohlcv_latest=api.ohlcv_latest_data('okex:BTCUSDT',{'period':'M1','limit':5})forohlcvinohlcv_latest:print(ohlcv)# historical OHLCVstart_date=datetime.date(2018,9,1).isoformat()ohlcv_historical=api.ohlcv_historical_data('okex:BTCUSDT',{'period':'M1','start':start_date,'limit':5})forohlcvinohlcv_historical:print(ohlcv)# Latest tradeslatest_trades=api.trades_latest_data('okex:BTCUSDT',{'limit':5})fortradeinlatest_trades:print(trade)# Historical tradeshistorical_trades=api.trades_historical_data('okex:BTCUSDT',{'start':start_date,'limit':5})fortradeinhistorical_trades:print(trade)# Current Quote symbolscurrent_quote=api.quotes_current_data({'symbols':'okex:BTCUSDT, okex:ETHUSDT'})print(current_quote)current_quote=api.quotes_current_data_symbol('okex:BTCUSDT')print("Current Quote symbol")print(current_quote)# Latest quotesquotes_latest_data=api.quotes_latest_data('okex:BTCUSDT',{'limit':5})forquoteinquotes_latest_data:print(quote)# Historical quotesquotes_historical_data=api.quotes_historical_data('okex:BTCUSDT',{'start':start_date,'limit':5})forquoteinquotes_historical_data:print(quote)Examples BitDataset-pandasimportdatetimefrombitdatasetimportBitDatasetAPI,BitDatasetPandasapi=BitDatasetAPI('YOUR API KEY')connector=BitDatasetPandas(api)# Historical quotesdata=connector.load_quotes(['OKEX:BTCUSDT','BITMEX:XBTUSD'],datetime.date(2018,9,1),datetime.date(2018,9,2),5)print(data)# Historical tradesdata=connector.load_trades('OKEX:BTCUSDT',datetime.date(2018,9,1),datetime.date(2018,9,2),5)print(data)# Historical OHLCVdata=connector.load_ohlcv('OKEX:BTCUSDT','M1',datetime.date(2018,9,1),datetime.date(2018,9,2),5)print(data)# Latest quotesdata=connector.latest_quotes('OKEX:BTCUSDT',datetime.date(2018,9,1),5)print(data)# Latest tradesdata=connector.latest_trades('OKEX:BTCUSDT',datetime.date(2018,9,1),5)print(data)# Latest ohlcvdata=connector.latest_ohlcv('OKEX:BTCUSDT','M1',datetime.date(2018,9,1),5)print(data)
Package: bite-grads
BiteGrADSFor reading GrADS format data.Installpipinstallbite_gradsRequiresxarray; dask; pyproj; numpy; pandas.Supported ctl entriesComponents of a GrADS Data Descriptor FileDTYPEgridded binarystation...OPTIONSbyte ordertemplate...UNDEFPDEFlcc...XDEFYDEFLINEARLEVELSGAUS*ZDEFTDEFVARSvarnamelevsunitsadditional_codesdescriptionATTRIBUTE METADATAvarnameattribute_typeattribute_nameattribute_valueCOMMENTS...FeaturesLazy loadingManual correction ofTDEFManual correction ofPDEFProjection information following CF-ConventionsElseUsexgradsfor more features.Use nc or other modern formats to store you data.
Package: bite-parser
Welcome to bite-parserAsynchronous parser taking incremental bites out of your byte input stream.The bite-parser is a parser combinator library for Python.
It is similar toPyParsingin that it allows the construction of grammars for parsing
from simple building blocks in pure Python.
This approach is also known asParsing Expression Grammar (PEG).
While PyParsing
(and many other Python parsing libraries)
only support string,
bite-parser operates on bytes.
In addition,
bite-parser makes use ofasyncioand can asynchronously generate parsed items
from an input stream.A typical use-case would be the parsing of a network protocol
like IMAP.
In fact,
I wrote this library for the IMAP implementation of mydmarc-metrics-exporter.NoteI have implemented the fundamental set of parsers,
which should allow constructing most or all grammars
recognizable by this type of parser.
However, many convenience or higher level parsers are not yet implemented.Other areas that still need improvement are:Abilitiy to debug the parsing.Better error messages.Performance: Currently, only a basic recursive descent parser is
implemented which can exhibit exponential worst case performance.
This could be improved by implementing a packrat parser.Important linksDocumentationGitHub repository
Package: bitepi
bitepibitepi is a python wrapper around the BitEpi project found athttps://github.com/aehrc/BitEpi. It provides a pandas
interface for identification of epistasis interactions.
It exposes a singleEpistasisclass, through which the analysis can be
performed by callingcompute_epistasis.Input is two arrays, which can be lists, numpy arrays or pandas dataframes.sample_array contains mappings of sample names to case (1) or control (0).
Note that the header is ignored for numpy arrays and pandas dataframes, and
should not be present in python lists.samplecase/controlS10S21S31S40S50genotype_array contains the genotypes of each sample at each SNP, with a 0, 1
and 2 representing 0|0, 0|1 and 1|1 respectively. Headers are used to match
samples to the sample_array, but the first column's header is ignored.SNPS1S2S3S4S5snpA00210snpB21212snpC01121snpD02221snpE11101The sets of samples do not need to match exactly, unlessEpistasisis
called withstrict_intersect=True. If the sample sets do not match, analysis is done on the intersect.The output will be a dictionary, with metric codes e.g. "IG.1" as the keys and
pandas dataframes as the values.importbitepisample_array=[['S1',0],['S2',1],['S3',1],['S4',0],['S5',0],]genotype_array=[['SNP','S1','S2','S3','S4','S5'],['snpA',0,0,2,1,2],['snpB',2,1,2,1,2],['snpC',0,0,1,1,1],['snpD',2,2,1,2,1],['snpE',0,1,1,1,2],]epistasis=bitepi.Epistasis(genotype_array=genotype_array,sample_array=sample_array,)interactions=epistasis.compute_epistasis(sort=True,best_ig=True,)['best_ig']print(interactions)This should return:SNP     SNP_P    PAIR_P  TRIPLET_P  QUADLET_P    SNP_IG   PAIR_IG  TRIPLET_IG  QUADLET_IG  PAIR TRIPLET_1 TRIPLET_2 QUADLET_1 QUADLET_2 QUADLET_3
0  snpA  1.707692  2.000000   2.109091        0.0  1.187692  0.266667    0.109091         0.0  snpE      snpB      snpE      snpA      snpA      snpA
1  snpB  1.642424  1.909091   2.109091        0.0  1.122424  0.266667    0.200000         0.0  snpC      snpC      snpE      snpA      snpA      snpA
2  snpC  1.641026  1.909091   2.109091        0.0  1.121026  0.266667    0.200000         0.0  snpB      snpD      snpE      snpA      snpA      snpA
3  snpD  1.642424  1.909091   2.109091        0.0  1.122424  0.175758    0.200000         0.0  snpE      snpC      snpE      snpA      snpA      snpA
4  snpE  1.733333  2.000000   2.109091        0.0  1.213333  0.266667    0.200000         0.0  snpA      snpC      snpD      snpA      snpA      snpAFor higher order interactions (p3, ig3, p4 and ig4) Epistasis may take several
minutes to run, depending on the number of SNPs. If more information is
required when running, the logging level can be increased tologging.INFOorlogging.DEBUG.logging.DEBUGwill provide the greatest detail, including
logging from within the binary.importlogginglogging.root.setLevel(logging.DEBUG)
Package: biterm
Biterm Topic ModelThis is a simple Python implementation of the awesomeBiterm Topic Model.
This model is accurate in short text classification.
It explicitly models the word co-occurrence patterns in the whole corpus to solve the problem of sparse word co-occurrence at document-level.Simply install by:pip install bitermLoad some short texts and vectorize them via sklearn.fromsklearn.feature_extraction.textimportCountVectorizertexts=open('./data/reuters.titles').read().splitlines()[:50]vec=CountVectorizer(stop_words='english')X=vec.fit_transform(texts).toarray()Get the vocabulary and the biterms from the texts.frombiterm.utilityimportvec_to_bitermsvocab=np.array(vec.get_feature_names())biterms=vec_to_biterms(X)Create a BTM and pass the biterms to train it.frombiterm.cbtmimportoBTMbtm=oBTM(num_topics=20,V=vocab)topics=btm.fit_transform(biterms,iterations=100)Save a topic plot using pyLDAvis and explore the results! (also seesimple_btml.py)frombiterm.btmimportoBTMbtm=oBTM(num_topics=20,V=vocab)topics=btm.fit_transform(biterms,iterations=100)Inference is done with Gibbs Sampling and it's not really fast. The implementation is not meant for production.
But if you have to classify a lot of texts you can try using online learning. Use the Cython version to speed up performance a bit.importnumpyasnpimportpyLDAvisfrombiterm.cbtmimportoBTMfromsklearn.feature_extraction.textimportCountVectorizerfrombiterm.utilityimportvec_to_biterms,topic_summuary# helper functionsif__name__=="__main__":texts=open('./data/reuters.titles').read().splitlines()# vectorize textsvec=CountVectorizer(stop_words='english')X=vec.fit_transform(texts).toarray()# get vocabularyvocab=np.array(vec.get_feature_names())# get bitermsbiterms=vec_to_biterms(X)# create btmbtm=oBTM(num_topics=20,V=vocab)print("\n\nTrain Online BTM ..")foriinrange(0,len(biterms),100):# prozess chunk of 200 textsbiterms_chunk=biterms[i:i+100]btm.fit(biterms_chunk,iterations=50)topics=btm.transform(biterms)print("\n\nVisualize Topics ..")vis=pyLDAvis.prepare(btm.phi_wz.T,topics,np.count_nonzero(X,axis=1),vocab,np.sum(X,axis=0))pyLDAvis.save_html(vis,'./vis/online_btm.html')print("\n\nTopic coherence ..")topic_summuary(btm.phi_wz.T,X,vocab,10)print("\n\nTexts & Topics ..")foriinrange(len(texts)):print("{}(topic:{})".format(texts[i],topics[i].argmax()))
Package: bitermplus
Biterm Topic ModelBitermplusimplementsBiterm topic modelfor short texts introduced by Xiaohui Yan, Jiafeng Guo, Yanyan Lan, and Xueqi Cheng. Actually, it is a cythonized version ofBTM. This package is also capable of computingperplexity,semantic coherence, andentropymetrics.DevelopmentPlease note that bitermplus is actively improved.
Refer todocumentationto stay up to date.Requirementscythonnumpypandasscipyscikit-learntqdmSetupLinux and WindowsThere should be no issues with installingbitermplusunder these OSes. You can install the package directly from PyPi.pipinstallbitermplusOr from this repo:pipinstallgit+https://github.com/maximtrp/bitermplus.gitMac OSFirst, you need to install XCode CLT andHomebrew.
Then, installlibompusingbrew:xcode-select--install
brewinstalllibomp
pip3installbitermplusIf you have the following issue with libomp (fatal error: 'omp.h' file not found), runbrew info libompin the console:brewinfolibompYou should see the following output:libomp: stable 15.0.5 (bottled) [keg-only]
LLVM's OpenMP runtime library
https://openmp.llvm.org/
/opt/homebrew/Cellar/libomp/15.0.5 (7 files, 1.6MB)
Poured from bottle on 2022-11-19 at 12:16:49
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/libomp.rb
License: MIT
==> Dependencies
Build: cmake ✘, lit ✘
==> Caveats
libomp is keg-only, which means it was not symlinked into /opt/homebrew,
because it can override GCC headers and result in broken builds.

For compilers to find libomp you may need to set:
export LDFLAGS="-L/opt/homebrew/opt/libomp/lib"
export CPPFLAGS="-I/opt/homebrew/opt/libomp/include"

==> Analytics
install: 192,197 (30 days), 373,389 (90 days), 1,285,192 (365 days)
install-on-request: 24,388 (30 days), 48,013 (90 days), 164,666 (365 days)
build-error: 0 (30 days)ExportLDFLAGSandCPPFLAGSas suggested in brew output:exportLDFLAGS="-L/opt/homebrew/opt/libomp/lib"exportCPPFLAGS="-I/opt/homebrew/opt/libomp/include"ExampleModel fittingimportbitermplusasbtmimportnumpyasnpimportpandasaspd# IMPORTING DATAdf=pd.read_csv('dataset/SearchSnippets.txt.gz',header=None,names=['texts'])texts=df['texts'].str.strip().tolist()# PREPROCESSING# Obtaining terms frequency in a sparse matrix and corpus vocabularyX,vocabulary,vocab_dict=btm.get_words_freqs(texts)tf=np.array(X.sum(axis=0)).ravel()# Vectorizing documentsdocs_vec=btm.get_vectorized_docs(texts,vocabulary)docs_lens=list(map(len,docs_vec))# Generating bitermsbiterms=btm.get_biterms(docs_vec)# INITIALIZING AND RUNNING MODELmodel=btm.BTM(X,vocabulary,seed=12321,T=8,M=20,alpha=50/8,beta=0.01)model.fit(biterms,iterations=20)p_zd=model.transform(docs_vec)# METRICSperplexity=btm.perplexity(model.matrix_topics_words_,p_zd,X,8)coherence=btm.coherence(model.matrix_topics_words_,X,M=20)# orperplexity=model.perplexity_coherence=model.coherence_# LABELSmodel.labels_# orbtm.get_docs_top_topic(texts,model.matrix_docs_topics_)Results visualizationYou need to installtmplotfirst.importtmplotastmptmp.report(model=model,docs=texts)TutorialThere is atutorialin documentation that covers the important steps of topic modeling (including
stability measures and results visualization).
Package: bitevery
BitEvery API library (Python V0.0.1.beta)
An official Python module for interacting with the BitEvery.com API. Compatible with both Python 2 and Python 3.Installtion
$ pip install biteverySubmoduleTip ModuleFunction:getTipLinkParams:api_code: str - API code of callerReturn:tip_link: str - the tip link of the bitevery user whose API code is api_code
Package: bitex-blockchain-explorer
BitexTheBitexPython module provides an easy and convenient way to interact with blockchain data using the blockchain explorer. Whether you're interested in querying cryptocurrency addresses, retrieving balances, exploring transactions, or getting detailed information about blocks, Bitex has you covered.InstallationTo install theBitexmodule, you can use the followingpipcommand:pipinstallbitex-blockchain-explorerUsageImport thebitexmodule and follow these steps to interact with blockchain data:importbitex# Define the cryptocurrency addressaddress='1FeexV6bAHb8ybZjqQMjJrcCrHGW9sb6uF'# Initialize the Bitex blockchain explorerblockchain=bitex.Bitex()# Search for the address on different chainschains=blockchain.search(address)# Choose a chain (e.g., 'btc') for further operationschain='btc'# Get the balance for the selected addressbalance=blockchain.balance(chain,address)# Convert the balance from satoshi to BTC formatbalance_btc=blockchain.format_balance(balance['confirmed'])print(f'Balance:{balance_btc:.8f}{chain.upper()}')# Retrieve a limited number of transactions for the addresslimit=3transactions=blockchain.transactions(chain,address,limit=limit)# Access transaction detailsiftransactions:example_transaction=transactions[2]# Get the third transactiontxid=example_transaction.txidblock=example_transaction.blockblock_height=block.heightblock_position=block.position# Get more details about the transactiontransaction_details=example_transaction.details()# Extract specific detailstransaction_txid=transaction_details.txidtransaction_size=transaction_details.size# ... (other details)# Get transaction details as a dictionarytransaction_details_dict=transaction_details.get()# Note: Replace 'your_crypto_address_here' with your actual cryptocurrency addressFeaturesSearch for addresses on different chains.Retrieve balance information for a given address.Convert balance from satoshi to BTC format.Get transaction details and block information.LicenseThis project is licensed under the MIT License - see the LICENSE file for details.
Package: bitfactory
BitFactoryA module designed to facilitate quick and easy structured binary data creation allowing for the automatic adjustments of types such as lengths, checksums, etc of the modeled data.Installpip install bitfactoryUsageAn example for data strucured as follows:Type: Unsigned ByteLength: Unsigned Big-Endian Short that encompasses the Data and ChecksumData:Unsigned 32 bit IntUnsigned ByteChecksum: Unsigned Short that is calculated over the above Data portion onlydefcsum(data:bytes)->int:checksum=0forvalueindata:checksum+=valuereturnchecksumdata=BFContainer()data.type=BFUInt8(1)data.body=BFLength(BFUInt16(endian=BFEndian.BIG),BFContainer())data.body.checksumed=BFContainer()data.body.checksumed.data=BFUInt32(0xAABBCCDD)data.body.checksumed.data2=BFUInt8(10)data.body.checksum=BFCallableRef(BFUInt16(),csum,"checksumed")assertb"\x01\x00\x07\xdd\xcc\xbb\xaa\n\x18\x03"==data.pack()>>>print(data)+None||-UnsignedByte0x01:type|+bodylength:0x7|+checksumed||-UnsignedLong0xAABBCCDD:data||-UnsignedByte0x0A:data2|+checksumvalue:0x318
Package: bitfex
BitFex-API.pyBitFex.trade trading API python library.Installationpip install bitfexUsage Examplesfrombitfex_apiimportApiclient=Api(token='4320dbf5-3df1-483d-a155-1fc860c4a14d')client.user().response# ApiResponse(#   success=True,#   response={'username': 'client', 'balances': {'BTC': 0.985e-05, 'RUR': 0.0, ..., 'DOGE': 0.0}},#   error=None# )client.orders_my()# ApiResponse(#   success=True,#   response={'orders': [#     {'id': 1, 'pair': 'KWH_ETH', 'amount': 10000.0, 'price': 1.2e-07, 'operation': 'sell', 'completed': False, 'updated': 1563824693000, 'user_id': 'xx12'},#     ...#   ]}# )client.orders('BTC_RUR')# ApiResponse(#   success=True,#   response={'orders': [#     {'id': 11256624, 'pair': 'BTC_RUR', 'amount': 2.597e-05, 'price': 640988.03, 'operation': 'buy', 'completed': True, 'updated': 1563995215000, 'user_id': 'YZ'},#     ...#   ]}# )client.create_order(pair='BTC_RUR',operation='buy',amount=0.01,price=600000.0)# ApiResponse(success = True) # fully completed# ApiResponse(success = True, response = {'order_id': 1}) # not fully completedclient.cancel_order(order_id=1)# ApiResponse(success = True)LicenseMIT