[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 169
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
А чему i равно?
Я хотел показать лишь основные моменты - i определяется как:
т.е. начинает с наибольшего бара и доходит до нуля.
Если я держу Индикатор работающим то для 0-х значений i все начинает работать (рисует прямоугольники для текущих
значений и т.д.), но на истории нет ничего. Я думал возможно это как-то связано с определением массива?!
Я хотел показать лишь основные моменты - i определяется как:
т.е. начинает с наибольшего бара и доходит до нуля.
Если я держу Индикатор работающим то для 0-х значений i все начинает работать (рисует прямоугольники для текущих
значений и т.д.), но на истории нет ничего. Я думал возможно это как-то связано с определением массива?!
Тогда придется полный код индикатора показать.
Тогда придется полный код индикатора показать.
Вот код - я убрал все что не относилось к проблеме:
С чего начать писать void ManagePositions() по сведующим условиям
Есть массивы
for (tf = 0; tf < 5; tf++)
{
......
int TF[tf] - time frame {5,15,30,60,240}
int signal[tf] - „1“ – buy
- „2“ – close buy
- „-1“ – sell
- „-2“ – close sell
int mn_b[tf] - magic_number_buy разный для всех time frame
int mn_s[tf] - magic_number_sell разный для всех time frame
}
Надо
Open
на time frame 5,15 открывается в одну сторону до трех ордеров
- 1 ордер ММ = 1 Моней
- 2 ордер ММ = 2
- 3 ордер ММ = 3
на time frame 30 открывается в одну сторону до двух ордеров
- 1 ордер ММ = 2
- 2 ордер ММ = 3
на time frame 60 открывается в одну сторону один ордер
- 1 ордер ММ = 3
на time frame 240 неоткрывается
Доливка второго и третего ордеров по отдельным условиям
Всего получается не больше 9 ордеров в одну сторону
Close
При появлении сигнала с time frame close sell закрывает все ордера sell на данном ТФ
При появлении сигнала с time frame close buy закрывает все ордера buy на данном ТФ
Помогите пожалуйста
Обьясните пожалуйста, как определить тикет или номер ордера, если известно, что он первый с данным магическим номером..
Заранее спасибо!
Ветка И.Кима 'Полезные функции от KimIV'
Функция GetTicketLastPos(). Стр.19
Эта функция возвращает тикет последней открытой позиции или -1.
Функция GetIndexLastPos(). Стр.17
Эта функция возвращает индекс последней открытой позиции или -1.
Функция IndexByTicket(). Стр.12
Возвращает индекс (порядковый номер в общем списке установленных ордеров или открытых позиций) ордера или позиции по тикету. Если функция IndexByTicket() не сможет найти ордер или позицию с нужным тикетом, то она вернёт -1
Ветка И.Кима 'Полезные функции от KimIV'
Функция GetTicketLastPos(). Стр.19
Эта функция возвращает тикет последней открытой позиции или -1.
Функция GetIndexLastPos(). Стр.17
Эта функция возвращает индекс последней открытой позиции или -1.
Функция IndexByTicket(). Стр.12
Возвращает индекс (порядковый номер в общем списке установленных ордеров или открытых позиций) ордера или позиции по тикету. Если функция IndexByTicket() не сможет найти ордер или позицию с нужным тикетом, то она вернёт -1
Благодарю за помощь!
Вот код - я убрал все что не относилось к проблеме:
Нашел причину - надо:
вместо
Спасибо!
Еще базисный вопрос к моему коду выше - точно такой же Индикатор бежит отдельно
и рисует линию в окне ниже основного (а в верхнем окне другой добавляет другие графические обьекты).
Два for-цикла внутри while() заметно подгружают компьютер.
- Можно ли одним кодом одновременно создавать прямоугольники, стрелки и т.д. вверху и линию
(кривая по типу RSI) внизу?