MQL4 - automated forex trading   /  

Форум

Пожелания к MQL5

К списку тем  | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 > >> Авторизуйтесь или зарегистрируйтесь, чтобы создать новую тему

avatar
6584
Integer 22.09.2007 17:57 
drknn писал (а):
Integer писал (а):
drknn писал (а):
Ну, у меня скромное предложение. Предлагаю ввести в язык функцию, которая будет возвращать номер ячейки массива, в которой лежит заданная величина (или в случае неуспеха возвращать минус единицу). А то приходится каждый раз организовывать цикл. Функция ArrayBsearch() - не подходит - возвращает не то, что нужно.

Значение вернутое этой функцией всеравно будете проверять на равенство -1, поэтому можно проверирить значение с индексом вернутым ArrayBsearch на равенство искомому значению. Не большая разница

Цитирую справку.

int ArrayBsearch(...)
Возвращает индекс первого найденного элемента в первом измерении массива.
Если элемент с указанным значением в массиве отсутствует, функция вернет индекс ближайшего элемента (по значению).

Ну так вот, когда ищешь в массиве индекс не просто числа, а тикета ордера, то эта функция не подходит совсем - ну зачем мне индекс ближайшего похожего тикета, когда мне нужен именно вот такой тикет, и если его нет, то и ордера уже среди рыночных нет - он закрыт и его надо искать в истории! Когда работаешь с синхронно сдвигаемыми массивами, индекс - штука весьма существенная, и он должен быть либо точным, либо отсутствовать.



Еще раз прочитайте что я вам написал

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

Нашли ближайший тикет, сравнили его с тем тикетом который искали, если не равен, значит его нет в массиве.


avatar
403
drknn 22.09.2007 23:01 
Integer писал (а):

Еще раз прочитайте что я вам написал

 

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

Нашли ближайший тикет, сравнили его с тем тикетом который искали, если не равен, значит его нет в массиве. 

Блин, ну зачем же ходить всё время в обход? Покажите мно нотрмальный язык программирования, в котором нет функции, возвращающей индекс требуемого элемента массива. Да ладно Бог с ним, я сам напишу эту функцию, тогда позвольте хотя бы передавать массив в подпрограмму в качестве параметра.

Недостатков в языке MQL4 - масса. Гибкость у этого языка - ни какая. Давайте бдем прислушиваться к надобностям и экономить програмный код советника. А? Или разработчикам наплевать на всех кроме себя самих?


avatar
Модератор
3176
Renat 22.09.2007 23:30 
drknn писал (а):

Да ладно Бог с ним, я сам напишу эту функцию, тогда позвольте хотя бы передавать массив в подпрограмму в качестве параметра.

В MQL4 массив легко передается в подпрограммы и также легко принимается.
Недостатков в языке MQL4 - масса. Гибкость у этого языка - ни какая. Давайте бдем прислушиваться к надобностям и экономить програмный код советника. А? Или разработчикам наплевать на всех кроме себя самих?
Да, недостатки известны. Вроде же из разработчиков ни слова против не сказал? Мы давно уже работаем над языком MQL5.


avatar
6797
Mathemat 22.09.2007 23:49 
drknn, посмотри тут: http://docs.mql4.com/ru/basis/variables/formal . Там о передаче массивов как раз есть.

avatar
5365
YuraZ 23.09.2007 00:10 
xenon13 писал (а):

При всем уважении к MQL4 - пока лучшее что есть из МТС на рынке, очень не хватает следующих вещей:

1. API или возможноть вызова функций советника из DLL (господа разработчики - ОЧЕНЬ НАДО !!!! )

2. Обработчики событий - ну хотя бы один, системный (CallBack какой-нибудь с номером сообщения, например сообщение - торги по данному инструменту остановлены)

3. Структуры, присваивания в записи a = b = d = e, неявные преобразования типов.

Прошу остальных присоединиться и продолжить список пожеланий в этой ветке.

P.S. еще раз про первый пункт, можно оставить всё как есть - но сделайте вызов из DLL.


Хотелось бы увидеть объктноориентированный язык приближенный к C++

если ближе к трейдингу

хотелосб бы получить

1 Вызов указанной функции по настраиваемому таймеру ( очень хорошая была бы фитча )

2 срабатывание ТЕЙКА ЛОССА ( хотя понимаю что это и программно можно отслеживать - при использовании всяческих обработчиков )

3 очень неплохо получить какой нибудь визуальный отладчик ( хотя обхожусь контрольной печатью )


avatar
403
drknn 23.09.2007 20:36 
Mathemat писал (а):
drknn, посмотри тут: http://docs.mql4.com/ru/basis/variables/formal . Там о передаче массивов как раз есть.

Спасибо. Посмотрю.

avatar
403
drknn 23.09.2007 20:40 
Renat писал (а):
Да, недостатки известны. Вроде же из разработчиков ни слова против не сказал? Мы давно уже работаем над языком MQL5.

Извините, наверно я это погорячился. Беда вся в том, что нет нормального хелпа по языку. А то, что приведено в справке не всегда достаточно. При наличии нормального хелпа у пользователей было бы куда меньше вопросов.

avatar
753
elritmo 24.09.2007 14:00 
Опубликовала бы MQ список новых свойств языка MQL5. Можно было бы заранее обсудить какие то пункты - новые свойства языка. Разработчики бы что-нибудь подкорректировали в своих планах. От чего-нибудь отказались, а новое что-нибудь добавили что интересует многих. Можно было бы даже голосование устроить по новым фичам или по тем которые например хотят упразднить.

Кстати в мета редакторе хорошо бы тоже добавить сортировку закладок с кодом. Часто хочеться сгруппировать какие то модули рядом чтобы не скролировать постоянно, чтобы найти нужную.
Была проблема в языке когда передавал в качестве параметра строковую переменную символа, которая была параметром другой функции.
Так не работало:

func(Symbol());

void func(string symbol) {
mql_func(symbol);
}

Зато работает вот так

void func() {
mql_func(Symbol());
}

avatar
173
Bauleken 24.09.2007 16:43 
drknn писал (а):


Блин, ну зачем же ходить всё время в обход? Покажите мно нотрмальный язык программирования, в котором нет функции, возвращающей индекс требуемого элемента массива. Да ладно Бог с ним, я сам напишу эту функцию, тогда позвольте хотя бы передавать массив в подпрограмму в качестве параметра.


В Delphi такой функции нет. :) А может и есть где-то в отдельном модуле. Если есть, то ничего о ней не знаю, т.к. проще её самому написать, чем искать есть она или нет.

Кстати, реализовывать алгоритмы самому это как раз не "в обход". "В обход" это когда пользуетесь чужими компонентами, процедурами, библиотеками и кусками готового кода. Вот это в обход. По-научному называется - ламерство. :)
Разработчеги уже говорили, что езык делают для программистов, а не для ламеров. :)

Любые функции, которые многие желают, можно сделать самому за полчаса, а не ждать 3 года пока это за вас сделают разработчеки. Потом забить их в отдельную библиотеку и просто вставлять в каждый новый советник обычным инклюдом.  Неужели до этого так трудно додуматься? Детский сад какой-то. Язык офигенный, возможностей для творчества масса. Но если человек творческим началом не обладает, то ему такой язык противопоказан. Ему вообще много чего противопоказано, в том числе и торговля. Точнее, тем более торговля. :) Извините за возможную резкость,  не выдержал.



Я бы пожелал только оператор перехода добавить. Остальное меня устраивает.

И еще: очень хочу возможность модифицировать параметр OrderLots у отложенного ордера в реальных торгах, чтобы его не приходилось удалять и ставить новый, у меня все стейты отложками забиты. Думаю это не должно быть труднореализуемым. Renat, если читаете, ответье пожалуйста.

avatar
403
drknn 24.09.2007 18:17 
Bauleken писал (а):
drknn писал (а):


Блин, ну зачем же ходить всё время в обход? Покажите мно нотрмальный язык программирования, в котором нет функции, возвращающей индекс требуемого элемента массива. Да ладно Бог с ним, я сам напишу эту функцию, тогда позвольте хотя бы передавать массив в подпрограмму в качестве параметра.


В Delphi такой функции нет. :) А может и есть где-то в отдельном модуле. Если есть, то ничего о ней не знаю, т.к. проще её самому написать, чем искать есть она или нет.

Кстати, реализовывать алгоритмы самому это как раз не "в обход". "В обход" это когда пользуетесь чужими компонентами, процедурами, библиотеками и кусками готового кода. Вот это в обход. По-научному называется - ламерство. :)
Разработчеги уже говорили, что езык делают для программистов, а не для ламеров. :)
Может тогда вообще программить в машинных кодах? Зачем эти все языки высокого уровня и даже тот же ассемблер? С такой уникальной вещью как машинный код можно вообще делать что хочешь :)


Любые функции, которые многие желают, можно сделать самому за полчаса, а не ждать 3 года пока это за вас сделают разработчеки. Потом забить их в отдельную библиотеку и просто вставлять в каждый новый советник обычным инклюдом.  Неужели до этого так трудно додуматься? Детский сад какой-то. Язык офигенный, возможностей для творчества масса. Но если человек творческим началом не обладает, то ему такой язык противопоказан. Ему вообще много чего противопоказано, в том числе и торговля. Точнее, тем более торговля. :) Извините за возможную резкость,  не выдержал.
:))))))))))) Развеселил меня - от души посмеялся :))))))))) спасибо. Нет, прада :)))))
Я бы пожелал только оператор перехода добавить. Остальное меня устраивает.

И еще: очень хочу возможность модифицировать параметр OrderLots у отложенного ордера в реальных торгах, чтобы его не приходилось удалять и ставить новый, у меня все стейты отложками забиты. Думаю это не должно быть труднореализуемым. Renat, если читаете, ответье пожалуйста.
А вот об этом можно поподробнее? Отложку же можно модифицировать. Или я что-то не понял?
К списку тем   | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 > >>  

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