Библиотеки: MT4Orders - страница 59

 
Evgeniy Ilin:
Уважаемый fxsaber скорее всего вопрос-баян, но мне придется его задать. Библа работает хорошо, но в тестере одна особенность появляется. В начале советник что-то очень усиленно молотит, не выдавая тики, то есть как только первый тик происходит что-то очень лютое там запускается и только спустя несколько минут тест начинает идти. Сейчас в MT5 зашел повесил на график сов он так же первый тик съел и одно ядро полностью загружено висит, принчу тики в лог они появляются с периодичностью в 2,5 минуты примерно ). И главное не понятно сколько он еще так будет насиловать терминал и закончит ли вообще). Сов нормально работает на четверке на пятом это не юзабельно в принципе. Ладно я отключил распринтовку, но это только лог очистило а с производительностью как быть то ? Да я использую и хистори тотал и ордер селект, иначе а смысл какой либу юзать. Тоесть потиковые роботы не поюзаешь, плюс эта штука лочит OnTick и соответственно все интерфейсы встают потому что MQL5 OnChartEvent повесила на OnTick, зачем не понятно. Вообще как то можно выключить все вот эт очто так издевается над терминалом или это в принципе не предусмотрено ? Очень хотелось вашу либу использовать в своем продукте, но пока не вижу как

Попробуйте без библы.

Возможно, просто подгружаются тики по запрашиваемым инструментам.

 
Evgeniy Ilin:
Очень хотелось вашу либу использовать в своем продукте, но пока не вижу как

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

 
fxsaber:

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

В общем я прошелся по коду поисследовал где задержки. OrderSelect один ордер несколько секунд обрабатывает но это только в случае MODE_HISTORY, да и после чего я написал аналог своего функционала и он тоже примерно давал, все дело в истории. в случае MODE_TRADES, все хорошо. В целом библа хорошая, но видимо все дело в тонкостях и нюансах которые невозможно в библиотеке решить. В целом проблемы свои я решил отказавшись от истории. Все равно хорошая библа. Если придумаете как работу с историей разогнать то вообще будет красота ). Так вообще очень помогла библа на самом деле. Да еще такой нюанс если ord=OrderSelect.... и потом вызывать функции типа OrderMagicNumber() и прочей информации предварительно не проверив на истинность переменную "ord" то тоже задержки. Но это конечно все выявляется и потом так уже не делаешь )

Документация по MQL5: Торговые функции / OrderSelect
Документация по MQL5: Торговые функции / OrderSelect
  • www.mql5.com
OrderSelect - Торговые функции - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Evgeniy Ilin:

В общем я прошелся по коду поисследовал где задержки. OrderSelect один ордер несколько секунд обрабатывает но это только в случае MODE_HISTORY, да и после чего я написал аналог своего функционала и он тоже примерно давал, все дело в истории. в случае MODE_TRADES, все хорошо. В целом библа хорошая, но видимо все дело в тонкостях и нюансах которые невозможно в библиотеке решить. В целом проблемы свои я решил отказавшись от истории. Все равно хорошая библа. Если придумаете как работу с историей разогнать то вообще будет красота ). Так вообще очень помогла библа на самом деле. Да еще такой нюанс если ord=OrderSelect.... и потом вызывать функции типа OrderMagicNumber() и прочей информации предварительно не проверив на истинность переменную "ord" то тоже задержки. Но это конечно все выявляется и потом так уже не делаешь )

Какой результат выполнения?
#include <MT4Orders.mqh>

void OnStart()
{
  Print(__MT4ORDERS__);
}
 

Не знаю, сколько продуктов в Маркете использует эту библиотеку, но, похоже, немало, раз периодически получаю ЛС от покупателей.

При этом нерусскоязычные авторы ставят еще какой-то древний билд. Но причины ЛС не в этом.


Обращаюсь к авторам продуктов в Маркете.

Библиотека выдает сообщения о багах MT5, чтобы Вы, в частности, могли разобраться в нюансах MT5. Например, не синхронизированная история MT5 может запросто нарушить работу какого-нибудь MT5-копира, приведя к серьезным убыткам покупателей. Но MT4Orders только предупреждает, что обнаружена проблема, а не устраняет их во всех случаях.


Здесь все это неоднократно было разжевано. Включая методы отключения каких-либо сообщений со стороны библиотеки.


Понимаю, что используете MT4Orders в своих коммерческих целях даже не за спасибо. Так не обременяйте меня жалобами своих покупателей. Утомляет, мягко говоря.

 
Скорее всего проще будет тексты поменять.
 
traveller00:
Скорее всего проще будет тексты поменять.

Новые билды почти не используют.

 

for(int dfz_in_29=0 ; dfz_in_29<OrdersTotal() ; dfz_in_29 = dfz_in_29 + 1)

{

if(OrderSelect(dfz_in_29,SELECT_BY_POS,MODE_TRADES) && OrderSymbol()==Symbol())

{


if(OrderType()==0)

{

dfz_in_12 = OrderTicket() ; // OrderTicket() не имеет возвращаемого значения, в демо-версии значение - Error 4003 // -2045194504 ?



}}}



что с этим делать... пожалуйста, подскажите и мне :thankyou very much...

 
sisz1688:

Пожалуйста, отредактируйте свое сообщение и используйте кнопку кода (Alt+S) при вставке кода.

Отредактируйте свое исходное сообщение, пожалуйста, не публикуйте код правильно в новом сообщении.


 

Почему такая бедапечаль ?