АвторСообщение



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 24.01.11 14:20. Заголовок: Разные результаты вычислений


Здравствуйте!
У меня в ходе отладки программного кода возникла одна вычислительная проблема, связанная с получение разных результатов при вычислении значения разными способами. В чем здесь подвох не могу разобраться. Подскажите!
Итак, фрагмент кода:

int MinLevel = 1000000000;
int MaxLevel = -1000000000;
....................................
for (i = 0; i <= Bars; i++)
{
MaxMonthPrice = iHigh(NULL, PERIOD_MN1, i)/Point;
MinMonthPrice = iLow(NULL, PERIOD_MN1, i)/Point;

if (MinMonthPrice < MinLevel) MinLevel = MinMonthPrice;
if (MaxMonthPrice > MaxLevel) MaxLevel = MaxMonthPrice;
}
int MaxLevelHighest = High[iHighest(Symbol(), PERIOD_MN1, MODE_HIGH, Bars)]/Point;
Alert ("MaxLevel=", MaxLevel, " MaxLevelHighest=", MaxLevelHighest);
............................

Суть вычислений - поиск максимальной и минимальной цены.
Значения вычислений совпадают лишь, когда код загружен на таймфрейм MN, либо когда переключились на этот таймфрейм. При переключении на другой тайм фрейм значения вычислений не совпадают. Почему. Причем то, что делается в цикле - правильно, значения вычислений истинные, равны константе, т.е. не меняются с переключением на другой таймфрейм. Значение же вычислений с применением "iHighes" кнстанте не равны.

Заранее спасибо за подсказку.



Спасибо: 0 
Цитата Ответить
Ответов - 2 [только новые]


постоянный участник


Пост N: 106
Зарегистрирован: 03.09.09
ссылка на сообщение  Отправлено: 24.01.11 14:46. Заголовок: Проблема заключается..


Проблема заключается в том, что в функции iHighest(Symbol(), PERIOD_MN1, MODE_HIGH, Bars) вы используете переменную Bars, которая отвечает за количество баров ТЕКУЩЕГО таймфрейма. Это значение вы применяете к фиксировано заданному ТФ. Правильный подход в этом случае будет следующим:

iHighest(Symbol(), PERIOD_MN1, MODE_HIGH, iBars(NULL, PERIOD_MN1)).

То же самое касается переменной Bars в цикле.

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 24.01.11 19:53. Заголовок: Спасибо! Всё получил..


Спасибо! Всё получилось!

Спасибо: 0 
Цитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 10
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет