Veszteség, külső input2014-05-26T08:08:28+00:00
4 bejegyzés megtekintése - 1-4 / 4
  • Szerző
    Bejegyzés
  • Cincer
    Tag
    Bejegyzések száma: 9

    Szia Radu

    Két kérdésben szeretném a segítségedet kérni. Többször belefutottam abba, hogy egy adott időintervallumon történő tesztelés során végig pozitívan kereskedik a robot de a legvégén mindent elveszít. Ha csak erre a veszteséges időtartamra futtatom le újra akkor megint pozitívan kereskedik. Több robotnál is belefutottam ebbe. Mitől van ez? Mennyire kell komolyan venni ezt a jelenséget?

    A másik kérdés, hogy szeretnék futás közben (kereskedés alatt) leállítani egy robotot billentyűvel. Ennek az lenne a célja, hogy az eseményre már nem köt új ügyletet csak szépen megvárja, hogy a többi lezárásra kerüljön a program szerint. Ezt hogyan lehet megoldani? Esetleg valami egyszerű programrészt be tudnál-e másolni vagy linkelni.

    Előre is köszönöm.
    Gábor

    Radulovic Attila
    Tag
    Bejegyzések száma: 646

    Szia Gábor!

    Az első kérdésed kapcsán:
    Milyen stratégiáról van szó? Ha pl. ellentrendben/trendben építkezős, akkor a problémád onnan ered, hogy nem mindegy az első kötés helye, ami alapján a többi kötés majd datálódik. A bővebb válaszhoz ismernem kéne a stratégiát – így látatlanban a pozícióhalmozódás, és az ezzel kapcsolatos elszállás/túlzott kitettség lehet az ok (sok más egyéb mellett).

    A második kérdésed kapcsán:
    A kérdésed vizuál tesztben, manuális megállításra vonatkozik? Mert ott a Pause/Break feliratú gomb használható a billentyűzeten.

    Amennyiben programkódon belül szeretnél ilyen megoldást eszközölni, ott én az úgynevezett “szemafor” módszert javaslom. Azaz kell hogy legyen egy szemaforod (jelződ), amely megakadályozza a robotot az új pozíciónyitásban (többpozíciós rendszer esetén építkezés indításában), azonban a meglévő pozíciót/pozíciókat lemenedzseli. Szemafornak használhatsz egy fájlt, vagy akár egy globális változót – én jellemzően az utóbbiakat veszem igénybe.

    Az így elhelyezett szemaforokat természetesen majd kézzel kell törölni, mert a robot nem mindig tudhatja, hogy az adott szemafor érvényben van-e még, vagy csak egy korábbi futtatás eredményeként maradt ott.

    A jelző elhelyezése történhet pl. az első pozíció megnyitásakor, vagy egy más esemény bekövetkeztekor – ez teljes mértékben rád van bízva.

    Programkódot azért nem írnék most első körben, mert egyelőre megvárom hogy kifejtsd hogy pontosan mire is gondolsz.

    Cincer
    Tag
    Bejegyzések száma: 9

    Szia,

    A tesztelésnél igazán nem tudok mondani stratégiát mert többnyire ingyenes robot tesztelésénél találkoztam ezzel. Esetleg egy tesztelési eredményt tudnám átküldeni vagy a tőkés grafikont.

    A program megállítását én elsőre úgy képzelném el, hogy van egy sima 0/1-es változó ami alap esetben mondjuk 0 ekkor kereskedhet (az egyéb feltételek mellett persze), és ha futás közben pl. ctr+q nyomok akkor átvált 1-re, ekkor már új pozíciót nem nyit de a meglévőket még szépen bezárja a stratégia szerint. Ennek az lenne az értelme, hogy amikor fut a program (élesben) és le akarom állítani pár napra vagy hétre nyaralás vagy bármi miatt, akkor a nyitott pozíciókat de jelenleg veszteségeseket ne egyből realizáljam.

    Radulovic Attila
    Tag
    Bejegyzések száma: 646

    Ellenőrizd le, hogy van-e elegendő pénz a tesztben (induló tőke).

    A 0/1-es változód kapcsán: a billentyűre reagálás megoldható, de rendkívül körülményes. Az egyszerűbb jobb alapján inkább egy külső változót javaslok, amely a meglévő kereskedések menedzselését engedi, míg az új pozíció nyitást tiltja. Pl.: TradeEnabled = true/false.

4 bejegyzés megtekintése - 1-4 / 4

A hozzászóláshoz jelentkezz be!

Adhatok Neked még több ingyenes tartalmat?

Értesítelek hetente megjelenő új tartalmaimról.

Hozzájárulok, hogy az adatvédelmi nyilatkozat szerint biztonságosan kezeld megadott adataimat, valamint hasznos anyagokat és egyedi ajánlatokat küldj nekem termékeiddel, szolgáltatásaiddal kapcsolatban e-mailben