Добрый день, форумчане.
Есть ли какая-нибудь возможность создать рабочие кнопки и обрабатывать ими события OnChartEvent() ?
Везде в документации написано, что нельзя, однако в Маркете есть продукт: https://www.mql5.com/ru/market/product/15164
Этот человек как-то умудрился заставить работать кнопки во время тестирования (если демо скачать и проверять его), но блин, как??)
p.s Мой код функции:
Думаю что тот человек не использовал OnChartEvent в тестере.
Думаю что тот человек не использовал OnChartEvent в тестере.
Мне не известны другие способы симулировать нажатие
Ну ведь все вводные даны, надо только немного кода написать, чтобы понять.
string GetProperties( const string Name ) { static const ENUM_OBJECT_PROPERTY_INTEGER Property[] = {OBJPROP_COLOR, OBJPROP_STYLE, OBJPROP_WIDTH, OBJPROP_BACK, OBJPROP_ZORDER, OBJPROP_HIDDEN, OBJPROP_SELECTED, OBJPROP_READONLY, OBJPROP_TYPE, OBJPROP_TIME, OBJPROP_SELECTABLE, OBJPROP_CREATETIME, OBJPROP_LEVELS, OBJPROP_LEVELCOLOR, OBJPROP_LEVELSTYLE, OBJPROP_LEVELWIDTH, OBJPROP_ALIGN, OBJPROP_FONTSIZE, OBJPROP_RAY_RIGHT, OBJPROP_ELLIPSE, OBJPROP_ARROWCODE, OBJPROP_TIMEFRAMES, OBJPROP_ANCHOR, OBJPROP_XDISTANCE, OBJPROP_YDISTANCE, OBJPROP_STATE, OBJPROP_XSIZE, OBJPROP_YSIZE, OBJPROP_XOFFSET, OBJPROP_YOFFSET, OBJPROP_BGCOLOR, OBJPROP_CORNER, OBJPROP_BORDER_TYPE, OBJPROP_BORDER_COLOR}; string Str = NULL; for (int i = 0; i < ArraySize(Property); i++) Str += EnumToString(Property[i]) + " = " + (string)ObjectGetInteger(0, Name, Property[i]) + "\n"; return(Str); } void OnTick() { static const bool Init = ObjectCreate(0, __FILE__, OBJ_BUTTON, 0, 0, 0); Comment(GetProperties(__FILE__)); }
Запускаем в тестере и нажимаем на кнопочку. Все станет очевидно.
ЗЫ О чудо, это и в пятерке работает! Всем страждущим написать эмулятор ручной торговли в MT5 - Welcome.
Ну ведь все вводные даны, надо только немного кода написать, чтобы понять.
Запускаем в тестере и нажимаем на кнопочку. Все станет очевидно.
ЗЫ О чудо, это и в пятерке работает! Всем страждущим написать эмулятор ручной торговли в MT5 - Welcome.
Denis Glaz:
Я правильно понял, нужно считывать свойство OBJPROP_STATE чтобы понять что кнопку я нажал, и если значение true, то открыть ордер?
Да.
Только тут есть но, а если я успею нажать и отпустить кнопку между тиками (т.е между вызовами функции), то функция не успеет задетектить нажатие, так?
OnTimer.
Крутое решение, спс)) ещё один момент: клавиша ведь нажата некоторое время, а не успеет оно 2 ордера отправить если таймер сработает дважды, пока я мышц держу нажатой?
Вы еще ничего не начали писать, а уже пытаетесь решить гипотетические вопросы. Начните ваять и все получится само-собой.
Вы еще ничего не начали писать, а уже пытаетесь решить гипотетические вопросы. Начните ваять и все получится само-собой.
Вы еще ничего не начали писать, а уже пытаетесь решить гипотетические вопросы. Начните ваять и все получится само-собой.
я пробовал такое в мт5 - не работает.
в мт4 - работает без проблем.- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Добрый день, форумчане.
Есть ли какая-нибудь возможность создать рабочие кнопки и обрабатывать ими события OnChartEvent() ?
Везде в документации написано, что нельзя, однако в Маркете есть продукт: https://www.mql5.com/ru/market/product/15164
Этот человек как-то умудрился заставить работать кнопки во время тестирования (если демо скачать и проверять его), но блин, как??)
p.s Мой код функции: