Vypracovanie stratégie krok za krokom. Ako urobiť stratégiu. Príprava na prácu

Ahojte všetci! Teraz vám poviem, ako urobiť jednoduchú RTS (RTS - Real Time Strategy, to znamená stratégia v reálnom čase), otvoriť hojdaciu sieť 8.1 (na 8.0 nie je zaručená funkčnosť), vytvoriť objekt objControl, to znamená, že toto bude náš hlavný objekt, vytvorte udalosť vytvorenia (Vytvoriť) Pridať udalosť => Vytvorenie (Pridať udalosť => Vytvoriť) udalosť vytvorenia sa vykoná iba raz - pri vytváraní kliknite na záložku ovládania v pravom vertikálnom menu a kliknite pravým tlačidlom myši na Vykonať kód (Spustite kód) a napíšte kód (najlepšie je kód nekopírovať a jeho písanie si ho oveľa ľahšie zapamätá):

200?"200px":""+(this.scrollHeight+5)+"px");">startx=0; //Deklarovanie premennej pre počiatočný bod x
počiatočné = 0; //Deklarujte premennú pre začiatok bodu pomocou y
draw_rect=false; //Nekresli výberový obdĺžnik


Premenná: Časť pamäte, ktorá obsahuje informácie. Majú svoje meno, s ktorým ich môžete kontaktovať. Premenné v GML môžu obsahovať reálne číslo alebo reťazec. Napríklad stôl je variabilný, drevený alebo sklenený je hodnota
Teraz vytvoríme udalosť kroku (Krok, Pridať udalosť => Krok) a znova vykonáme operáciu (kliknite pravým tlačidlom myši na Spustiť kód):

200?"200px":""+(this.scrollHeight+5)+"px");">
if mouse_check_button_pressed(mb_left) //Ak je stlačené LMB
{
draw_rect=true; //Nakreslíme obdĺžnik
startx=myš_x; //Začiatok x pozícia = myš x pozícia
starty=mouse_y; //Počiatočná pozícia = pozícia myši
so všetkými vybranými=false; //Toto ešte nie je deklarovaná premenná, čo bude robiť sa dozvieme neskôr
}

If mouse_check_button_released(mb_left) //Ak je LMB uvoľnený
{
draw_rect=false; //Obdĺžnik nekreslíme
pre (i=0;i<=instance_number(par);i+=1) //Читайте про цикл for ниже
{
ii=nájsť_inštanciu(par,i); //Hľadáme objekt, ktorý ešte nebol vyrobený
if(collision_rectangle(startx,starty,mouse_x,mouse_y,ii,true,false)) //Tu je náš kolízny obdĺžnik (kontakt)
{
ii.selected=true;
}
}
}

Kód je veľký a zložitý, zatiaľ čo sa dozvieme o podmienenom príkaze if:
Kód s if sa vykonáva takto:

200?"200px":""+(this.scrollHeight+5)+"px");">
ak (podmienka)
{
akcie
}

Môže obsahovať aj príkaz else (inak), napríklad:

200?"200px":""+(this.scrollHeight+5)+"px");">ak (podmienka)
{
akcie
}
inak
{
akcia 2
}

A pre je operátor slučky, vykonáva sa takto:

200?"200px":""+(this.scrollHeight+5)+"px");">
pre (<переменная> ; <выражение> ;<действие переменной>)
{
<действия>
}


Pre operátora je veľmi silná vec, ktorá veľmi pomáha v ťažkých situáciách

Operátor - akcie zabudované do jazyka, najčastejšie sú napríklad int, if, else, string, switch, for, case, break, exit, atď., atď.

Teraz vytvoríme aj udalosť kreslenia (draw) a napíšeme rovnakým spôsobom:

200?"200px":""+(this.scrollHeight+5)+"px");">ak draw_rect=true
{
alfa = 0,8;
farba_obdĺžnika(začiatokx,začiatočná,myš_x,myš_y,c_zelená,c_zelená,c_zelená,c_zelená,pravda);
}

Všetko je tu jednoduché, tu je to isté iba v ruštine:
ak potrebujeme nakresliť obdĺžnik, tak vyberieme priehľadnosť a nakreslíme obdĺžnik
tu sú argumenty

200?


obrys - či sa vykreslí len okraj (pravda) alebo vyplnený obdĺžnik (nepravda).
Našli sme nové slovo - konštanta, toto je číselný výraz alebo kód nahradený slovom, hojdacia sieť má vstavané konštanty:

200?"200px":""+(this.scrollHeight+5)+"px");">pravda - 1
nepravda - 0
pi - 3,1415...


No, prišli sme na to, teraz musíme vytvoriť nový objekt - rodičovský objekt, ktorý sa pripojí k svojim potomkom. Nazvime to par (ak chcete zmeniť názov, musíte zmeniť kód v udalosti kroku ovládacieho objektu), napíšte do udalosti vytvorenia:

200?"200px":""+(this.scrollHeight+5)+"px");">selected=false; //Tu je naša premenná, či je objekt vybratý

To je všetko. Teraz, samozrejme, potrebujeme objekt, ktorý sa môže pohybovať, nazývame ho objTest a napíšeme kód do udalosti vytvorenia:

200?"200px":""+(this.scrollHeight+5)+"px");">gox=x; //Kam ísť...
goy=y; //od r
vybraný=nepravda; //Nie sme vybraní =)
object_set_parent(self,par) //Tu je výber rodiča

Nová akcia:

200?"200px":""+(this.scrollHeight+5)+"px");">object_set_parent(ind,obj)

Nastaví rodičovský objekt na objekt s názvom ind.
A nový operátor: self, to znamená, že akcia pôjde sama sebe
Nezľaknite sa, v akcii kroku ešte maličkosť zostáva:

200?"200px":""+(this.scrollHeight+5)+"px");">ak distance_to_point(gox,goy) > 20
{
mp_potential_step(gox,goy,6,solid);
}
if(selected=true) && mouse_check_button_pressed(mb_right)
{
gox=mouse_x;
goy=mouse_y;

V dnešnej dobe sa dá ľahko nájsť množstvo obchodných stratégií, problém je len v tom, že väčšina z nich buď nefunguje, alebo nie je dostatočne efektívna. V takejto situácii je vytvorenie stratégie od začiatku výborným riešením problému.

A hoci v každej konkrétnej situácii bude vytvorenie vozidla iné, hlavné fázy zostávajú rovnaké. To znamená, že môžete vytvoriť niečo ako univerzálny návod, ktorý postupne prechádza všetkými fázami a na konci dostaneme úplne funkčný systém.

Aj keď zvážime možnosť vytvorenia stratégie od nuly, počnúc nápadom a končiac zavedením filtra a finálnym vývojom vozidla, neznamená to, že všetky hotové systémy treba hneď zahodiť ako zjavne neefektívne . Ako základ možno použiť niekoľko TS a jednoducho pridať niekoľko filtrov, aby sa odstránili falošné signály.

Hlavné fázy tvorby stratégie

Ak náhodne vezmete 5-7 indikátorov a pokúsite sa z nich vytvoriť funkčné vozidlo, je nepravdepodobné, že vyjde niečo užitočné. Najprv musíte premyslieť hlavnú myšlienku stratégie a až potom prejsť na výber nástrojov. Je možné navrhnúť nasledujúcu postupnosť akcií:

  • ak je systém vytvorený od nuly, potom prvým krokom je pracovať na myšlienke. V tejto fáze sa stačí rozhodnúť, aký bude váš obchodný štýl, napríklad, či sa transakcie budú vykonávať pozdĺž trendu alebo proti nemu, alebo možno je stratégia plánovaná výlučne na prelomenie. O konkrétnostiach zatiaľ neuvažujeme;
  • Po výbere vhodného obchodného štýlu môžete začať pracovať na detailoch. Pred výberom nástrojov musíte jasne určiť pracovné menové páry a časové rámce, čas obchodovania atď.;

Dôležité! Pri výbere časového rámca nie je vhodné ísť príliš do úzadia, najmä ak obchodník nemá skúsenosti so špekuláciami na malé časové intervaly. Pre začiatočníkov je vo všeobecnosti lepšie neklesnúť pod H1-H4, o výbere optimálneho časového intervalu si môžete prečítať viac;

  • ďalšou fázou je výber vhodných nástrojov a tu môže veľký výber zahrať na obchodníka krutý vtip, pretože má k dispozícii desiatky indikátorov, schopnosť používať sviečkovú, vlnovú, technickú a fundamentálnu analýzu. Z celej tejto rozmanitosti si musíte vybrať niekoľko nástrojov, ktoré najlepšie vyhovujú vášmu zamýšľanému obchodnému štýlu;
  • Jedným z hlavných pravidiel každej stratégie je, že prijatý signál musí byť potvrdený viacerými filtrami, no je vhodné obmedziť ich počet. Napríklad v prípade stratégií ukazovateľov je nežiaduce, aby počet ukazovateľov prekročil 3 – 4, inak dôjde k zmätku v signáloch a ak plánujete pracovať pomocou technickej analýzy, ukazovatele budú hrať podpornú úlohu;
  • sú vyvinuté pravidlá pre podporu pozície, výsledkom by mal byť algoritmus akcií pre akýkoľvek scenár;
  • posledná fáza je spustiť vozidlo najprv na historickom účte a potom na demo účte, alebo ešte lepšie, na skutočnom centovom účte. Hlavným cieľom je otestovať životaschopnosť stratégie v reálnych podmienkach a reálny účet (aj cent) vám umožní precítiť celú škálu emócií, od eufórie až po horkosť prehier.

Môžete tiež odporučiť, aby ste sa nezaoberali zložitosťou vozidla. Prax ukazuje, že prílišná zložitosť vôbec nie je ukazovateľom účinnosti. Čím je systém jednoduchší, tým ľahšie sa s ním obchoduje.

Čo by malo byť súčasťou vozidla

Vytváranie stratégie je trochu ako stavebnica, stačí si vybrať tie správne diely. Pri vytváraní vozidla môžete a mali by ste použiť:

  • ukazovatele. Navyše by ste nemali naháňať ich počet alebo nadmernú zložitosť, dokonca aj v plne mechanických vozidlách stačí 3-5 kusov;
  • grafické vzory - známe vlajky, vlajočky, trojuholníky, hlava a ramená, dvojité spodky a vrchy stále dobre fungujú;
  • grafické konštrukcie;
  • Fibo hladiny;
  • prvky fundamentálnej analýzy - teraz je ťažké zarobiť peniaze len na správach, ale je potrebné brať do úvahy ekonomický kalendár v obchodovaní. Stačí aspoň posunúť transakcie na prahovú hodnotu pred zverejnením dôležitých štatistík pre USA či Európu, alebo dokonca úplne uzavrieť zisk.

Existuje tiež množstvo techník, ktorých výhody sú sporné:

  • Martingale je spočiatku nerentabilná taktika, jedinou šancou na úspech je, že pred stratou sa vám podarí získať späť sumu vkladu a trochu zarobiť;

  • Je tiež nežiaduce používať zamykanie, pokiaľ to nie je absolútne nevyhnutné, potom je dosť ťažké opustiť hrad;
  • Tiež je lepšie nepoužívať signály zvonku. Signály zvonku znamenajú napríklad porovnanie počtu predajcov/kupujúcich, rôzne indexy nálad väčšiny obchodníkov a pod. Existuje však aj množstvo zdrojov, ktoré si môžete vypočuť, napríklad Autochartist dáva dobré signály na základe grafických vzorov;
  • Je tiež lepšie nepoužívať prvky analýzy vĺn (aspoň pre začiatočníkov). Aj keď tu existujú výnimky, napríklad obchodovanie na Wolfe Waves je založené presne na vlnovej analýze, ale nie je obzvlášť zložité.

Vypracovanie jednoduchej indikátorovej stratégie

Predpokladajme, že hlavnou myšlienkou stratégie je obchodovať výlučne v smere trendu. Navyše na trh nevstúpite v momente vzniku trendu, čo je dosť riskantné, ale po dokončení malej korekcie.

Stratégia by mala fungovať na takmer akomkoľvek menovom páre, čo je nevyhnutné, pretože kvôli veľkému časovému rámcu sa signály nebudú vyskytovať príliš často. Takže situácia bude hodnotená pomocou 5-7 menových párov súčasne. Pokiaľ ide o časový rámec, D1 je vhodný, vychádzame zo skutočnosti, že Forex je v počiatočnej fáze iba doplnkom k hlavnej práci, preto budeme obchodovať na denných sviečkach.

Teraz sa musíte rozhodnúť, ako presne sa určí okamih vstupu. Existuje veľa možností na identifikáciu trendu:

  • vizuálne - ale pozorovanie vám nedovolí vytvoriť jasné pravidlá obchodovania;
  • použitie jedného alebo viacerých kĺzavých priemerov;
  • podľa hodnoty ukazovateľa ADX, ak je viac ako 30, potom je silný trend, menej ako 20, trh je pokojný;
  • používanie grafických konštrukcií;
  • Bollinger Bands vám umožňuje posúdiť silu trendu podľa vzdialenosti medzi hornou a dolnou hranicou kanála.

Vo všeobecnosti existuje veľa možností, ale keďže stratégia musí byť čo najjednoduchšia, zameriame sa na kĺzavé priemery. Alebo skôr jedno MA, budeme posudzovať smer trendu podľa pozície ceny voči nej. Môžete začať s obdobiami, ktoré priemerujú cenu za celé časové obdobie (týždeň, mesiac, štvrťrok atď.), napríklad 20 bude priemerom ceny za posledný mesiac. Najťažšie je vybrať si vhodné obdobie MA, ale tu budete musieť postupovať metódou pokus-omyl.

Hlavná myšlienka obchodovania bude nasledovná: počkáme, kým sa objaví pohyb trendu, potom do jedného dňa nasleduje korekcia, po jej skončení sa uzavrie obchod. Ak je toto všetko prezentované vo forme jasných pravidiel, algoritmus akcií bude vyzerať takto (na príklade nákupov):

  • najprv skontrolujeme cenovú pozíciu vzhľadom na MA, cena by mala byť nad čiarou;
  • Ďalej musíme nájsť trendový pohyb, potrebujeme sviečku s veľkým telom a malými tieňmi (je vhodné, aby hodnota tieňa nepresahovala 10-15% veľkosti tela sviečky);
  • mala by nasledovať sviečka s malým denným rozsahom (vzdialenosť od High po Close). Close cena by nemala dosiahnuť úroveň 50% predchádzajúceho dňa - v tento deň nastáva korekcia ceny.

V tomto prípade môže dôjsť k náprave podľa 2 scenárov:

  • Keď sa vytvorí sviečka s dlhým tieňom pod ňou, môžete okamžite otvoriť obchod na konci dňa. Tento tvar sviečky naznačuje, že korekcia už bola dokončená;
  • možná možnosť je, keď sa korekčná sviečka uzavrie na minime, t.j. rollback ešte nie je dokončený, v tomto prípade musíte počkať, kým sa zatvorí ďalšia sviečka, ak je biela, môžete otvoriť dlhú pozíciu.

Čo sa týka udržiavania pozície a ochranných príkazov, stop loss by mal byť umiestnený aspoň za stred sviečky s veľkým telom. Na získanie cieľovej úrovne stačí odložiť hodnotu tej istej sviečky z úrovne nákupu, môžete použiť trailing stop.

Pravidlá stratégie sú sformované, ostáva už len otestovať ju v praxi. Prax ukazuje, že aj takýto jednoduchý algoritmus produkuje viac ako polovicu ziskových obchodov (a ak obchod predčasne presuniete na nulu, pravdepodobnosť straty klesá).

Vstup na začiatku trendu

Vyššie navrhovaný TS míňa časť trendového pohybu, ale nevyžaduje si veľa času na analýzu trhu. Ak je možné sledovať správanie sa ceny dňa, potom sa môžete pokúsiť jazdiť na trende na samom začiatku jeho formovania. Hlavnou myšlienkou stratégie je teda vstúpiť na trh potom, čo cena začne opúšťať horizontálny kanál.

A tu je veľmi dôležité prijímať spoľahlivý signál včas, na samom začiatku trendu. Na pomoc môžu opäť prísť kĺzavé priemery, ktoré sa však použijú trochu inak ako v predchádzajúcej stratégii. Môžete si vziať niekoľko MA s rôznymi obdobiami a posúdiť vznik trendu podľa ich vzájomného umiestnenia.

Nie je to revolučný prístup, Bill Williams použil niečo podobné vo svojom slávnom Aligátorovi. Takže tento ukazovateľ možno dokonca považovať za základ TS.

Ak k H1 pridáme Alligator so štandardnými nastaveniami, vidíme, že to dáva veľa falošných signálov, našou úlohou je ich vyradiť. Za týmto účelom vstúpime na trh s čakajúcou objednávkou a úroveň jej umiestnenia sa určí pomocou fraktálov.

V dôsledku toho bude pracovný tok vyzerať takto (na príklade nákupov):

  • Hľadáme rovnú oblasť na mape (všetky línie Aligátora sú navzájom chaoticky prepletené);
  • Ďalej potrebujete fraktálnu sviečku (a mala by byť umiestnená nad čiarami bez toho, aby ste sa ich dotkli spodným tieňom);
  • príkaz buy stop je umiestnený tesne nad jeho maximom a ochranný príkaz je umiestnený za spodnou hranicou konsolidačnej zóny;
  • TP je buď pevná (50-70 p), alebo použiť zarážku. Vo všeobecnosti je dosť ťažké predpovedať silu trendového pohybu, takže je lepšie použiť trailing stop ako pevný TP alebo určiť cieľovú úroveň pomocou rovnakej technickej analýzy.

V tomto príklade nejde o vývoj stratégie od nuly, ale skôr o mierne prispôsobenie už známej stratégie modernému trhu.

Príklad jednoduchého kombinovaného systému

Myšlienka je stále rovnaká - zápis na konci opravy, ale tento problém vyriešime iným spôsobom. Cieľ zostáva rovnaký – určiť moment dokončenia korekcie a vstúpiť v smere trendu, ale ak sme predtým používali kĺzavý priemer, teraz použijeme Fibo úrovne a oscilátor na určenie dokončenia rollbacku.

Bude nás zaujímať výrazný trendový pohyb dá sa určiť aj vizuálne. Potom naň stačí natiahnuť úrovne Fibo, je to potrebné na určenie potenciálnych úrovní na dokončenie korekcie. Najvýraznejšia úroveň korekcie je 38,2%, je povolené obchodovať pri odrazoch od 50% a 61,8%.

Ale fakt, že sa cena dotýka úrovne Fibo, nestačí. Stochastic si s touto úlohou celkom dobre poradí (na rovnaký účel môžete skúsiť použiť RSI). Napríklad pri nákupnej transakcii musí byť cena blízko korekčnej úrovne a Stochastic v tom čase musí byť v zóne prepredania.

Keď sa cena dotkne úrovne, počkáme, kým Stochastic opustí prepredanú zónu a nakúpi. Zarážka môže byť umiestnená za nasledujúcou úrovňou korekcie a TP môže byť umiestnený aspoň na nedávnej vysokej úrovni pred začiatkom stiahnutia.

Úrovne Fibo a oscilátor sú len minimum potrebné na príjem signálu. V prípade potreby môžete systém skomplikovať zavedením ďalších filtrov.

Stratégie založené na technickej analýze

Ak sa technická analýza použije v čistej forme, potom už nie je potrebné vyvíjať vozidlo od začiatku. Existuje množstvo techník a nástrojov, ktorých účinnosť je rokmi overená a obchodník si môže vybrať len tie vhodné a použiť ich pri stavbách.
V zásade na úspešné obchodovanie stačí:

  • trendové línie - staviame ich na rôznych časových rámcoch, počnúc najvyšším a postupne klesajúcim k pracovnému;
  • Fibo úrovne, mali by byť natiahnuté na významné cenové pohyby v histórii. Úrovne korekcie 38,2, 50 a 61,8 % budú mať kľúčový význam, prax ukazuje, že korekcia sa najčastejšie končí pri týchto známkach;
  • MT4 tiež implementuje množstvo ďalších nástrojov technickej analýzy, napríklad Andrews pitchforks, sadu nástrojov Gann, niekoľko typov kanálov atď.

Ale pre celkom presnú predpoveď stačia Fibo úrovne a trendové čiary oblasti koncentrácií úrovní a čiar zvyčajne fungujú ako podpora/odpor. Obchodovanie sa môže uskutočňovať ako pre únik, tak aj pre odraz z úrovní a línií.

Pokiaľ ide o ďalšie filtre, môžete pridať vzory sviečok a nejaký druh indikátora na vyhľadávanie divergencií (rovnaký Stochastic alebo MACD). Môžete si prečítať viac o použití technickej analýzy.

Filtre pre obchodné systémy

Akýkoľvek obchodný nástroj, aj keď nápad funguje a obchodovanie je vo všeobecnosti ziskové, generuje veľa signálov a niektoré z nich sú nerentabilné. Po vytvorení systémových pravidiel môžete použiť množstvo univerzálnych filtrov, ktoré pomôžu zlepšiť pomer ziskových/neziskových transakcií.

Existuje množstvo filtrov, ktoré vyhovujú takmer každej stratégii:

  • situáciu vo vyšších časových rámcoch. Ak sa napríklad stratégia vykonáva na H1 podľa mechanickej stratégie, potom by nebolo zlé pozrieť sa na to, čo sa deje na H4 a D1;
  • priemerný denný rozsah, čo znamená vzdialenosť, ktorú cena prejde v priemere za deň pri intradennom obchodovaní, pomôže to filtrovať množstvo signálov. Predstavme si, že počas dňa sa cena pohybuje v priemere 100-120 pips, ak v jeden z dní cena do večera už prekročila 90-100 pips jedným smerom a TS dáva signál na vstup na trh v rovnakým smerom, potom má zmysel ho ignorovať , štatistiky hovoria, že v tento deň pravdepodobne nebude pokračovať premávka;

Dôležité! Dodržiavanie tohto pravidla povedie k tomu, že niektoré ziskové obchody budú vynechané, ale pomer ziskových/stratových obchodov sa zvýši.

  • Počet sviečok po vytvorení signálu je tiež dôležitý; existuje dokonca filter 5 sviečok, ktorému sa budeme venovať podrobnejšie.

Keď TS vydá signál, v ideálnom prípade by sa situácia mala začať vyvíjať v náš prospech takmer okamžite po uzavretí transakcie (rozumej na ďalších 1-3 sviečkach). Ak sa tak nestane, čím viac času uplynulo od uzavretia transakcie, tým menší vplyv na trh budú mať tie faktory, na ktorých záležalo, keď obchodník vstúpil na trh. Ich vplyv sa časom vytráca.

Ako kritérium si môžete vziať 5 sviečok, ak sa po uzavretí obchodu cena pri 5 sviečkach neposunula ziskovým smerom, potom je lepšie uzavrieť obchod manuálne. To znamená scenár, v ktorom graf zostáva na svojom mieste, ale ak cena prešla na nerentabilnú stranu, tento filter sa nepoužije.

Táto podmienka platí takmer pre všetky časové rámce (s výnimkou m1-m5). Samozrejme, stále existuje možnosť, že cena, ktorá sa bude pohybovať okolo jednej značky, sa bude pohybovať správnym smerom, ale našou voľbou je stabilita. Je lepšie obetovať pár ziskových obchodov, ale vyhnúť sa 3-5 nerentabilným.

Zhrnutie

Začať pracovať bez obchodného systému je ako smrť, toto by si mal zapamätať každý obchodník. V tomto prípade je strata vkladu len otázkou času.

Výber vhodného vozidla nie je náročný, navyše dobre fungujúce systémy nájdete vo verejnej sfére. Postarať sa môžete aj o vytvorenie vlastnej stratégie, o to viac, že ​​táto nevyžaduje znalosť programovacích jazykov, stačí mať predstavu a aspoň základné znalosti o tom, ako trh funguje a aké ukazovatele sa na aké účely používajú.

Samotný proces pripomína zostavenie stavebnice – najskôr nastavíme problém a potom jednoducho vyberieme potrebné nástroje na jeho vyriešenie. Po skontrolovaní histórie môžete prejsť na test TS na demo alebo centovom účte.

V tomto článku sa pravdepodobne nedotknem niečoho neznámeho. Všetky výpočty sú jednoduché a zrozumiteľné pre každého, kto vie, čo je Ajax. Už som napísal článok o tom, ako skombinovať klienta so serverom v hrách v reálnom čase (). V tomto článku sa venujem rovnakým problémom, aké sa týkajú ťahových hier.

Takže čo je ťahová hra? Nasledujúcu definíciu možno nájsť na Wikipédii ťahová stratégia - je žáner počítačových hier, ktorých hlavnou črtou je, že hráči sa v pohybe striedajú, na rozdiel od stratégií v reálnom čase. Túto definíciu by som trochu zjednodušil:

  • Stratégia krok za krokom - je ťahová strategická hra.
  • Strategická hra - Ide o žáner hier, v ktorých je kľúčom k dosiahnutiu víťazstva plánovanie a strategické myslenie..
  • Ťahová hra - je žáner hier, ktorých hlavnou črtou je, že hráči sa v pohyboch striedajú.
Ťahové hry zahŕňajú:
  • Ťahové stratégie
  • Kartové hry
  • Stolné hry (šach, go, monopol atď.)
Všimol som si, že ťahové hry ukladajú menej obmedzení na zložitosť protokolu interakcie v porovnaní s hrami v reálnom čase. menovite reakčný čas na konkrétnu udalosť nehrá kľúčovú úlohu. Hráč má zvyčajne 10 sekúnd na rozhodnutie. Aj keď je ping obrovský, povedzme 3 sekundy, hráč má stále 7 sekúnd na premýšľanie. Okrem toho môže ping skákať a skákať, ale o to sa vôbec nestaráme (v hrách v reálnom čase táto situácia prakticky zabíja akýkoľvek protokol).

Zvyčajne (v 95 % ťahových hier) rozhoduje v danom čase práve jeden hráč. V dôsledku toho sa počet žiadostí, na ktoré musíme adekvátne reagovať, zužuje.

Preto sa pri tvorbe protokolu zameriame predovšetkým na jednoduchosť jeho implementácie a podpory. To nám umožní dosiahnuť väčší zisk za kratší čas.

Uvedená úvaha vychádza z 2-mesačného vývoja určitej kartovej hry.

Inteligentný alebo hlúpy klient?

Najprv sa rozhodnime, aký „inteligentný“ môže byť náš klient. Rozmýšľam, či sa oplatí duplikovať aplikačnú logiku (pravidlá hry) na klientovi. Server musí byť samozrejme inteligentný, aby zabránil potenciálnemu hacknutiu aplikácie. Oplatí sa však učiť klientovi obchodnú logiku?

To priamo závisí od toho, koľko váži celé množstvo údajov o stave vašej hry. Ak je toto množstvo údajov veľké, trvá dlho, kým sa zhromaždia na serveri a prenesú sa na klienta, potom má zmysel implementovať časť logiky na klienta, aby sa server odbremenil. Napríklad v Civilizácii je miera použitej pamäte vždy mimo tabuliek. Môžete vytvoriť niečo podobné a nechať na klientovi iba používateľské rozhranie?

Na druhej strane, čím šikovnejší klient, tým drahší bude vývoj hry. Dovoľte mi poznamenať, že čas vývoja servera v žiadnom prípade nezávisí od erudície klienta. Aj keď je klient super-duper-mega inteligentný, ak chce používateľ znova načítať okno prehliadača, server bude musieť zhromaždiť a zostaviť všetky údaje o hre, aby ich mohol preniesť klientovi. A la "Načítanie uloženej hry". Záver: Inteligentný klient môže zrýchliť aplikáciu, ale vždy si bude vyžadovať dodatočné zdroje na vývoj aplikácie.

Navrhujem nasledovné test:

1. Umožňuje hlasitosť kanála?

Odhadnite priemernú váhu celého množstva údajov o stave hry. Ďalej vynásobte priemerným počtom požiadaviek na server za sekundu. Ak výsledné číslo prekročí kapacitu odchádzajúceho dátového kanála, potom je hlúpy klient neprijateľný. Ak toto číslo presiahne 20% odchádzajúceho kanála, mali by ste premýšľať o tom, či to bude fungovať?

2. Je to náročné na prácu?

Odhadnite zložitosť algoritmu zberu herných údajov (v zlomkoch sekundy). Tu berte do úvahy všetky dotazy do databázy. Ďalej vynásobte priemerným počtom požiadaviek na server za sekundu. Ak čas presiahne jednu sekundu, potom je hlúpy klient neprijateľný. Ak toto číslo presiahne 200 ms, potom by ste sa mali zamyslieť, či to vydrží?

Pokračovanie:

tematický park:
Budeme potrebovať:
stavebný šprt
sprite menu
SPRITS RÔZNYCH TLAČIDIEL, AKO AKO :
nápis s nápisom (konštrukcia, stavba, stavať atď.)
okno, ktoré sa zobrazí
stavebný výkres,
1) zvyšok doplníme sami
2) slovo falzifikát - vytvorené mnou, pretože budeme ho musieť sfalšovať, aby sa zhodoval s naším zdrojom)
IIZačnime:
1) vytvorte všetko, čo je napísané v bode I, okrem 1)
Vytvorme globálnu premennú s názvom peniaze, nastavme ľubovoľnú počiatočnú sumu peňazí
Vytvoríme tiež objekt myš a klávesnica
Vytvorme text, nazvime ho info, vytvorte vždy udalosť a vytvorte v nej akciu:
vybrať info vo výbere akcie vybrať nastaviť text v texte napísať toto:
"peniaze: " &(globálne("peniaze".
2) pridajte menu, hlavnou úlohou menu nie je zasahovať, ale pomáhať hráčovi v navigácii (ako to môže prekážať? - je to jednoduché, ak ho umiestnite do stredu hry pred vytvorením menu); vytvorte novú vrstvu, ktorú nazveme menu, v jej pomeroch (nastavenia, možnosti) v položke zobrazenia napíšeme:


pridáme do nej sprite a odfotíme menu, ktoré bolo v predprodukčných materiáloch (bod I) a umiestnime naše menu na odľahlé miesto, kde nebude prekážať, ale bude viditeľné na obrazovke
Umiestnime aj gombík z predúpravových materiálov (bod I) s nápisom BUILD (alebo niečo také)
zaraďme to do jedálneho lístka
Teraz prejdite do Editora hárka udalostí
vytvorte udalosť (#bla bla bla# - toto je môj odkaz (vysvetlenie) pre vás, len namiesto bla bla bla bude pre vás môj komentár; >> - akcia; ll - rozdelenie okien napr.:

myš a klávesnica ll na objekt klikol ll klikol ľavým tlačidlom na objekt #tlačidlo vašej ponuky s nápisom BUILD (alebo niečo také)##zvyšok neskôr (pozri bod 3)#
3)teraz najťažšia časť(Rozdelil som to do dvoch bodov, aby to nebolo také zložité)
vytvorte sprite z predbežných dokončovacích materiálov „okno, ktoré sa objaví“
potom vytvoríme prázdny sprite s názvom p1, presunieme okno z obrazovky a umiestnime p1 na miesto, kde by sa malo zobraziť vaše okno, keď stlačíte tlačidlo zostaviť (alebo niečo podobné CHVER)
skvelé! Teraz prejdite do editora zoznamu udalostí
Nedokončenú udalosť si zapíšme až do konca:
Text ll set text ll bla-bla-bla)
myš a klávesnica ll na objekt klikol ll klikol ľavým tlačidlom myši na objekt #tlačidlo vašej ponuky označené BUILD (alebo niečo také)#>>
4)Druhá časť najťažšej časti:
vytvorme sprite, kde bude nakreslený obraz budovy (preddokončovacie materiály), nazvime to h1
vytvorme prázdneho sprite, nazvime ho p2, teraz ho umiestnime na miesto, kde sa má otvárať okno,
Vytvorme sprite, tiež okno (predbežné dokončovacie materiály), do okna krásne napíšeme názov budovy, jej cenu a popis (voliteľné) a nazveme ju i1
vytvorme ďalšieho prázdneho sprite s názvom p3, umiestnime ho vedľa p2 len tak, aby sa p2 dotýkal iba ľavým horným rohom
Teraz vytvoríme niekoľko udalostí, ale najprv urobíme z predchádzajúcej udalosti jednu novú akciu:
myš&klávesnica ll klikneš na objekt ll klikneš ľavým tlačidlom na objekt #tlačidlo vašej ponuky s nápisom BUILD (alebo niečo také)#>> systém ll vytvorí objekt vzhľadom na objekt ll #vaše okno# #číslo vrstvy pod názvom menu# # X ;Y-nezmeniť# na objekt p1
>>systém vytvorí objekt relatívne k objektu ll #vaše druhé okno# #číslo vrstvy pod názvom menu# #X;Y-nezmeniť# na objekt p2
Musíme mu tiež vrátiť udalosť:
skopírujte udalosť a invertujte ju
nové podujatie
myš&klávesnica ll je nad objektom ll h1>>systém ll vytvoriť objekt vzhľadom na objekt ll i1 #číslo vrstvy pod názvom menu# #X;Y-nezmeniť# na objekt p3
Urobme si škriatka s budovou (použite predprodukčné materiály) a nazvime to dom
Vytvorme si okno, v ktorom sa po výbere v menu objavia naše budovy, nazvime to rlo
diania:
myš&klávesnica ll na objekt kliknuté ll ľavé kliknutie na h1>>systém ll vytvorenie k objektu relatívne k objektu ll dom #číslo vrstvy pod názvom menu# #X;Y-nezmeniť# na objekt rlo
>> systém ll odpočítať od hodnoty ll #množstvo peňazí, ktoré by sa malo odobrať počas výstavby#
Teraz nebolo možné postaviť udalosť
Poviem vám moju bývalú metódu zákazu (keď skončím s písaním, preskúmam inú metódu, ktorá ma zmodrala, keď som si spomenul na svet herného zábavného parku)
diania:
dom ll pri kolízii s iným objektom ll do domu
>> dom zničí
>> systém ll odpočítať od hodnoty ll - #dvojnásobok množstva peňazí, ktoré bolo odobraté počas výstavby##poznámka, ktorú musíte zadať - množstvo#
v podstate všetko.
III čo chcem povedať:

Veľmi ma rozrušil krach mojej hry Bola to strategická hra a tento článok bol zostavený podľa jej schémy, prosím, nekritizujte, dlho som písal, ak nájdete rečové chyby a opraviť ich
a tu je aj zdrojový kód pre vaše potešenie z pozerania, pozri, v princípe je všetko tak, ako je tu napísané, len toto bola demo verzia hry, hlavné je nič nemeniť, inak to bude zabugované !
používajte to, experimentujte, kontrolujte, robte, čo chcete, pre mňa je to v poriadku

KaMiKaZa:
Všetky „systémové“ výrazy musia byť zahrnuté v značke „Code“.
Potom si myslím, že to bude lepšie.
Tiež sa mi zdá, že screenshoty by tu neuškodili. A tiež zdrojový kód, pre začiatočníkov.

tematický park:
Neviem ako urobiť screenshoty udalostí.

No to nie je nutné.

iamnp:
theme_park , na klávesnici je špeciálne tlačidlo - PrintScreen

tematický park:
Viem, že niektorí ľudia to robia inak. Navyše, každý má svojho šprta
a ak nastavím všetkých týchto šprtov, málokto to pochopí.
No, možno dá niekto plus? Niet divu, že som sa trápil?

burlachenko:
Aby takáto lekcia niekoho zaujímala, musí byť podľa toho naformátovaná, ale tu „v každom prípade to bolo“.
A predsa, ak chcete, po troške, keď budete mať čas, „skrášlite“ ho.

tematický park:
ok, pridem zo skoly a pripravim sa.
PS. pridaný zdroj

Serega Lebedev:

iamnp, kde budú tieto snímky obrazovky neskôr?

KaMiKaZa:

Do schránky.
Prejdite do ľubovoľného textového editora a vykonajte operáciu „Prilepiť“ alebo stlačte Ctrl + V.

Vašu spoločnosť považujem za jednu z najsilnejších na trhu poradenských služieb u nás. Páči sa mi, že sa dotýkate širokého spektra manažérskych problémov a pokrývate ich dostatočne kvalitne a do hĺbky. V publikáciách vašej spoločnosti nachádzam veľa užitočných informácií, pretože je vždy zaujímavé zoznámiť sa so skúsenosťami profesionálov a učiť sa od nich.

Borisyuk Jurij Aleksandrovič, konzultant pre manažment, doktor technických vied

Veľmi sa mi páči séria majstrovských kurzov, ktoré učíte. Osobne, keďže som bol predtým šéfom fabriky, som začal meniť svoje prístupy k manažmentu, vr. vďaka informáciám, ktoré sme od vás dostali. Nejako reagovala na to, čo som robil a pozoroval v továrni. Odvtedy som začal premýšľať o tom, aké neefektívne sú priemyselné kapacity Ruska a aký obrovský je potenciál a ako ho možno realizovať. Keď som sa osobne zoznámil s problémami rôznych podnikov (niekedy ma priatelia pozývajú ako odborníka), vidím, koľko sa dá urobiť, ako zvýšiť efektivitu a efektivitu.

Dryagin Oleg Borisovič

Áno, páčia sa mi tvoje majstrovské kurzy, veľmi systematický prístup, znalosť materiálu na vysokej úrovni a samozrejme veľa praktických skúseností v zvažovanej problematike. Čo ma priťahuje, je to Alexandrova profesionalita a vysoká odborná znalosť témy mi umožňuje pozerať sa na už známe veci inak. Z môjho pohľadu je to tak Je veľmi dôležité a potrebné pozerať sa na veci, ktoré poznáte, novým spôsobom, pretože... Počas chirurgického zákroku sa oko veľmi často „zahmlí“ a prestanete vidieť v skutočnosti zrejmé veci.

Elena Fedash, riaditeľka ľudských zdrojov, ATB Corporation, Dnepropetrovsk.

Pokračovanie v téme:
Zmiešaný

Pomerne často v poslednej dobe veľa ľudí namiesto výroby napríklad osciloskopu z počítača radšej jednoducho kúpi digitálny USB osciloskop. Po prechádzke však...