Limitazione di EA a 2 ordini aperti per coppia

 

Publi

Limitazione di EA a 2 ordini aperti per coppia

 

Publi

Risultati da 1 a 7 di 7

Discussione: Limitazione di EA a 2 ordini aperti per coppia

  1. #1
    Ciao,

    Il titolo descrive dove sto cercando: ho un EA in esecuzione su diverse coppie di valute con un singolo numero magico. Ad esempio, lo eseguo su 3 valute diverse e ho totale come definito OrdersTotal (ad esempio 6).
    Quindi, ottengo il massimo. 6 corsa aperta totale, caso peggiore: tutti e 6 appartengono alla stessa coppia.

    Situazione attuale:
    extern int orders = 6;
    int total = OrdersTotal ();
    if (totallt; ordini)
    .... la routine inizia e funziona bene.

    Ora voglio regolare per avere anche MaxTrades per coppia di valute (ad esempio 2). Quindi, avrò il totale (6) e il massimo. per coppia (2).
    Cosa devo aggiungere?
    (Ho posto la domanda simillare in un thread diverso in cui sono stato effettivamente supportato dal supporto ma non è stato risolto e qui cambio i requisiti - quindi il nuovo thread - nel caso qualcuno lo chieda).

    Grazie in anticipo.

  2. #2

    Citazione Originariamente Scritto da ;
    Sì, grazie, sembra ragionevole. Quando si ha il numero da OrderSymbol () disponibile sarà confrontato con \ MaxTrades \ (che è max. Ordini aperti per coppia) e contro \ total \ open orders, giusto? Non uso OrderMagicNumber () - Ho solo un numero Magic assegnato a ciascuna coppia (questo ha senso?). Solo la mia codifica è nella prima fase per principianti e devo gentilmente chiedere a qualcuno selui può scrivere questa sub-routine?
    Imparerai facendo. . . ma se lo vuoi codifio per te vai qui:
    http://www.mql5.com/en/job

  3. #3

    Citazione Originariamente Scritto da ;
    Salve, il titolo descrive dove sto cercando: ho un EA in esecuzione su diverse coppie di valute con un singolo numero magico. Ad esempio, lo eseguo su 3 valute diverse e ho \ total \ come definito OrdersTotal (ad esempio 6). Quindi, ottengo il massimo. 6 corsa aperta totale, \ caso peggiore \: tutti e 6 appartengono alla stessa coppia. Situazione attuale: extern int orders = 6; int total = OrdersTotal (); se (totallt; ordini) .... la routine inizia e funziona bene. Ora voglio regolare per avere anche MaxTrades per coppia di valute (ad esempio 2). Quindi, avrò il totale (6) e ...
    Passare in rassegna gli ordini aperti, contare gli ordini aperti che corrispondono al Simbolo () su cui EA sta girando controllando OrderSymbol () e OrderMagicNumber () se lo si utilizza. . . allora saprai quanti sono già aperti per l'EA, se è maggiore di 1 non aprire un altro Ordine.

  4. #4
    Sì, grazie RaptorUK, sembra ragionevole. Quando si ha il numero da OrderSymbol () disponibile sarà confrontato con MaxTrades (che è max. Ordini aperti per coppia) e contro gli ordini aperti totali, giusto? Non uso OrderMagicNumber () - Ho solo un numero Magic assegnato a ciascuna coppia (questo ha senso?). Solo la mia codifica è nella prima fase per principianti e devo gentilmente chiedere a qualcuno selui può scrivere questa sub-routine?

  5. #5

    Citazione Originariamente Scritto da ;
    {quote} Passa attraverso gli ordini aperti, conta gli ordini aperti che corrispondono al Simbolo () su cui EA sta girando controllando OrderSymbol () e OrderMagicNumber () se lo usi. . . allora saprai quanti sono già aperti per l'EA, se è maggiore di 1 non aprire un altro Ordine.
    Come faccio a scorrere gli ordini. Ti dispiacerebbe offrire un codice inserito. Perché sinceramente parlando ho cero di risolverlo fino alla fine

  6. #6
    qualcosa come int opened_orders = 0; Simbolo stringa = .......;/metti qui tour symbol per (int i = 0; ilt; OrdersTotal (); i ) {if (OrderSelect (i, SELECT_BY_POS, MODE_TRADES) OrderSymbol () == simbolo) {opened_orders ; }} if (opened_orders lt; MaxTradesPerPair) {//do case ...}

  7. #7
    sei riuscito a far uscire RaptorUK dal suo nido nel forum di codifica MQL (RaptorUK, ho imparato molto dalle tue risposte lì, saluto
    ) ma prima prova google, otterrai risposte più di quello che stai chiedendo, perché se lo fai, credo che non devi nemmeno fare una semplice domanda qui scusa per il mio inglese

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
Il sito di forexmad utilizza cookie
Il sito di forexmad utilizza cookie, alcuni dei quali già installati. Per avere maggiori informazioni sui nostri cookie ti preghiamo di cliccare qui. Ti preghiamo di cliccare sul bottone a destra per accettare i nostri cookie. Se continui a navigare sul sito di forexmad assumeremo che sei d'accordo ad utilizzarli.