Koreluje a opravuje výsledky portfolia přepočítáním velikosti obchodů tak, aby zohledňovaly růst portfolia při kombinování strategií. Zobrazuje původní vs. přepočítané equity křivky s automaticky detekovanými zůstatky a analýzou drawdownu.
Přehled
StrategyQuant X vytváří výsledky portfolia spojením více strategií a sečtením jejich P&L obchodů na základě jediného počátečního zůstatku. To je rychlé a jednoduché, ale přináší to systematické zkreslení – každá strategie byla testována izolovaně a určovala velikost svých pozic podle vlastního účtu (např. 1 % ze 100 000 $). Jakmile se sloučí, portfolio roste, ale velikosti jednotlivých obchodů se nikdy nepřizpůsobí většímu kombinovanému zůstatku. Strategie, která otevřela pozici o velikosti 1 000 $, když mělo portfolio hodnotu 100 tis. $, stále otevírá pozici o velikosti 1 000 $, i když portfolio vzrostlo na 400 tis. $. Pozice má nyní čtvrtinovou velikost oproti tomu, co by 1% riziko skutečně mělo představovat.
Tento plugin znovu chronologicky přehrává celou historii obchodů portfolia a na každý obchod aplikuje škálovací faktor, takže velikost pozice každé strategie vždy odpovídá aktuálnímu celkovému zůstatku portfolia, a nikoli jejímu vlastnímu izolovanému počátečnímu zůstatku. Výsledkem jsou dvě equity křivky vedle sebe: Původní (přesně odpovídající SQX) a Přeškálovaná (co by přineslo správné složené úročení), doplněné srovnávacím grafem drawdownů níže.

