Caratteristiche utili da KimIV - pagina 6

 
Lukyanov:
Potrebbe tornare utile. :-)
Non ti dispiace se lo metti in giro :-) :-)
 
Ciao
Puoi dirmi se c'è qualche "ufficio" che fornisce il proprio server per testare gli EA. Cioè, carico il mio EA sul loro server, dove viene testato in modalità "on line" su un conto demo.
 
KimIV:

Attenzione! Nel mio post del 12.03.2008 07:24 ho modificato l'allegato SetOrder.mq4

Ho provato il tuo codice, ma non ha funzionato (forse le mie mani sono sbagliate :( ... ). Quando si compila mostra un sacco di errori.
Messaggio' - la funzione non è definita - che cos'è?
'break' - 'pausa' o 'continua' usato solo all'interno di qualche ciclo - cosa c'è di sbagliato nei cicli?
'GetNameTF' - la funzione non è definita - come definirla?
...ecc. :(
Non riesco ancora a capirlo. Per favore, aiutami, se non sei nei guai.

 
sasa999 писал (а):
Messaggio' - la funzione non è definita - che cos'è?
//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 01.09.2005                                                     |
//|  Описание : Вывод сообщения в коммент и в журнал                           |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    m - текст сообщения                                                     |
//+----------------------------------------------------------------------------+
void Message(string m) {
  Comment(m);
  if (StringLen(m)>0) Print(m);
} 
sasa999 ha scritto:
'break' - 'break' o 'continue' usato solo all'interno di alcuni loop - cosa c'è di sbagliato nei loop?

Ignora la pausa per ora. Risolvete prima le descrizioni delle funzioni.

sasa999 ha scritto:
'GetNameTF' - la funzione non è definita - come definirla?
//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 01.09.2005                                                     |
//|  Описание : Возвращает наименование таймфрейма                             |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    TimeFrame - таймфрейм (количество секунд)      (0 - текущий ТФ)         |
//+----------------------------------------------------------------------------+
string GetNameTF(int TimeFrame=0) {
  if (TimeFrame==0) TimeFrame=Period();
  switch (TimeFrame) {
    case PERIOD_M1:  return("M1");
    case PERIOD_M5:  return("M5");
    case PERIOD_M15: return("M15");
    case PERIOD_M30: return("M30");
    case PERIOD_H1:  return("H1");
    case PERIOD_H4:  return("H4");
    case PERIOD_D1:  return("Daily");
    case PERIOD_W1:  return("Weekly");
    case PERIOD_MN1: return("Monthly");
    default:         return("UnknownPeriod");
  }
}

Cercate la funzione ExistOrders in questo thread. L'ho già pubblicato. ErrorDescription è inserito con la direttiva del compilatore:

#include <stdlib.mqh>

Ok, c'è ancora la funzione GetNameOP:

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 01.09.2005                                                     |
//|  Описание : Возвращает наименование торговой операции                      |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    op - идентификатор торговой операции                                    |
//+----------------------------------------------------------------------------+
string GetNameOP(int op) {
  switch (op) {
    case OP_BUY      : return("Buy");
    case OP_SELL     : return("Sell");
    case OP_BUYLIMIT : return("Buy Limit");
    case OP_SELLLIMIT: return("Sell Limit");
    case OP_BUYSTOP  : return("Buy Stop");
    case OP_SELLSTOP : return("Sell Stop");
    default          : return("Unknown Operation");
  }
}
 
KimIV:
sasa999 ha scritto (a):
'Message' - la funzione non è definita - cos'è?
sasa999 ha scritto (a):
'break' - 'break' o 'continue' usato solo all'interno di qualche ciclo - cosa c'è di sbagliato nei cicli?

Ignora la 'pausa ' per ora. Risolvete prima le descrizioni delle funzioni.

sasa999 ha scritto:
'GetNameTF' - la funzione non è definita - come definirla?

Cercate la funzione ExistOrders in questo thread. L'ho già pubblicato. ErrorDescription è inserito con la direttiva del compilatore:

#include <stdlib.mqh>

Ok, rimane ancora la funzione GetNameOP:


Sento che ho bisogno di mettere fuori le biblioteche (entrambe), e fare un po' di divulgazione. Le biblioteche non saranno rifiutate.
 
Grazie - molto utile, ma ci sono di nuovo altri problemi... :(
ora tutte queste funzioni mostrano - La funzione "хххххх" non è referenziata e sarà rimossa dal file exp
forse le ho messe nel posto sbagliato... :( Spero che tu possa aiutare.
..è difficile per un principiante in MQL4 :)
 
Vinin:
Sento che devo mettere le biblioteche (tutte e due) là fuori e fare un po' di lavoro esplicativo. Non rinuncerò alle biblioteche.

Probabilmente lo posterò... ma non prima di aver esaminato tutte le caratteristiche... altrimenti per cosa sono qui? Mettetelo su codebase, la gente lo scaricherebbe e se ne dimenticherebbe. Sono così anch'io :-) Ho un mucchio di codice di altre persone in giro intatto. E quando si ha l'opportunità di sondare, fare domande, è tutta un'altra cosa.

SZY. I miei file con prefisso test_ compilano e girano bene.

 
sasa999:
Grazie - molto utile, ma altri problemi ancora... :(
ora tutte queste funzioni mostrano - La funzione "xxxxxxxxxx" non è referenziata e sarà rimossa dal file exp
Forse li ho messi nel posto sbagliato... :( Spero che mi possiate aiutare.
...sto avendo difficoltà con MQL4 :)
Guarda come tutto è messo insieme in test_SetOrder.mq4
 



Se ho capito bene, sostituendo OrderSend con OrderModify

può essere usato quando si modifica un ordine?
così come quando si chiude... ??

...ma come possiamo combinare queste funzioni in una sola?

anche...

se (mn<0 || OrderMagicNumber()==mn)

Perché mn<0? Magic non può essere negativo?

 
sasa999 писал (а):
se ho capito bene, sostituendo OrderSend con OrderModify

può essere usato per modificare un ordine?
così come per la chiusura... ??

ma come combinare questo in una funzione in modo che non si ripeta?

Più avanti ci sarà una funzione per modificare

sasa999 ha scritto (a):
più...
se (mn<0 || OrderMagicNumber()==mn)
Perché mn<0? Magic non può essere negativo?
può... Ma nei miei EA, uso solo Magic positivo nel formato YYYYMMDD, ad esempio, 20080323. Questa è la data in cui l'EA è stato sviluppato.