Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 1086

 
Tepih8:

Добрый  день.Не подскажите как в МТ4 разместить индикаторы Bollinger Bands и RSI в одном окне. Мне надо наложить Bollinger Bands на RSI.

Спасибо.

Перетягиваете BB на окно с RSI и указываете в качестве цены данные индикатора. Или iBandsOnArray() если писать свой индикатор. 
 
Перенес коммент в начало, а то никто так и не ответил, а очень нужно =/
Можно ли это реализовать: если я нажимаю какую то клавишу, включается одна часть кода индикатора(отвечает за создание объекта ЩЕЛЧКОМ МЫШИ), потом если происходит какое то событие(вторая часть кода, событие может быть, создание того же объекта к примеру), то первая часть кода отключается(а если не сделать этого то объект создается каждым щелчком), и также запустится при нажатии на клавишу, и так по кругу)
 
Добрый день. Помогите написать следующий код, для советника. Хочу сделать через массив (если имеется более оптимальный вариант, прошу помочь). В общем советник отсылает сообщения, но я хочу чтобы советник отсылал их через массив (временный). Т.е. при начале отправки письма советник проверял не отправляли ли данное сообщение раньше (проверял наличие такого сообщения в массиве), если нет отправлял, если письмо находится то отправка опускается. Надеюсь понятно) Спасибо, большое!
 
evillive:
Перетягиваете BB на окно с RSI и указываете в качестве цены данные индикатора. Или iBandsOnArray() если писать свой индикатор. 
   МТ4.    Я пробывал перетягивать Bollinger Bands в окно с RSI. Но он упорно не накладывается. Другие индикаторы накладываются.   Я не понял где указывать в качестве цены данные индикатора ( в Bollinger Bands - нет такой возможности ). Спасибо.
 
Tepih8:
   МТ4.    Я пробывал перетягивать Bollinger Bands в окно с RSI. Но он упорно не накладывается. Другие индикаторы накладываются.   Я не понял где указывать в качестве цены данные индикатора ( в Bollinger Bands - нет такой возможности ). Спасибо.

Перетягивается без проблем, стандартный ББ на любой РСИ. Но именно СТАНДАРТНЫЙ ББ, входящий в поставку терминала, а не самопал. Цену выбирать как на скриншоте:

 в результате получается так 

 
evillive:

Перетягивается без проблем, стандартный ББ на любой РСИ. Но именно СТАНДАРТНЫЙ ББ, входящий в поставку терминала, а не самопал. Цену выбирать как на скриншоте:

 в результате получается так 

Все получилось. Большое спасибо. Да , век учись и все равно .......
 

Добрый день! Последнее время в МТ4 установленном в Windows XP отправка почты из терминала сильно запаздывает, запись в Журнале МТ4 об отправке почты, например: Mail: 'Test message' has been sent, появляется в среднем через 5 минут после подачи команды. При этом в МТ4 установленном в Windows 7, такого глюка не наблюдается.

Подскажите как исправить.

 

Подскажите, как программно изменить раскраску графика в основном окне? Хочу сделать его неярким, чтобы мой индикатор был заметнее. Параметры графика вообще доступны в программе?

 
rabanik:
Добрый день. Помогите написать следующий код, для советника. Хочу сделать через массив (если имеется более оптимальный вариант, прошу помочь). В общем советник отсылает сообщения, но я хочу чтобы советник отсылал их через массив (временный). Т.е. при начале отправки письма советник проверял не отправляли ли данное сообщение раньше (проверял наличие такого сообщения в массиве), если нет отправлял, если письмо находится то отправка опускается. Надеюсь понятно) Спасибо, большое!

Вы точно уверены в постановке задачи?

Просто, существуют варианты:

- не повторять последнее сообщение

- игнорировать устаревшее (задан какой-то лаг по времени), то есть, нужно повторять сообщение.

P.S. Первый вариант - частный случай второго, но, реализуется на порядок проще. Ваша постановка задачи - тоже частный случай второго варианта с бесконечным лагом.

Если Вам это интересно, то, вот решение Вашей задачи.

Определяем два массива - один текстовый, который хранит сообщения, второй - индексный, для поиска сообщений.

Индексный массив имеет тип int. В первом измерении записываем контрольную сумму текстового сообщения. Во второе - номер строки сообщения первого массива. Индексный массив сортируем по первому измерению.

Получаем новое сообщение. Считаем его контрольную сумму. С помощью функции ArrayBsearch() ищем такое сообщение. Если оно не найдено, то это сообщение оригинально. Добавляем его в массив сообщений и, контрольную сумму со ссылкой в индексный массив, не забыв его отсортировать.

Какие варианты для контрольной суммы? Я бы взял такой: учитываем число символов и контрольную сумму текста. Контрольная сумма текста, например, сумма кодов символов. С учетом последних изменений она не может превосходить 65 536*256. То есть, контрольная сумма сообщения может выглядеть так:

число символов умножаем на 10 миллионов и прибавляем контрольную сумму текста.

 

профи! есть проблема с линией по углу.

построил TRENDBYANGLE по координатам

ObjectCreate(0,"anglestok",OBJ_TRENDBYANGLE,0,0,0);
ObjectSet("anglestok",OBJPROP_TIME1,X1); ObjectSet("anglestok",OBJPROP_PRICE1,Y1);
ObjectSet("anglestok",OBJPROP_TIME2,X2); ObjectSet("anglestok",OBJPROP_PRICE2,Y2);

- нужно узнать угол, делаю

anglestok= ObjectGetDouble(0,"anglestok",OBJPROP_ANGLE);

 а он =0, в справке написанно что у линии созданной программой -угол НУЛЬ это ок. 

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

или дал одни координаты - спрашиваю угол - говорит 0. тут же даю другие - говорит угол прошлых координат. ерунда