можно было бы попунктно ответить вам на каждое ваше слово, да не вижу больше смысла. Если кто упирается, тому ничего уже не объяснить. Вопрос сначала стоял в том, как организовать. Потом, когда вы дали подсказку, что глобальные переменные лучше, чем запись в файл, встал вопрос о том, как правильно их сделать. Потом нервный ваш согестник дал кусок кода, не упустив возможность съязвить. Все просто - часть кода идет в блок инициализации, часть блока идет в основной блок советника.
Вот что уходит в блок инициализации:
Вот что уходит в основной блок
Как видите, переменные я переименовал.
Так вот, вторую часть кода я последовательно вставлял, начиная сразу после расчета переменных и все дальше к концу блока start, заканчивая попыткой вставить перед последней фигурной скобкой.
Судя по вашему высокопрофессиональному объяснению, именно это я и должен был сделать, потому что это понятно любому начинающему. По вашему мнению, все должно работать. Но не работает. Вот лучшее, чего мне удалось добиться:
Читайте внимательнее. Эти два блока называются описаниями функций, и их нельзя располагать внутри описаний других функций. В инит надо расположить
{ fGet_MineGV(); }
а в старт аналогичный вызов второй функции. сами функции надо расположить в вашем советнике отдельно, ни в инит, ни в старти нив какой пользовательской функции.
И нервный ваш согестник дал вам не часть кода, а две готовые функции, которые он дя вас написал.
Размер тейкпрофита в валюте депозита возвращает функция OrderProfit(), в пунктах -- цена закрытия минус цена открытия, а как найти последнюю закрытую позициюили где взять готовую функцию для этого объясняли несколько раз, по моему, именно вам.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
не нашел в библиотеке нужную функций
Размер тейкпрофита последней закрытой позиции.
Может у кого-то есть?
допускаются ли такие цепочки ?
if ( (A==1 && B==2) && (C==2 || D==3) && E==4)
т.е. и AND и OR в одной строке?
допускаются ли такие цепочки ?
if ( (A==1 && B==2) && (C==2 || D==3) && E==4)
т.е. и AND и OR в одной строке?
Ответ положительный. А что, в каких-то языках не допускаются? Что, в них приходится приводить всё к конъюнктивно- и дизъюнктивно-норамльным формам?
не нашел в библиотеке нужную функций
Размер тейкпрофита последней закрытой позиции.
Может у кого-то есть?
Напишите сами - там 1 единственный цикл. Просто попробуйте это сделать. А если не получится, то код своего цикла покажете - поможем.
rigonich
можно было бы попунктно ответить вам на каждое ваше слово, да не вижу больше смысла. Если кто упирается, тому ничего уже не объяснить. Вопрос сначала стоял в том, как организовать. Потом, когда вы дали подсказку, что глобальные переменные лучше, чем запись в файл, встал вопрос о том, как правильно их сделать. Потом нервный ваш согестник дал кусок кода, не упустив возможность съязвить. Все просто - часть кода идет в блок инициализации, часть блока идет в основной блок советника.
Вот что уходит в блок инициализации:
Вот что уходит в основной блок
Как видите, переменные я переименовал.
Так вот, вторую часть кода я последовательно вставлял, начиная сразу после расчета переменных и все дальше к концу блока start, заканчивая попыткой вставить перед последней фигурной скобкой.
Судя по вашему высокопрофессиональному объяснению, именно это я и должен был сделать, потому что это понятно любому начинающему. По вашему мнению, все должно работать. Но не работает. Вот лучшее, чего мне удалось добиться:
{Читайте внимательнее. Эти два блока называются описаниями функций, и их нельзя располагать внутри описаний других функций. В инит надо расположить
fGet_MineGV();
}
а в старт аналогичный вызов второй функции. сами функции надо расположить в вашем советнике отдельно, ни в инит, ни в старти нив какой пользовательской функции.
И нервный ваш согестник дал вам не часть кода, а две готовые функции, которые он дя вас написал.
допускаются ли такие цепочки ?
if ( (A==1 && B==2) && (C==2 || D==3) && E==4)
т.е. и AND и OR в одной строке?
Да допускаются,компилятор рассматривает все, что во вложенных круглых скобках, как отдельное сравнение.
Напишите сами - там 1 единственный цикл. Просто попробуйте это сделать. А если не получится, то код своего цикла покажете - поможем.
с циклами у меня проблема.
начало видел много раз...
дальше туман....
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY))
максимум что я могу понять, это то что каждому i присваивается ..что-то...
а вот как дальше с этим месивом i делать...я не представляю...
rigonich
ну вот, наконец начинает что-то проясняться. Итак, короткие строки в фигурных скобках - это вызов функций, а сами функции нужно расположить где-то.
Теперь по порядку.
В инит я добавляю вызов первой функции, делаю это сразу после запуска функции инит, то есть прямо вот так будет корректно, так?
int init() { fGet_MineGV(); } //... и далее мой код, который был ранееаналогично я добавляю в блок старт вызов второй функции. Если я сделаю это сразу после расчета переменных, это будет корректно? Например так:
Вот эти первые 2 шага правильные?
Ну и вообще-то я ему сказал за это спасибо сразу же.подскажите плиз ...как выйти из серии if если условие if=true ?
if
if
if (TRUE) - но нужно начать все заного, и не переходить далее по леснтице
if
if
.......
не нашел в библиотеке нужную функций
Размер тейкпрофита последней закрытой позиции.
Может у кого-то есть?
Размер тейкпрофита в валюте депозита возвращает функция OrderProfit(), в пунктах -- цена закрытия минус цена открытия, а как найти последнюю закрытую позициюили где взять готовую функцию для этого объясняли несколько раз, по моему, именно вам.