[АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3. - страница 552

 
Vovo4ka:

ребят тут набросал счетчик..определеляет минимальное значение за n период...правлино или нет?

обычно перед использованием

if (min<A)

переменные инициализируют (присваивают им какое-то начальное значение)

 
Stells:


только так.

Сразу ставлю тэйкпрофит и стоплосс.

Можно конечно ордер открывать, потом модифицировать, но на А...ри всегда и так работало.

то есть вы точно знаете где нужно покопать, но упорно требуете от типа счета то, что не будет работать.... ну если это дело принципа, то можно продолжать настаивать на своем.

 
sergeev:

то есть вы точно знаете где нужно покопать, но упорно требуете от типа счета то, что не будет работать.... ну если это дело принципа, то можно продолжать настаивать на своем.


так дело в том, что стоят другие советники на этом же счете, и они работают.

ордера ставятся по рынку сразу с TP и SL.

 
 
if(OrderMagicNumber( )== 1000||OrderMagicNumber( )== 2000){
Извините за глупый вопрос, правильно ли написано е?
 
Stells:


так дело в том, что стоят другие советники на этом же счете, и они работают.

ордера ставятся по рынку сразу с TP и SL.


вы пытались проверить другие варианты параметров при открытии ордера?
 
sergeev:

вы пытались проверить другие варианты параметров при открытии ордера?
под словом параметры что подразумевается ?
 
Sepulca:

Возможно проблема в разделителях. Проверте в операторе int FileOpen( string filename, int mode, int delimiter=';') и в вашем файле.
нет. там все верно. проблема в считывании из файла, в том что там числа стоят маленькие. может по умолчанию в double стоит меньше кол-во знаков после запятой, вот он и видит 0.000 и ему кажется что это 0. как проверить сколько знаков после запятой?
 

ну например символ, лот, направление ордера, цена открытия, слип, цены стопов,комментарий ордера, магик, дата экспирации, цвет стрелки.

делать что-то надо, и менять параметры, чтоб догнать суть проблемы.

вывести в журнал ошибку, параметры при которых получается открыть или не получается открыть.

вы ж программист или прохожий?

 
orb:
нет. там все верно. проблема в считывании из файла, в том что там числа стоят маленькие. может по умолчанию в double стоит меньше кол-во знаков после запятой, вот он и видит 0.000 и ему кажется что это 0. как проверить сколько знаков после запятой?

Не может быть, уж четыре знака после запятой точно. А массив Histxmas[qq][0] объявлен как double?
 

Тут разбирались на счет экспорта mq4 в *.csv и *.xls. Так я и непонял. Понял, что сначала надо создать файл, потом открыть, дальше записать в него данные и если надо сохранить. Это в цсв файл, а их команды в https://docs.mql4.com/ru/files/FileWriteArray

Может кому нетрудно на реальном примере покозать экспорт массива zz_arr_Abs[] в оба файла. Массив надо писать в столбик. А может можно при помощи библетеки описаной в https://forum.mql4.com/ru/44307

//+------------------------------------------------------------------+
//|                                                           ZZ.mq4 |
//|                      Copyright © 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

//indikatoriaus zz kintamieji
extern int ExtDepth=12;
extern int ExtDeviation=5;
extern int ExtBackstep=3;

extern int Bars_count=240;                  //Is kiek baru skaiciuosime
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
   if( !NewBar() ) return(0);
   double zz_arr[10000],zz_arr_Abs[10000];
   double preZz=0;
   int i,ii;
   for(i=0;i<=Bars_count;i++)
   {
       double zz = iCustom(NULL,0,"ZigZag",ExtDepth,ExtDeviation,ExtBackstep,0,i); 
      if(zz!=0)
      {
         if(preZz==0)
         {
            preZz=zz
            ;continue;
         }
        zz_arr[ii]=zz-preZz;
        preZz=zz;
        ii++;
        Print(zz_arr[ii-1]/Point, "    ii = ", ii - 1);
        zz_arr_Abs[ii-1]=MathAbs(zz_arr[ii-1]);                              //Надо экспортировать
        Print("                      ",zz_arr_Abs[ii-1]/Point, "    ii = ", ii - 1);
     }
  }
  
  ArrayResize(zz_arr,ii);
  Print("-------------------------------------------------");
//----
   return(0);
  }
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| Iaia?o?aiea iiaiai aa?a
//+------------------------------------------------------------------+
bool NewBar() 
  {
//----
   static datetime NewTime;               // A?aiy oaeouaai aa?a
   bool NewBar=false;                     // Iiaiai aa?a iao
   if( NewTime!=Time[0] )
     {
      NewTime=Time[0];                    // Oaia?u a?aiy oaeia
      NewBar=true;                        // Iieiaeny iiaue aa?
     }
//----
   return(NewBar);
  }
//+------------------------------------------------------------------+
Причина обращения: