当前位置: 首页 > 后端技术 > PHP

用于比特币和山寨币的Python-PHP-JavaScript数字货币交易库CCXT

时间:2023-03-30 06:04:15 PHP

CCXT(CryptoCurrencyeXchange)交易库,一个JavaScript/Python/PHP加密货币交易库,支持100多种山寨币和比特币交易所。用于加密货币交易和电子商务的JavaScript/Python/PHP库,支持许多比特币/以太币/山寨币交易所和商家API。CCXT库用于连接和交易全球的加密货币/山寨币交易所和支付处理服务。它提供对市场数据的快速访问,用于存储、分析、可视化、指标开发、算法交易、策略回测、机器人编程、网上商店集成和相关软件工程。它旨在供编码人员、开发人员、熟练交易员、数据科学家和金融分析师用来构建交易算法。当前功能列表:支持许多交易市场,甚至即将推出所有交易的完整公共和私有API所有货币、山寨币和代币、价格、订单、交易、符号等...提供交叉交换或交叉货币可选标准化用于分析和套利的数据开箱即用的统一一体化API,非常易于集成适用于Node7.6+、Python2和3、PHP5.4+、Web浏览器认证交易所支持加密货币交易所ccxt库目前支持以下131个加密货币交易所和交易API(太多看不下去了,去github就不一一列举了):https://github.com/ccxt/ccxt以上列表更新频繁,新的加密市场,定期引入和添加山寨币交易、错误修复、API端点。有关详细信息,请参阅手册,如果您在上面的列表中没有找到加密货币交易市场和/或想要添加其他交易,请通过GitHub或通过电子邮件向我们发送链接,方法是在此处发布问题。该库受MIT许可,这意味着任何开发人员都可以完全免费地构建商业和开源软件,但使用它需要您自担风险且不提供任何保证。安装安装ccxt库最简单的方法是使用内置包管理器:NPM(JavaScript/Nodev7.6+)中的ccxtPyPI(Python2和3.5.3+)中的ccxtPackagist/Composer(PHP)中的ccxt5.4+)该库作为具有最小依赖性和要求的一体化模块实现提供:js/inJavaScriptpython/inPython(从JS生成)PHP/PHP(从JS生成)也可以从ccxt下载GitHub存储库将其克隆到您的项目目录中:gitclonehttps://github.com/ccxt/ccxt.git将此库安装到您的代码中的另一种方法是手动将各个文件复制到您的工作目录中并使用适当的语言扩展.JavaScript(NPM)用于Node和Web浏览器的CCXT的JavaScript版本。需要ES6和异步/等待语法支持(Node7.6.0+)。当使用Webpack和Babel编译时,确保它没有被排除在你的babel-loader配置中。npminstallccxtvarccxt=require('ccxt')console.log(ccxt.exchanges)//打印所有可用的交换JavaScript(用于脚本标签):多合一浏览器包(包括依赖项),由unpkgCDN提供服务,这是NPM上所有内容的快速全球内容分发网络。创建一个全局ccxt对象:console.log(ccxt.exchanges)//打印所有可用的交换Pythonpipinstallccxtimportccxtprint(ccxt.exchanges)#打印所有可用交换类的列表此库支持在Python3.5.3+中使用asyncio和async/await的并发异步模式:importccxt.async_supportasccxt#链接它需要的ccxtPHP异步版本CommonPHP模块:cURLmbstring(强烈推荐UTF-8)PCREiconvgmp(这是PHP7.2+中的内置扩展)包括“ccxt.php”;var_dump(\ccxt\Exchange::$exchanges);//使用由公共部分和私有部分组成的ccxt库打印所有可用交换类的列表。任何人都可以在安装后立即使用公共部分,即插即用。公共API提供对来自所有交易市场的公共信息的开放访问,无需注册用户帐户,也无需API密钥。公共API包括以下内容:市场数据工具/交易对价格(汇率)订单交易历史报价OHLC(V)用于绘制图表其他公共端点要使用私有API进行交易,您需要从交易所市场获取API密钥。这通常意味着注册交易所并使用您的帐户创建API密钥。大多数交易所都需要个人信息或ID,可能还需要某种验证。如果你想交易,你需??要自己注册,这个图书馆不会为你创建账户或API密钥。一些交易API在代码本身中公开了用于注册帐户的接口方法,但大多数交易都没有。您必须在他们的网站上注册并创建一个API密钥。私有API允许以下操作:管理个人账户信息查询账户余额通过做市和限价订单进行交易存入和提取法定货币和加密货币资金查询个人订单获取账本历史记录在账户之间转移资金使用商家服务该库提供所有交易所实现完整的公共和私有RESTAPI。JavaScript、PHP、Python和其他语言的WebSocket和FIX实现即将推出。ccxt库支持驼峰式表示法(在JavaScript中首选)和下划线表示法(在Python和PHP中首选),因此可以以任何语言的表示法或编码调用所有方法。//这两种表示法都适用于JavaScript/Python/PHPexchange.methodName()//驼峰式伪代码exchange.method_name()//下划线伪代码javascript'usestrict';constccxt=require('ccxt');(asyncfunction(){letkraken=newccxt.kraken()letbitfinex=newccxt.bitfinex({verbose:true})lethuobi=newccxt.huobi()letokcoinusd=newccxt.okcoinusd({apiKey:'YOUR_PUBLIC_API_KEY',secret:'YOUR_SECRET_PRIVATE_KEY',})constexchangeId='binance',exchangeClass=ccxt[exchangeId],exchange=newexchangeClass({'apiKey':'YOUR_API_KEY','secret':'YOUR_SECRET','timeout':30000,'enableRateLimit':true,})console.log(kraken.id,awaitkraken.loadMarkets())console.log(bitfinex.id,awaitbitfinex.loadMarkets())console.log(huobi.id,awaithuobi.loadMarkets())console.log(kraken.id,awaitkraken.fetchOrderBook(kraken.symbols[0]))console.log(bitfinex.id,awaitbitfinex.fetchTicker('BTC/USD'))console.log(huobi.id,awaithuobi.fetchTrades('ETH/CNY)'))console.log(okcoinusd.id,awaitokcoinusd.fetchBalance())//以市场价格卖出1BTC/USD,立即卖出一个比特币换取console.log(okcoinusd.id,awaitokcoinusd.createMarketSellOrder('BTC/USD',1))//以2500购买1BTC/USD,您支付2500并在订单关闭时收到?1console.log(okcoinusd.id,awaitokcoinusd.createLimitBuyOrder('BTC/USD',1,2500.00))//传递/重新定义特定于交易所的自定义订单参数:类型、数量、价格或其他//使用自定义订单类型bitfinex.createLimitSellOrder('BTC/USD',1,10,{'type':'trailing-stop'})})();Python#coding=utf-8importccxthitbtc=ccxt.hitbtc({'verbose':True})bitmex=ccxt.bitmex()huobi=ccxt.huobi()exmo=ccxt.exmo({'apiKey':'YOUR_PUBLIC_API_KEY','secret':'YOUR_SECRET_PRIVATE_KEY',})kraken=ccxt.kraken({'apiKey':'YOUR_PUBLIC_API_KEY','secret':'YOUR_SECRET_PRIVATE_KEY',})exchange_id='binance'exchange_class=getattr(ccxt,exchange_id)exchange=exchange_class({'apiKey':'YOUR_API_KEY','secret':'YOUR_SECRET','timeout':30000,'enableRateLimit':True,})hitbtc_markets=hitbtc.load_markets()print(hitbtc.id,hitbtc_markets)打印(bitmex.id,bitmex.load_markets())print(huobi.id,huobi.load_markets())print(hitbtc.fetch_order_book(hitbtc.symbols[0]))print(bitmex.fetch_ticker('BTC/USD'))print(huobi.fetch_trades('LTC/CNY'))print(exmo.fetch_balance())#以市场价格卖出一个?并立即收到$print(exmo.id,exmo.create_market_sell_order('BTC/USD',1))#限价购买BTC/EUR,您支付2500欧元并在订单关闭时收到?1print(exmo.id,exmo.create_limit_buy_order('BTC/EUR',1,2500.00))#传递/重新定义自定义交易所特定订单参数:类型,数量,p大米、旗帜等...kraken.create_market_buy_order('BTC/USD',1,{'trading_agreement':'agree'})PHPinclude'ccxt.php';$poloniex=new\ccxt\poloniex();$bittrex=new\ccxt\bittrex(array('verbose'=>true));$quoinex=new\ccxt\quoinex();$zaif=new\ccxt\zaif(array('apiKey'=>'YOUR_PUBLIC_API_KEY','secret'=>'YOUR_SECRET_PRIVATE_KEY',));$hitbtc=new\ccxt\hitbtc(array('apiKey'=>'YOUR_PUBLIC_API_KEY','secret'=>'YOUR_SECRET_PRIVATE_KEY',));$exchange_id='binance';$exchange_class="\\ccxt\\$exchange_id";$exchange=new$exchange_class(array('apiKey'=>'YOUR_API_KEY','secret'=>'YOUR_SECRET','timeout'=>30000,'enableRateLimit'=>true,));$poloniex_markets=$poloniex->load_markets();var_dump($poloniex_markets);var_dump($bittrex->load_markets());var_dump($quoinex->load_markets());var_dump($poloniex->fetch_order_book($poloniex->符号s[0]));var_dump($bittrex->fetch_trades('BTC/USD'));var_dump($quoinex->fetch_ticker('ETH/EUR'));var_dump($zaif->fetch_ticker('BTC/JPY'));var_dump($zaif->fetch_balance());//以市场价格卖出1BTC/JPY,您支付¥并立即收到?var_dump($zaif->id,$zaif->create_market_sell_order('BTC/JPY',1));//买入BTC/JPY,当订单关闭时,您将以¥285000的价格收到?1var_dump($zaif->id,$zaif->create_limit_buy_order('BTC/JPY',1,285000));//为您的订单设置自定义用户定义的ID$hitbtc->create_order('BTC/USD','limit','buy',1,3000,array('clientOrderId'=>'123'));========================================================================分享一些与以太坊、EOS、比特币等区块链相关的交互式在线编程教程:Java比特币开发教程,本课程适用于初学者,内容涵盖了比特币的核心概念,如区块链存储、去中心化共识机制、密钥和脚本、交易和UTXO等,还详细讲解了如何在Java代码中集成比特币支持功能,如Creatingaddresses,管理钱包、构造裸交易等是难得的Java工程师比特币开发学习课程Php比特币开发教程,本课程面向初学者,内容涵盖了比特币的核心概念,如区块链存储、去中心化共识机制、密钥和脚本、交易和UTXO等,同时还详细讲解了如何使用PhpIntegrating比特币在代码中的支持功能,如创建地址、管理钱包、构造裸交易等,是Php工程师不可多得的比特币开发学习教程。Java以太坊开发教程,主要为java和android程序员讲解区块链以太坊开发的web3j详解。PythonEthereum,主要供python工程师使用web3.py详细开发区块链以太坊。PHPEthereum主要介绍使用PHP进行智能合约开发交互、账户创建、交易、转账、代币开发、过滤器和交易等。以太坊入门教程,主要介绍智能合约和dapp应用开发,适合入门。以太坊开发进阶教程,主要介绍使用node.js、mongodb、blockchain、ipfs实现去中心化电商DApp实战,适合进阶。C#以太坊主要讲解如何使用C#开发基于.Net的以太坊应用,包括账户管理、状态与交易、智能合约开发与交互、过滤器与交易等EOS教程,本课程帮助您快速上手开发EOS区块链去中心化应用,涵盖EOS工具链、账户钱包、发行代币、智能合约开发部署、使用代码与智能合约交互等核心知识点,最终利用所有知识点完成一个笔记DApp的开发.tendermint区块链开发详解。本课程适合想要使用tendermint进行区块链开发的工程师。课程内容包含了tendermint应用开发模型中的核心概念,如ABCI接口、Merkle树、多版本状态库等,包含了丰富的代币发行等实用代码,是go语言工程师快速上手的最佳选择开始区块链开发。汇智网原创翻译,转载请注明出处。这里是原创的比特币和山寨币数字货币交易库CCXT——CryptoCurrencyeXchange