Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Товарищи-программисты! Нужна ваша помощь.
Мне надо сделать правку в коде МТ4. Советник-мартин выставляет серию ордеров по порядку через заданную дельту и, начиная с № какой-то нами задаваемой сделки (например с 4-ой), он начинает увеличивать эту дельту на коэффициент.Мне нужно, чтобы эта дельта не растягивалась бесконечно, пока вся серия не закончится. А только до определенного уровня, который мы задаем в настройках (например Max_delta = 50 п.). И когда дельта станет >= Max_delta , она бы принимала это значение постоянно, пока не закончится серия. И потом все с начала.
Вот код программы, где дельта растягивается:
int Delta(int OrdNum){if(Start_order_delta>1){
if(OrdNum>Start_order_delta){
int p=OrdNum-Start_order_delta;
return(Take_profit*MathPow(Delta_exp,p));
}
}
return(Take_profit);
}
Помогите, пожалуйста, в данный код ввести ограничение по дельте.
Свойство CHART_BRING_TO_TOP
Задать его можно, а вот определить текущее значение нельзя.
ChartSetInteger(0,CHART_BRING_TO_TOP,true) - работает.
ChartGetInteger(0,CHART_BRING_TO_TOP,0) - не работает.
Свойство CHART_BRING_TO_TOP
Задать его можно, а вот определить текущее значение нельзя.
ChartSetInteger(0,CHART_BRING_TO_TOP,true) - работает.
ChartGetInteger(0,CHART_BRING_TO_TOP,0) - не работает.
Ну так все логично. Вызов ведь с тремя параметрами, или я ошибаюсь?
Используя второй вариант мы просто получим УСТАНОВКУ значения false, а не определим текущее значение.
По поводу получения значения - нужны четыре параметра (в последний и будет записано текущее значение).
Ну так все логично. Вызов ведь с тремя параметрами, или я ошибаюсь?
Используя второй вариант мы просто получим УСТАНОВКУ значения false, а не определим текущее значение.
По поводу получения значения - нужны четыре параметра (в последний и будет записано текущее значение).
Да, вы ошибаетесь. Допустимы несколько форм записи ChartGetInteger.
Но независимо от формы записи ChartGetInteger получить текущее значение свойства CHART_BRING_TO_TOP невозможно.
Допустимы несколько форм записи ChartGetInteger.
Но независимо от формы записи ChartGetInteger получить текущее значение свойства CHART_BRING_TO_TOP невозможно.
А какое значение возвращает второй вариант функции ChartGetInteger (4-параметрный)? И код ошибки?
А какое значение возвращает второй вариант функции ChartGetInteger (4-параметрный)? И код ошибки?
Значение 0; ошибка 4109 - т.е. такого свойства нет.
Судя по Справочнику, данное свойство просто не поддерживается:
Для второго варианта вызова возвращает true, если данное свойство поддерживается и значение было помещено в переменную long_var, иначе возвращает false.
Код ошибки говорит о том же. Вопрос о том, почему свойство графика CHART_BRING_TO_TOP не поддерживается - на уровне разработчиков.. А если свойство фактически поддерживается, то вопрос опять же на их уровне: почему в таком случае функция ChartGetInteger возвращает false?
Почему в тестере стратегий не происходит событие OnTick. Билд 586. Я сначала думал, что ошибка у меня проге. Запустил на отладку пример Moving Average.mq5. Точку останова установил на первый оператор события OnTick. Реакции не дождался в течении часа.