Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Тезка, давайте поподробнее, если не трудно. Я так понимаю, вы от него наследуетесь? Если да, что переопределяете? Что используете?
Просто я посмотрел код и как-то не вдохновило с первого раза, буду рад услышать мнение человека с практическим опытом использования.
Сейчас барабашка подтянется... Он тебе объяснит что работать можно исключительно со стандартной библиотекой.
А по сути, наверное надо хоть как-то к этому привыкать. Ведь если писать для себя или на заказ без открытого кода, то наверное лучше своя библиотека, хотя-бы знаешь где могут быть подводные камни. А в стандартной библиотеке разбираться дольше чем самому написать. Но если заказчик потребует открытый код... всю библиотеку передавать? Или переписывать?
Но если заказчик потребует открытый код... всю библиотеку передавать? Или переписывать?
Не хватает вариантов ответа. :) Я вот, например, CExpert не использую, но Ctrade - да. Классами организации данных тоже пользуюсь немного. Т.е. использую кое-что в рамках стандартной библиотеки, по необходимости. Без фанатизма и злоупотреблений. :) Я не профи в программировании, процедурное программирование для меня проще и понятнее. Но что-то можно сделать с помощью ООП. Хотя на то, чтобы разобраться и понять, что к чему и почему в ООП и конкретных реализациях стандартной библиотеки, времени уходит немало.
А насчет CTrade у меня нет вопросов - я ее использую, тут все ок с пониманием полезности. С графикой и элементами управления тоже все ок, использую. А вот с CTrade покопался и не понял, что может мне дать ее использование.
Может, мало копался..
А все эти стоны о сложностях MQL5 придуманы старичками-процедурщиками, используя СБ, все это снимается.
MQL5
MQL4
MQL5
MQL4
RSI_handle = iRSI(_Symbol,_Period,rsi_period,PRICE_CLOSE);
Достаточно 1 раз при инициализации. И, если уж на то пошло, то Вы забыли проверить хэндл. Далее:
ChartIndicatorAdd(ChartID(),0,RSI_handle);
Зачем на график добавлять? Для получения данных - не обязательно.
ArraySetAsSeries(RSI_buf,true);
Да, в пятерке обратная нумерация в массивах и что, вполне можно обойтись и без этой функции.
rsi=NormalizeDouble(rsi,2);
А это зачем? Не обязательно.
Итого: нужно получить хэндл и получить данные. Не так уж и трудно.
Достаточно 1 раз при инициализации. И, если уж на то пошло, то Вы забыли проверить хэндл. Далее:
Зачем на график добавлять? Для получения данных - не обязательно.
Да, в пятерке обратная нумерация в массивах и что, вполне можно обойтись и без этой функции.
А это зачем? Не обязательно.
Итого: нужно получить хэндл и получить данные. Не так уж и трудно.
Ок спасибо, что указали на ошибки. Исправлю.
.. по хорошему еще нужно проверить ...
Вооот. По-хорошему обработка ошибок займет 95% кода. Если еще учесть,что коды ошибок задокументированы никак, а тем более способы их разрешения...
MQL5
MQL4
Вооот. По-хорошему обработка ошибок займет 95% кода. Если еще учесть,что коды ошибок задокументированы никак, а тем более способы их разрешения...
Вообще то ошибки нужно проверять везде и всегда, а если Вы это не делали раньше, то это вовсе не означает что раньше было проще - это говорит только о качестве программиста.
А вот про ошибки пожалуйста поподробнее: или указывайте точнее или извиняйтесь.