CryptoCompare JavaScript API
npm install --save cryptocompare
注意:加密保護取決於fetch()在全球定義。
如果您在電子中使用此功能,則應無需任何配置就可以工作。
如果您在node.js中使用了此功能,則需要使用node-fetch 。
該軟件包無需API密鑰工作,但是隨著時間的推移,IP限制將逐漸減小,以創建一個API鍵,只需訪問https://www.cryptocompare.com/cryptopian/api-keys即所有價格流和輪詢終點
例子:
global . fetch = require ( 'node-fetch' )
const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )coinList()獲取所有加密貨幣的當前列表以及有關每個硬幣的以下信息。
coinList()
No parametersReturns (對象)...BaseImageUrl (字符串)來自ImageUrl字段(https://www.cryptocompare.com)的所有圖像的基本URL,BaseLinkUrl url字段(https://www.cryptocompare.com)的所有鏈接的基本URLData (對象)包含有關每個硬幣的以下信息。Id (字符串)Url (字符串)URL。 (ex: /coins/eth/overview )必須將URL附加到https://www.cryptocompare.com 。ImageUrl (字符串)URL獲取硬幣徽標圖像。 (ex: /media/351001/404.png )。 URL必須附加到https://www.cryptocompare.com 。Name (字符串)給定加密貨幣的名稱。Symbol (字符串)股票符號(通常與名稱相同)。CoinName (字符串)名稱。FullName貨幣與符號連接的給定加密貨幣的名稱(例如: Ethereum (ETH) )。Algorithm (字符串)名稱加密算法。ProofType (字符串)加密貨幣的證明類型。ProofType (字符串)加密貨幣的證明類型。FullyPremined (字符串)返回“ 1”,如果硬幣的前提,如果沒有,則返回“ 0”。TotalCoinSupply (字符串)加密貨幣的總供應。PreMinedValue (字符串)值。TotalCoinsFreeFloat (String)SortOrder (string)訂單加密複合物將其內部系統內的硬幣排名。Sponsored (布爾)是true ,否則是false 。 const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )
// Usage:
cc . coinList ( )
. then ( coinList => {
console . log ( coinList )
// ->
// {
// BTC: {
// Id: "1182",
// Url: "/coins/btc/overview",
// ImageUrl: "/media/19633/btc.png",
// Name: "BTC",
// Symbol: "BTC",
// CoinName: "Bitcoin",
// FullName: "Bitcoin (BTC)",
// Algorithm: "SHA256",
// ProofType: "PoW",
// FullyPremined: "0",
// TotalCoinSupply: "21000000",
// PreMinedValue: "N/A",
// TotalCoinsFreeFloat: "N/A",
// SortOrder: "1",
// Sponsored: false
// },
// ETH: {...},
// }
} )
. catch ( console . error )exchangeList()返回CryptoCompare與之集成的所有交換。
exchangeList()
No parametersReturns (對象) const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )
// Usage:
cc . exchangeList ( )
. then ( exchangeList => {
console . log ( exchangeList )
// {
// "Cryptsy":
// {
// "42":["BTC","XRP"],
// "EMC2":["BTC","XRP"],
// "POINTS":["BTC"],
// "VTC":["BTC","LTC","XRP"]
// ...
// }
// ...
// }
} )
. catch ( console . error )price()以任何其他貨幣獲取任何加密貨幣的當前價格。
price(fsym, tsyms[, options])
fsym (字符串)tsyms (字符串的數組)到符號options (對象)tryConversion (Boolean)默認情況下,如果加密貨幣未直接交易到所請求的Tosymbol中,則BTC將用於轉換。將tryConversion設置為false以使用BTC進行轉換禁用。exchanges (字符串數組|數組)交換以獲取價格數據。默認情況下,使用平均數據。 (您可以獲取帶有topExchanges()的給定對的頂部交換列表。 const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )
// Basic Usage:
cc . price ( 'BTC' , [ 'USD' , 'EUR' ] )
. then ( prices => {
console . log ( prices )
// -> { USD: 1100.24, EUR: 1039.63 }
} )
. catch ( console . error )
// Passing a single pair of currencies:
cc . price ( 'BTC' , 'USD' )
. then ( prices => {
console . log ( prices )
// -> { USD: 1100.24 }
} )
. catch ( console . error )priceMulti()像price()一樣的工作,除非它允許您指定符號的矩陣。
priceMulti(fsyms, tsyms[, options])
fsyms (字符串|字符串| string)tsyms (字符串的數組)到符號options (對象)tryConversion (Boolean)默認情況下,如果加密貨幣未直接交易到所請求的Tosymbol中,則BTC將用於轉換。將tryConversion設置為false以使用BTC進行轉換禁用。exchanges (字符串數組|數組)交換以獲取價格數據。默認情況下,使用平均數據。 (您可以獲取帶有topExchanges()的給定對的頂部交換列表。 const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )
// Basic Usage:
cc . priceMulti ( [ 'BTC' , 'ETH' ] , [ 'USD' , 'EUR' ] )
. then ( prices => {
console . log ( prices )
// -> { BTC: { USD: 1114.63, EUR: 1055.82 },
// ETH: { USD: 12.74, EUR: 12.06 } }
} )
. catch ( console . error )
// Passing a single pair of currencies:
cc . priceMulti ( 'BTC' , 'USD' )
. then ( prices => {
console . log ( prices )
// -> { BTC: { USD: 1114.63 } }
} )
. catch ( console . error )priceFull()獲取所有其他貨幣的加密貨幣清單的當前交易信息(價格,卷,開放,高,低等)。
priceFull(fsyms, tsyms[, options])
fsyms (字符串|字符串| string)tsyms (字符串的數組)到符號options (對象)tryConversion (Boolean)默認情況下,如果加密貨幣未直接交易到所請求的Tosymbol中,則BTC將用於轉換。將tryConversion設置為false以使用BTC進行轉換禁用。exchanges (字符串數組|數組)交換以獲取價格數據。默認情況下,使用平均數據。 (您可以獲取帶有topExchanges()的給定對的頂部交換列表。 const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )
cc . priceFull ( [ 'BTC' , 'ETH' ] , [ 'USD' , 'EUR' ] )
. then ( prices => {
console . log ( prices )
// {
// BTC: {
// USD: {
// TYPE: '5',
// MARKET: 'CCCAGG',
// FROMSYMBOL: 'BTC',
// TOSYMBOL: 'USD',
// FLAGS: '4',
// PRICE: 1152.42,
// LASTUPDATE: 1487865689,
// LASTVOLUME: 0.21,
// LASTVOLUMETO: 242.20349999999996,
// LASTTRADEID: 1224703,
// VOLUME24HOUR: 53435.45299122338,
// VOLUME24HOURTO: 60671593.843186244,
// OPEN24HOUR: 1119.31,
// HIGH24HOUR: 1170,
// LOW24HOUR: 1086.641,
// LASTMARKET: 'itBit',
// CHANGE24HOUR: 33.11000000000013,
// CHANGEPCT24HOUR: 2.958072383879366,
// SUPPLY: 16177825,
// MKTCAP: 18643649086.5
// },
// EUR: ...
// },
// ETH: ...
// }
} )
. catch ( console . error )priceHistorical()在給定時間戳以任何其他貨幣的價格獲取任何加密貨幣的價格。價格來自每日信息 - 因此,這將是根據請求的時間戳在GMT結束時的價格。
priceHistorical(fsym, tsyms, time[, options])
fsym (字符串)tsyms (字符串的數組)到符號time (日期)日期options (對象)tryConversion (Boolean)默認情況下,如果加密貨幣未直接交易到所請求的Tosymbol中,則BTC將用於轉換。將tryConversion設置為false以使用BTC進行轉換禁用。exchanges (字符串數組|數組)交換以獲取價格數據。默認情況下,使用平均數據。 (您可以獲取帶有topExchanges()的給定對的頂部交換列表。 const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )
// Basic Usage:
cc . priceHistorical ( 'BTC' , [ 'USD' , 'EUR' ] , new Date ( '2017-01-01' ) )
. then ( prices => {
console . log ( prices )
// -> { BTC: { USD: 997, EUR: 948.17 } }
} )
. catch ( console . error )generateAvg()根據所需的市場,計算請求對的當前交易信息(價格,卷,開放,高,低等)為體積加權平均值。
generateAvg(fsym, tsym, markets[, tryConversion])
fsym (字符串)tsym (字符串)到符號markets (陣列)的市場陣列以平均水平為基礎。 (您可以獲取帶有topExchanges()的給定對的頂部交換列表。tryConversion (Boolean)默認情況下,如果加密貨幣未直接交易到所請求的Tosymbol中,則BTC將用於轉換。將tryConversion設置為false以使用BTC進行轉換禁用。 const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )
// Basic Usage:
cc . generateAvg ( 'BTC' , 'USD' , [ 'Coinbase' , 'Kraken' , 'Bitstamp' , 'Bitfinex' ] )
. then ( data => {
console . log ( data )
// -> { MARKET: 'CUSTOMAGG',
// FROMSYMBOL: 'BTC',
// TOSYMBOL: 'USD',
// FLAGS: '2',
// PRICE: 1155.61,
// LASTUPDATE: 1488059738,
// LASTVOLUME: 0.25546663,
// LASTVOLUMETO: 294.93622433499996,
// LASTTRADEID: 26533969,
// VOLUME24HOUR: 27318.892083369985,
// VOLUME24HOURTO: 31652183.38370657,
// OPEN24HOUR: 1177.16,
// HIGH24HOUR: 1189.9,
// LOW24HOUR: 1110,
// LASTMARKET: 'Bitfinex',
// CHANGE24HOUR: -21.550000000000182,
// CHANGEPCT24HOUR: -1.830677223147251 }
} )
. catch ( console . error )topPairs()按貨幣逐批獲得頂對。
topPairs(fsym[, limit])
fsym (字符串)limit (數字)限制您收到的對數(默認為5)。 const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )
cc . topPairs ( 'BTC' , 2 )
. then ( pairs => {
console . log ( pairs )
// -> [ { exchange: 'CCCAGG',
// fromSymbol: 'BTC',
// toSymbol: 'JPY',
// volume24h: 235602.43493487104,
// volume24hTo: 31888554862.766888 },
// { exchange: 'CCCAGG',
// fromSymbol: 'BTC',
// toSymbol: 'USD',
// volume24h: 124504.4477389583,
// volume24hTo: 145514032.93780443 } ]
} )
. catch ( console . error )topExchanges()按數量獲得貨幣對的最高交換。
topExchanges(fsym, tsym[, limit])
fsym (字符串)tsym (字符串)到符號limit (數字)限制您收到的交換數(默認5)。 const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )
cc . topExchanges ( 'BTC' , 'USD' , 2 )
. then ( exchanges => {
console . log ( exchanges )
// -> [ { exchange: 'Bitfinex',
// fromSymbol: 'BTC',
// toSymbol: 'USD',
// volume24h: 35239.36701090003,
// volume24hTo: 41472258.85534388 },
// { exchange: 'Bitstamp',
// fromSymbol: 'BTC',
// toSymbol: 'USD',
// volume24h: 19658.748675010014,
// volume24hTo: 23047071.74260772 } ]
} )
. catch ( console . error )topExchangesFull()按貨幣對逐批獲得頂部交換的完整數據。
topExchangesFull(fsym, tsym[, limit])
fsym (字符串)tsym (字符串)到符號limit (數字)限制您收到的交換數(默認5)。histoDay()從日常歷史數據中獲取開放,高,低,關閉,體積和體積。這些值基於00:00 GMT時間。
histoDay(fsym, tsym[, options])
fsym (字符串)tsym (字符串)到符號options (對象)aggregate (數量)匯總的數據點數。aggregatePredictableTimePeriods (布爾值)生成可預測的時間段。allData (Boolean)返回所有數據。toTs (數字)最後一個Unix時間戳返回數據。limit (數字| 'none' )限制查找天數。默認值為30。如果將其設置為'none'字符串,則將獲得所有可用的數據。tryConversion (Boolean)默認情況下,如果加密貨幣未直接交易到所請求的Tosymbol中,則BTC將用於轉換。將tryConversion設置為false以使用BTC進行轉換禁用。timestamp (日期)默認情況下, histoDay()在過去幾天中獲取歷史數據。使用timestamp選項設置歷史起點。exchange (String)交換以獲取歷史記錄數據。默認情況下,使用平均數據。 (您可以獲取帶有topExchanges()的給定對的頂部交換列表。 cc . histoDay ( 'BTC' , 'USD' )
. then ( data => {
console . log ( data )
// -> [ { time: 1485388800,
// close: 915.65,
// high: 917.71,
// low: 893.81,
// open: 893.97,
// volumefrom: 35494.93,
// volumeto: 32333344.2 },
// ... ]
} )
. catch ( console . error )histoHour()從每小時的歷史數據中獲取開放,高,低,關閉,體積和體積。
histoHour(fsym, tsym[, options])
fsym (字符串)tsym (字符串)到符號options (對象)aggregate (數量)匯總的數據點數。aggregatePredictableTimePeriods (布爾值)生成可預測的時間段。toTs (數字)最後一個Unix時間戳返回數據limit (數字)限制查找的小時數。默認值為168。tryConversion (Boolean)默認情況下,如果加密貨幣未直接交易到所請求的Tosymbol中,則BTC將用於轉換。將tryConversion設置為false以使用BTC進行轉換禁用。timestamp (日期)默認情況下, histoHour()在過去幾個小時內獲取歷史數據。使用timestamp選項設置歷史起點。exchange (String)交換以獲取歷史記錄數據。默認情況下,使用平均數據。 (您可以獲取帶有topExchanges()的給定對的頂部交換列表。 cc . histoHour ( 'BTC' , 'USD' )
. then ( data => {
console . log ( data )
// -> [ { time: 1487448000,
// close: 1060.34,
// high: 1061.44,
// low: 1058.85,
// open: 1059.24,
// volumefrom: 739.6,
// volumeto: 790019.22 },
// ... ]
} )
. catch ( console . error )histoMinute()從一分鐘的歷史數據中獲取開放,高,低,關閉,體積和體積。
histoMinute(fsym, tsym[, options])
fsym (字符串)tsym (字符串)到符號options (對象)aggregate (數量)匯總的數據點數。aggregatePredictableTimePeriods (布爾值)生成可預測的時間段。toTs (數字)最後一個Unix時間戳返回數據limit (數字)限制查找的分鐘數。默認值為1440。tryConversion (Boolean)默認情況下,如果加密貨幣未直接交易到所請求的Tosymbol中,則BTC將用於轉換。將tryConversion設置為false以使用BTC進行轉換禁用。timestamp (日期), histoMinute()在過去幾分鐘中獲取歷史數據。使用timestamp選項設置歷史起點。exchange (String)交換以獲取歷史記錄數據。默認情況下,使用平均數據。 (您可以獲取帶有topExchanges()的給定對的頂部交換列表。 cc . histoMinute ( 'BTC' , 'USD' )
. then ( data => {
console . log ( data )
// -> [ { time: 1487970960,
// close: 1171.97,
// high: 1172.72,
// low: 1171.97,
// open: 1172.37,
// volumefrom: 25.06,
// volumeto: 29324.12 },
// ... ]
} )
. catch ( console . error )newsList()來自CryptoCompare與提供商的新聞文章。
newsList(lang[, options])
lang (字符串)首選語言 - 英語(EN)或葡萄牙語(PT)options (對象)feeds (字符串陣列|數組)特定的新聞提要可以從所有這些新聞中檢索新聞。 (您可以通過newsFeedsAndCategories().Feeds ..)獲取新聞提要列表。categories (字符串數組|數組|數組)將返回(如果為空)默認為所有這些。 (您可以通過newsFeedsAndCategories().Categories獲取新聞類別列表。excludeCategories (字符串數組|數組)新聞文章類別要排除結果(如果為空),則默認為無。 (您可以通過newsFeedsAndCategories().Categories獲取新聞類別列表。lTs (日期)在時間戳之前返回新聞 const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )
// Basic Usage:
cc . newsList ( 'EN' )
. then ( newsList => {
console . log ( newsList )
//[
// {
// id: "708235"
// guid: "https://www.cryptoglobe.com/latest/2018/11/china-cryptocurrency-mining-machines-are-reportedly-being-sold-according-to-their-weight/"
// published_on: 1542886256
// imageurl: "https://images.cryptocompare.com/news/cryptoglobe/fwMg0080000.jpeg"
// title: "China: Cryptocurrency Mining Machines Reportedly Being Sold According to Their Weight"
// url: "https://www.cryptoglobe.com/latest/2018/11/china-cryptocurrency-mining-machines-are-reportedly-being-sold-according-to-their-weight/"
// source: "cryptoglobe"
// body: "Cryptocurrency mining machines are reportedly being sold in China according to their weight as miners who haven’t been able to make a profit are seemingly getting rid of their old models to get some of their investment back."
// tags: ""
// categories: "Mining|Asia|Business"
// upvotes: "0"
// downvotes: "0"
// lang: "EN"
// source_info: {
// name: "CryptoGlobe"
// lang: "EN"
// img: "https://images.cryptocompare.com/news/default/cryptoglobe.png"
// }
// }
// ....
//]
} )
. catch ( console . error )newsFeedsAndCategories()返回CryptoCompare已集成的所有新聞提要(提供商)以及類別的完整列表。
newsFeedsAndCategories()
No parametersReturns (對象) const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )
// Usage:
cc . exchangeList ( )
. then ( newsFeedsAndCategories => {
console . log ( newsFeedsAndCategories )
// {
// "Categories":
// [
// {
// categoryName: "BTC"
// wordsAssociatedWithCategory: ["BTC","BITCOIN", "SATOSHI"]
// }
// ...
// ]
// "Feeds":
// [
// {
// key: "cryptocompare"
// name: "CryptoCompare"
// lang: "EN"
// img: "https://images.cryptocompare.com/news/default/cryptocompare.png"
// }
// ...
// ]
// }
} )
. catch ( console . error )constituentExchangeList()返回請求工具中的所有組成交換。
constituentExchangeList([options])
options (對象)instrument (字符串)平均儀器的類型。Returns (對象) const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )
// Usage:
cc . constituentExchangeList ( )
. then ( exchanges => {
console . log ( exchanges )
// {
// "ABCC": {
// "includeAll": false,
// "onlyPairs": {
// "CNN~BTC": true,
// "TNS~BTC": true,
// "TTU~USDT": true,
// "XMX~BTC": true,
// "GUSD~USDT": true
// }
// },
// "ACX": {
// "includeAll": true,
// "onlyPairs": {}
// },
// ...
// }
} )
. catch ( console . error )latestSocial()返回所請求的硬幣的最新社交統計數據。
注意:需要有效的API密鑰。
latestSocial([options])
options (對象)coinId (編號)硬幣的ID。Returns (對象) const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )
// Usage:
cc . latestSocial ( )
. then ( social => {
console . log ( social )
// {
// "General": {
// "Points": 7431355,
// "Name": "BTC",
// "CoinName": "Bitcoin",
// "Type": "Webpagecoinp"
// },
// "CryptoCompare": {
// ...
// },
// "Twitter": {
// ...
// },
// "Reddit": {
// ...
// },
// "Facebook": {
// ...
// },
// "CodeRepository": {
// ...
// }
// }
} )
. catch ( console . error )histoSocial()返回所請求的硬幣的社會統計數據。
注意:需要有效的API密鑰。
histoSocial(timePeriod[, options])
timePeriod (字符串)時間段 - “天”或“小時”options (對象)coinId (編號)硬幣的ID。aggregate (數)時間段以匯總數據。aggregate參數時,使用的aggregatePredictableTimePeriods (布爾)才使用。如果是錯誤的,則將根據呼叫何時創建時間插槽。limit (數字)要返回的數據點數。toTs (數字)最後一個Unix時間戳返回數據Returns (對像數組) const cc = require ( 'cryptocompare' )
cc . setApiKey ( '<your-api-key>' )
// Usage:
cc . histoSocial ( 'hour' )
. then ( socialStats => {
console . log ( socialStats )
// [
// {
// "time": 1548640800,
// "comments": 229133,
// "posts": 89997,
// "followers": 64128,
// "points": 6144455,
// "overview_page_views": 22335644,
// "analysis_page_views": 955496,
// "markets_page_views": 1402190,
// "charts_page_views": 7527086,
// "trades_page_views": 673204,
// "forum_page_views": 6585840,
// "influence_page_views": 55903,
// "total_page_views": 39535363,
// "fb_likes": 40054,
// "fb_talking_about": 92,
// "twitter_followers": 844049,
// "twitter_following": 165,
// "twitter_lists": 6631,
// "twitter_favourites": 1000,
// "twitter_statuses": 20316,
// "reddit_subscribers": 1013891,
// "reddit_active_users": 4365,
// "reddit_posts_per_hour": 3.77,
// "reddit_posts_per_day": 90.46,
// "reddit_comments_per_hour": 68.39,
// "reddit_comments_per_day": 1641.34,
// "code_repo_stars": 44353,
// "code_repo_forks": 25367,
// "code_repo_subscribers": 4179,
// "code_repo_open_pull_issues": 330,
// "code_repo_closed_pull_issues": 11847,
// "code_repo_open_issues": 903,
// "code_repo_closed_issues": 5187
// }
// ]
} )
. catch ( console . error ) 麻省理工學院