V tomto článku
Po přečtení dokážete…
- Vysvětlit ztracený zlomek před převodem.
- Vymezit co replay neověří.
- Porovnat celkový náklad s migrací.
Vysvětlení pojmů přímo v článku
Backtest: historický test pravidel Obchodní provize Bid a Ask Obchodní deník CFD — rozdílová smlouvaNinjaTrader a MetaTrader 5 neporovnávejte jen podle vzhledu grafu. Nejprve určete skutečný instrument, účet, data, typ pokynu a kód, který má fungovat. Stejný název strategie neznamená stejné výpočty ani plnění. Dobrý porovnávací test odhalí odlišné předpoklady dříve, než začnete vybírat vyšší výslednou křivku.
Platforma neurčuje nabídku každého účtu
MT5 je víceaktivová platforma; konkrétní broker a smluvní společnost určují dostupné produkty. Nabídka CFD jednoho účtu neomezuje technické možnosti celé platformy. NinjaTrader Desktop se soustřeďuje zejména na futures a nabízí i podporovaná další připojení. Jeho web, mobil a Desktop nemusejí mít shodné doplňky nebo automatizaci.
Pro EEA výrobce uvádí Payward Europe Digital Solutions (CY) Limited s licencí CySEC 342/17. To je jiná společnost než americký NinjaTrader Clearing. Evropský průvodce odkazuje na aktuální výběr země pobytu a individuální schválení; český jazyk článku nedokládá způsobilost českého rezidenta. Ověřujte vlastní smlouvu, nikoli jen značku skupiny.
Jaká data objem ve skutečnosti popisuje
Burzovní obchody a zobrazená kniha objednávek mají konkrétní zdroj, kontrakt a pokrytí. Ani úplný viditelný book neukazuje všechny budoucí úmysly účastníků. U OTC forexu bývá objem indikátoru počtem změn nebo ticků daného feedu; není globálním součtem všech devizových obchodů. Rozlište skutečný burzovní objem, tick volume a viditelnou hloubku.
U srovnání potřebujete stejný časový úsek, časové pásmo a mapování symbolů. Rozdíly seskupení, session a historie mohou změnit indikátor dříve, než se projeví jiný programovací jazyk. Ukládejte zvolený feed a konkrétní expiraci futures; průběžná řada vyžaduje popis přechodů kontraktů.
Zlomek může zmizet ještě před převodem
Původní numerický model platí pro zde použité C# i MQL5 celočíselné operandy: int a=2; int b=3;. Výraz (double)(a / b) nejprve vydělí dvě celá čísla na 0 a potom převede na 0,0. Naproti tomu (double)a / b převede první operand před operací:2,0/3 je přibližně 0,6667. Při filtru ratio > 0.5 první větev neprojde, druhá projde.
Ani double x = a / b; první větev neopraví: typ cílové proměnné nevrátí již odříznutý zlomek. Zachovejte pořadí převodu a operace. Dvě splněné podmínky ze tří jsou bezrozměrný podíl, ne pravděpodobnost zisku. Model nepoužívá měnu ani netvrdí, že samotná oprava filtru vytvoří výhodu.
Přenos logiky mezi C# a MQL5
NinjaScript používá C#, MT5 MQL5. Zkušenost s jazykem pomůže při čtení, ale nevyřeší platformní události, řízení pokynů a obnovu stavu. Při převodu strategie nejprve porovnejte vstupy, datové typy, zaokrouhlení, objemové kroky a okamžik výpočtu. Teprve potom testujte časování odesílání a reakce na chybu.
Restart musí mít vlastní scénář: již existující pozice, čekající pokyn, ztracená odpověď a opětovné spojení. Jednoduché nové spuštění nesmí slepě vytvořit další kopii. Výpočetní shoda není důkaz provozní shody. Údajný počet týdnů potřebných k naučení nepřebíráme jako vlastnost produktu; rozhoduje úloha a zkušenost uživatele.
Přesnější vstupy nemusí znamenat správné plnění
NinjaTrader Market Replay může přehrát zaznamenané L1/L2 události; Historical Playback má ticky bez tržní hloubky. Standardní historické plnění Strategy Analyzeru vytváří předpokládanou vnitřní cestu baru. High Order Fill Resolution může použít jemnější sekundární řadu. Tick Replay je jiná funkce pro výpočty skriptu a nekombinuje se automaticky s High Order Fill Resolution.
Oficiální dokumentace upozorňuje, že TimeInForce logika vypršení či zrušení na konci session není podporována na Sim101 a Playback101. Úspěšné přehrání proto nepotvrzuje tuto vlastnost skutečného účtu. Zapište ji jako neověřenou a samostatně ověřte se serverem nebo brokerem. Simulovaný výsledek není důkaz každé provozní ochrany.
MT5 nabízí testy s reálnými ticky brokera; tam, kde vhodné tickové záznamy chybí, může použít generování. Víceinstrumentový EA potřebuje odpovídající skutečné symboly a historii. Genetické hledání ani výpočetní cloud nedoplní kvalitní chybějící vstupy. Obě prostředí porovnávejte s doloženou historií, poplatky a modely; „tickový“ není sám dostatečný popis.
Původní zcela fiktivní tarify a objem
Následující čísla nejsou současný ceník žádné společnosti. Zadaný tarif A účtuje 0,50 USD za kontrakt a stranu bez měsíčního poplatku. Tarif B účtuje 0,40 USD za stranu plus 49 USD měsíčně. Jeden roundtrip má dvě strany a jeden kontrakt, ostatní náklady jsou stejné. Úspora B na roundtripu je 0,20 USD, proto bod rovnosti 49/0,20=245 roundtripů za měsíc.
Na malé obrazovce posouvejte tabulku vodorovně, abyste přečetli všechny sloupce.
| Roundtripy | A:USD | B:USD |
|---|---|---|
| 100 | 100 | 129 |
| 245 | 245 | 245 |
| 300 | 300 | 289 |
Původní čtyři měsíce mají 100,400,100,400 roundtripů, celkem 1000. Celé období v A dává 1000 USD, v B: 800+4×49=996 USD. Pokud výslovně předem povolíme bezplatnou volbu tarifu před každým měsícem a známe zadané objemy, zvolíme A pro klidné a B pro aktivní měsíce:100+369+100+369=938 USD. Není to tvrzení o skutečných podmínkách změny licence ani o znalosti budoucí aktivity. Vyšší počet obchodů kvůli bodu rovnosti může zvýšit celkovou ztrátu.
Nabízené živé sazby a vícebrokerové doplňky ověřte pro vlastní společnost zvlášť. MT5 licence poskytovaná brokerem neznamená nulové spready či komise. NinjaTrader kompatibilita s dalším brokerem neznamená dostupnost každého jeho symbolu.
Nový CZK model nákladů přechodu: úplně nezávisle přiřaďme jednorázový migrační náklad 4800 Kč, stálou měsíční úsporu 350 Kč a dodatečná data 150 Kč měsíčně. Nejde o aktuální nabídku ani oceňování práce konkrétního člověka. Za předpokladu stejných obchodů, stejné kvality provozu a neměnných částek je čistá měsíční úspora 200 Kč. Za 12 měsíců pokryje 2400 Kč, zůstává nepokrytých 2400 Kč; účetní rovnost nastane až po 24 měsících. Bez diskontu, daní, kurzových změn a výnosového přínosu. Bod návratnosti nákladu není důkaz, že má smysl migrovat.
CZK náklad přechodu a čas
Pro přečtení detailů posouvejte diagram vodorovně nebo jej zvětšete.
Číselný přepis diagramu: CZK náklad přechodu a čas
Fiktivně 4800 Kč jednorázově, úspora 350 a dodatečná data 150 Kč měsíčně; bez výnosů, diskontu a změn cen.
Do jmenovatele patří čistá úspora po dodatečných datech.
- Čistě za měsíc
- 200 Kč — 350 minus 150.
- Pokryto za 12 měsíců
- 2400 Kč — Polovina vstupního nákladu.
- Účetní rovnost
- 24 měsíců — 4800 děleno 200.
Cvičení: proč nestačí 4800/350?
Protože 350 Kč je hrubá úspora před 150 Kč za dodatečná data. Správný jmenovatel tohoto modelu je 200 Kč měsíčně.
Dvě běžné situace
Máte-li již funkční MT5/MQL5 postup, vymezte konkrétní chybějící schopnost a prokažte ji malým testem. Samotný odlišný jazyk nepřináší provozní výhodu. Pro studium futures s přehráním hloubky naopak vyberte datum, kontrakt a skutečné nahrávky, pak otestujte požadované pokyny. Nižší nominál kontraktu nepoužívejte jako záruku dostupného rizika.
Co uchovat v porovnávacím záznamu
- Účet, instrument, verzi, kód a úplný rozsah dostupných dat.
- Malý matematický test typů před porovnáním reportů.
- Rozdíly simulace včetně nepodporovaných časových pravidel.
- Skutečný rozpočet migrace a provozu bez předpokladu vyšší aktivity nebo budoucího zisku.
Ověřte si, co jste se naučili
Přibližně 2 minut procvičování.
Zobrazit odpověď a vysvětlení
Ano. První operand je před dělením double, tedy přibližně 0,6667>0,5.
Další otázky
Která platforma je přesnější?
Bez zadání dat, strategie a modelu plnění to nelze rozhodnout. Replay událostí, indikátorový výpočet a simulace pokynů ověřují jiné věci.
Je celé číslo převedené po dělení stejné jako před ním?
Ne. Pro 2 a 3 dá(double)(a/b) nulu, zatímco(double)a/b přibližně 0,6667. Typ výsledné proměnné již ztracený zlomek nevrátí.
Může český rezident automaticky otevřít evropský účet?
Neodvozujeme to z jazyka. Průvodce uvádí PEDSL-CY 342/17, aktuální výběr rezidence a individuální přijetí. Americká společnost je samostatná.
Jsou ukázkové tarify A/B aktuální ceník?
Ne. Jde o výslovně fiktivní model 0,50/0,40 USD za stranu a 49 USD měsíčně. Smluvní cenu a změny plánu ověřte samostatně.
Zdroje a ověření
- Microsoft — Dělení v C#
Čteny 119–147: celočíselné dělení a převod operandu. Nepředstíráme běh NinjaScript runtime.
- MetaQuotes — Převody MQL5
Čteny 84–146: pořadí operací a příklad double x=1/2 s výsledkem 0,0. Ne celý jazykový manuál.
- NinjaTrader — Historické plnění
Čteny 6–24: Standard předpokládaná cesta, High sekundární řada a nekombinovatelnost s Tick Replay. Bez nativního testu.
- NinjaTrader — Playback setup
Čten oficiální relevantní výňatek včetně nepodporovaného TimeInForce konce session na Sim101/Playback101. Samotné replay neověří skutečnou expiraci.
- NinjaTrader — EEA účet
Čten oficiální úvod k PEDSL-CY 342/17 a výběru rezidence. Ne příslib schválení a ne úplný právní audit.
- MetaTrader 5 — Generování ticků
V předchozím vlastním cíleném primárním čtení této partie ověřeny skutečné ticky a generování chybějících intervalů. Ne vlastní test brokerových dat.
Výpočty používají výslovně uvedené předpoklady. Nenahrazují aktuální tržní údaje ani podmínky poskytovatele.
