Discussione sull’articolo "Migrazione da MQL4 a MQL5" - pagina 9

 
Sergey Pavlov:

È stato creato contemporaneamente all'articolo. Ma non ha senso senza le funzioni di trading!

Ho creato (pubblicato su kodobase)delle funzioni di trading MQL4 che funzionano contemporaneamente alle funzioni di trading MQL5.

Pertanto, l'emulatore può ancora avere senso.

 
fxsaber:

Ho realizzato (caricato su kodobase)delle funzioni di trading MQL4 che funzionano contemporaneamente alle funzioni di trading MQL5.

Pertanto, potrebbe esserci ancora un senso nell'emulatore.

https://www.mql5.com/it/code/16006
MT4Orders
MT4Orders
  • 2016.08.05
  • fxsaber
  • www.mql5.com
Параллельное использование ордерных систем MetaTrader 4 и MetaTrader 5.
 

Per saperne di più.

MQL's OOP notes: Converting MetaTrader 4 indicators to MetaTrader 5
MQL's OOP notes: Converting MetaTrader 4 indicators to MetaTrader 5
  • 2016.09.28
  • //www.mql5.com/en/users/marketeer">
  • www.mql5.com
It has been a long time since MetaTrader 5 was released, but MQL products for MetaTrader 4 do still prevail on mql5.com site (both in the codebase, and in the market), and in the Internet in general....
 
buh400:
Mi sono reso conto che la questione è già stata sollevata e devo leggere un altro articolo:) I miei messaggi possono essere cancellati

Per favore, dimmi cosa hai capito, quale articolo leggere e come risolvere l'errore di cui sopra.

Qui ho capito che è per l'aggiunta di un indicatore da parte dell'utente - così ho commentato fuori...
 
MT4Orders
MT4Orders
  • voti: 27
  • 2016.10.10
  • fxsaber
  • www.mql5.com
Parallel use of the MetaTrader 4 and MetaTrader 5 order systems.
 

Presumo che tutto

MQLInfoInteger(MQL5_....


dovrebbe essere cambiato in

MQLInfoInteger(MQL_
 

correggere

bool IsTesting()
bool MQLInfoInteger(MQL5_TESTING)
IsTesting
Restituisce TRUE se un Expert Advisor è in esecuzione in modalità di test, altrimenti restituisce FALSE.
MQLInfoInteger

bool IsTesting()
  MQLInfoInteger(MQL_TESTER)
IsTesting
Restituisce TRUE se un Expert Advisor è in esecuzione in modalità di test, altrimenti restituisce FALSE.
MQLInfoInteger

MQL5_TESTING dont work please change it to  MQL_TESTER.
IsTesting - Checkup - MQL4 Reference
IsTesting - Checkup - MQL4 Reference
  • docs.mql4.com
IsTesting - Checkup - MQL4 Reference
 
Enum MAIN_SIGNAL_MODE { MODE_MAIN , MODE_SIGNAL}; 

enum ADX_MODE        { MODE_MAIN,         MODE_PLUSDI, MODE_MINUSDI };

2 stessa definizione creare errore risolvere questo errore per favore.
 

iBarShift non funziona.

La mia esecuzione - non è del tutto sicura, ma funziona correttamente e sembra avere senso

int iBarShift(string symbol,int tf,datetime time,bool exact=false)
  {
   if(time<0) return(-1);
   ENUM_TIMEFRAMES timeframe=TFMigrate(tf);
   datetime Arr[],time1;
   CopyTime(symbol,timeframe,0,1,Arr);
   time1=Arr[0];
   if(time1<time){
      return(0); /// Se l'ora indicata è inferiore all'ora di apertura della barra
   }
   if(CopyTime(symbol,timeframe,time,time1,Arr)>0)
     {
      return(ArraySize(Arr));
     }
   else return(-1);
  }
 

Non riesco a capire come utilizzare la funzione

bool ObjectSetMQL4(string name,
                   int index,
                   double value)
  {
   switch(index)
     {
      case OBJPROP_TIME1:
         ObjectSetInteger(0,name,OBJPROP_TIME,(int)value);return(true);
      case OBJPROP_PRICE1:
         ObjectSetDouble(0,name,OBJPROP_PRICE,value);return(true);
      case OBJPROP_TIME2:
         ObjectSetInteger(0,name,OBJPROP_TIME,1,(int)value);return(true);
      case OBJPROP_PRICE2:
         ObjectSetDouble(0,name,OBJPROP_PRICE,1,value);return(true);
      case OBJPROP_TIME3:
         ObjectSetInteger(0,name,OBJPROP_TIME,2,(int)value);return(true);
      case OBJPROP_PRICE3:
         ObjectSetDouble(0,name,OBJPROP_PRICE,2,value);return(true);
      case OBJPROP_COLOR:
         ObjectSetInteger(0,name,OBJPROP_COLOR,(int)value);return(true);
      case OBJPROP_STYLE:
         ObjectSetInteger(0,name,OBJPROP_STYLE,(int)value);return(true);
      case OBJPROP_WIDTH:
         ObjectSetInteger(0,name,OBJPROP_WIDTH,(int)value);return(true);
      case OBJPROP_BACK:
         ObjectSetInteger(0,name,OBJPROP_BACK,(int)value);return(true);
      case OBJPROP_RAY:
         ObjectSetInteger(0,name,OBJPROP_RAY_RIGHT,(int)value);return(true);
      case OBJPROP_ELLIPSE:
         ObjectSetInteger(0,name,OBJPROP_ELLIPSE,(int)value);return(true);
      case OBJPROP_SCALE:
         ObjectSetDouble(0,name,OBJPROP_SCALE,value);return(true);
      case OBJPROP_ANGLE:
         ObjectSetDouble(0,name,OBJPROP_ANGLE,value);return(true);
      case OBJPROP_ARROWCODE:
         ObjectSetInteger(0,name,OBJPROP_ARROWCODE,(int)value);return(true);
      case OBJPROP_TIMEFRAMES:
         ObjectSetInteger(0,name,OBJPROP_TIMEFRAMES,(int)value);return(true);
      case OBJPROP_DEVIATION:
         ObjectSetDouble(0,name,OBJPROP_DEVIATION,value);return(true);
      case OBJPROP_FONTSIZE:
         ObjectSetInteger(0,name,OBJPROP_FONTSIZE,(int)value);return(true);
      case OBJPROP_CORNER:
         ObjectSetInteger(0,name,OBJPROP_CORNER,(int)value);return(true);
      case OBJPROP_XDISTANCE:
         ObjectSetInteger(0,name,OBJPROP_XDISTANCE,(int)value);return(true);
      case OBJPROP_YDISTANCE:
         ObjectSetInteger(0,name,OBJPROP_YDISTANCE,(int)value);return(true);
      case OBJPROP_FIBOLEVELS:
         ObjectSetInteger(0,name,OBJPROP_LEVELS,(int)value);return(true);
      case OBJPROP_LEVELCOLOR:
         ObjectSetInteger(0,name,OBJPROP_LEVELCOLOR,(int)value);return(true);
      case OBJPROP_LEVELSTYLE:
         ObjectSetInteger(0,name,OBJPROP_LEVELSTYLE,(int)value);return(true);
      case OBJPROP_LEVELWIDTH:
         ObjectSetInteger(0,name,OBJPROP_LEVELWIDTH,(int)value);return(true);

      default: return(false);
     }
   return(false);
  }

Il compilatore avverte

'OBJPROP_TIME1' - identificatore non dichiarato TZ_Sky_and_Ground_V_04.mq5 2891 12
'OBJPROP_TIME1' - espressione costante richiesta TZ_Sky_and_Ground_V_04.mq5 2891 12
'OBJPROP_PRICE1' - identificatore non dichiarato TZ_Sky_and_Ground_V_04.mq5 2893 12
'OBJPROP_PRICE1' - espressione costante richiesta TZ_Sky_and_Ground_V_04.mq5 2893 12
'OBJPROP_TIME2' - identificatore non dichiarato TZ_Sky_and_Ground_V_04.mq5 2895 12
'OBJPROP_TIME2' - espressione costante richiesta TZ_Sky_and_Ground_V_04.mq5 2895 12
'OBJPROP_PRICE2' - identificatore non dichiarato TZ_Sky_and_Ground_V_04.mq5 2897 12
'OBJPROP_PRICE2' - espressione costante richiesta TZ_Sky_and_Ground_V_04.mq5 2897 12
'OBJPROP_TIME3' - identificatore non dichiarato TZ_Sky_and_Ground_V_04.mq5 2899 12
'OBJPROP_TIME3' - espressione costante richiesta TZ_Sky_and_Ground_V_04.mq5 2899 12
'OBJPROP_PRICE3' - identificatore non dichiarato TZ_Sky_and_Ground_V_04.mq5 2901 12
'OBJPROP_PRICE3' - espressione costante richiesta TZ_Sky_and_Ground_V_04.mq5 2901 12