Скачать MetaTrader 5

Выложен обновленный билд 188

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
На MQL5.community есть возможность хранить исходные коды в MQL5 Storage. Попробуй сам!
MetaQuotes Software Corp.
Модератор
181045
MetaQuotes Software Corp. 2006.01.19 22:20 
Выложен обновленный билд 188 с исправлениями ошибок, выясленными за последнюю неделю.
Обновить терминал можно скачав дистрибутив по ссылке: "торговый терминал MetaTrader 4"

Спасибо всем за обсуждения, настойчивость и помощь в поиске ошибок!
Forex Trader
114255
Forex Trader 2006.01.20 06:43  
Писал на форуме, писал в письме, однако так и не обратили внимания. Функции типа i...OnArray работают не корректно. Когда функция обрабатывает часть массива, то все работает правильно. Когда же функция обрабатывает весь массив целиком (т.е. параметр period равен количеству элементов массива), то возвращаются какие-то непонятные значения. Например скрипт:
int start()
{
double Array[4]={1.0,2.0,3.0,4.0};
Print(iMAOnArray(Array,0,4,0,MODE_SMA,0));
return(0);
}

печатает в логе "0", хотя должно "2.5".
Точно такая же ерунда с iStdDevOnArray, iBandsOnArray. Остальные не проверял.

Forex Trader
114255
Forex Trader 2006.01.20 07:19  
Когда же функция обрабатывает весь массив целиком (т.е. параметр period равен количеству элементов массива)

Для выбора количества обрабатываемых элементов массива используется параметр total, а не period.
Forex Trader
114255
Forex Trader 2006.01.20 11:20  
Да при чем здесь количество обрабатываемых элементов. При total равном 0 обрабатывается весь массив. Я совсем о другом. Найдите среднее значение всего массива, используя iMAOnArray. Я же привел пример.
Forex Trader
114255
Forex Trader 2006.01.20 12:51  
Да, действительно.
Тогда, наверно, разработчикам имеет смысл в справке по iMAOnArray() дать явное указание на то, что параметр period должен быть меньше либо количества элементов в массиве, либо параметра total, если он не нулевой.
Forex Trader
114255
Forex Trader 2006.01.20 12:57  
KimIV, неужели у тебя получилось? А то я уже начал думать, что с ума сошел. Привязался тут с фигней какой-то, которая не нужна никому.
Forex Trader
114255
Forex Trader 2006.01.20 14:34  
KimIV, неужели у тебя получилось?

Да, получилось. Пример-то ведь простой и наглядный :-)
Я пробовал так
double Array[4]={1, 2, 3, 4};
string comm=iMAOnArray(Array, 0, 3, 0, MODE_SMA, 1);
Comment(comm);


пишет 2,00...
и так пробовал

double Array[4]={1, 2, 3, 4};
string comm=iMAOnArray(Array, 0, 3, 0, MODE_SMA, 0);
Comment(comm);


пишет 3,00...
и эдак

double Array[4]={1, 2, 3, 4};
string comm=iMAOnArray(Array, 0, 4, 0, MODE_SMA, 0);
Comment(comm);


пишет 0,00..., хотя по алгоритму расчёта средней должно быть 2,50...

Уважаемые разработчики, почему так?

Forex Trader
114255
Forex Trader 2006.01.20 16:15  
Вот об этом я и пытаюсь уже какой раз сказать. iStdDevOnArray и iBandsOnArray такую же ерунду выдают. Спасибо хоть один услышал.
Forex Trader
114255
Forex Trader 2006.01.20 16:33  
Код

double Array[5]={0, 1, 2, 3, 4};
string comm=DoubleToStr(iMAOnArray(Array, 0, 4, 0, MODE_SMA, 0), 2);
Comment(comm);



дает 2.5, а

double Array[5]={0, 1, 2, 3, 4};
string comm=DoubleToStr(iMAOnArray(Array, 0, 5, 0, MODE_SMA, 0), 2);
Comment(comm);



дает 0. Прямо чудеса...

Forex Trader
114255
Forex Trader 2006.01.20 17:24  
Код

double Array[5]={0, 1, 2, 3, 4};
string comm=DoubleToStr(iMAOnArray(Array, 0, 4, 0, MODE_SMA, 0), 2);
Comment(comm);



дает 2.5, а

double Array[5]={0, 1, 2, 3, 4};
string comm=DoubleToStr(iMAOnArray(Array, 0, 5, 0, MODE_SMA, 0), 2);
Comment(comm);



дает 0. Прямо чудеса...



Elementov masiva 5, no opisanno 4, piatyj = unknown, vot i polu4ajetsia random potomu dumaju...:-)

Err, nidosmotrel nulia, no paprobuite pervyj element ostavit' v pakoje. Ili jes4io sdies' elementa array = 0..5 a ne 1..5
Forex Trader
114255
Forex Trader 2006.01.20 17:32  
Fix:

double Array[4]={0, 1, 2, 3, 4};



A patom smotrite.

123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий