CryptoHopper is een geautomatiseerde crypto-handelsbot waarmee u handel en portefeuillebeheer voor Bitcoin, Ethereum, Litecoin en meer kunt automatiseren.
Vereist een ontwikkelaarsaccount en zodra u bent goedgekeurd, kunt u een nieuwe app maken. De API gebruikt OAuth2 voor authenticatie, zodat u de client_id en het client_secret uit uw app kunt ophalen.
oCryptoHopper := TsgcHTTP_Cryptohopper.Create(nil);
oCryptoHopper.CryptoHopperOptions.OAuth2.ClientId := 'client_id';
oCryptoHopper.CryptoHopperOptions.OAuth2.ClientSecret := 'client_secret';
oCryptoHopper.CryptoHopperOptions.OAuth2.LocalIP := '127.0.0.1';
oCryptoHopper.CryptoHopperOptions.OAuth2.LocalPort := 8080;
oCryptoHopper.CryptoHopperOptions.OAuth2.Scope.Text := "read,notifications,manage,trade";
CryptoHopper gebruikt HTTPS als protocol voor het verzenden van verzoeken aan de API. Sommige methoden vereisen authenticatie (orders plaatsen, gebruikersgegevens ophalen...) en andere zijn openbaar (bijvoorbeeld beursinformatie ophalen).
De functies retourneren het CryptoHopper-antwoord en als er een fout is, wordt een uitzondering gegenereerd.
Hoppers
Basisbewerkingen van Hopper beheren.
| Methode | Argumenten | Beschrijving |
| GetHoppers | Haal hoppers van gebruikers op. | |
| CreateHopper | aBody: JSON-configuratietekst. | Maak een nieuwe Hopper aan. |
| GetHopper | aId: hopper-id | Hopper ophalen |
| DeleteHopper | aId: hopper-id | Hopper verwijderen |
| UpdateHopper | aId: hopper-id aBody: configuratie-JSON-tekst. | Hopper bijwerken |
Orders
Manage the Orders of your Hopper.
| Methode | Argumenten | Beschrijving |
| GetOpenOrders | aId: hopper-id | Alle openstaande orders van de hopper ophalen. |
| CreateNewOrder | aId: hopper-id aOrder: instantie van TsgcHTTPCTHOrder | Maak een nieuw koop- of verkooporder. Gebruik voor verkoop liever het verkoopendpunt. |
| PlaceMarketOrder | aId: hopper-id aOrderSide: cthosBuy of cthosSell. aCoin: muntnaam, voorbeeld: EOS aAmount: ordergrootte. | Place a Market Order. |
| PlaceLimitOrder | aId: hopper-id aOrderSide: cthosBuy of cthosSell. aCoin: muntnaam, voorbeeld: EOS aAmount: ordergrootte. aPrice: limietprijs. |
Een limietorder plaatsen |
| DeleteOrder | aId: hopper-ID aOrderId: order-ID | Verwijdert het order voor de geselecteerde hopper. |
| DeleteAllOrders | aId: hopper-id | Verwijdert alle openstaande orders voor de geselecteerde hopper. |
| GetOpenOrder | aId: hopper-ID aOrderId: order-ID | Get open order in hopper by id. |
| CancelOrder | aId: hopper-ID aOrderId: order-ID | Een openstaande order annuleren. |
Positie
Beheer de posities van uw Hopper.
| Methode | Argumenten | Beschrijving |
| GetPosition | aId: hopper-id | Haal open posities van de hopper op. |
Handel
Handelsgeschiedenis van uw hopper.
| Methode | Argumenten | Beschrijving |
| GetTradeHistory | Haal de handelsgeschiedenis van de hopper op. | |
| GetTradeHistoryById | aId: hopper-id aTradeId: handel-id | Haal een trade op aan de hand van het id van de hopper. |
Uitwisseling
Informatie ophalen van beschikbare exchanges op CryptoHopper
| Methode | Argumenten | Beschrijving |
| GetExchange | Haal alle beschikbare exchanges op bij Cryptohopper. | |
| GetAllTickers | aExchange: exchangenaam | Ticker ophalen voor alle paren |
| GetMarketTicker | aExchange: exchange-naam aPair: paar-naam | Ticker ophalen van marktpaar. |
| GetOrderBook | aExchange: exchange-naam aPair: paar-naam aDepth: diepte van het orderboek |
Haal het orderboek op voor de geselecteerde beurs, markt en orderboekdiepte. |
Webhooks
Handelsgeschiedenis van uw hopper.
| Methode | Argumenten | Beschrijving |
| CreateWebhook | aURL: webhook-url aMessageTypes: berichttypen gescheiden door komma. | Een Webhook bijwerken of aanmaken |
| DeleteWebhook | aURL: webhook-URL | Delete an bestaand Webhook. |
Signalen
Stuur signalen naar de CryptoHopper API.
| Methode | Argumenten | Beschrijving |
| SendSignal | aSignal: is de klasse met alle velden die nodig zijn om een signaal te verzenden. | Stuurt een signaal |
| SendTestSignal | aSignal: is de klasse met alle velden die nodig zijn om een signaal te verzenden. | Stuurt een testsignaal |
| GetSignalStats | aSignalId: id van het signaal. aExchange: optioneel, naam van de exchange. | Haal een deel van de signaalstatistieken op. |
Gebruik de methode UpdateHopper om de Hopper-configuratie bij te werken. De methode is overbelast, zodat u de JSON-tekenreeks kunt doorgeven of het object TsgcHTTPCTHopper kunt gebruiken en de eigenschappen kunt gebruiken om de Hopper-eigenschappen in of uit te schakelen.
function EnableHopper: string;
var
oHopper: TsgcHTTPCTHopper;
begin
oHopper := TsgcHTTPCTHopper.Create;
Try
if Cryptohopper.GetHopper('1234', oHopper) then
begin
oHopper.Enabled := 1;
result := Cryptohopper.UpdateHopper('1234', oHopper);
end;
Finally
FreeAndNil(oHopper);
End;
end;
Met Webhook kunt u meldingen ontvangen wanneer er iets gebeurt in een hopper. Webhooks vereisen een openbare HTTPS-server die op een URL-adres alle berichten luistert die door cryptohopper worden verzonden. De openbare server moet worden beveiligd met een SSL-certificaat (zelfondertekende certificaten zijn niet toegestaan).
Eerst moet u een webhook aanmaken; configureer de Webhook-eigenschap van de Cryptohopper-client door de Host en Port in te stellen waar de server luistert. Configureer vervolgens het certificaat in de eigenschap SSLOptions.
Voorbeeld: Het publieke IP-adres is 1.1.1.1 en de luisterpoort is 443. Het certificaat is opgeslagen als PEM-bestand met de bestandsnaam sgc.pem en zonder wachtwoord.
/* OAuth2 */
cryptohopper.CryptohopperOptions.OAuth2.ClientId = 'client_id';
cryptohopper.CryptohopperOptions.OAuth2.ClientSecret := 'client_secret';
cryptohopper.CryptohopperOptions.OAuth2.LocalIP := '127.0.0.1';
cryptohopper.CryptohopperOptions.OAuth2.LocalPort := 8080;
/* Webhook */
cryptohopper.CryptohopperOptions.Webhook.Enabled := True;
cryptohopper.CryptohopperOptions.Webhook.Host := '1.1.1.1';
cryptohopper.CryptohopperOptions.Webhook.Port := 443;
cryptohopper.CryptohopperOptions.Webhook.ValidationCode := '1234';
cryptohopper.CryptohopperOptions.Webhook.SSLOptions.CertFile := 'sgc.pem';
cryptohopper.CryptohopperOptions.Webhook.SSLOptions.KeyFile := 'sgc.pem';
cryptohopper.CryptohopperOptions.Webhook.SSLOptions.RootCertFile := 'sgc.pem';
cryptohopper.CryptohopperOptions.Webhook.SSLOptions.Password := '';
cryptohopper.StartWebhook;