moin,
ich konnte inzwischen das projekt von hier https://github.com/mrteye/GDAX zum laufen bekommen.
Projekt ist im folgenden Ordner:
index.php sieht so aus:
test_basic_public.php sieht so aus:
Und das Egebnis sieht so aus:
Mein Problem ist jetzt, ich brauche die aktuellen Ask- und Bid-Werte.
Also habe ich das gefunden https://docs.gdax.com/#get-product-ticker
Aber leider komme ich nicht weiter. Wie muss man das Handhaben?
Im test_basic_public.php sind die getProductOrderbook und getProductTrades drin:
Und ich dachte mir dann muss es mit getProductTicker(...) auch ähnlich gehen, aber woher bekomme ich jetzt die Parameter für getProductTicker(...) her ?
ich habe jetzt als Parameter für GetProductTicker(...) einfach die $productId genommen:
test_basic_public.php:
und das kommt dabei raus:
Also nur müll, nicht mal das datum stimmt.
Warum? Was mache ich falsch?
So jetzt habe ich die URL in config.php geändert, hab die Sandbox gedöns entfernt und ersetzt durch:
config.php
und test_basic_public.php sieht so aus:
Ergebnis, jetzt bekomme ich die richtige daten:
Wie bekommt man jetzt z.b. den Ask-Wert in eine Variable geschrieben, weil ist ja kein Array mehr wie bei TheRock sondern irgend wie ein "stdClass Object"?
ich konnte inzwischen das projekt von hier https://github.com/mrteye/GDAX zum laufen bekommen.
Projekt ist im folgenden Ordner:
index.php sieht so aus:
PHP:
<?php
// Set the base path; run composers autoload.
if (! $docRoot = $_SERVER['DOCUMENT_ROOT']) {
// Repo clone - root path - no web server.
$docRoot = dirname(dirname(__FILE__));
}
require_once "$docRoot/vendor/autoload.php";
// ~ Create credentials on the gdax site -> api section.
// ~ copy config.php.example to $docRoot/config.php.
require_once "$docRoot/mrteye/GDAX/config.php";
/***
<?php
// Example Config File
$config = array(
'key' => '',
'secret' => '',
'pass' => '',
'api_url' => 'https://api-public.sandbox.gdax.com',
'time_url' => 'https://api-public.sandbox.gdax.com/time'
);
***/
$time = time();
$test = false;
include 'test_basic_public.php';
//include 'test_basic_private.php';
//include 'test_advanced.php';
// Print any failed tests.
$t2 = time();
$sec = ($t2 - $time) % 60;
$min = (int) (($t2 - $time) / 60);
echo "<pre>
Time: ". date('i:s', $t2 - $time). "
</pre>";
// Display results of previous examples.
if ($test) {
foreach($test as $fail) {
$path = basename($fail->name);
$file_link = "<a href=\"file://{$fail->name}\">$path</a>";
echo "$file_link | <b>{$fail->msg}</b> | Details<hr>";
echo '<pre>'. print_r($fail->detail, true) .'</pre>';
}
}
test_basic_public.php sieht so aus:
PHP:
<?php
// Example #1 Basic - Pubic access, get product information.
// This example is loaded from index.php file which sets an autoload and
// creates $basePath and $config variables.
use mrteye\Gdax\Api;
use mrteye\Gdax\Auth;
// Get the GDAX API and start making calls.
$gdax = new Api($config->api_url);
$products = false;
// Debugging is enabled by default.
//$gdax->setDebug(false);
// Example usage of public calls.
try {
$productId = 'ETH-EUR';
$products = $gdax->getProducts();
$productOrderBook = $gdax->getProductOrderBook($productId, $param = [
'level' => 1
]);
$productTrades = $gdax->getProductTrades($productId, $param = [
'before' => 1,
'limit' => 100
]);
} catch (\Exception $e) {
$test[] = (object) array(
'name' => __FILE__,
'msg' => $e->getMessage(),
'detail' => $gdax->getError()
);
}
if ($products) {
echo 'Products: <pre>'. print_r($products, true) .'</pre>';
}
Und das Egebnis sieht so aus:
Mein Problem ist jetzt, ich brauche die aktuellen Ask- und Bid-Werte.
Also habe ich das gefunden https://docs.gdax.com/#get-product-ticker
Aber leider komme ich nicht weiter. Wie muss man das Handhaben?
Im test_basic_public.php sind die getProductOrderbook und getProductTrades drin:
PHP:
$productOrderBook = $gdax->getProductOrderBook($productId, $param = [
'level' => 1
]);
$productTrades = $gdax->getProductTrades($productId, $param = [
'before' => 1,
'limit' => 100
]);
Und ich dachte mir dann muss es mit getProductTicker(...) auch ähnlich gehen, aber woher bekomme ich jetzt die Parameter für getProductTicker(...) her ?
Ergänzung ()
ich habe jetzt als Parameter für GetProductTicker(...) einfach die $productId genommen:
test_basic_public.php:
PHP:
<?php
// Example #1 Basic - Pubic access, get product information.
// This example is loaded from index.php file which sets an autoload and
// creates $basePath and $config variables.
use mrteye\Gdax\Api;
use mrteye\Gdax\Auth;
// Get the GDAX API and start making calls.
$gdax = new Api($config->api_url);
$products = false;
// Debugging is enabled by default.
//$gdax->setDebug(false);
// Example usage of public calls.
try {
$productId = 'ETH-EUR';
$products = $gdax->getProducts();
$productOrderBook = $gdax->getProductOrderBook($productId, $param = [
'level' => 1
]);
$productTrades = $gdax->getProductTrades($productId, $param = [
'before' => 1,
'limit' => 100
]);
$productTicker = $gdax->getProductTicker($productId);
} catch (\Exception $e) {
$test[] = (object) array(
'name' => __FILE__,
'msg' => $e->getMessage(),
'detail' => $gdax->getError()
);
}
if ($productTicker) {
echo 'Products: <pre>'. print_r($productTicker, true) .'</pre>';
}
und das kommt dabei raus:
Also nur müll, nicht mal das datum stimmt.
Warum? Was mache ich falsch?
Ergänzung ()
So jetzt habe ich die URL in config.php geändert, hab die Sandbox gedöns entfernt und ersetzt durch:
config.php
PHP:
<?php
$config = (object) array(
'key' => '',
'secret' => '',
'pass' => '',
//'api_url' => 'https://api-public.sandbox.gdax.com',
//'time_url' => 'https://api-public.sandbox.gdax.com/time'
'api_url' => 'https://api.gdax.com',
'time_url' => 'https://api.gdax.com/time'
);
und test_basic_public.php sieht so aus:
PHP:
<?php
// Example #1 Basic - Pubic access, get product information.
// This example is loaded from index.php file which sets an autoload and
// creates $basePath and $config variables.
use mrteye\Gdax\Api;
use mrteye\Gdax\Auth;
// Get the GDAX API and start making calls.
$gdax = new Api($config->api_url);
$products = false;
// Debugging is enabled by default.
//$gdax->setDebug(false);
// Example usage of public calls.
try {
$productId = 'ETH-EUR';
$products = $gdax->getProducts();
$productOrderBook = $gdax->getProductOrderBook($productId, $param = [
'level' => 1
]);
$productTrades = $gdax->getProductTrades($productId, $param = [
'before' => 1,
'limit' => 100
]);
$productTicker = $gdax->getProductTicker($productId);
} catch (\Exception $e) {
$test[] = (object) array(
'name' => __FILE__,
'msg' => $e->getMessage(),
'detail' => $gdax->getError()
);
}
if ($productTicker) {
echo 'Products: <pre>'. print_r($productTicker, true) .'</pre>';
}
Ergebnis, jetzt bekomme ich die richtige daten:
Wie bekommt man jetzt z.b. den Ask-Wert in eine Variable geschrieben, weil ist ja kein Array mehr wie bei TheRock sondern irgend wie ein "stdClass Object"?
Zuletzt bearbeitet: