Indikátor probléma 2014-09-23T18:49:04+00:00

Címkézve: 

6 bejegyzés megtekintése - 1-6 / 6
  • Szerző
    Bejegyzés
  • naburus
    Tag
    Bejegyzések száma: 19
    #3797 |

    Hello, ismét lenne egy problémám. Van egy indikátorom egy sor van benne. Ami ez: Alert(“OrdersTotal() = “,OrdersTotal()); Kiírja az összes aktív megbízást. Ha nyitok egy új chartot és rárakom és kézzel nyitok megbízásokat, semmi probléma nincs kiírja mennyi megbízás van összesen. Viszont ha olyat csinálok, hogy elmentem templatebe ezt az indikátort. Majd a saját robotom tesztelem ezzel a templattel amiben benne van ez az indikátor mindig 0 át ír ki, miért? A templatem tökéletesen megnyitja a robotom, meg le is fut az indikátor mert a naplóba irja hogy 0 megbizás van. Mi lehet a gond? (Ez azért kell mert az indikátorom átlagárat számol a megbízásokból, ezt OrdersTotal() nélkül nem lehet megcsinálni.)

    Radulovic Attila
    Tag
    Bejegyzések száma: 631

    Ez backteszt vagy valós idejű futtatás, amiről beszélsz?

    naburus
    Tag
    Bejegyzések száma: 19

    Valós idejű futtatás, felgyorsítva. Tehát sima Stratégia teszter.

    Radulovic Attila
    Tag
    Bejegyzések száma: 631

    Valós idejű futtatás: rárakod a chartra az expertet, és *valós időben* futtatod, mely során az aktuális piaci történésekre reagál a program kvázi éles környezetben (ez lehet demó és éles számla is, a lényeg az időbeliségen van).

    Stratégiai teszt éppen ezért nem lehet valós idejű, hiszen ott eleve múltbéli adaton futtatsz robotot.

    Az indikátorod azért nem ír ki jó értéket, mert az OrdersTotal() a valós idejű adatok között keresgél, és nem a backtesztben nyitott pozíciók között. Az indikátorral gyárilag nem lehet megetetni a tesztben történő pozíciók adatait, erre csak egyedi megoldás létezik, ami azonban nem lesz feltétlen univerzális. Pl. egy globális változóba kirakod az OrdersTotal() által visszaadott eredményt, amit az indikátorral meg kiolvasol.

    Ha nyitsz egy pozíciót a számlán, akkor meglátod hogy akárhova rakod az indikátorodat, mindig 1-et fog visszaadni (a backteszt vizuál chartjára helyezve is).

    naburus
    Tag
    Bejegyzések száma: 19

    Értem akkor a kérdésem az lenne, egy indikátor hogy tudja beolvasni egy globális változó adatait?

    Radulovic Attila
    Tag
    Bejegyzések száma: 631

    Bocs, ezzel a válasszal még adós maradtam.

    A globális változókat ugyanúgy tudod használni minden MQL4 alkalmazásból. Ide kattintva meg tudod nézni a dokumentációban a globális változók kezeléséhez kapcsolódó függvénylistát.

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

A hozzászóláshoz jelentkezz be!