Так подойдет?
double ma_1=iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,i); double ma_2=iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,i+1); ExtUpBuffer[i]=EMPTY_VALUE; ExtDnBuffer[i]=EMPTY_VALUE; if(ma_1>ma_2) ExtUpBuffer[i] = ma_1; else ExtDnBuffer[i] = ma_1;
Oksana Berenko:
Так разрыв получается, спасибо мне уже помогли.
Так подойдет?
int limit;
limit=rates_total-prev_calculated-1;
for(int i=limit; i>=0; i--)
{
double ma = iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,i);
double ma_1 = iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,i+1);
ExtUpBuffer[i]=ma;
ExtDnBuffer[i]=ma;
if (NormalizeDouble(ma_1,Digits) - NormalizeDouble(ma,Digits) < 0)
{
ExtDnBuffer[i+1] = EMPTY_VALUE;
ExtUpBuffer[i+1] = ma_1;
}
}
limit=rates_total-prev_calculated-1;
for(int i=limit; i>=0; i--)
{
double ma = iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,i);
double ma_1 = iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,i+1);
ExtUpBuffer[i]=ma;
ExtDnBuffer[i]=ma;
if (NormalizeDouble(ma_1,Digits) - NormalizeDouble(ma,Digits) < 0)
{
ExtDnBuffer[i+1] = EMPTY_VALUE;
ExtUpBuffer[i+1] = ma_1;
}
}
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Не люблю писать индикаторы с расчетами большими мало опыта, но тут подвернулась идейка ноне ззнаю как решить, посмотрел несколько исходников в кода базе но тож так и не понял
Вобщем задача мувинг растет окрашивается в синий падает в краснный , теоритически у меня все получилось, не могу понять как побороть разыв в линиях...