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

 
TarasBY:

Так (применительно к MACD): 

 

Спасибо,всё получается,но только на один бар ПОЗЖЕ! Ещё что-нибудь можно сделать?

 
TarasBY:

Так (применительно к MACD): 

 

Ваш предыдущий вариант с ExtMapBuffer1[pos] для меня более логичен и,как мне кажется,универсален.Вы можите рассмотреть этот вариант?
 
MK07:

Спасибо,всё получается,но только на один бар ПОЗЖЕ! Ещё что-нибудь можно сделать?

Попробуйте так.

Файлы:
 

Vinin
:


Пересечения стохастика не нашел (я про код)

// Обращение к функции техн.индикат.
   
   M_1=iStochastic(NULL,0,Kperiod,Dperiod,Slowing,MODE_SMMA,Price_field,MODE_MAIN,  1);
   M_2=iStochastic(NULL,0,Kperiod,Dperiod,Slowing,MODE_SMMA,Price_field,MODE_MAIN,  2);
   S_1=iStochastic(NULL,0,Kperiod,Dperiod,Slowing,MODE_SMMA,Price_field,MODE_SIGNAL,1);
   S_2=iStochastic(NULL,0,Kperiod,Dperiod,Slowing,MODE_SMMA,Price_field,MODE_SIGNAL,2);

                        // Анализ ситуации
   
   if (M_2 < S_2 && M_1==S_1)                    // Условие откр. Buy и закр. Sell 
     {
      if (Total>0)
        {
        Close_Order_S(Ticket,Ans,Lts); 
        }
      
        Ticket = Open_Order_B(StopLoss,Lts); 
                                                                         
     } 
   if (M_2 > S_2 && M_1==S_1)                    // Условие откр. Sell и закр. Buy        
     {  
      if (Total>0)
        {
        Close_Order_B(Ticket,Ans,Lts);   
        }                           
      
        Ticket = Open_Order_S(StopLoss,Lts); 
 
granit77:

Попробуйте так.




Благодарю Вас,всё получилось.
 
Equilibrium:



А пересечение то где?

Прочитайте про сравнение действительных чисел 

 
TarasBY:

На подумать мозхсжучок не "заточен", ручечка до кнопочки "поиск" не дотянулась, да, и "фу-фу-фу" какой-то слабенький получился - не вспотел, бедненький?! Оловянные солдатики - это то, что надо - и денежка на морожко останется и мамка ругаться не будет. :)))

Мои искренняя жалость и глубочайшее сочувствие. 

мой вопрос был детектором на вшивость. В MetaQuotes Language 4 (MQL4) среди параметров предопределенных имен массивов таймсерий:

Time, Open, Close, High, Low, Volume нет ни Buy, ни Sell. Впрочем, как нет и имени трейдера. Закрытая это информация, для более равных, чем все остальные.

Вы детектор не прошли.

 
asd123321:
мой вопрос был детектором на вшивость. В MetaQuotes Language 4 (MQL4) среди параметров предопределенных имен массивов таймсерий:

Time, Open, Close, High, Low, Volume нет ни Buy, ни Sell. Впрочем, как нет и имени трейдера. Закрытая это информация, для более равных, чем все остальные.

Вы детектор не прошли.

Не касаясь вашей с оппонентом перебранки, хочу вас разочаровать. "Детектор" ваш неправильный, все это знает любой программист. Просто вопросы вы задаете в форме ребуса с использованием персональной терминологии. Поэтому, каков вопрос, таков и ответ.
 

Поискал в CodeBase, но так и не нашел ответ(

Если кто знает подскажите пожалуйста.

 if(Bid > Line_2 && Rsi < 30)     //Если цена больше максимальной(верхней) линии..
                                  //..и RSI меньше заданного условия..
      {
       Opn_B= true;               //..тогда получаем условие на открытие  Buy
      }

Когда выполняется первое условие Bid > Line_2, второе условие RSI<30 теряется, т.е. линия индикатора RSI уходит выше значения 30.

Как правильно связать два условия?

 

У меня получилось реализовать свою идею)

Уважаемые гуру форума, проанализируйте пожалуйста код, и напишите как можно реализовать код более правильно?  

Я конечно понимаю что получилась ахинея, но это работает) 

Заранее Вам благодарен.

bool Flag_Rsi_B= true;
bool Flag_Rsi_S= true; //Эти переменные я вынес за ф-цию старт

if(Flag_Rsi_B==true)
   { 
    if(Rsi < 30)     
      Flag_Rsi_B=false;
   }   
      if(Bid > Line_2 && Flag_Rsi_B==false)  //Условия для покупки
      {    
       Opn_B= true;  
       Flag_Rsi_B=true;
      }
      
      
      
       if (Flag_Rsi_S==true)
       {
        if(Rsi > 70)   
        Flag_Rsi_S=false; 
       }
      
       if(Flag_Rsi_S==false && Bid < Line_1) //Условие для продажи
          { 
           Opn_S= true;  
           Flag_Rsi_S= true;
          }           
Причина обращения: