Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 2086

 

здравствуйте! обьясните новичку, как работать с диапазонами подокон графика, rsi  - в диапазоне от 0 до 100, а Forse  среднее значение имеет ноль, как сделать так чтоб оба индикатора коректно отоброжались в диапазоне 0-100


#property indicator_separate_window 

#property indicator_buffers    2
#property indicator_color1     clrWhite
#property indicator_color2     clrRed

extern int     BarsForAnalyze  = 100;
extern int     RSI_Period      = 14;
extern int     Forse_Period    = 14;
double         RSIBuffer       [];
double         ForseBuffer     [];
    



//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
      SetIndexBuffer(0,RSIBuffer);
      SetIndexBuffer(1,ForseBuffer);
    
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
      
      
      int limit = rates_total-prev_calculated;
      limit = MathMin(limit,BarsForAnalyze);
      for(int i=limit; i>=0; i--) {
      
      
      double RSI = iRSI(NULL,0,RSI_Period,PRICE_CLOSE,i);
      double Forse = iForce(NULL,0,Forse_Period,MODE_SMA,PRICE_CLOSE,0);
      
      
      
      
         RSIBuffer   [i] = RSI;
         ForseBuffer [i] = Forse;
     
         
         
         

      }
      
   return(rates_total);
  }
Файлы:
12.jpg  201 kb
 
Artyom Trishkin #:

Из похожего есть Sell Stop Limit.

https://www.mql5.com/ru/docs/constants/tradingconstants/orderproperties#enum_order_type

Спасибо за подсказку. Буду признателен если уточните такой момент. В mql4 программа не даст выставить отложенный ордер, если разница между текущей ценой и ценой открытия отложенного ордера менее 10 п. А что в  mql5 такого ограничения нет? Например , если текущая цена 1.3000 то программа позволит выставить отложенный ордер по цена  1.3001  ????
То есть, через 1 п. от текущей цены? Или таких ограничений нет только при выставлении отложенных ордеров  BUY_STOP_LIMIT и  SELL_STOP_LIMIT?
Еше раз спасибо за помощь.

 
kvvvarvara22 #:

здравствуйте! обьясните новичку, как работать с диапазонами подокон графика, rsi  - в диапазоне от 0 до 100, а Forse  среднее значение имеет ноль, как сделать так чтоб оба индикатора коректно отоброжались в диапазоне 0-100


 RSIBuffer[i] = RSI-50; 
 
Tretyakov Rostyslav #:

спасибо, но это не решает проблему. при добавлении настроек индикатор ползет по середине канала. 

#property indicator_minimum 0

#property indicator_maximum 100

 
Tretyakov Rostyslav #:
а в некоторых случиях выходит из диапазона окна, при настройке индикатора периодом 5
 
Tretyakov Rostyslav #:
как запредить ему выходить за рамки окна
 
kvvvarvara22 #:

спасибо, но это не решает проблему. при добавлении настроек индикатор ползет по середине канала. 

#property indicator_minimum 0

#property indicator_maximum 100

Forse  при таких условиях не будет корректно отображаться.

Чтобы совместить Forse и RSI , надо привязать RSI к Forse , т.е.

RSIBuffer[i] = RSI-50; 

в этом случает оба индикатора корректно отображаются относительно "0"-уровня.

kvvvarvara22 #:
как запредить ему выходить за рамки окна
Никак.
 

1. Почему при смене ТФ не прорисовываются (или не обновляют свои значения на графике) графические объекты?


2. Как сделать так, чтобы графический объект выравнивался над свечкой также ровно при смене масштаба (или переключения ТФ), как это делает какой-нибудь индикатор Фрактал. При смене масштаба графический объект либо наседает на график, либо улетает в небо

 
Ivan Butko #:

1. Почему при смене ТФ не прорисовываются (или не обновляют свои значения на графике) графические объекты?


2. Как сделать так, чтобы графический объект выравнивался над свечкой также ровно при смене масштаба (или переключения ТФ), как это делает какой-нибудь индикатор Фрактал. При смене масштаба графический объект либо наседает на график, либо улетает в небо

Сделай расстояние в пикселях
 
Tretyakov Rostyslav #:
Сделай расстояние в пикселях

Амм... секундочку

Причина обращения: