All
Filtreleme ölçütü:
Hesabıma nasıl nakit yatırabilirim?
Hesap doğrulaması ile ilgili yardıma ihtiyacım var
Hesabıma neden erişemiyorum?
Kripto para çekimlerinde herhangi bir ücret var mı?
Hesabıma giriş yapmak için yardıma ihtiyacım var
REST API genel uç noktalarımız basit bir HTTP isteğiyle (bir web sayfasının bir web tarayıcısı aracılığıyla istendiği gibi) erişilebilir olduğundan, piyasa verilerini bir Google E-Tablosuna aktarmak için bir API istemcisi yalnızca birkaç satır Google Script koduyla uygulanabilir.
Yeni bir Google E-Tablosu oluşturun veya mevcut bir e-tabloyu açın.
Uzantılar -> Uygulama Komut Dosyası menüsü aracılığıyla komut dosyası düzenleyiciyi açın.
Gösterilen varsayılan kodu silin (örneğin, Tümünü Seç ardından Sil/Geri Tuşu).
Google Script API kodunu (aşağıda gösterilmiştir) komut dosyası düzenleyiciye Kopyala/Yapıştır yapın.
İsteğe Bağlı - Gereksinim duyduğunuz ek özel işlevleri ekleyin (örneğin, farklı uç noktaları çağırmak veya farklı JSON alanları döndürmek için).
Google Script Kodunu (Projeyi kaydet) simgesi aracılığıyla kaydedin.

KAPI_Public() işlevi, uygun URL'yi oluşturmaktan ve API'ye HTTP isteği yapmaktan sorumludur. KAPI_Public() işlevi, bir Google E-Tablosu hücresine aşağıdakileri (veya uç noktaya ve parametrelere bağlı olarak benzerini) girerek doğrudan çağrılabilir:
Bash
=KAPI_Ticker("XBTUSD,ETHEUR,LTCUSD,XDGXBT,XDGUSD")
=KAPI_Depth("XDGUSD", "5")KAPI_Public() işlevi, yukarıdaki Derinlik uç noktası örneği için aşağıdaki gibi API'den orijinal JSON yanıtını döndürür:
Bash
{"error":[],"result":{"XETHZUSD":{"asks":[["231.74000","4.386",1583402326],["231.75000","27.337",1583402277],["231.76000","5.887",1583402311],["231.79000","36.280",1583402334],["231.80000","50.000",1583402299]],"bids":[["231.70000","18.534",1583402335],["231.67000","22.109",1583402335],["231.61000","7.930",1583402335],["231.60000","33.841",1583402335],["231.54000","115.017",1583402334]]}}}Bireysel alanları/değerleri Google E-Tablosu içindeki ayrı hücrelere yerleştirmek için, örnek KAPI_Ticker() ve KAPI_Depth() işlevleri gibi ek özel işlevler JSON yanıtını ayrıştırmak üzere çağrılabilir:
Bash
=KAPI_Ticker("XBTUSD,ETHEUR,LTCUSD,XDGXBT,XDGUSD")
=KAPI_Depth("XDGUSD", "5")bu da verilerin standart Google E-Tabloları işlevlerinden (TOPLA, ORTALAMA, SAY, vb.) herhangi birine erişilebilir olacağı aşağıdaki gibi sonuçları gösterecektir:

Tüm Genel Uç Nokta çağrıları için dahil edilecek Genel İşlev:
Bash
function KAPI_Public(endpoint, parameters) {
http_response = UrlFetchApp.fetch(
'https://api.kraken.com/0/public/' + endpoint + '?' + parameters
)
api_data = http_response.getContentText()
return api_data
}Belirli bir Uç Noktaya özgü İşlev Örnekleri:
Derinlik:
Bash
function KAPI_Depth(currency_pair, depth) {
api_data = JSON.parse(
KAPI_Public("Depth", "pair=" + currency_pair + "&count=" + depth)
)
api_results = new Array()
for (count = 0; count < parseInt(depth); count++) {
api_results.push([
api_data['result'][currency_pair]['bids'][count][0],
api_data['result'][currency_pair]['bids'][count][1],
api_data['result'][currency_pair]['asks'][count][0],
api_data['result'][currency_pair]['asks'][count][1]
])
}
return api_results
}Borsa Kodu:
Bash
function KAPI_Ticker(currency_pairs) {
api_data = JSON.parse(
KAPI_Public("Ticker", "pair=" + currency_pairs)
)
api_results = new Array()
for (name in api_data['result']) {
api_results.push([
name,
api_data['result'][name]['a'][0],
api_data['result'][name]['a'][2],
api_data['result'][name]['b'][0],
api_data['result'][name]['b'][2],
api_data['result'][name]['c'][0],
api_data['result'][name]['c'][1]
])
}
return api_results
}Yukarıdaki komut dosyalarını kullanmak için genel komut dosyasını uç noktaya özel komut dosyasına eklemeniz yeterlidir:
Bash
function KAPI_Public(endpoint, parameters) {
http_response = UrlFetchApp.fetch(
'https://api.kraken.com/0/public/' + endpoint + '?' + parameters
)
api_data = http_response.getContentText()
return api_data
}
function KAPI_Depth(currency_pair, depth) {
api_data = JSON.parse(
KAPI_Public("Depth", "pair=" + currency_pair + "&count=" + depth)
)
api_results = new Array()
for (count = 0; count < parseInt(depth); count++) {
api_results.push([
api_data['result'][currency_pair]['bids'][count][0],
api_data['result'][currency_pair]['bids'][count][1],
api_data['result'][currency_pair]['asks'][count][0],
api_data['result'][currency_pair]['asks'][count][1]
])
}
return api_results
}Bu makalede gösterilen ondalık ve binlik ayırıcılar, alım satım platformlarımızda görüntülenen biçimlerden farklılık gösterebilir. Daha fazla bilgi için noktaları ve virgülleri nasıl kullandığımıza ilişkin makalemizi inceleyin.