Limity obchodních sazeb

Naposledy aktualizováno: More than 3 months ago

Naše REST a WebSocket API používají limity obchodních sazeb k ochraně API před škodlivým použitím a k ochraně našich trhů před manipulací s knihou objednávek.

Naše limity obchodních sazeb jsou navrženy tak, aby udržely naše trhy spravedlivé pro všechny účastníky trhu a zároveň poskytovaly zdroje potřebné pro různé typy obchodníků (investory, aktivní obchodníky, automatizované obchodní boty a tak dále).

Většina obchodníků se s limity obchodních sazeb nikdy nesetká, ale pro ty, kteří zadávají/ruší objednávky s vyšší než obvyklou frekvencí nebo zadávají/ruší vyšší počet objednávek, mohou být limity sazeb dosaženy, což povede k chybě EOrder:Rate limit exceeded.

Vezměte prosím na vědomí, že limity obchodních sazeb se uplatňují samostatně pro každý měnový pár, takže dosažení limitů sazeb pro jeden měnový pár (například XBT/USD) neovlivňuje obchodování s žádným jiným měnovým párem (například LTC/EUR).

Pro mnoho obchodníků není nutné znát konkrétní detaily algoritmů limitů obchodních sazeb; stačí vědět přibližně, kolik událostí objednávek může nastat během určitého časového období (v podstatě odpověď na otázku "Kolik objednávek mohu zadat/zrušit za minutu?").

Jelikož existují potenciálně neomezené kombinace událostí objednávek (zadávání, provádění, rušení) a životností objednávek (jak dlouho objednávka zůstává zveřejněna v knize objednávek), není možné poskytnout jedinou přesnou hodnotu, ale následující tabulka uvádí příklady pro několik typických kombinací.

Sloupce Intermediate a Pro udávají úroveň ověření účtu, spolu s maximálním počtem událostí objednávek, které mohou nastat za minutu na konzistentní bázi, aniž by byly dosaženy limity obchodních sazeb.

 

Rate limits combinations

Jak je uvedeno výše, ověření účtu na vyšší úroveň, zvýšení míry plnění objednávek nebo prodloužení životnosti objednávky – to vše výrazně sníží využití limitu sazeb, čímž umožní vyšší trvalý počet událostí objednávek za minutu.

Naše limity obchodních sazeb jsou založeny na čítači, který se zvyšuje při zadávání a rušení objednávek a v průběhu času se snižuje pevnou rychlostí úbytku. Limity sazeb jsou dosaženy, kdykoli tento čítač překročí maximální hodnotu (která se liší v závislosti na úrovni ověření účtu). Maximální hodnoty čítače (hodnoty dosaženého limitu sazeb) pro každý typ účtu jsou následující:

  • Standardní ověření (dříve známé jako Intermediate) = 125

  • Ověřeno s vyššími limity (dříve známé jako Pro) = 180

Rychlost úbytku (rychlost, kterou se čítač snižuje) je také založena na úrovni ověření účtu. Následují rychlosti úbytku pro každý typ účtu:

  • Standardní ověření (dříve známé jako Intermediate) = 2,34 za sekundu

  • Ověřeno s vyššími limity (dříve známé jako Pro) = 3,75 za sekundu

Čítač limitu sazeb se zvyšuje s každou událostí objednávky (zadání nebo zrušení), přičemž zrušení objednávek způsobuje největší nárůst. Následující tabulka ukazuje velikost nárůstu čítače (známého jako penalizace) pro každý typ události objednávky:

Rate Limits

Poznámky:

  • 1 Pro penalizaci dávkové objednávky, n = počet objednávek v dávce.

  • 2 Úprava objednávky také podléhá penalizaci 1 bodu za zadání objednávky.

  • 3 Objednávky, které jsou automaticky zrušeny jako neúspěšné IOC objednávky, nepodléhají žádné penalizaci za zrušení.

  • 4 Změna objednávky také podléhá penalizaci 1 bodu za zadání objednávky.

  • 5 Odmítnuté objednávky typu „post only“ jsou zpočátku přijaty, ale následně automaticky zrušeny; zadání podléhá penalizaci 1 bodu a zrušení podléhá penalizaci 8 bodů (celkem 9 bodů).

