Kötés szimbólum ellenőrzéssel2012-03-27T20:37:42+00:00

Radu.hu Fórum Kérdések az MQL4 programozási nyelvvel kapcsolatban Kötés szimbólum ellenőrzéssel

Címkézve: 

4 bejegyzés megtekintése - 1-4 / 4
  • Szerző
    Bejegyzés
  • akos
    Tag
    Bejegyzések száma: 2

    Szia,

    Egy olyan megoldáson gondolkodom, mely segítségével több devizapáron futtatott robot esetén nem enged kötni, abban az esetben, ha egy másik devizapárban már szerepel az adott szimbólum, akár a jobb, akár a bal oldala.
    Pl. kötök “USDJPY”-t, akkor már nem köthető “USDXXX”, “XXXUSD”, “JPYXXX”, “”XXXJPY”.
    Kérdésem: hogy van-e tanácsod arra vonatkozóan, hogy merre érdemes elindulni? String műveletekkel, vagy tömb használatával, esetleg globális változók használatával lenne célszerűbb megoldani?

    Radulovic Attila
    Tag
    Bejegyzések száma: 646

    Én azt gondolom, hogy mindenképpen a szimbólumok string ellenőrzésével esnék neki a dolognak. Azon egyszerű oknál fogva, hogy gyakorlatilag mindig rendelkezésre állnak az adatok, nem kell globális változókkal vagy más adatmentéssel bajlódni.

    A következőket javaslom:

    1) olvasd be a számodra fontos pozíciókat (for az OrdersTotal() alapján, magic szám ellenőrzés ha kell, stb.)
    2) ha nincs egy pozíció sem, nyilván nyithatsz bármi.
    3) ha van pozíció, akkor minden iterációban vizsgáld meg, hogy az adott order OrderSymbol() -ján belül van-e olyan szövegrész, ami az új (nyitandó) pozíciód instrumentumában van. Tehát ha pl. EURUSD -ot akarsz kötni, akkor vizsgáld meg hogy van-e valamilyen EUR vagy USD végződésű/kezdetű szimbólumú pozíció.

    A konfigurálásnál annyit mindenképpen meg kell adni, hogy az első három és az utolsó három, vagy más karakterek együttállása azonosítja a keresztárfolyamok egy-egy oldalát. Vannak ugyanis olyan brókerek, ahol pl. raknak egy pontot az instrumentumok végére, vagy más postfixet. Van ahol prefix van, így ez teljesen változó lehet. Példa:

    EURUSD, USDJPY, stb. – 0-2. karakter, illetve 3-5. karakter
    microEURUSD, microUSDJPY – 5-7. karakter, illetve 8-10. karakter

    És így tovább.

    Összességében csak a fentieket kell leellenőrizned minden nyitás előtt.

    akos
    Tag
    Bejegyzések száma: 2

    Szia Radu,

    Köszönöm a választ. Nagyon fontos részletekre hívtad fel a figyelmemet, ezek alapján már el tudok indulni.

    Radulovic Attila
    Tag
    Bejegyzések száma: 646

    Örülök, hogy segítettem!

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