Co doplněk umí
- Přesně replikuje původní křivku portfolia z SQX, takže máte k dispozici ověřený základ pro srovnání
- Znovu přehrává portfolio se správným škálováním pro jednotlivé obchody, kde je každý obchod přeškálován podle vzorce: aktuální zůstatek portfolia ÷ izolovaný zůstatek strategie v daném čase
- Zobrazuje graf drawdownu v % pro obě křivky, abyste viděli, kdy k drawdownům došlo a zda je přeškálování zlepšuje, nebo zhoršuje
- Automaticky detekuje všechny počáteční zůstatky z údajů o pokynech – počátek portfolia i izolovaný počátek každé strategie se načítají přímo z prvního pokynu každé strategie; není nutné žádné ruční zadávání
- Podporuje limit maximálního počtu lotů, takže uvidíte reálně omezenou křivku odpovídající limitům pozic u prop tradingových firem
- Filtr časového období s funkcí „warm-start“. Omezte zobrazení na libovolné dílčí období; obchody před tímto obdobím se přepočítají, aby se všechny zůstatky posunuly do správného stavu před začátkem daného okna
- Přepínač „Rebase to Start“ normalizuje obě křivky na původní výchozí bod pro jakékoli vybrané období, takže lze jakákoli dvě časová období přímo a férově porovnávat
Jak to funguje
Počáteční zůstatky jsou detekovány automaticky. Počáteční zůstatek portfolia se načítá jako firstOrder.Balance − firstOrder.ProfitLoss. Izolovaný počáteční zůstatek každé strategie se zjišťuje stejným způsobem z prvního pokynu dané strategie (identifikované pomocí ResultName).
Původní křivka je přímé přehrání: začíná na zjištěném zůstatku portfolia a chronologicky přičítá původní ProfitLoss každého obchodu. To musí přesně odpovídat čistému zisku, konečnému zůstatku a drawdownu vykázaným v SQX. Pokud tomu tak není, zjištěný počáteční zůstatek je nesprávný.
Přeškálovaná křivka používá stejný počáteční zůstatek a poté pro každý obchod:
scaleFactor = currentPortfolioBalance ÷ algoIsolatedBalance
scaledPL = originalPL × scaleFactor
Izolovaný zůstatek strategie se aktualizuje po každém jejím vlastním obchodu (isoBal += originalPL), takže poměr odráží to, jak by se účet dané strategie vyvíjel samostatně. Pokud je nastaven limit maximálního počtu lotů, škálovací faktor je omezen zespodu/shora tak, aby odvozená pozice nikdy nepřekročila hodnotu maxLots ÷ originalLotSize.
Drawdown v % je sledován nezávisle na drawdownu v $, přesně tak, jak to dělá SQX: nejhorší procentuální pokles (od vrcholu k propadu ÷ lokální vrchol) a nejhorší pokles v dolarech se měří odděleně v celé historii obchodů a uvádějí se v tabulce statistik.
Předpoklady
- Strategie používají určování velikosti pozice na základě procent (např. 1% riziko na obchod)
- Pokud strategie používají fixní velikosti lotů, škálovací faktor změní poměrné P&L, ale nikoli skutečný počet lotů. Přeškálovaná křivka bude vypadat jinak, ale nebude odrážet to, co byste mohli reálně zobchodovat.
- Pole Balance u pokynů portfolia představuje izolovaný zůstatek účtu pro jednotlivé strategie (nikoli kombinovaný zůstatek celého portfolia)
- Tuto hodnotu plugin používá k detekci počátečního kapitálu každého algoritmu a ke sledování jeho vývoje. Pokud SQX do tohoto pole ukládá průběžný zůstatek na úrovni portfolia, budou přepočítávací koeficienty pro jednotlivé algoritmy nesprávné. Ověřte to kontrolou, zda detekovaný počáteční kapitál algoritmu odpovídá počátečním zůstatkům vaší strategie.
- Všechny strategie používají stejnou základní měnu
- Hodnoty zisku a ztráty (P&L) se sčítají a škálují v původních měnových jednotkách; portfolia s více měnami nejsou podporována.
- Detekce počátečního zůstatku předpokládá, že před úplně prvním pokynem v datech nebyly uzavřeny žádné obchody
- Pokud je export dat zkrácený (např. prohlížíte část mimo vzorek – Out-of-Sample), bude zjištěný počáteční zůstatek odpovídat zůstatku na začátku této části, nikoli původně nastavenému kapitálu.
Omezení a nevýhody
Přeškálovaná křivka je simulace, nikoli backtest. Přepočítávací koeficient se aplikuje na původní P&L, který byl vypočten s použitím fixních velikostí lotů. V reálu by obchodování s větším lotem mělo jiný dopad na trh a cena se mohla pohnout proti vám jinak. Tento efekt je u likvidních instrumentů a malých účtů zanedbatelný, ale může být významný na nelikvidních trzích nebo u velmi velkých pozic.
Překrývající se obchody nejsou řešeny. Přeškálování předpokládá, že každý obchod je nezávislý. Pokud dvě strategie drží pozice současně, kombinovaná expozice v daném okamžiku je součtem obou přepočtených pozic – plugin nekontroluje, zda by to nepřekročilo marži nebo limity expozice.
Maximální limit lotů se uplatňuje na jeden obchod, nikoli na otevřenou pozici. Pokud má více strategií otevřené obchody současně, je každý z nich omezen individuálně, ale celkový objem otevřených lotů napříč všemi souběžnými pozicemi omezen není.
Drawdown se měří pouze v časech uzavření obchodů. Výkyvy majetku během obchodu (otevřený drawdown) nejsou v datech pokynů viditelné. Uváděný maximální drawdown tak může být nižší než ten, který by byl vidět na křivce majetku tick po ticku.
Strategie s fixním lotem nevykáží žádný smysluplný rozdíl mezi původními a přepočtenými hodnotami – přepočítávací koeficient změní odvozený dolarový zisk/ztrátu, ale nikoli skutečné rizikové chování strategie.
Toto řešení má poskytnout představu o tom, jak se bude riziko vašeho portfolia skutečně škálovat, protože hodnota Drawdownu ve výsledcích StrategyQuantu není při nastavení Risk % přesná