[АРХИВ]Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 5. - страница 54
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Какого типа константы : MA_TALKING_LONG , MA_TALKING_SHORT ?
как вы их объявляете ?
Учитывайте видимость переменных и массивов
Задал в глобальных... та же ошибка.
Какого типа константы : MA_TALKING_LONG , MA_TALKING_SHORT ?
как вы их объявляете ?
покажите заголовок (объявление) вот этой функции GetStateMa() - проблема там
исправьте на GetStateMa(int signal){} должно попустить
покажите заголовок (объявление) вот этой функции GetStateMa() - проблема там
исправьте на GetStateMa(int signal){} должно попустить
В общем, суть такая. Тут мне один профи. поправил эксперт, который у меня работал чётко. Была задача чтоб 4 разных сигналам открывался 1 ордер только, и каждый сигнал генерировался отдельно и просчитывался отдельно. Он мне поправил эксперт, но попутал логику.
Вот я начал разгребать его код... Пишет просто жестоко, второй день всматриваюсь.
До этого было вот так у него:
в старте:
А вот функции что б было понятно что к чему:
Вообще дико такое видеть, что функция т.к. void ничего не должна возвращать по определению, но, тем не менее, она возвращает значение элемента массива signal[i]
Мне вот интересно, часто такое применяют опытные программисты? Или это уже слишком?
Щяс я пытаюсь написать то что нужно, видя приёмы, которые в том эксперте присуствуют. Т.к. без массивов там не обойтись.
В общем, суть такая. Тут мне один профи. поправил эксперт, который у меня работал чётко. Была задача чтоб 4 разных сигналам открывался 1 ордер только, и каждый сигнал генерировался отдельно и просчитывался отдельно. Он мне поправил эксперт, но попутал логику.
Вот я начал разгребать его код... Пишет просто жестоко, второй день всматриваюсь.
До этого было вот так у него:
в старте:
А вот функции что б было понятно что к чему:
Вообще дико такое видеть, что функция т.к. void ничего не должна возвращать по определению, но, тем не менее, она возвращает значение элемента массива signal[i]
Мне вот интересно, часто такое применяют опытные программисты? Или это уже слишком?
Щяс я пытаюсь написать то что нужно, видя приёмы, которые в том эксперте присуствуют. Т.к. без массивов там не обойтись.
Применяют часто, секрет в int&, double&
Я это уже понял, но по-моему это уже извращение. Зачем делать функцию void тогда? Это ж не логично. Нада возвратить что-то.. возврати через функцию типа int, double...
Как быть?
Я это уже понял, но по-моему это уже извращение. Зачем делать функцию void тогда? Это ж не логично.
Это логично.
Эта функция ничего не возвращает, она проделывает операции над элементами переданного в неё массива.
Вот моя функция модификация отложенного ордера. При модификации я задаю новую цену и новый стоплосс. Функция частично работает, но почему-то в тестере сыпяться ошибки 1.
Верно ли моя функция написана?
if((b_mod) && (priceB > Ask)) OrderModify(b_ticket,priceB,priceS,0,0,Brown);
if((s_mod) && (priceS < Bid)) OrderModify(s_ticket,priceS,priceB,0,0,Brown);
Здесь надо учитывать стоплевел MarketInfo(Symbol(),MODE_STOPLEVEL) т.е.
priceB >= Ask+ MarketInfo(Symbol(),MODE_STOPLEVEL)*Point
priceS < =Bid- MarketInfo(Symbol(),MODE_STOPLEVEL)*Point
Это логично.
Эта функция ничего не возвращает, она проделывает операции над элементами переданного в неё массива.
Ну так если в функцию типа double или int передать элементы, то она тоже может проделать те же операции, тока уже без извращений. Зачем усложнять жизнь?