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

 
alexhammer:
Ma se non succede nulla nel primo tick a causa di alcune circostanze, perderà tutti gli altri. C'è un'opzione per fare i calcoli fino ad un certo punto e poi aspettare la prossima candela?
 

alexhammer:

Non credo che dzhini volesse esattamente quello che stai suggerendo. Tu proponi di lavorare sui prezzi di apertura, mentre lui vuole lavorare sui tick, ma non più di un trade in una barra.

 
dzhini:
Ma se non succede nulla nel primo tick a causa di alcune circostanze, perderà tutti gli altri. C'è un modo per fargli eseguire i calcoli fino ad un certo punto e poi aspettare la prossima candela?

Dovete usare la funzione KimIV per farlo, e vi suggerisco di pensare a come usarla e decidere da soli.

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru/                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.02.2008                                                     |
//|  Описание : Возвращает номер бара открытия последней позиции или -1.       |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   ("" или NULL - текущий символ)          |
//|    tf - таймфрейм                  (    0       - текущий таймфрейм)       |
//|    op - операция                   (   -1       - любая позиция)           |
//|    mn - MagicNumber                (   -1       - любой магик)             |
//+----------------------------------------------------------------------------+
int NumberOfBarOpenLastPos(string sy="0", int tf=0, int op=-1, int mn=-1) {
  datetime t;
  int      i, k=OrdersTotal();

  if (sy=="" || sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if (OrderSymbol()==sy) {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (op<0 || OrderType()==op) {
            if (mn<0 || OrderMagicNumber()==mn) {
              if (t<OrderOpenTime()) t=OrderOpenTime();
            }
          }
        }
      }
    }
  }
  return(iBarShift(sy, tf, t, True));
}
 
khorosh:

La funzione KimIV dovrebbe essere usata per questo, e vi suggerisco di pensare a come usarla.

uhhhhhhhhhhhhhhhh, lo capiremo ))) grazie
 
khorosh:

La funzione KimIV dovrebbe essere usata per questo, e vi suggerisco di pensare a come usarla.

Fico... funziona. GRAZIE!!!
 
alexhammer:

Manca la terza opzione (in tempo)
 
VINAR:

Manca la terza opzione (in tempo)
per favore, uno studio :)))
 

Cosa può causare questo problema?

Copio tutto il codice (copia-incolla) di un EA funzionante da un file a una nuova finestra EA (un altro file) e smette di funzionare? stessa situazione in modalità salva come

 

ciao a tutti

Sono nuovo della programmazione mts

Ho un buon Expert Advisor che fa 14 000 depositi

dopo di che comincia a perdere

Ho cambiato il parametro maximum drawdown a 14 000 e non perde 22 000

Grazie in anticipo

 
evgenii_7:

ciao a tutti

Sono nuovo della programmazione mts

Ho un buon Expert Advisor che fa 14 000 depositi

dopo di che comincia a perdere

Ho cambiato il parametro maximum drawdown a 14 000 e non perde 22 000

Grazie in anticipo


senza un'ottimizzazione tempestiva dei parametri d'ingresso tutto si riversa prima o poi... perché non c'è nulla di "eterno" se non i veri valori... :-))) il mercato cambia di volta in volta...