MQL4 -> MQL5 2013-09-05T16:56:29+00:00

Címkézve: 

7 bejegyzés megtekintése - 1-7 / 7
  • Szerző
    Bejegyzés
  • bejglee
    Tag
    Bejegyzések száma: 16

    Sziasztok,

    Ki tudná átírni nekem az alábbi mql4-es eljárást mql5-re?

    void countTrades()
    {
    int total=0;
    int sumBuy=0;
    int sumSell=0;
    int sumBuyStop=0;
    int sumSellStop=0;
    int sumBuyLimit=0;
    int sumSellLimit=0;
    int count=OrdersTotal();
    
    for(int i=count-1;i>=0;i--)
    {
    if(!OrderSelect(i,SELECT_BY_POS,MODE_TRADES))continue;
    if(OrderSymbol()!=Symbol())continue;
    
    total++;
    if(OrderType()==OP_BUY)sumBuy++;
    else if(OrderType()==OP_SELL)sumSell++;
    else if(OrderType()==OP_BUYSTOP)sumBuyStop++;
    else if(OrderType()==OP_SELLSTOP)sumSellStop++;
    else if(OrderType()==OP_BUYLIMIT)sumBuyLimit++;
    else if(OrderType()==OP_SELLLIMIT)sumSellLimit++;
    }
    }

    Nem teljesen világos az mql5-ben a PositionsTotal() és az OrdersTotal() közötti különbség.

    Tudna segíteni valaki?

    Köszi!

     

     

    Radulovic Attila
    Tag
    Bejegyzések száma: 644

    Nem foglalkozom MQL5-tel, de alapszintű segítséget igyekszem adni.

    A PositionsTotal() a nyitott pozíciók (buy és sell) számát adja vissza. Vedd figyelembe, hogy instrumentumonként összesen egy darab nyitott pozíció lehet.

    Az OrdersTotal() az összes nyitott pozíció és függő pozíció összes darabszámát adja meg.

    bejglee
    Tag
    Bejegyzések száma: 16

    Köszi Radu a választ!

    Bár mindenütt azt olvasom, hogy az OrdersTotal() a függő megbízások számát adja vissza, a PositionsTotal() pedig a nyitottakét.
    Azt, hogy instrumentumonként meg csak egy nyitott pozi lehet, totál nem világos.

    PositionsTotal(): returns the number of open positions.
    OrdersTotal(): function retrieves the number of orders; of course, only the number of the pending orders.

    Még 1x köszi!

    Radulovic Attila
    Tag
    Bejegyzések száma: 644

    Jogos, igazad van. Köszi a javítást!

    a.menyus
    Tag
    Bejegyzések száma: 4

    Sziasztok!

    Nem rég kezdtem el MQL4-el foglalkozni.
    Végig nyálaztam a magyarul megjelent MQL4 könyvet és elkezdtem írogatni a kis stratégiáimat. Azonban azzal szembesültem, hogy a 3 alap függvény a init(), start(), deinit()
    helyett a platformomon OnInit, OnDeinit, OnTick van használatban. Az egy dolog, hogy az én irományaim elhasalnak, de a könyvben lévő példaprogramok is.
    Nem tudom, hogy nem az MQL5-nek van-e ehhez valami köze? Platformot kell cserélnem, vagy egyszerűen cseréljem ki init(), start(), deinit() függvényeket OnInit, OnDeinit, OnTick –re a programokon belül? Bocs, ha nagyon alap.
    Köszönöm.

    Radulovic Attila
    Tag
    Bejegyzések száma: 644

    Szia a.menyus!

    Jól látod, a könyv régen készült, és csak az online dokumentációban frissültek az általad említett dolgok is, a könyvben nem – főként nem a magyar változatban.

    A legfrissebb online MQL4 dokumentációt itt találod meg, azt is nézegesd, mert rengeteg változás történt a könyv óta.

    Az init() OnInit() lett, a deinit() OnDeinit, a start() pedig OnTick().

    a.menyus
    Tag
    Bejegyzések száma: 4

    Köszönöm, áttanulmányozom.

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

A hozzászóláshoz jelentkezz be!

Adhatok Neked még több ingyenes tartalmat?

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