Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 33

 

Нашел ветку, потер тему:

Прошу прощения за отдельную тему, не нашел темы с вопросами "от чайников". Как задается в MQL4 факториал? Перерыл всю документацию- не могу найти. Заранее спасибо за ответ. Если функции факториала нет, поделитесь пожалуйста скриптом, если имеется- чтоб утащить кусок кода.

 
uzi:

Нашел ветку, потер тему:

Прошу прощения за отдельную тему, не нашел темы с вопросами "от чайников". Как задается в MQL4 факториал? Перерыл всю документацию- не могу найти. Заранее спасибо за ответ. Если функции факториала нет, поделитесь пожалуйста скриптом, если имеется- чтоб утащить кусок кода.


Можно через функцию

        int recurs(int n)
{
    int m=n;
    int result=1;
    if (n>1)result=recurs(n-1);
    result*=m;
    return result;
}
 
Roger:


Можно через функцию

 


СПАСИБО!
 

Нужна подсказка, плиииз,

как прописать условия: 1 -  если открылся новый бар

                                   2,3,4 - если закрылся ордер (покупка, продажа, любой)?

 
edhom:

Нужна подсказка, плиииз,

как прописать условия: 1 -  если открылся новый бар

                                   2,3,4 - если закрылся ордер (покупка, продажа, любой)?

Как-то так

#property copyright "Copyright 2013, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"


bool New_Bar=false;
static datetime New_Time;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   New_Time=Time[0];
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
  Fun_New_Bar();                               // Обращение к ф-ии
  
    if (New_Bar)                               // 1 -  если открылся новый бар
      {
      if(OrdersTotal()==0)                     //2,3,4 - Открытых ордеров нет
        {
        //Ваш код .....
        //.............
        }
      }
     
//----
   return(0);
  }
//+------------------------------------------------------------------+
void Fun_New_Bar()                              // Ф-ия обнаружения ..
  {                                             // .. нового бара
                                                // Время текущего бара
   New_Bar=false;                               // Нового бара нет
   if(New_Time!=Time[0])                        // Сравниваем время
     {
      New_Time=Time[0];                         // Теперь время такое
      New_Bar=true;                             // Поймался новый бар
     }
  }
 
При тестировании EMA возникает сложность, что при незначительных движениях она растет и падает, создавая ложные сигналы. Как для фильтрации ложных сигналов задать определенное количество пунктов, чтобы исключить незначительные колебания ЕМА?
 
r772ra:

Как-то так

 


СПАСИБО!
 
Forexman77:
При тестировании EMA возникает сложность, что при незначительных движениях она растет и падает, создавая ложные сигналы. Как для фильтрации ложных сигналов задать определенное количество пунктов, чтобы исключить незначительные колебания ЕМА?


Самой простой вариант, в EMA в качестве "применять к" использовать OPENPRICE, и постепенно сползая к CLOSEPRICE, пробовать использовать другие промежуточные немного сглаженные PRICE
 
Forexman77:
При тестировании EMA возникает сложность, что при незначительных движениях она растет и падает, создавая ложные сигналы. Как для фильтрации ложных сигналов задать определенное количество пунктов, чтобы исключить незначительные колебания ЕМА?


Самой простой вариант, в EMA в качестве "применять к" использовать OPENPRICE, и постепенно сползая к CLOSEPRICE, пробовать использовать другие промежуточные немного сглаженные PRICE
 
Forexman77:
При тестировании EMA возникает сложность, что при незначительных движениях она растет и падает, создавая ложные сигналы. Как для фильтрации ложных сигналов задать определенное количество пунктов, чтобы исключить незначительные колебания ЕМА?
Пользуйтесь LWMA!
Причина обращения: