[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 1078

 
RekkeR:

Спасибо.


Кстати, в папке профилей лежат папки, принадлежащие каждому отдельному профилю. В них находятся *.CHR-файлы - их тож можно открывать блокнотом. Похоже, что там такой же синтаксис.
 
rensbit:


СПС, проверю
 
Galion:

Приветствую! n - переменных принимают одно из двух значений, варианты сочетаний которых должны передавать в p -переменную одно из 4х значений. Подскажите, как это может быть в коде?

приведите конкретный пример - "вариантов сочетаний" и их передачу в p-переменную.

почему 4х значений?

 
sergeev:

приведите конкретный пример - "вариантов сочетаний" и их передачу в p-переменную.

почему 4х значений?


Спасибо, но похоже я ввел вас в забдуждение неправильным описание условий)))
Попробую так.
bool n_1,
n_2,
n_3,
n_4,
n_5;
int p;
если n_2 && n_3 истина, то p = 101
если n_4 && n_5 истина, то p = 102
если n_1 && n_2&&n_5 истина, то p = 104
если n_2 && n_3&& n_4&&n_5истина, то p = 105

переменных n может быть много и хочется уйти от множества if
 
Galion:

Спасибо, но похоже я ввел вас в забдуждение неправильным описание условий)))
Попробую так.
bool n_1,
n_2,
n_3,
n_4,
n_5;
int p;
если n_2 && n_3 истина, то p = 101
если n_4 && n_5 истина, то p = 102
если n_1 && n_2&&n_5 истина, то p = 104
если n_2 && n_3&& n_4&&n_5истина, то p = 105

переменных n может быть много и хочется уйти от множества if


Попробуйте использовать двичное кодирование

Само просится

 
Привет всем! Помогите мне-чайнику в mql4 создать советник. Начало функции старт такое: проверяем на H1 графике последнюю полностью сформировавшуюсю свечу за прошлый час. Если цена закрытия прошлой свечи больше цены её открытия, то сразу производим ордер на покупку и ждём 1 час пока полностью сформируется следующая часовая свеча. После полного её формирования сразу проверяем её. Если у неё также цена закрытия больше цены её открытия, то ждём следующую полностью сформировавшуюсю. А если у неё цена открытия больше цены закрытия, то закрываем ордер.
 
drknn:


Объявляем перемнную (а), в которую внесём цену Аск. В старте советника пересчитываем ордера. Если ордеров нет, то переменную обнуляем. Далее делаем проверку - если переменная равна нулю, то вносим в неё Аск и расставляем ордера от этого уровня. Понятно, что на следующем тике программа увидит, что ордера есть и не тронет переменную "А", содержащую прежний аск. И понятно так же и то, что до тех пор, пока ордера в рынке есть, значение переменной "а" останется неизменным.

2. Если нужно сохранить параметры ордера, то их нужно запросить с сервера и сохранить в переменные или в массив. Один раз сделать и не трогать до тех пор, пока ордер уже станет ненадобен.

Вы не нашли этого в учебнике потому, что автор учебника старался максимально ясно изложить своё видение языка. Но этот учебник не охватывает вопросов взаимодействия компа в системе "Сервер-Клиент". Учебник, как и справка в метаэдиторе лишь слегка касается этих вопросов. Новичок попросту не задумывается, что происходит на текущем тике и что произойдёт на следующем. Он ошибочно считает, чо на следующем тике будет всё то же самое. Но это ошибка - серьёзная ошибка - на следующем тике будет совершенно иное поведение программы, так как значения переменных изменились из-за того, что пришла новая цена на предыдущем! И это особенно важно при построении программ, работающих по принципам кибернетического автомата - то есть обладающих памятью о том, в каком состоянии автомат находится.

Посетители форума могут дать Вам готовые решения Ваших задач. Только толку от этого не будет. Самое лучшее - это помочь Вам осознать логику работы и стимулировать к овладению языком как инструментом. Самое лучшее, что Вы тут можете почерпнуть, это Ваши личные знания, которые будут работать на Вас годами. Знания и умение их применять.


Спасибо за совет, но хотел бы узнать как запомнить значения с помощью массивов. Если выставить отложенные ордера и чтобы при модификации сохранить либо takeprofit, либо stoploss в них а другие значения изменять. И как поступить если ордер стал рыночным, у него можно менять takeprofit и stoploss, а в "OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),OrderTakeProfit());" обязательно нужно указывать цену открытия, как ее обозначить? пробовал 0, пропускать, указывать старую цену, выдает ошибку.
 
rensbit:

Блин, класно получилось !!!!!!!!!!

СПАСИБО !!!!!!!!!!!!!!!!!!!!!!!!!!!

 

Добрый день !

При использовании индикатора ASCTrend1sig https://www.mql5.com/ru/code/8329 (при тестировании эксперта с ним) - очень медленная скорость теста: 1 часовая свеча проверяется 1-2 секунды. С чем это связано ? Из-за индикатора ?

 

Помогите мне-чайнику в mql4 создать начало кода. Начало функции старт такое: проверяем на H1 графике последнюю полностью сформировавшуюсю свечу за прошлый час. Если цена закрытия прошлой свечи больше цены её открытия, то сразу производим ордер на покупку и ждём пока полностью сформируется следующая часовая свеча. После полного её формирования сразу проверяем её. Если у неё также цена закрытия больше цены её открытия, то ждём следующую полностью сформировавшуюсю. А если у неё цена открытия больше цены закрытия, то закрываем ордер.

С помощью каких операторов и команд это реализовать и помогите создать или выложите этот участок кода.

Заранее спасибо!

Причина обращения: