Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 2087
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Амм... секундочку
сначала ChartTimePriceToXY +/- пиксели
затем назад ChartXYToTimePrice
сначала ChartTimePriceToXY +/- пиксели
затем назад ChartXYToTimePrice
Большое спасибо, буду пробовать
1. Почему при смене ТФ не прорисовываются (или не обновляют свои значения на графике) графические объекты?
2. Как сделать так, чтобы графический объект выравнивался над свечкой также ровно при смене масштаба (или переключения ТФ), как это делает какой-нибудь индикатор Фрактал. При смене масштаба графический объект либо наседает на график, либо улетает в небо
У меня такой костыль.))) Более менее, не пиксели конечно, но в меру удобно. И с пикселями заморочек нет. Это в ОнИнит расчет. На 500 или 300 барах. Сравнение с нулем это для тиковых графиков.
Всем доброго времени суток!
Вопрос по mql4 по отложенным ордерам. Например, текущая цена Bid = 1.3000 я выставил Sell Limit. И приказал ему открыться по цене Bid 1.3030. То есть , существует только одно условие преобразования моего Sell Limit в рыночный - достижение ценой значения 1.3030 .
ВОПРОС 1 Позволяет ли mql4 запрограммировать второе(третье ...десятое) условие преобразования моего Sell Limit в рыночный. В моем случае, мне нужно преобразовать мой Sell Limit в рыночный если цена Bid достигнет нужного уровня 1.3030 (первое условие) и если при этом цена Bid сначала дойдет до уровня 1.3031, или немного(максимум на 5 п.) выше (второе условие).По сути мне нужно что бы цена сначала дошла до 1.3031 (или немного выше) и опустилась на 1 или несколько пунктов и после этого преобразовать мой Sell Limit в рыночный. Выставить отложенный ордер с уровня 13031(или немного выше) я не могу так как расстояние слишком мало .
Если это возможно то при помощи какой функции или языковой конструкции? ВОПРОС 2 Если в mql4 запрограммировать то что мне нужно невозможно, то возможно ли это в mql5 и при помощи какой функции или языковой конструкции?
Всем спасибо за помощь.
Отложеный не получится. Маленькое расстояние. Без отложенного. Кодом. Если Bid = 1.3000
Всем здравствуйте!
MQL5.
Подскажите пожалуйста как обработать события подокна графика.
Функция OnChartEvent() на события с объектами, находящимися в подокне почему-то не реагирует.
Всем здравствуйте!
MQL5.
Подскажите пожалуйста как обработать события подокна графика.
Функция OnChartEvent() на события с объектами, находящимися в подокне почему-то не реагирует.
Неправда. Я только-что проверил. Всё реагирует.
Неправда. Я только-что проверил. Всё реагирует.
А я только что проверил - не реагирует.
Или вы думаете, я от скуки сюда пишу, развлекаюсь так?
Ошибаетесь.
Если я создаю объект в основном окне, то чарт ивент работает.
Объект перемещается мышью, кнопки тоже на клик мышью реагируют нормально.
Если же я, не меняя ничего, просто создаю тот же объект в подокне, то он перестает перемещаться, события нажатий кнопок отсутствуют.
Видимо есть какой-то нюанс, при работе в подокне, но в справочнике я ничего не нашел.
Поэтому и задал вопрос здесь.
А я только что проверил - не реагирует.
Если же я, не меняя ничего, просто создаю тот же объект в подокне,
Это сильно смущает...
Покажите ту часть кода - так будет легче и быстрее
Это сильно смущает...
Покажите ту часть кода - так будет легче и быстрее
прописываю объект - свою панель
class CControlsTS : public CWndContainer
-------
теперь в индикаторе уже
CControlsTS *pts1;
int OnInit()
{
....
pts1=new CControlsTS; //
pts1.Create(ChartID(),"CControlsTS",panel_wind,x1,y1,x2,y2);
....
return(INIT_SUCCEEDED);
};
----------------
переменная panel_wind в зависимости от выбора пользователя в инпутах может принимать значение либо "0" - основной график,
либо либо номер подокна графика через panel_wind = ChartWindowFind() .
то есть я в настройках выбираю, где мне создавать панель.
ну а он ивент прописан стандартно
в коде индикатора:
void OnChartEvent(const int id,
const long &lparam,
const double &dparam,
const string &sparam)
{
pts1.OnEvent(id,lparam,dparam,sparam);
};
и в самом классе:
EVENT_MAP_BEGIN(CControlsTS)
ON_EVENT(ON_DRAG_START,m_LifeTime,OnDialogDragStart)
ON_EVENT_PTR(ON_DRAG_PROCESS,m_drag_object,OnDialogDragProcess)
ON_EVENT_PTR(ON_DRAG_END,m_drag_object,OnDialogDragEnd)
ON_NAMED_EVENT(ON_CLICK,m_ButtonUp,UpButtonClick)
ON_NAMED_EVENT(ON_CLICK,m_ButtonDown,DownButtonClick)
EVENT_MAP_END(CWndContainer)
Фишка в том, что в основном окне панелька мышью перемещается, а в подокне нет.
И события кнопочек не срабатывают в подокне.