Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 248
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
А зачем Вы из файла читаете? У Вас же весь файл в переменной ReadCBOE, ее и мучайте,
С ней нет никаких проблем, НО не вся строка помещается в переменной! у МТ своё ограничение на длину строки, в то время как в файл записывается инфа с сайта, и кончается файл так </body></html> в то время как строка - обрывается при достижении 65к символов(или около того). В любом случае размер конечного файла 69КБ.
Почитайте статью. В принципе в природе не существует способа чтения заданной строки файла, нужно читать все строки до заданной строки... там в статье есть и эта функция - для построчного чтения текстового файла.
Ого, спасибо, не нашел самостоятельно, надо было искать по тегу HTML.
Вот так работает. Проверил.
В общем ошибка есть, и вот она
Ой ты и герой, Жунко, молча исправил код и... как будто так и было. Ведь еще будешь утверждать, что так и было, а я типа гоню? Да?
Что исправил? Проверку на NULL? Это нормально. Что не нравится? Если нахожу ошибку - исправляю.
Ты не исправляешь. Это видел. Даже, когда прямо показал - не исправил. Любишь делать ошибки и не исправлять их? Потом бахвалишься этим?
=============
Мне простительно. На MQL4 почти совсем не пишу. Всё, что надо, написал. С дескрипторами и ошибками не работаю. Они давно написаны, инкапсулированы и забыты.
В С++ дескрипторы принято сравнивать с NULL.
В общем ошибка есть, и вот она
Запишите что-нибудь другое или файл удалите или флаг только на запись поставте.
Что исправил? Проверку на NULL? Это нормально. Что не нравится? Если нахожу ошибку - исправляю.
Ты не исправляешь. Это видел. Даже, когда прямо показал - не исправил. Любишь делать ошибки и не исправлять их? Потом бахвалишься этим?
=============
Мне простительно. На MQL4 почти совсем не пишу. Всё, что надо написал. С дескрипторами и ошибками не работаю. Они давно написаны, инкапсулированы и забыты.
В С++ дескрипторы принято сравнивать с NULL.
Не. Работает. Просто этот код не перезаписывает файл. Вы смотрите в файл, который уже написан. Кажется, что не работает. На самом деле было вписано, куда надо, а продолжение строки осталось старым.Запишите что-нибудь другое или файл удалите или флаг только на запись поставте.
Ага, заработало...Спасибо.
extern int OpenMM = 25; // Время открытия ордеров (минуты).
extern int CloseHH = 23; // Время закрытие/удаление ордеров (часы).
extern int CloseMM = 45; // Время закрытие/удаление ордеров (минуты).
Эта часть кода работает, и претензий к ней нет. Ордера в пятницу, в 23:45 закрываются нормально. Функция DeleteOrders() работает нормально.
if (!IsTradeAllowed()) return(0); // Пропустить тик, если терминал занят.
if (Close_All_Orders) // Разрешение на закрытие ордеров.
if (DayOfWeek() >= 5 && // Если пятница и закрытие ордеров разрешено, то
TimeHour(TimeCurrent()) >= CloseHH && // в назначенный час
TimeMinute(TimeCurrent()) >= CloseMM ) // в назначенные минуты -
{ DeleteOrders(); return(0); } // все ордера закрываются.
По аналогии составлен код на открытие ордеров. В указанном виде код не работает вообще.
Однако, если убрать, либо закомментировать строку с минутами - все работает нормально, ордера в 14:00 открываются. Функция OpenOrders() работает нормально.
Какая может быть проблема в этой (или в другой) строке кода: TimeMinute(TimeCurrent()) >= OpenMM ?
if (TimeHour(TimeCurrent()) >= OpenHH && // В назначенный час,
TimeMinute(TimeCurrent()) >= OpenMM ) // в назначенные минуты -
{ OpenOrders(); return(0); } // открыть ордера.
PS: В принципе, в интернете довольно много советников, открывающих и закрывающих ордера по времени. Но, по той или иной причине, они могут не устраивать. Хотелось бы разобраться с указанной ошибкой...
Спасибо...
Доброго времени. Помогите разобраться с ошибкой.
Вроде всё правильно, должно работать. Попробовал Ваш код у себя - работает с минутами. Но только с 14:25 до 14:59, с 15:25 до 15:59 и т.д.
Может так лучше