как удалить последний бар из анализа индикатора

 

подскажите как удалить последний бар из анализа индикатора

что нужно удалить из кода или что дописать (как для МТ4 так и для МТ5)

 
tt455:

подскажите как удалить последний бар из анализа индикатора?

что нужно удалить из кода или что дописать (как для МТ4 так и для МТ5)

А подробнее? Какой анализ? Что Вы пытаетесь проделать и что хотите получить? Можете даже вставить картинку.
 

анализ баров (свечей). авторский подход к видению анализа (к сожалению не всеми разделяется). 

если есть желание помочь в правке кода то напишите на внутренную почту. я предоставлю код.

 
tt455:

анализ баров (свечей). авторский подход к видению анализа (к сожалению не всеми разделяется). 

если есть желание помочь в правке кода то напишите на внутренную почту. я предоставлю код.

Так как Вы не ответили, как именно Вы проводите анализ, тогда предложу такой вариант: закройте на экране полоской бумаги лишний бар.
 

Мне просто надо знать как в коде удалить последний бар из анализа проводимого индикатором при построении индикаторной линии. 

Я сам удалю если что. 

 

Достаточно изменить границу цикла с for(i = limit; i >= 0; i --) на for(i = limit; i > 0; i --)

 
AlexeyVik:

Достаточно изменить границу цикла с for(i = limit; i >= 0; i --) на for(i = limit; i > 0; i --)

Только нужно учесть, что в MQ4 и в MQL5 таймсерия имеет разную индексацию (противоположную).

//+------------------------------------------------------------------+
//| Внимание! По-умолчанию                                           |
//|           В MQL4 ArrayGetAsSeries(time)=true!                    |
//|           В MQL5 ArrayGetAsSeries(time)=false!                   |  
//+------------------------------------------------------------------+
 

for(i = limit; i >= 0; i --) на for(i = limit; i > 0; i --) 

в коде индикатора удалить знак = и оставить знак > 0  и в МТ4 и в МТ5

 
tt455:

for(i = limit; i >= 0; i --) на for(i = limit; i > 0; i --)          -    эта строка одинакова для МТ4 и МТ5? или тоже есть отличия?

я так понимаю надо просто в коде индикатора удалить знак = и оставить знак > 0  и в МТ4 и в МТ5 

Эта строка читается так

Для переменной "и" начиная от значения "лимит", пока переменная "и" больше или равна нулю. Так вот это надо исправить на .... пока "и" больше нуля. Соответственно нулевой бар считаться не будет.

Что касается разницы mql4 и mql5 в этой строке никакой разницы.

Отличия могут быть только у программиста. Некоторые пишут цикл в направлении увеличения индекса массива. Тогда строка начинается for(i = 0; ... и далее, то здесь надо 0 поменять на 1

 
Спасибо. Всё сделаю.
 
Можно поступить ещё проще, не использовать нулевое значение индекса в функции CopyBuffer.
Причина обращения: