Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 204
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
пересечение МА происходит между барами - поймал наглядный пример
МА на барах левее и правее пересечения отличается от цены в точке пересечения. Как понял, вопрошающему нужно значение точно в точке пересечения вместо значения на одном из соседних баров. Точно это значение можно получить использованием линейной интерполяции - ведь МА между барами строится отрезками прямой. Или взять координаты каждой МА на соседних барах. Построить аналитически 2 прямые линии и рассчитать точку их пересечения. Можно произвести расчет рассматривая 2 подобных треугольника. Возникает встречный вопрос - зачем это нужно? Сопоставимы ли затраты с ценностью результата? Ведь при минимальном изменении параметров МА точки пересечения сдвинутся. Скорее всего, это требует руководитель курсового проекта
Не могу найти где ошибся в расчетах может кто поможет
Нужно найти максимум и минимум прошлого дня , но почему то минимум находит аж в позапрошлом дне
Вместо всего этого лучше использовать CopyHigh и CopyLow с указанием периода PERIOD_D1 и соответствующего бара или времени.
Любой бар любого ТаймФрейма содержит обобщенную информацию соответствующего интервала баров младших Таймфреймов: Максимум, Минимум, время открытия и закрытия, и объем, равный сумме объемов с младших баров. Вернее эта информация содержится в соответствующих массивах
Я бы так сделал но по дальнейшему алгоритму у меня может не получиться расчет данных так как возможно прийдется искать и другие значения вчерашнего дня и опять станет загвоздка в переписывании функций.
Если бы подсказали где ошибка в моем коде , то никак не могу понять . Вывожу на экран количество баров все сходится а вот когда пытаюсь получить максимум или минимум выводит не то что должно
Я бы так сделал но по дальнейшему алгоритму у меня может не получиться расчет данных так как возможно прийдется искать и другие значения вчерашнего дня и опять станет загвоздка в переписывании функций.
Если бы подсказали где ошибка в моем коде , то никак не могу понять . Вывожу на экран количество баров все сходится а вот когда пытаюсь получить максимум или минимум выводит не то что должно
Вы там столько нагородили, что даже разбираться руки опускаются. Гора преобразований из одного в другое...
И всё для того, чтобы найти максимум и минимум дня?
А так что не подходит вам?
Нужно узнать максимум сегодняшнего дня? Пожалуйста:
Нужно узнать максимум вчерашнего дня? Легко:
Нужно узнать минимум позавчерашнего дня? Не вопрос:
Ну можно пойти лёгким путём, и использовать чисто четвёрошные функции:
Но я б не советовал - используя новые конструкции языка, вы заранее подготовите себя и свои коды к тому, что когда-нибудь четвёрку перестанут поддерживать, да и самодисциплина, и всё такое ;)
Вы там столько нагородили, что даже разбираться руки опускаются. Гора преобразований из одного в другое...
И всё для того, чтобы найти максимум и минимум дня?
А так что не подходит вам?
Нужно узнать максимум сегодняшнего дня? Пожалуйста:
Нужно узнать максимум вчерашнего дня? Легко:
Нужно узнать минимум позавчерашнего дня? Не вопрос:
Ну можно пойти лёгким путём, и использовать чисто четвёрошные функции:
Но я б не советовал - используя новые конструкции языка, вы заранее подготовите себя и свои коды к тому, что когда-нибудь четвёрку перестанут поддерживать, да и самодисциплина, и всё такое ;)
Сам нашел ошибку ( все невнимательность неверно прочитал параметры iHighest ,iLowest).
Так не подходит так как будут нужны другие расчеты со вчерашнего дня
Сам нашел ошибку ( все невнимательность неверно прочитал параметры iHighest ,iLowest).
Так не подходит так как будут нужны другие расчеты со вчерашнего дня
if(Красный) OrderSend( ... Покупка ...) ; if( Синий ) OrderSend( ... Продажа ...) ;
Только вроде наоборот, вверху продавай, внизу покупай...
Функция OnInit (по старому просит init) выполняется при запуске индикатора (ну еще при смене таймфрейма, перекомпиляции, ...). Все используемые переменные должны иметь присвоенное им значение. В функции OnInit есть строка SetIndexDrawBegin(0,i-1); Надо бы переменной i присвоить значение или использовать константу
if(Красный) OrderSend( ... Покупка ...) ; if( Синий ) OrderSend( ... Продажа ...) ;
Только вроде наоборот, вверху продавай, внизу покупай...
Функция OnInit (по старому просит init) выполняется при запуске индикатора (ну еще при смене таймфрейма, перекомпиляции, ...). Все используемые переменные должны иметь присвоенное им значение. В функции OnInit есть строка SetIndexDrawBegin(0,i-1); Надо бы переменной i присвоить значение или использовать константу
Если честно то ничего не понял я новичек в программировании Mql4 если не тяжело можете помочь с кодом
Кодом обычно во фрилансе помогают.
Здесь - либо алгоритм, либо поправить ваши ошибки. Но не переписать за вас по-новой.