Následuje příklad, jak se maximální hodnota čítače, nárůst čítače v důsledku událostí objednávek a pokles čítače v důsledku rychlosti úbytku kombinují k implementaci limitů obchodních sazeb pro účet na úrovni Pro.

Zadání 20 limitních objednávek a zrušení každé objednávky po 3 sekundách by znamenalo penalizaci 9 bodů za objednávku, neboli kumulativní součet 180 bodů:

  • (20 objednávek x 1 bod za zadání objednávky) + (20 objednávek x 8 bodů za zrušení objednávky) = 180 bodů

Penalizace 180 bodů by se pak snížila o 3,75 bodu za sekundu, takže by trvalo pouze 1 sekundu, než by mohly být zadány tři nové objednávky (protože každá nová objednávka by podléhala penalizaci 1 bodu za zadání objednávky), ale trvalo by 48 sekund, než by byly limity sazeb zcela vymazány (zpět na nulu):

  • 180 bodů / 3,75 bodu za sekundu = 48 sekund

Následující výpočty ukazují, jak určit maximální počet událostí objednávek za minutu, které lze udržet, aniž by byly dosaženy limity sazeb:

  • Penalizace objednávky = (Penalizační body * Míra plnění) + (Penalizační body * Míra plnění) ... (až do 100 %)

  • Události objednávek za minutu = 60 sekund / (Penalizace objednávky / Rychlost úbytku)

Jako příklad pro účet na úrovni Pro, který zadává limitní objednávky, z nichž 60 % bylo vyplněno po 3 sekundách a 40 % bylo zrušeno po 8 sekundách:

  • Penalizace objednávky = (1 * 60 %) + (7 * 40 %) = 3,4 bodu

  • Události objednávek za minutu = 60 / (3,4 / 3,75) = 66 událostí

Jako reálný příklad limitů obchodních sazeb následuje chronologický přepis toho, jak se čítač penalizací zvyšuje a snižuje při zadávání/rušení objednávek.

V tomto příkladu je typ účtu účet na úrovni Pro (tedy maximální hodnota čítače 180 s rychlostí úbytku 3,75 za sekundu) a aktivita objednávek spočívá v zadání 3 objednávek (rychlostí 1 objednávka každých 0,5 sekundy) a následném zrušení 3 objednávek (pomocí FIFO, takže nejstarší objednávka je zrušena jako první).

API_ChronologicalExample_10022020.png

Kromě výše uvedených příkladů náš kalkulátor limitů obchodních sazeb umožňuje určit maximální počet událostí objednávek pro jakoukoli kombinaci míry plnění objednávek a životnosti objednávky. S pouhými několika proměnnými (jako je úroveň ověření účtu) lze události objednávek specifikovat jako procento nebo jako absolutní množství a kalkulátor ukáže, zda se požadovaná kombinace vejde do limitů obchodních sazeb, či nikoli.

Další otázky

Limity sazeb jsou jedním z několika nástrojů, které Kraken používá ke zlepšení bezpečnosti a dostupnosti platformy pro všechny klienty. Jen málo klientů by se mělo setkat s problémy s limity sazeb. Pokud obdržíte chyby limitu sazeb, nejprve se ujistěte, že váš software funguje správně. Pokud vaše frekvence obchodování vyžaduje výjimku z limitu sazeb, Kraken může posoudit klienty individuálně, aby zajistil, že výjimka nebude představovat riziko pro bezpečnost nebo dostupnost platformy. Obraťte se na svého Account Managera nebo kontaktujte náš tým podpory API s jakýmikoli dotazy nebo požádejte o posouzení.

Potřebujete další pomoc?