Jump to content
Programmer

Общие вопросы по языку MQL

Recommended Posts

torgf

AntFX, поняла, опишу условие для первой стрелки на первом снимке.

если любая цена первого бара равна цене открытия седьмого бара и 3 бара подряд бычьи за ними  4 бара подряд медвежьи. (образование из 7 баров)

получилась перевёрнутая пирамидка) но, было бы выполнено условие если были бы 4 бара подряд медвежьи и  один бар бычий (первый) и его цена в любой точке равна цене открытия пятого бара.(образование из 5 баров)

Обобщу: минимум 2 бара подряд одного цвета, цена первого бара равна цене открытия самого дальнего из серии баров одного цвета.

 

Скриншот 04-12-2018 065940.jpg

Edited by torgf

Share this post


Link to post
Share on other sites
sviter

Добрый вечер! Подскажите как лучше реализовать следующую идею....

Брать последние фракталы и когда цена их пробивает, то открывать ордера...
 
Беру фракталы стандартными кодами от kimiva, а вот как правильно сравнивать не понятно, то ли сравнивать по цене, то ли по барам???

Share this post


Link to post
Share on other sites
Ugar68
14.12.2018 в 02:56, sviter сказал:

Добрый вечер! Подскажите как лучше реализовать следующую идею....

Брать последние фракталы и когда цена их пробивает, то открывать ордера...
 
Беру фракталы стандартными кодами от kimiva, а вот как правильно сравнивать не понятно, то ли сравнивать по цене, то ли по барам???

В вопросе же ответ, "когда цена их пробивает", значит по цене.

А что за стандартные коды от kimiva? Что то я не слышал о таких стандартах.


Пишу советники и индикаторы по вашим алгоритмам. Пишите на ugar68@bk.ru.
Чужие программы не переделываю.
Успешные трейдеры, вам сюда www.podari-zhizn.ru, или сюда predanie.ru

 

 

Share this post


Link to post
Share on other sites
sviter

Граждане помогите!
Хочу сделать пробитие фрактала ценой на той же свече (как на картинке)!
14784326_.png.29c342b70ad2c8bba63af0ce96ce65fc.png

но не получается!!!
Я получаю цены фракталов так, и сравниваю их, но мне надо конкретное пробитие ценой на той же свече!!
Не подскажите как?
 

   if(findFractal(1, MODE_UPPER, Period()) < findFractal(0, MODE_UPPER, Period()))
     {
      int ticket=OrderSend(NULL,OP_BUY,Lots,Ask,30,0,Bid+Tprof*_Point,NULL,Magik,0,clrBlue);
     }

   if(findFractal(1, MODE_LOWER, Period()) > findFractal(0, MODE_LOWER, Period()))
     {
      int ticket=OrderSend(NULL,OP_SELL,Lots,Bid,30,0,Ask-Tprof*_Point,NULL,Magik,0,clrRed);
     }

double findFractal(int nbr, int mode, int timeframe)
{
   int i=3, n;
   for(n=0;n<=nbr;n++)
   {
      while(iFractals(Symbol(),timeframe,mode,i) == 0)
         i++;
      if(n<nbr)
         i++;
   }
   return(iFractals(Symbol(),timeframe,mode,i));
}

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×