[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate. Non posso andare da nessuna parte senza di te. - pagina 460

 
Serg-s-n писал(а) >>
Buona sera a tutti! Chi sa come chiudere un ordine e selezionare il primo ordine e chiuderlo?

PER FAVORE AIUTATEMI!!!

Trova una posizione con un tempo di apertura minimo.

 
Serg-s-n писал(а) >>
Buona sera a tutti! Chi sa come selezionare il primo ordine e chiuderlo quando si chiude un ordine?

PER FAVORE AIUTATEMI!!!

Come detto correttamente, devi trovare l'ordine con il tempo di apertura più breve, ottenere il suo ticket, selezionare l'ordine con quel ticket e chiuderlo.

Ecco un esempio di come trovare l'ordine che ti serve:

  int ticket = -1;
  datetime MinDateTime = 0;

  for (int i=1; i<=OrdersTotal(); i++)         // Цикл по всем ордерам
  
    if (OrderSelect( i-1, SELECT_BY_POS)==true)  // Если есть следующий        
    {
      if ( ticket < 0 || OrderOpenTime() < MinDateTime ) // Его дата меньше, чем дата предыдущего найденного?
      {
        if ( OrderType() == OP_BUY )          // Это ордер на покупку?
        {
          ticket = OrderTicket();             // Запомнить его ticket.
          MinDateTime = OrderOpenTime();
        }
      }
    }     
  }                                           // Конец тела цикла

Una volta trovato il ticket dell'ordine che ti serve, devi selezionarlo con la funzione OrderSelect(ticket, SELECT_BY_TICKET), e chiudere OrderClose() con i parametri che ti servono.

 
Abbiamo un EA che apre posizioni con TP e SL. Come faccio a calcolare quante posizioni SL sono state perse in fila dall'ultimo ordine riuscito?
 

1. OrdiniStoriaTotale

2. Ordina gli ordini chiusi per tempo

3. determinare gli ultimi ordini in una fila OrderProfit<0

 
sergeev >>:

1. OrdersHistoryTotal

2. Сортируем закрытые ордера по времени

3. Определяем у последних подряд идущие OrderProfit<0


Grazie
 

Buon pomeriggio.

Per favore, risolvete il problema. Quando chiamo la funzione MarketInfo("EURUSD", MODE_STOPLEVEL) - livello minimo consentito di stop loss/stake profit in pip, mostra 10 pip.

numeri diversi sono mostrati nel terminale, per esempio sl=30, tp=10. Cosa devo fare, come posso separarli in una chiamata di funzione?

 
gvi2504 писал(а) >>

Buon pomeriggio.

Per favore, risolvete il problema. Quando chiamo la funzione MarketInfo("EURUSD", MODE_STOPLEVEL) - livello minimo consentito di stop loss/stake profit in pip, mostra 10 pip.

numeri diversi sono mostrati nel terminale, per esempio sl=30, tp=10. Come faccio a separarli in una chiamata di funzione?

Quando si imposta lo stop minimo per SL e TP, mostrerà valori diversi).

 
Techno >>:

Уровень минимальных стопов для SL и TP один и тот же, не может она тебе показывать разных значений, иначе дц втопку )

Lo pensavo anch'io, ma in MasterForex, SL e TP sono diversi. Qualche altro pensiero sull'argomento?

 
gvi2504 писал(а) >>

Lo pensavo anch'io, ma in MasterForex, SL e TP sono diversi. Qualche altro pensiero sull'argomento?

come fai a sapere che sono diversi?

 
Techno >>:

а как ты определил, что разные?

Quando cercavo un errore ogni azione era overAlagged, e si è scoperto che TP passa quando si modifica, ma SL non è troppo vicino.

Motivazione: