Hilfe zum Upgrade auf MetaTrader 5 ohne Verlust - Seite 6

 
Serj74 :
Ich danke Ihnen vielmals.
Der zweite ist fertig. Tut mir leid, dass es so lange gedauert hat, ich konnte eine Woche lang nicht an den Computer gehen.
Dateien:
macd-rsi.mq5  7 kb
 
vdv2001 :
Der zweite ist fertig. Tut mir leid, dass es so lange gedauert hat, ich konnte eine Woche lang nicht an meinen Computer gehen.
Dankeschön
 

Für vdv2001

Vielleicht bin ich zu spät dran, aber ich möchte Sie trotzdem bitten, diese drei Indikatoren in MKL 5 zu übersetzen, von denen zwei von Rosh stammen. Leider bin ich selbst ein kompletter Dummkopf, was das Programmieren angeht.

Dateien:
 
Darüber hinaus gibt es eine Gruppe von Indikatoren für die ASTTREND Handelssystem (vielleicht erinnern Sie sich, wenn es populär war), wenn Sie sich nicht weigern, kann ich Ihnen und ihnen zu übertragen, um MKL 5 (es gibt 6 Indikatoren, drei der wichtigsten, und der Rest Service-Charakter)
 
vdv2001:
Der zweite ist fertig. Tut mir leid, dass es so lange gedauert hat, ich konnte eine Woche lang nicht an meinen Computer gehen.
Ich hätte wahrscheinlich im Stil einer Antwort auf den entsprechenden Beitrag schreiben sollen. Wenn ja, beachten Sie bitte meine beiden vorherigen Beiträge. Vielen Dank im Voraus für Ihre Aufmerksamkeit
 

  iBarBegin = iBarShift(NULL, 0, dtTimeBegin);
  iBarEnd = iBarShift(NULL, 0, dtTimeEnd);
  dPriceHigh = High[Highest(NULL, 0, MODE_HIGH, iBarBegin-iBarEnd, iBarEnd)];
  dPriceLow = Low [Lowest (NULL, 0, MODE_LOW , iBarBegin-iBarEnd, iBarEnd)];

Wie kann ich diesen Code in MT5 schreiben?

Ich habe die iBarShift-Prozedur im Forum gefunden, aber der Copyleader schwört bei der TFMigrate-Funktion, dass es sie nicht gibt:

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(CopyTime(symbol,timeframe,time,time1,Arr)>0)
     {
      if(ArraySize(Arr)>2) return(ArraySize(Arr)-1);
      if(time<time1) return(1);
      else return(0);
     }
   else return(-1);
  } 

 
eminsk:

  iBarBegin = iBarShift(NULL, 0, dtTimeBegin);
  iBarEnd = iBarShift(NULL, 0, dtTimeEnd);
  dPriceHigh = High[Highest(NULL, 0, MODE_HIGH, iBarBegin-iBarEnd, iBarEnd)];
  dPriceLow = Low [Lowest (NULL, 0, MODE_LOW , iBarBegin-iBarEnd, iBarEnd)];

Wie kann ich diesen Code in MT5 schreiben?

Ich habe die iBarShift-Prozedur im Forum gefunden, aber der Copyleader schwört bei der TFMigrate-Funktion, dass es sie nicht gibt:

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(CopyTime(symbol,timeframe,time,time1,Arr)>0)
     {
      if(ArraySize(Arr)>2) return(ArraySize(Arr)-1);
      if(time<time1) return(1);
      else return(0);
     }
   else return(-1);
  } 

Siehe Übergang von MQL4 zu MQL5
 

Bitte schreiben Sie den MultiInstrument-Indikator oder einen ähnlichen Indikator neu, um ein Instrumentenchart über ein anderes zu legen.


 

Sehr dringend benötigte Indikatoren, ist es möglich, etwas Ähnliches in mt5 zu tun?

Dateien:
ind.rar  3 kb
 

Процедуру iBarShift я нашел на форуме, но копилятор ругается на функцию TFMigrate что она не существует:

ENUM_TIMEFRAMES TFMigrate(int tf){switch(tf) { case 0: return(PERIOD_CURRENT);   case 1: return(PERIOD_M1);      case 5: return(PERIOD_M5);   case 15: return(PERIOD_M15);
                                               case 30: return(PERIOD_M30);      case 60: return(PERIOD_H1);     case 240: return(PERIOD_H4); case 1440: return(PERIOD_D1);
                                               case 10080: return(PERIOD_W1);    case 43200: return(PERIOD_MN1); default: return(PERIOD_CURRENT);}}
Da haben Sie es.