[ARCHIVE!] Any rookie question, so as not to clutter up the forum. Professionals, don't pass by. Can't go anywhere without you - 4. - page 485

 

Good day or night! A question for the mt4 developers and everyone else as well.

What are the minimum system requirements for the MT client?

I want to run it on my old hardware: Athlon 800mg, 512mb, XP SP3. When I run MT 4 or 5, it shuts down after 2 seconds. The problem is clearly not in the windup or hardware, this hardware runs Visual Studio with debugger (I'm a programmer myself), and the exception doesn't arise in the system (since my debugger doesn't work). I guess the client itself doesn't like something and it closes as a result. So the question, what is the reason and what mt does not like, really CPU frequency ? ))

 
Dimka-novitsek:
Wait, excuse me, I'll put the slips all over the place!
Dimitri, keep your thoughts to yourself and post your questions here.
 
buxs:

Good day or night! A question for the mt4 developers and everyone else as well.

What are the minimum system requirements for the MT client?

I want to run it on my old hardware: Athlon 800mg, 512mb, XP SP3. When I run MT 4 or 5, it just crashes after 2 seconds. The problem is clearly not in the windup or hardware, this hardware runs Visual Studio with debugger (I'm a programmer myself), and the exception doesn't arise in the system (since my debugger doesn't work). I guess the client itself doesn't like something and it closes as a result. So the question, what is the reason and what mt does not like, really CPU frequency ? ))

MT4 doesn't like the debugger from build 226, MT5 from the beginning.
 
buxs:

Good day or night! A question for the mt4 developers and everyone else as well.

What are the minimum system requirements for the MT client?

I want to run it on my old hardware: Athlon 800mg, 512mb, XP SP3. When I run MT 4 or 5, it shuts down after 2 seconds. The problem is clearly not in the windup or hardware, this hardware runs Visual Studio with debugger (I'm a programmer myself), and the exception doesn't arise in the system (since my debugger doesn't work). I guess the client itself doesn't like something and it closes as a result. So the question, what is the reason and what mt does not like, really CPU frequency ? ))

Processors that meet the minimum requirements to run MetaTrader 4
 


Thanks for the link. Now it's clear that MT uses SSE3, but that gizmo doesn't have this instruction set, and now I understand those crashes without logs :)

It's a pity, I wanted to make this old boy work for autotrading too...

 

Hello.

I have a question about the iCustom function: I have an ordinary arrow indicator that contains two buffers - a down arrow and an up arrow. I made an Expert Advisor using this indicator and instead of opening orders I prescribed Alert "down arrow" and"up arrow" for testing, as a result both messages appear on every tick and this happens during the whole test period. The values in both buffers are shown with Alert and have the same value for both buffers on every tick - 214783647.

I dont know what is wrong and what conditions need to be applied in the Expert Advisor for my trades to open when the arrow is arriving and not on every tick.

P.S. I tried another indicator (draws the histogram in a separate window) here in some ticks gives the current price value mixed with the number214783647, ie they are one after the other in each tick, and then only214783647

Indicator code:

#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 LimeGreen
#property indicator_color2 Red

double CrossUp[];
double CrossDown[];
extern int FasterEMA = 5;
extern int SlowerEMA = 8;
extern bool SoundON=true;
double alertTag;
 double control=2147483647;
 
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle(0, DRAW_ARROW, EMPTY,1);
   SetIndexArrow(0, 233);
   SetIndexBuffer(0, CrossUp);
   SetIndexStyle(1, DRAW_ARROW, EMPTY,1);
   SetIndexArrow(1, 234);
   SetIndexBuffer(1, CrossDown);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//---- 

//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start() {
   int limit, i, counter;
   double fasterEMAnow, slowerEMAnow, fasterEMAprevious, slowerEMAprevious, fasterEMAafter, slowerEMAafter;
   double Range, AvgRange;
   int counted_bars=IndicatorCounted();
//---- check for possible errors
   if(counted_bars<0) return(-1);
//---- last counted bar will be recounted
   if(counted_bars>0) counted_bars--;

   limit=Bars-counted_bars;
   
   for(i = 0; i <= limit; i++) {
   
      counter=i;
      Range=0;
      AvgRange=0;
      for (counter=i ;counter<=i+9;counter++)
      {
         AvgRange=AvgRange+MathAbs(High[counter]-Low[counter]);
      }
      Range=AvgRange/10;
       
      fasterEMAnow = iMA(NULL, 0, FasterEMA, 0, MODE_EMA, PRICE_CLOSE, i);
      fasterEMAprevious = iMA(NULL, 0, FasterEMA, 0, MODE_EMA, PRICE_CLOSE, i+1);
      fasterEMAafter = iMA(NULL, 0, FasterEMA, 0, MODE_EMA, PRICE_CLOSE, i-1);

      slowerEMAnow = iMA(NULL, 0, SlowerEMA, 0, MODE_EMA, PRICE_CLOSE, i);
      slowerEMAprevious = iMA(NULL, 0, SlowerEMA, 0, MODE_EMA, PRICE_CLOSE, i+1);
      slowerEMAafter = iMA(NULL, 0, SlowerEMA, 0, MODE_EMA, PRICE_CLOSE, i-1);
      
      if ((fasterEMAnow > slowerEMAnow) && (fasterEMAprevious < slowerEMAprevious) && (fasterEMAafter > slowerEMAafter)) {
         CrossUp[i] = Low[i] - Range*0.5;
      }
      else if ((fasterEMAnow < slowerEMAnow) && (fasterEMAprevious > slowerEMAprevious) && (fasterEMAafter < slowerEMAafter)) {
          CrossDown[i] = High[i] + Range*0.5;
      }
        
  }
   return(0);
}
В советнике сделал следующее:
double ind1up0 = iCustom(NULL,0,"FXind-1",5,8,0,0);    //Стрелка вверх, на покупку на текущем баре
double ind1down0=iCustom(NULL,0,"FXind-1",5,8,1,0);    //Стрелка вниз, на продажу на текущем баре

if(ind1up0>0)Buy=true;
if(ind1down0>0)Sell=true;
 
if(ind1up0!=EMPTY)Buy=true;
if(ind1down0!=EMPTY)Sell=true;
 
midorum:
Thank you! It turned out to be easy.
 
midorum:

We should also add a check for EMPTY_VALUE
 
midorum:

Ah, no! Both buffers are filled with214783647 on every tick, whether there is an arrow or not.

Is this normal at all?