Можно подробнее, покажите скриншот или опишите ситуауию
Например, МАСД. Ручками можно описать уровень. Вопрос как сделать это программными средствами?
У каждой MQL4 программы можно указать дополнительные специфические параметры #property, которые помогают клиентскому терминалу правильно обслуживать программы без необходимости их явного запуска. В первую очередь это касается внешних настроек индикаторов. #property идентификатор значение
|
Можно подробнее, покажите скриншот или опишите ситуауию
Например, МАСД. Ручками можно описать уровень. Вопрос как сделать это программными средствами?
Мне надо, чтобы горизонтальные уровни были подписаны.
Парадокс, можно задать цвет стиль значение, а описать нет ничего. Может пробел в возможностях MQL4?
Мне надо, что горизонтальные уровни были подписаны.
ObjectCreate( "MACD_level_1", OBJ_HLINE, 1, 0, 0.001 );Проверил. Не работает, гад! А зачем тогда нужен такой дескриптор, который на графике не виден?
ObjectSetText( "MACD_level_1", "Первонах" );
Ну тогда остается либо OBJ_LABEL, либо и впрямь создавать Фибо по "цене" и программно назначать уровни вместе с описаниями.
double Level_1=0.001,Level_2=-0.0005; ObjectCreate( "MACD_level_1", OBJ_HLINE, 1, 0,Level_1 ); ObjectCreate( "MACD_level_text1", OBJ_TEXT, 1, TimeCurrent( ) ,Level_1 ); ObjectSetText( "MACD_level_text1", "Level 1",10, "Times New Roman", White ); ObjectCreate( "MACD_level_2", OBJ_HLINE, 1, 0, Level_2 ); ObjectCreate( "MACD_level_text2", OBJ_TEXT, 1, TimeCurrent( ) ,Level_2 ); ObjectSetText( "MACD_level_text2", "Level 2",10,"Times New Roman", White );
Правда, позиционировать текст относительно линий для различных периодов довольно сложно.
Всё же отбразить названия уровней возможно:
double Level_1=0.001,Level_2=-0.0005; ObjectCreate( "MACD_level_1", OBJ_HLINE, 1, 0,Level_1 ); ObjectCreate( "MACD_level_text1", OBJ_TEXT, 1, TimeCurrent( ) ,Level_1 ); ObjectSetText( "MACD_level_text1", "Level 1",10, "Times New Roman", White ); ObjectCreate( "MACD_level_2", OBJ_HLINE, 1, 0, Level_2 ); ObjectCreate( "MACD_level_text2", OBJ_TEXT, 1, TimeCurrent( ) ,Level_2 ); ObjectSetText( "MACD_level_text2", "Level 2",10,"Times New Roman", White );
Правда, позиционировать текст относительно линий для различных периодов довольно сложно.
Есть такие функции:
void SetLevelValue( | int level, double value) |
level | - | Номер уровня (0-31). |
value | - | Значение для указанного уровня. |
void SetLevelStyle( | int draw_style, int line_width, color clr=CLR_NONE) |
draw_style | - | Стиль линии. Может быть одним из перечисленных стилей линии. Пустое значение (EMPTY) указывает, что стиль не будет изменен. |
line_width | - | Ширина линии. Допустимые значения - 1,2,3,4,5. Пустое значение (EMPTY) указывает, что ширина не будет изменена. |
clr | - | Цвет линии. Пустое значение CLR_NONE указывает, что цвет не будет изменен. |
Через них можно все задать, а вот сделать простое описание не возможно. Обратите внимание на количество возможных уровней (0-31).
indicator_levelN |
double |
горизонтальный уровень N в отдельном окне индикатора, где N от 1 до 8 |
Через #property indicator_levelN их всего 8. Явная не стыковка и пробел в MQL4.
Свою задачу пока решил так: программно задаю уровни (они у меня динамично изменяются), а текст набиваю ручками. Текст остается, если не удалять индикатор.
1. Не нужно путать уровни (32) с индикаторными линиями (8).
2. Графические объекты могут быть привязаны к окну индикатора двумя способами:
а) координатами в пикселях экрана (например, OBJ_LABEL);
б) координатами цены и времени (например, OBJ_TEXT).
Если макс и мин. индикатора жёстко закреплены, то можно использовать
б).
Если макс и мин не фиксированы, то нужно использовать а), при
этом на каждом баре пересчитывать координату по времени - сдвигать
объект вправо на 1 бар (если этого не делать, то граф. объект всё
время будет ехать влево). Координату по Y можно пересчитывать
только если уровни по ходу работы меняются.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Кто знает, как описать горизонтальные уровни для индикаторов? Перерыл все документацию - ничего не нашел.