REST API de Coinbase Pro

· Componentes

From sgcWebSockets 4.4.8, REST API de Coinbase Pro is fully supported. The REST API allows to access to public Market Data and Private Accounts, place new orders... sgcWebSockets library supports the following endpoints

Authentication, Accounts, Orders,  Fills, Limits, Deposits, Withdrawals, Stablecoin Conversions, Payment Methods, Coinbase Accounts, Fees, Reports, Profiles, Margin, Oracle


REST API pública de Coinbase Pro 

Coinbase Pro ofrece Market Data públicos a través de endpoints REST; cuando llamas a uno de estos endpoints obtienes un snapshot de los datos de mercado solicitados.

Los endpoints de Market Data no requieren autenticación, así que están disponibles libremente para todos los usuarios.

Ejemplo: para obtener un snapshot del ticker BTC-USD, haz la siguiente llamada

oCoinbase := TsgcWSAPI_Coinbase.Create(nil);
ShowMessage(oCoinbase.REST_API.GetProductTicker('BTC-USD')); 

REST API privada de Coinbase Pro 

The REST API de Coinbase Pro offer public and private endpoints. The Private endpoints requires that messages signed to increase the security of transactions.

First you must login to your Coinbase Pro account and create a new API, you will get the following values:

These fields must be configured in the Coinbase property of the Coinbase API client component.

Once configured, you can start to do private requests to the REST API de Coinbase Pro

oCoinbase := TsgcWSAPI_Coinbase.Create(nil);
oCoinbase.Coinbase.ApiKey := '<your api key>';
oCoinbase.Coinbase.ApiSecret := '<your api secret>';
oCoinbase.Coinbase.ApiPassphrase := '<your passphrase>';
ShowMessage(oCoinbase.REST_API.ListAccounts); 

Colocar órdenes en Coinbase Pro 

Para colocar nuevas órdenes en Coinbase Pro, primero necesitas tus APIs para acceder a tus datos privados. Una vez configuradas tus API keys, puedes empezar a colocar órdenes

Ejemplo: colocar una nueva orden Market, comprar 0,002 contratos de BTC-USD

oCoinbase := TsgcWSAPI_Coinbase.Create(nil);
oCoinbase.Coinbase.ApiKey := 'your api key';
oCoinbase.Coinbase.ApiSecret := 'your api secret';
oCoinbase.Coinbase.ApiPassphrase := 'your passphrase';
ShowMessage(oCoinbase.REST_API.PlaceMarketOrder(coisBuy, 'BTC-USD', 0.002)); 

Cuenta SandBox de Coinbase Pro 

Coinbase Pro permite usar una cuenta SandBox donde puedes operar sin fondos reales. Esta cuenta requiere crear API keys distintas a las de producción.

Para usar la cuenta SandBox, basta con establecer la propiedad Coinbase.SandBox a true antes de realizar cualquier petición a la API.

oCoinbase := TsgcWSAPI_Coinbase.Create(nil);
oCoinbase.Coinbase.ApiKey := 'your api key';
oCoinbase.Coinbase.ApiSecret := 'your api secret';
oCoinbase.Coinbase.ApiPassphrase := 'your passphrase';
oCoinbase.Coinbase.SandBox := True;
ShowMessage(oCoinbase.REST_API.ListAccounts); 

Trading en SandBox con la API de Coinbase Pro 

 En el siguiente vídeo puedes ver cómo colocar nuevas órdenes usando la REST API y cómo obtener actualizaciones en tiempo real mediante el canal de usuario WebSocket.

});