Тогда остается опубликовать оба варианта кода в тегах [ pre ] прямо в форуме с кратким описание что делает индикатор.
for(nCurBar=300; nCurBar>0; nCurBar--) { if(Low[nCurBar+(nPeriod-1)/2] == Low[Lowest(NULL,0,MODE_LOW,nCurBar+nPeriod,nPeriod)]) { s6=s5; s5=s4; s4=s3; s3=s2; s2=s1; s1=Low[nCurBar+4]; }; if(High[nCurBar+(nPeriod-1)/2] == High[Highest(NULL,0,MODE_HIGH,nCurBar+nPeriod,nPeriod)]) { r6=r5; r5=r4; r4=r3; r3=r2; r2=r1; r1=High[nCurBar+4]; };
... for(nCurBar=300; nCurBar>0; nCurBar--) { if(Low[nCurBar+(nPeriod-1)/2] == Low[Lowest(NULL,0,MODE_LOW,nCurBar+nPeriod,nPeriod)]) { s6=s5; s5=s4; s4=s3; s3=s2; s2=s1; s1=Low[nCurBar+4]; }; if(High[nCurBar+(nPeriod-1)/2] == High[Highest(NULL,0,MODE_HIGH,nCurBar+nPeriod,nPeriod)]) { r6=r5; r5=r4; r4=r3; r3=r2; r2=r1; r1=High[nCurBar+4]; }; ... };
а этот исправно работает и досехпор в МТ3
... For nCurBar = nBars Downto 0 Begin If Low[nCurBar+(nPeriod-1)/2] = Low[Lowest(MODE_LOW,nCurBar+nPeriod,nPeriod)] Then Begin s6=s5; s5=s4; s4=s3; s3=s2; s2=s1; s1=Low[nCurBar+4]; End; If High[nCurBar+(nPeriod-1)/2] = High[Highest(MODE_HIGH,nCurBar+nPeriod,nPeriod)] Then Begin r6=r5; r5=r4; r4=r3; r3=r2; r2=r1; r1=High[nCurBar+4]; End; ...
и где тут учёт изменений?
в тройке предложение Lowest(MODE_LOW,10,10) говорит о том, что вы работает в промежутке с 1-го по 10 бар включительно
в четвёрке это же предложение ( Lowest(NULL,0,MODE_LOW,10,10)) говорит, что вы работаете в промежутке с 10-го по 19 бар включительно.
PS. после закрывающей фигурной скобки точку с запятой ставить не надо.
if(Low[nCurBar+(nPeriod-1)/2] == Low[Lowest(NULL,0,MODE_LOW,nCurBar+nPeriod,nPeriod)])
Ок! таким образом достаточно изменить nCurBar+nPeriod на nCurBar-nPeriod и по логике все должно заработать... но я получаю совершенно другой результат:(...
if(Low[nCurBar+(nPeriod-1)/2] == Low[Lowest(NULL,0,MODE_LOW,nCurBar+nPeriod,nPeriod)])
Ок! таким образом достаточно изменить nCurBar+nPeriod на nCurBar-nPeriod и по логике все должно заработать... но я получаю совершенно другой результат:(...
Тогда уж так:
if(Low[nCurBar+(nPeriod-1)/2] == Low[Lowest(NULL,0,MODE_LOW,nPeriod,nCurBar+1)])
Надо внимательно читать ответы.
попытаюсь поставить вопрос иначе! так как описание на английском в коем я не очень селен! то, что переводит переводчик лучше не произносить в слух...
Lowest - Возвращает наименьшее значение за период в зависимости от типа.
timeframe - временной тайм фрейм (вопросов нет! ставим 0)
type - MODE_LOW (то есть смотреть по самым низким точкам свечи)
count - счет - Количество периодов (в направлении из начального бара, к окончанию) на котором вычисление выполняется. (иными словами! стоим на 150 баре и хотим указать 10, значит от 150 до 160??? или к 140???)
start - начало - Сдвигает показывая зону, относительно текущей зоны, что данные должны быть взяты из. (грубо говоря смещение по данным shift...???)
у меня задача! найти нижнюю точку из 9 свечей! что бы она оказалась в середине диапазона... то есть 4 свечи слева, в центре самая нижняя точка и 4 свечи справа, тогда условие выполняется...
if(Low[nCurBar+4] == Low[Lowest(NULL,0,MODE_LOW, 9, nCurBar????)])
в общем буду очень признателен, если кто поможет...
if(Low[nCurBar+(nPeriod-1)/2]
?
Если (nPeriod-1)/2 окажется не целым, то куда мы попадем?
А во-вторых :
Low[Lowest(NULL,0,MODE_LOW,nPeriod,nCurBar+1)])
означает, мы мы ищем самое низкое Low на на текущем инструменте (NULL) и текущем таймфрейме (NULL,0,MODE_LOW) в серии из nReriod начиная с nCurBar+1 и заканчивая nCurBar+nPeriod
Подставь nCurBar=0 и nPeriod=20 и подумай ,ч то получится.
А вообще, это уже обсуждалось "Сравнение Highest() в МТ3 и Highest() в МТ4" , мог бы немного и напрячься и поискать.
Больше помогать нет смысла.
И возник новый вопрос: Каким образом вычесляется длина трендоваой линии?
ObjectCreate("Trend",OBJ_TREND,0,Time1,Price1,Time2,Price2);
иными словами чертим линию из точки А в очку Б и получаем линию длиной в С! каким образом вычесляется точка С?
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Немогли бы дать емаил куда можно отправить 2 исходника под МТ3 и МТ4? у меня большое подозрение что Lowest не совсем правельно работает, хотя конечно я могу неправельно что то делать....