Вопросы от начинающих MQL4 MT4 MetaTrader 4 - страница 40

 
Игорь:

я на чистый график кидаю все отображается и считает как надо

закрываю и запускаю терминал скрин 1

тф перещелкнул все опять появляется и работает до следующего перезапуска

просто хочется  не дергать ТФ т.к. стоят еще платные индюки они тяжелые 1-2 мин пересчитываются пока в колею въедут

те индюки не причем у меня три терминала и во всех трех эта болезнь у этого  индюка я пробовал его с одним окном и без всего болезнь так и есть

проблема при старте

я так понимаю в установке текстовой метки что-то не ладно 

 
Игорь:

проблема при старте

я так понимаю в установке текстовой метки что-то не ладно 

я одно не понимаю - почему у Вас все переменные проинициализированы в коде?

типа такого

double s = ....

Это же все должно быть еще до init(), только без выражений

double e,p,r,s,t;


, а в коде только выражения

void init()

{

s=...

}

void start()

{

r=...

t=...

}

Поиграйтесь чуток, перестройте правильно код.

И всё будет работать, надеюсь

 
Renat Akhtyamov:

я одно не понимаю - почему у Вас все переменные проинициализированы в коде?

типа такого

double s = ....

Это же все должно быть еще до init(), только без выражений

double e,p,r,s,t;


, а в коде только выражения

void init()

{

s=...

}

void start()

{

r=...

t=...

}

Поиграйтесь чуток, перестройте правильно код.

И всё будет работать, надеюсь

я самоучка и писал это код не я профессиональный программист КИМИВ ИГОРЬ с его сайта стащил 

но он на вопросы не отвечает и косяки свои только платно исправляет

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

только у всех косяк один и тотже после перезапуска фигня

давно с ним воюю ни как не победю - попробую ваш вариант последний посмотрю

отпишусь ! 

 
Игорь:

я самоучка и писал это код не я профессиональный программист КИМИВ ИГОРЬ с его сайта стащил 

но он на вопросы не отвечает и косяки свои только платно исправляет

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

только у всех косяк один и тотже после перезапуска фигня

давно с ним воюю ни как не победю - попробую ваш вариант последний посмотрю

отпишусь ! 

Пока не пойму почему, но при перезагрузке ругается на это место 

DoubleToStr(s/AccountBalance()*100.0, 2)

 ошибка 2016.12.20 21:31:43.360 test USDCHF,H4: zero divide in 'test.mq4' (93,26)  - Деление на ноль.


 
Sergey Gritsay:

Пока не пойму почему, но при перезагрузке ругается на это место 

DoubleToStr(s/AccountBalance()*100.0, 2)

 ошибка 2016.12.20 21:31:43.360 test USDCHF,H4: zero divide in 'test.mq4' (93,26)  - Деление на ноль.


Поставьте паузу в ините или сделайте какуюто проверку на баланс == 0, эксперт загружается быстрее чем подключается терминал к серверу, и на момент запуска баланс неизвестен, то есть ноль.
 

Всем здравствуйте) 

Я в mql4 новенький и ко всему прихожу сам ... так что прошу сильно не ругать ) 

Хочу автоматизировать свою стратегию торговли и пишу по ней советника.  

Есть необходимость в разделе "Comment" сделать так что бы информация на график выводилась с табличной разметкой. Скажем так нужно три столбца и около 10 строк. 
ПОМОГИТЕ ПОЖАЛУЙСТА!!! как мне это сделать ...  

 
Sergey Gritsay:

Пока не пойму почему, но при перезагрузке ругается на это место 

DoubleToStr(s/AccountBalance()*100.0, 2)

 ошибка 2016.12.20 21:31:43.360 test USDCHF,H4: zero divide in 'test.mq4' (93,26)  - Деление на ноль.


Потому, что график загрузился, а подключение к серверу не произошло, в итоге деление на ноль.

Нужно поставить проверку, если: if(AccountBalance()== 0)  { return(0); }

Замените строку:

// +"пипс "+DoubleToStr(s/AccountBalance()*100, 2)+"%", ecText, 130, 5, eiCorner);

+"пипс "+DoubleToStr(s/(AccountBalance()==0?1:AccountBalance())*100, 2)+"%", ecText, 130, 5, eiCorner);
 
Игорь:

я самоучка и писал это код не я профессиональный программист КИМИВ ИГОРЬ с его сайта стащил 

но он на вопросы не отвечает и косяки свои только платно исправляет

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

только у всех косяк один и тотже после перезапуска фигня

давно с ним воюю ни как не победю - попробую ваш вариант последний посмотрю

отпишусь ! 

Игорь устранил ошибку в вашем коде и немного сделал отображение информации по приятнее.
Файлы:
test.mq4  56 kb
 
Sergey Gritsay:
Игорь устранил ошибку в вашем коде и немного сделал отображение информации по приятнее.

Спасибо добрый человек я терь на неделю зависну с кодом разбираючись !

Твоя картинка класс спору нет !

Пережую буду пользовать !

Токма хотелось бы свое победить там все понятно и рабочее икоду кот наплакал !

Не обижайся я твое пережую тоже пользовать буду - но пока столько времени у меня нет !

Может мое кто нить  все таки осилит !

 
Vitaly Muzichenko:

Потому, что график загрузился, а подключение к серверу не произошло, в итоге деление на ноль.

Нужно поставить проверку, если: if(AccountBalance()== 0)  { return(0); }

Замените строку:

// +"пипс "+DoubleToStr(s/AccountBalance()*100, 2)+"%", ecText, 130, 5, eiCorner);

+"пипс "+DoubleToStr(s/(AccountBalance()==0?1:AccountBalance())*100, 2)+"%", ecText, 130, 5, eiCorner);

У меня ни каких ошибок не было я смотрел ! 

СПАСИБО ОГРОМЕННОЕ все заработало наконец !!!!

Я рад очень сильно наконец все свои наработки поправлю !!!

Еще раз спасибо !!!!!!!!!!!!!!!!!!! 

Причина обращения: