Revised Issue Xena requires `apiKey`even with correct API keys ?
See original GitHub issue**Hi @kroitor, I am using the latest version of CCXT to get private data from my Xena testnet account like BTC Balance etc. But getting below ccxt error
OS: Windows Programming Language version: Python 3.8 CCXT version: 1.42.52 (latest) Method: fetch_balance()
`import ccxt print(ccxt.exchanges) print(dir(ccxt.xena))
Xena_exchange = ccxt.xena({
'apiKey': 'XXXXXX',
'secret': 'XXXXXXXXXXX',
'enableRateLimit': True,
'options': {'defaultType': 'future'},
'timeout': 30000,
}) Xena_exchange.load_markets() Xena_exchange.set_sandbox_mode(True) Xena_exchange = ccxt.xena({‘verbose’: True}) balances = Xena_exchange.fetch_balance(params={“currency”: “BTC”}) print(balances) `
Error Message
Request: GET https://trading.xena.exchange/api/common/currencies {‘User-Agent’: ‘python-requests/2.23.0’, ‘Accept-Encoding’: ‘gzip, deflate’} None
Response: GET https://trading.xena.exchange/api/common/currencies 200 {‘Date’: ‘Thu, 04 Mar 2021 05:06:19 GMT’, ‘Content-Type’: ‘application/json; charset=utf-8’, ‘Transfer-Encoding’: ‘chunked’, ‘Connection’: ‘keep-alive’, ‘Set-Cookie’: ‘__cfduid=dc94d85a372ca7596121099b1903339de1614834379; expires=Sat, 03-Apr-21 05:06:19 GMT; path=/; domain=.xena.exchange; HttpOnly; SameSite=Lax; Secure’, ‘Cache-Control’: ‘public, max-age=300’, ‘Vary’: ‘Accept-Encoding’, ‘Strict-Transport-Security’: ‘max-age=15724800; includeSubDomains’, ‘CF-Cache-Status’: ‘HIT’, ‘Age’: ‘270’, ‘cf-request-id’: ‘089d3a423d000021e99d294000000001’, ‘Expect-CT’: ‘max-age=604800, report-uri=“https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct”’, ‘Server’: ‘cloudflare’, ‘CF-RAY’: ‘62a89316ba5e21e9-HKG’, ‘Content-Encoding’: ‘gzip’} {“BAB”:{“name”:“BAB”,“title”:“Bitcoin ABC”,“blockchain”:{“name”:“BAB”,“title”:“Bitcoin ABC”,“deposit”:{“confirmations”:6},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:false,“view”:{“uriTemplate”:“bitcoinabc:%s?message=Xena Exchange”,“recommendedFee”:“0.00001”,“transactionUrl”:“https://blockchair.com/bitcoin-cash/transaction/${txId}“,“walletUrl”:“https://blockchair.com/bitcoin-cash/address/${walletId}”}},“precision”:5,“withdraw”:{“minAmount”:“0.01”,“commission”:“0.001”},“view”:{“color”:”#DC7C08",“site”:“https://www.bitcoinabc.org”},“enabled”:false},“BCH”:{“name”:“BCH”,“title”:"Bitcoin Cash”,“blockchain”:{“name”:“BCH”,“title”:“Bitcoin Cash”,“deposit”:{“confirmations”:6},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:false,“view”:{“uriTemplate”:“bitcoincash:%s?message=Xena Exchange”,“recommendedFee”:“0.0002”,“transactionUrl”:“https://bitcoincash.blockexplorer.com/tx/${txId}“,“walletUrl”:“https://bitcoincash.blockexplorer.com/address/${walletId}”}},“precision”:5,“withdraw”:{“minAmount”:“0.01”,“commission”:“0.001”},“view”:{“color”:”#DC7C08",“site”:“https://www.bitcoincash.org”},“enabled”:false},“BSV”:{“name”:“BSV”,“title”:"Bitcoin SV”,“blockchain”:{“name”:“BSV”,“title”:“Bitcoin SV”,“deposit”:{“confirmations”:6},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:false,“view”:{“uriTemplate”:“bitcoinsv:%s?message=Xena Exchange”,“recommendedFee”:“0.00001”,“transactionUrl”:“https://blockchair.com/bitcoin-sv/transaction/${txId}“,“walletUrl”:“https://blockchair.com/bitcoin-sv/address/${walletId}”}},“precision”:5,“withdraw”:{“minAmount”:“0.01”,“commission”:“0.001”},“view”:{“color”:”#e2b100",“site”:“https://bitcoinsv.io/”},“enabled”:false},“BTC”:{“name”:“BTC”,“title”:“Bitcoin”,“blockchain”:{“name”:“BTC”,“title”:“Bitcoin”,“deposit”:{“confirmations”:6},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:true,“view”:{“uriTemplate”:“bitcoin:%s”,“recommendedFee”:“0.0004”,“transactionUrl”:“https://www.blockchain.com/btc/tx/${txId}”,“walletUrl”:“https://www.blockchain.com/btc/address/${walletId}”}},“precision”:8,“withdraw”:{“minAmount”:“0.001”,“commission”:“0.0005”},“view”:{“color”:“#F7931A”,“site”:“https://bitcoin.org”},“enabled”:true,“to”:{“ETH”:{“index”:“.ETHBTC_Spread”,“direct”:true,“markup”:“0”,“haircut”:“0.2”},“USD”:{“index”:“.BTC3_TWAP”,“direct”:true,“markup”:“0”,“haircut”:“0.1”},“USDT”:{“index”:“.BTC3_TWAP”,“direct”:true,“markup”:“0”,“haircut”:“0.15”}}},“ETC”:{“name”:“ETC”,“title”:"Ethereum Classic”,“blockchain”:{“name”:“ETC”,“title”:“Ethereum Classic”,“deposit”:{“confirmations”:300},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:true,“view”:{“uriTemplate”:“%s”,“recommendedFee”:“0.000000004”,“transactionUrl”:“http://gastracker.io/tx/${txId}“,“walletUrl”:“http://gastracker.io/addr/${walletId}”}},“precision”:4,“withdraw”:{“minAmount”:“0.1”,“commission”:“0.01”},“view”:{“color”:”#34FA99",“site”:“https://ethereumclassic.org”},“enabled”:false},“ETH”:{“name”:“ETH”,“title”:“Ethereum”,“blockchain”:{“name”:“ETH”,“title”:“Ethereum”,“deposit”:{“confirmations”:30},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:true,“view”:{“uriTemplate”:“ethereum:%s”,“recommendedFee”:“0.000000004”,“transactionUrl”:“https://etherscan.io/tx/${txId}”,“walletUrl”:“https://etherscan.io/address/${walletId}”}},“precision”:5,“withdraw”:{“minAmount”:“0.01”,“commission”:“0.005”},“view”:{“color”:“#343434”,“site”:“https://www.ethereum.org”},“enabled”:false,“to”:{“BTC”:{“index”:“.ETHBTC_Spread”,“direct”:true,“markup”:“0”,“haircut”:“0.2”}}},“GRAM”:{“name”:“GRAM”,“title”:“GRAM”,“blockchain”:{“name”:“GRAM”,“title”:“GRAM”,“deposit”:{“confirmations”:10},“withdraw”:{“confirmations”:3},“addressReuseAllowed”:true,“view”:{“uriTemplate”:“gram:%s”,“recommendedFee”:“10”,“transactionUrl”:“”,“walletUrl”:“”}},“precision”:0,“withdraw”:{“minAmount”:“1”,“commission”:“1”},“view”:{“color”:“”,“site”:“https://www.ethereum.org”},“enabled”:false},“LTC”:{“name”:“LTC”,“title”:“Litecoin”,“blockchain”:{“name”:“LTC”,“title”:“Litecoin”,“deposit”:{“confirmations”:6},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:false,“view”:{“uriTemplate”:"litecoin:%s?message=Xena Exchange”,“recommendedFee”:“0.002”,“transactionUrl”:“http://explorer.litecoin.net/tx/${txId}“,“walletUrl”:“http://explorer.litecoin.net/address/${walletId}”}},“precision”:4,“withdraw”:{“minAmount”:“0.1”,“commission”:“0.01”},“view”:{“color”:”#BEBEBE",“site”:“https://litecoin.org”},“enabled”:false},“USD”:{“name”:“USD”,“title”:“USD”,“blockchain”:{“name”:“USD”,“title”:“USD”,“deposit”:{“confirmations”:10},“withdraw”:{“confirmations”:3},“addressReuseAllowed”:true,“view”:{“uriTemplate”:“usd:%s”,“recommendedFee”:“10”,“transactionUrl”:“”,“walletUrl”:“”}},“precision”:2,“withdraw”:{“minAmount”:“1”,“commission”:“1”},“view”:{“color”:“”,“site”:“https://www.ethereum.org”},“enabled”:false,“to”:{“BTC”:{“index”:“.BTC3_TWAP”,“direct”:false,“markup”:“0”,“haircut”:“0.1”},“USDT”:{“index”:“.USDTUSD”,“direct”:false,“markup”:“0”,“haircut”:“0.1”}}},“USDT”:{“name”:“USDT”,“title”:“Tether”,“blockchain”:{“name”:“ETH”,“title”:“Ethereum”,“deposit”:{“confirmations”:30},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:true,“view”:{“uriTemplate”:“ethereum:%s”,“recommendedFee”:“0.000000004”,“transactionUrl”:“https://etherscan.io/tx/${txId}”,“walletUrl”:“https://etherscan.io/address/${walletId}”}},“precision”:2,“withdraw”:{“minAmount”:“10”,“commission”:“5”},“view”:{“color”:“#92CFBC”,“site”:“https://tether.to”},“enabled”:false,“to”:{“BTC”:{“index”:“.BTC3_TWAP”,“direct”:false,“markup”:“0”,“haircut”:“0.15”},“USD”:{“index”:“.USDTUSD”,“direct”:true,“markup”:“0”,“haircut”:“0.1”}}},“XRP”:{“name”:“XRP”,“title”:“XRP”,“blockchain”:{“name”:“RIPPLE”,“title”:“Ripple”,“deposit”:{“confirmations”:10},“withdraw”:{“confirmations”:3},“addressReuseAllowed”:true,“view”:{“uriTemplate”:“ripple:%s”,“recommendedFee”:“12”,“transactionUrl”:“https://xrpcharts.ripple.com/#/transactions/${txId}”,“walletUrl”:“https://xrpcharts.ripple.com/#/graph/${walletId}”}},“precision”:6,“withdraw”:{“minAmount”:“1”,“commission”:“0.25”},“view”:{“color”:“#343434”,“site”:“https://ripple.com”},"enabled”:false}}
Request: GET https://trading.xena.exchange/api/common/instruments {‘User-Agent’: ‘python-requests/2.23.0’, ‘Accept-Encoding’: ‘gzip, deflate’} None
Response: GET https://trading.xena.exchange/api/common/instruments 200 {‘Date’: ‘Thu, 04 Mar 2021 05:06:19 GMT’, ‘Content-Type’: ‘application/json; charset=utf-8’, ‘Transfer-Encoding’: ‘chunked’, ‘Connection’: ‘keep-alive’, ‘Set-Cookie’: ‘__cfduid=dc94d85a372ca7596121099b1903339de1614834379; expires=Sat, 03-Apr-21 05:06:19 GMT; path=/; domain=.xena.exchange; HttpOnly; SameSite=Lax; Secure’, ‘Cache-Control’: ‘public, max-age=300’, ‘Vary’: ‘Accept-Encoding’, ‘Strict-Transport-Security’: ‘max-age=15724800; includeSubDomains’, ‘CF-Cache-Status’: ‘HIT’, ‘Age’: ‘269’, ‘cf-request-id’: ‘089d3a42e8000021e92e36e000000001’, ‘Expect-CT’: ‘max-age=604800, report-uri=“https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct”’, ‘Server’: ‘cloudflare’, ‘CF-RAY’: ‘62a89317ddd621e9-HKG’, ‘Content-Encoding’: ‘gzip’} [{“id”:“XBTUSD_3M_250621”,“type”:“Margin”,“marginType”:“XenaFuture”,“symbol”:“XBTUSD_3M_250621”,“baseCurrency”:“BTC”,“quoteCurrency”:“USD”,“settlCurrency”:“BTC”,“tickSize”:1,“minOrderQuantity”:“1”,“orderQtyStep”:“1”,“limitOrderMaxDistance”:“10”,“priceInputMask”:“00000.0”,“enabled”:true,“liquidationMaxDistance”:“0.01”,“contractValue”:“1”,“contractCurrency”:“USD”,“lotSize”:“1”,“maxOrderQty”:“500000”,“maxPosVolume”:“12000000”,“mark”:“.XBTUSD_3M_250621”,“underlying”:“.BTC3_TWAP”,“openInterest”:“.XBTUSD_3M_250621_OpenInterest”,“addUvmToFreeMargin”:“ProfitAndLoss”,“margin”:{“netting”:“PositionsAndOrders”,“rates”:[{“maxVolume”:“500000”,“initialRate”:“0.1”,“maintenanceRate”:“0.05”},{“maxVolume”:“1000000”,“initialRate”:“0.2”,“maintenanceRate”:“0.1”},{“maxVolume”:“1500000”,“initialRate”:“0.3”,“maintenanceRate”:“0.15”},{“maxVolume”:“2000000”,“initialRate”:“0.5”,“maintenanceRate”:“0.25”},{“maxVolume”:“2500000”,“initialRate”:“1”,“maintenanceRate”:“0.5”}],“rateMultipliers”:{“LimitBuy”:“1”,“LimitSell”:“1”,“Long”:“1”,“MarketBuy”:“1”,“MarketSell”:“1”,“Short”:“1”,“StopBuy”:“0”,“StopSell”:“0”}},“clearing”:{“enabled”:true,“index”:“.XBTUSD_3M_250621”},“riskAdjustment”:{“enabled”:true,“index”:“.RiskAdjustment_IR”},“expiration”:{“enabled”:true,“index”:“.BTC3_TWAP”},“pricePrecision”:2,“priceRange”:{“enabled”:true,“distance”:“0.2”,“movingBoundary”:“0”,“lowIndex”:“.XBTUSD_3M_250621_LOWRANGE”,“highIndex”:“.XBTUSD_3M_250621_HIGHRANGE”},“priceLimits”:{“enabled”:true,“distance”:“0.5”,“movingBoundary”:“0”,“lowIndex”:“.XBTUSD_3M_250621_LOWLIMIT”,“highIndex”:“.XBTUSD_3M_250621_HIGHLIMIT”},“inverse”:true,“serie”:“XBTUSD”,“tradingStartDate”:“2020-12-25 07:00:00”,“expiryDate”:“2021-06-25 08:00:00”},{“id”:“XBTUSD_3M_260321”,“type”:“Margin”,“marginType”:“XenaFuture”,“symbol”:“XBTUSD_3M_260321”,“baseCurrency”:“BTC”,“quoteCurrency”:“USD”,“settlCurrency”:“BTC”,“tickSize”:1,“minOrderQuantity”:“1”,“orderQtyStep”:“1”,“limitOrderMaxDistance”:“10”,“priceInputMask”:“00000.0”,“enabled”:true,“liquidationMaxDistance”:“0.01”,“contractValue”:“1”,“contractCurrency”:“USD”,“lotSize”:“1”,“maxOrderQty”:“500000”,“maxPosVolume”:“12000000”,“mark”:“.XBTUSD_3M_260321”,“underlying”:“.BTC3_TWAP”,“openInterest”:“.XBTUSD_3M_260321_OpenInterest”,“addUvmToFreeMargin”:“ProfitAndLoss”,“margin”:{“netting”:“PositionsAndOrders”,“rates”:[{“maxVolume”:“500000”,“initialRate”:“0.1”,“maintenanceRate”:“0.05”},{“maxVolume”:“1000000”,“initialRate”:“0.2”,“maintenanceRate”:“0.1”},{“maxVolume”:“1500000”,“initialRate”:“0.3”,“maintenanceRate”:“0.15”},{“maxVolume”:“2000000”,“initialRate”:“0.5”,“maintenanceRate”:“0.25”},{“maxVolume”:“2500000”,“initialRate”:“1”,“maintenanceRate”:“0.5”}],“rateMultipliers”:{“LimitBuy”:“1”,“LimitSell”:“1”,“Long”:“1”,“MarketBuy”:“1”,“MarketSell”:“1”,“Short”:“1”,“StopBuy”:“0”,“StopSell”:“0”}},“clearing”:{“enabled”:true,“index”:“.XBTUSD_3M_260321”},“riskAdjustment”:{“enabled”:true,“index”:“.RiskAdjustment_IR”},“expiration”:{“enabled”:true,“index”:“.BTC3_TWAP”},“pricePrecision”:2,“priceRange”:{“enabled”:true,“distance”:“0.2”,“movingBoundary”:“0”,“lowIndex”:“.XBTUSD_3M_260321_LOWRANGE”,“highIndex”:“.XBTUSD_3M_260321_HIGHRANGE”},“priceLimits”:{“enabled”:true,“distance”:“0.5”,“movingBoundary”:“0”,“lowIndex”:“.XBTUSD_3M_260321_LOWLIMIT”,“highIndex”:“.XBTUSD_3M_260321_HIGHLIMIT”},“inverse”:true,“serie”:“XBTUSD”,“tradingStartDate”:“2020-09-25 07:00:00”,“expiryDate”:“2021-03-26 08:00:00”},{“id”:“XBTVAR_1M_260321”,“type”:“Margin”,“marginType”:“XenaFuture”,“symbol”:“XBTVAR_1M_260321”,“settlCurrency”:“BTC”,“tickSize”:1,“minOrderQuantity”:“1”,“orderQtyStep”:“1”,“limitOrderMaxDistance”:“10”,“priceInputMask”:“000.0”,“enabled”:true,“liquidationMaxDistance”:“0.01”,“contractValue”:“1”,“contractCurrency”:“BTC”,“lotSize”:“1”,“tickValue”:“0.00000001”,“maxOrderQty”:“1000”,“maxPosVolume”:“10000”,“mark”:“.XBTVAR_1M_260321”,“underlying”:“.XBTVAR_1M_260321_RV”,“openInterest”:“.XBTVAR_1M_260321_OpenInterest”,“addUvmToFreeMargin”:“ProfitAndLoss”,“margin”:{“netting”:“PositionsAndOrders”,“rates”:[{“maxVolume”:“10000”,“initialRate”:“0.3”,“maintenanceRate”:“0.25”}],“rateMultipliers”:{“LimitBuy”:“0.4”,“LimitSell”:“1”,“Long”:“0.4”,“MarketBuy”:“0.4”,“MarketSell”:“1”,“Short”:“1”,“StopBuy”:“0”,“StopSell”:“0”}},“clearing”:{“enabled”:true,“index”:“.XBTVAR_1M_260321”},“riskAdjustment”:{“enabled”:true,“index”:“.RiskAdjustment_IR”},“expiration”:{“enabled”:true,“index”:“.XBTVAR_1M_260321”},“pricePrecision”:1,“priceRange”:{“enabled”:true,“distance”:“0.4”,“movingBoundary”:“0”,“lowIndex”:“.XBTVAR_1M_260321_LOWRANGE”,“highIndex”:“.XBTVAR_1M_260321_HIGHRANGE”},“priceLimits”:{“enabled”:true,“distance”:“0.4”,“movingBoundary”:“0”,“lowIndex”:“.XBTVAR_1M_260321_LOWLIMIT”,“highIndex”:“.XBTVAR_1M_260321_HIGHLIMIT”},“serie”:“XBTVAR”,“tradingStartDate”:“2021-02-26 07:00:00”,“expiryDate”:“2021-03-26 08:00:00”,“meta”:{“underlyingFixing”:“.XBTVAR_1M_260321_RV_Fixing”}},{“id”:“1000”,“type”:“Margin”,“marginType”:“XenaListedPerpetual”,“symbol”:“XBTUSD”,“baseCurrency”:“BTC”,“quoteCurrency”:“USD”,“settlCurrency”:“BTC”,“tickSize”:1,“minOrderQuantity”:“1”,“orderQtyStep”:“1”,“limitOrderMaxDistance”:“10”,“priceInputMask”:“00000.0”,“enabled”:true,“liquidationMaxDistance”:“0.01”,“contractValue”:“1”,“contractCurrency”:“USD”,“lotSize”:“1”,“maxOrderQty”:“500000”,“maxPosVolume”:“10000000”,“mark”:“.BTC3_TWAP”,“underlying”:“.BTC3_TWAP”,“openInterest”:“.XBTUSD_OpenInterest”,“floatingPL”:“BidAsk”,“addUvmToFreeMargin”:“ProfitAndLoss”,“margin”:{“netting”:“PositionsAndOrders”,“rates”:[{“maxVolume”:“500000”,“initialRate”:“0.05”,“maintenanceRate”:“0.025”},{“maxVolume”:“1000000”,“initialRate”:“0.1”,“maintenanceRate”:“0.05”},{“maxVolume”:“1500000”,“initialRate”:“0.2”,“maintenanceRate”:“0.1”},{“maxVolume”:“2000000”,“initialRate”:“0.3”,“maintenanceRate”:“0.15”},{“maxVolume”:“3000000”,“initialRate”:“0.4”,“maintenanceRate”:“0.2”},{“maxVolume”:“4000000”,“initialRate”:“0.5”,“maintenanceRate”:“0.25”},{“maxVolume”:“5000000”,“initialRate”:“1”,“maintenanceRate”:“0.5”}],“rateMultipliers”:{“LimitBuy”:“1”,“LimitSell”:“1”,“Long”:“1”,“MarketBuy”:“1”,“MarketSell”:“1”,“Short”:“1”,“StopBuy”:“0”,“StopSell”:“0”}},“clearing”:{“enabled”:true,“index”:“.BTC3_TWAP”},“premium”:{“enabled”:true,“index”:“.XBTUSD_Premium_IR_Corrected”},“riskAdjustment”:{“enabled”:true,“index”:“.RiskAdjustment_IR”},“pricePrecision”:2,“priceRange”:{“enabled”:true,“distance”:“0.1”,“movingBoundary”:“0”,“lowIndex”:“.XBTUSD_LOWRANGE”,“highIndex”:“.XBTUSD_HIGHRANGE”},“priceLimits”:{“enabled”:true,“distance”:“0.1”,“movingBoundary”:“0”,“lowIndex”:“.XBTUSD_LOWLIMIT”,“highIndex”:“.XBTUSD_HIGHLIMIT”},“inverse”:true,“tradingStartDate”:“0001-01-01 00:00:00”},{“id”:“3000”,“type”:“Margin”,“marginType”:“XenaListedPerpetual”,“symbol”:“ETHUSD”,“baseCurrency”:“ETH”,“quoteCurrency”:“USD”,“settlCurrency”:“BTC”,“tickSize”:2,“minOrderQuantity”:“1”,“orderQtyStep”:“1”,“limitOrderMaxDistance”:“10”,“priceInputMask”:“0000.00”,“enabled”:true,“liquidationMaxDistance”:“0.01”,“contractValue”:“1”,“contractCurrency”:“BTC”,“lotSize”:“1”,“tickValue”:“0.00000001”,“maxOrderQty”:“175000”,“maxPosVolume”:“1750000”,“mark”:“.ETHUSD_TWAP”,“underlying”:“.ETHUSD_TWAP”,“openInterest”:“.ETHUSD_OpenInterest”,“floatingPL”:“BidAsk”,“addUvmToFreeMargin”:“ProfitAndLoss”,“margin”:{“netting”:“PositionsAndOrders”,“rates”:[{“maxVolume”:“350000”,“initialRate”:“0.05”,“maintenanceRate”:“0.025”},{“maxVolume”:“700000”,“initialRate”:“0.1”,“maintenanceRate”:“0.05”},{“maxVolume”:“1050000”,“initialRate”:“0.2”,“maintenanceRate”:“0.1”},{“maxVolume”:“1400000”,“initialRate”:“0.3”,“maintenanceRate”:“0.15”},{“maxVolume”:“1750000”,“initialRate”:“0.4”,“maintenanceRate”:“0.2”},{“maxVolume”:“2100000”,“initialRate”:“0.5”,“maintenanceRate”:“0.25”},{“maxVolume”:“2450000”,“initialRate”:“1”,“maintenanceRate”:“0.5”}],“rateMultipliers”:{“LimitBuy”:“1”,“LimitSell”:“1”,“Long”:“1”,“MarketBuy”:“1”,“MarketSell”:“1”,“Short”:“1”,“StopBuy”:“0”,“StopSell”:“0”}},“clearing”:{“enabled”:true,“index”:“.ETHUSD_TWAP”},“premium”:{“enabled”:true,“index”:“.ETHUSD_Premium_IR_Corrected”},“riskAdjustment”:{“enabled”:true,“index”:“.RiskAdjustment_IR”},“pricePrecision”:3,“priceRange”:{“enabled”:true,“distance”:“0.03”,“movingBoundary”:“0”,“lowIndex”:“.ETHUSD_LOWRANGE”,“highIndex”:“.ETHUSD_HIGHRANGE”},“priceLimits”:{“enabled”:true,“distance”:“0.03”,“movingBoundary”:“0”,“lowIndex”:“.ETHUSD_LOWLIMIT”,“highIndex”:“.ETHUSD_HIGHLIMIT”},“tradingStartDate”:“0001-01-01 00:00:00”},{“type”:“Index”,“symbol”:“.BTC3”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC3_CUMULATIVE_VARIATION”,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC3_Fixing”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC3_REALIZED_VOL_30D”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC3_REALIZED_VOL_30D_Fixing”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC3_RI_SQUARED”,“tickSize”:10,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC3_TWAP”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTCEUR_KRAKEN_1”,“enabled”:true},{“type”:“Index”,“symbol”:“.BTCEUR_KRAKEN_10”,“enabled”:true},{“type”:“Index”,“symbol”:“.BTCUSDT”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTCUSDT_Fixing”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTCUSDT_HUOBI”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTCUSDT_KRAKEN”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC_BITSTAMP”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC_COINBASE”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC_KRAKEN”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHBTC_Spread”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_Asks”,“tickSize”:3,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.ETHUSD_BITSTAMP”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_Bids”,“tickSize”:3,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.ETHUSD_COINBASE”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_HIGHLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_HIGHRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_KRAKEN”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_LOWLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_LOWRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_MidPrice”,“tickSize”:3,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.ETHUSD_OpenInterest”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_Premium_IR”,“tickSize”:6,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.ETHUSD_Premium_IR_Corrected”,“tickSize”:6,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.ETHUSD_TWAP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.OpenInterest”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.RiskAdjustment_IR”,“tickSize”:6,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.USDTUSD”,“tickSize”:4,“enabled”:true},{“type”:“Index”,“symbol”:“.USDTUSD_Fixing”,“tickSize”:4,“enabled”:true},{“type”:“Index”,“symbol”:“.USDTUSD_KRAKEN”,“tickSize”:4,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_FP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_HIGHLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_HIGHRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_IFR”,“tickSize”:6,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_LOWLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_LOWRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_MID”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_MID_TWAP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_OpenInterest”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_VWAP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_FP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_HIGHLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_HIGHRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_IFR”,“tickSize”:6,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_LOWLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_LOWRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_MID”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_MID_TWAP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_OpenInterest”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_VWAP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_Asks”,“tickSize”:4,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.XBTUSD_Bids”,“tickSize”:4,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.XBTUSD_HIGHLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_HIGHRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_LOWLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_LOWRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_MidPrice”,“tickSize”:4,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.XBTUSD_OpenInterest”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_Premium_IR”,“tickSize”:6,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.XBTUSD_Premium_IR_Corrected”,“tickSize”:6,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_FP”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_HIGHLIMIT”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_HIGHRANGE”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_IFR”,“tickSize”:6,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_IV”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_LOWLIMIT”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_LOWRANGE”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_MID”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_MID_TWAP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_OpenInterest”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_PR_Base”,“tickSize”:3,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_RV”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_RV_Fixing”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_VWAP”,“tickSize”:1,“enabled”:true}]
Traceback (most recent call last):
File “C:/Users/Asad/Downloads/ArbitrageBotAsad-20200810T074852Z-001 - Copyee/ArbitrageBotAsad/ArbitrageBotAsad/Xena_Test_API.py”, line 19, in <module>
balances = Xena_exchange.fetch_balance(params={“currency”: “BTC”})
File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\xena.py”, line 574, in fetch_balance
self.load_accounts()
File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\base\exchange.py”, line 1368, in load_accounts
self.accounts = self.fetch_accounts(params)
File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\xena.py”, line 520, in fetch_accounts
response = self.privateGetTradingAccounts(params)
File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\base\exchange.py”, line 466, in inner
return entry(_self, **inner_kwargs)
File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\base\exchange.py”, line 491, in request
return self.fetch2(path, api, method, params, headers, body)
File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\base\exchange.py”, line 486, in fetch2
request = self.sign(path, api, method, params, headers, body)
File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\xena.py”, line 1581, in sign
self.check_required_credentials()
File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\base\exchange.py”, line 1251, in check_required_credentials
raise AuthenticationError(‘requires ' + key + '
’)
ccxt.base.errors.AuthenticationError: requires apiKey
Process finished with exit code 1
I have put API and secret keys correctly. But getting below ccxt error ccxt.base.errors.AuthenticationError: requires apiKey
Please guide me … thanks!
Issue Analytics
- State:
- Created 3 years ago
- Comments:23 (11 by maintainers)
Alright Sir, Thanks a lot
@AsadullahSoomro let me know if the above does not help.