Скачать MetaTrader 5

Много текста- Нет коннекта

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Интересно узнать о развитии MQL5.community? Заходи в раздел Стена!
Forex Trader
114255
Forex Trader 2005.11.17 06:56 
Уважаемые метаквотовцы! Может это и не важно, но все же...
Если индикатор создает возле каждого бара текстовые метки и если этих баров много(мне хватило 14000) то при закрытии и повторном открытии терминала, свзь с сервером не устанавливается. Индикатор с графика снимеш, закроеш/откроеш терминал все ок!
Прошу заметить я сказал только текст, с символами(стрелки, точки итд) все в порядке.
Приходится в функции start ставить условие, чтобы она выполнялась когда коннект уже установленн.
Forex Trader
114255
Forex Trader 2005.11.17 10:40  
Уважаемые! Я нашел то загадочное число, а именно 4935, это то предельное количество текстовых объектов(OBJ_TEXT) которые вы можете создать и присвоить им текст, и после закрытия/открытия вашего индикатора который создает такое кол-во тектов новые котировки всетаки будут идти, по крайней мере у меня.
Я предполагаю на создание и присваение такому кол-ву(большему чем 4935) текстовых объектов уходит чуть больше времени чем отведенно системой для подключения к серверу и все, время прошло коннекта нет и не появится больше. Конечно если вы будите все так же настырны в своих страниях по поводу необходимости такого количестав OBJ_TEXT.
У разрабочиков хотелось бы узнать мое предположение справедливо?
Forex Trader
114255
Forex Trader 2005.11.17 11:02  
А как функция IndicatorCounted() узнает сколько баров посчитанно индикатором?
Forex Trader
114255
Forex Trader 2005.11.17 11:18  
Только на следующем тике значение меняется.
MetaQuotes Software Corp.
Модератор
181066
MetaQuotes Software Corp. 2005.11.17 12:42  
Уважаемые метаквотовцы! Может это и не важно, но все же...
Если индикатор создает возле каждого бара текстовые метки и если этих баров много(мне хватило 14000) то при закрытии и повторном открытии терминала, свзь с сервером не устанавливается. Индикатор с графика снимеш, закроеш/откроеш терминал все ок!
Прошу заметить я сказал только текст, с символами(стрелки, точки итд) все в порядке.
Приходится в функции start ставить условие, чтобы она выполнялась когда коннект уже установленн.

Желательно приложить полный код своего эксперта и указать версию операционной системы.

Если индикатор ставит сложные графические объекты(текст - это сложный объект) на график на каждом баре вместо стандартной работы в виде заполнения своих буферов, то это создаст огромную нагрузку на график. И не только для отрисовки. Если индикатор неэкономно переустанавливает/модифицирует (да и просто проверяет) эти объекты, то тормоза обеспечены в работе всего терминала.

Индикатор должен заполнять свои буферы - это его главная задача.
Ставить текстовые метки - это абсолютно неправильный подход.

ps: что будет с Corel Draw, если на страницу добавить 5000 текстовых меток?
Forex Trader
114255
Forex Trader 2005.11.18 03:24  

Желательно приложить полный код своего эксперта и указать версию операционной системы.
Индикатор должен заполнять свои буферы - это его главная задача.
Ставить текстовые метки - это абсолютно неправильный подход.
ps: что будет с Corel Draw, если на страницу добавить 5000 текстовых меток?


int start()
{
int ExtCountedBars=IndicatorCounted();
//---- check for isible errors
if (ExtCountedBars<0) return(-1);
//---- count new bar
if (ExtCountedBars>0)ExtCountedBars--;
int pos=Bars-ExtCountedBars;
while(pos>=0)
{
Print(IndicatorCounted());
if(ObjectFind("Bar"+pos)==-1)
ObjectCreate("Bar"+pos,OBJ_TEXT,0,Time[pos],High[pos]+0.0001,0,0,0,0);
ObjectSetText("Bar"+pos, "NULL", 10,"", White);
pos--;
}
return(0);
}
Версия 4.0, билд 186.
На минутном графике переменная pos у меня равна примерно 15000(а не коннектится уже 4936). Если не делать ObjectSetText, то все нормально, связь появляется. Но ввиду выше сказанного вами, что такой подход в вашей системе не верен, от своей идеи отказался. Без текста даже с максимальным количеством буферов все делается очень быстро. Хотя жаль, текст давал больше наглядности.
Вообще, ваш продукт мне очень нравится! Опять же, на темы форума вы отвечаете не замедлительно, Спасибо ребята! Все путем! Творите дальше!
Forex Trader
114255
Forex Trader 2005.11.18 05:01  
Хотя жаль, текст давал больше наглядности.
пиши текст на последних 500 барах ;)
Forex Trader
114255
Forex Trader 2005.11.18 08:58  
komposter'у отдельное спасибо, озорил!=)
Нашел махонький "просмотр" так сказать, значит в справке в ветке "Рыночные информационные идентификаторы" три последние константы имеют одиноковое значение "22".
Forex Trader
114255
Forex Trader 2005.11.18 13:31  
komposter'у отдельное спасибо, озорил!=)
Нашел махонький "просмотр" так сказать, значит в справке в ветке "Рыночные информационные идентификаторы" три последние константы имеют одиноковое значение "22".

"MarketInfo(Symbol(), MODE_MINLOT)"
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий