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:
- ApiKey
- ApiSecret
- Passphrase
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.
});