Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 814
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Как организовать массив типа int на 1 млрд. значений и затем провести его сортировку? Приведите, пожалуйста, пример.
Пока что стандартными средствами MQL4 я могу организовать массив чисел int размером всего лишь 2 млн значений.
Как организовать массив типа int на 1 млрд. значений и затем провести его сортировку? Приведите, пожалуйста, пример.
Пока что стандартными средствами MQL4 я могу организовать массив чисел int размером всего лишь 2 млн значений.
Хорошее желание. Прошу Вас сосчитать размер необходимой памяти
Конечно же не верно, хотя компилятор исправит, но кто знает, правильно он исправит или нет? Может подставить ==, а может и !=, а может и вовсе не исправит, а просто проверку проигнорирует и выставит всегда истину.
Скомпилируйте код с #property strict, там ещё много чего править надо.
Если нужно проверить пересечение 2-х МА, то это не равенством проверяется, критерий должен быть вроде "если МА1(2)<MA(2) и MA1(1)>MA(1) - то вторая МА пересекла первую МА вверх на предыдущей свече". А равенство можно год ждать.
И что такое while(true), по-вашему?
Далее:
while(true) - цикл, где подхватываю тренд:
-если ордер пробивается по стопу (Time>0) я выставляю его на то же место где он был;
- а если дорастает до определенного уровня(NormalizeDouble(OrderOpenPrice()+TP*Point,Digits)<=NormalizeDouble(Ask,Digits)), то переходит в другой цикл (в котором условие - тип ордера), где происходит вычисления профита в пунктах и в зависимости от этого модифицируется.
Насчет условия ""если МА1(2)<MA(2) и MA1(1)>MA(1) - то вторая МА пересекла первую МА вверх на предыдущей свече"" , цифры в скобках означают свечи? Вот мой вариант MA>Open[0] || MA<Open[0], пойдет?
#property strict прописал, исправил ошибки.
Изменил способ получения профита в пунктах теперь: полученную разницу между текущей ценой и ценой открытия я стал делить на Point(строка 217 и 271).
Сделал преобразования типов в строках: 218, 272, 369. Верно?
Появились 2 ошибки:
possible use of uninitialized variable 'Prof' Test3.mq4 222 15
possible use of uninitialized variable 'Prof' Test3.mq4 275 15
Уважаемые знатоки...недавно начал познавать азы mql4...у меня к вам вопрос...допустим у меня есть основной индикатор и фильтры...если выполняется одно условие на основном инди, то с ним должны совпадать определенные условия с фильтров, если же на основном инди выполняется другое условие, то у фильтров должны выполняется другие условия...мне это нужно для открытия сделки...Могу ли я использовать в данной ситуации знак || или все же не могу...любой ответ прошу доступно пояснить, так как еще дуб дубом...С уважением!
Уважаемые знатоки...недавно начал познавать азы mql4...у меня к вам вопрос...допустим у меня есть основной индикатор и фильтры...если выполняется одно условие на основном инди, то с ним должны совпадать определенные условия с фильтров, если же на основном инди выполняется другое условие, то у фильтров должны выполняется другие условия...мне это нужно для открытия сделки...Могу ли я использовать в данной ситуации знак || или все же не могу...любой ответ прошу доступно пояснить, так как еще дуб дубом...С уважением!
while(true) - цикл, где подхватываю тренд:
И когда, по-вашему, должен закрыться этот вот цикл
?
Насчет условия ""если МА1(2)<MA(2) и MA1(1)>MA(1) - то вторая МА пересекла первую МА вверх на предыдущей свече"" , цифры в скобках означают свечи? Вот мой вариант MA>Open[0] || MA<Open[0], пойдет?
Да, в скобках номер свечи, для которой берётся зачение МА. Да, пойдёт и с ценой открытия.
Изменил способ получения профита в пунктах теперь: полученную разницу между текущей ценой и ценой открытия я стал делить на Point(строка 217 и 271).
Сделал преобразования типов в строках: 218, 272, 369. Верно?
Для расчёта прибыли в пунктах вполне достаточно переменной Profit (обьявить как целочисленный), остальные две - лишние:
Ну и в кодобазе много тралов стоплосса есть, зачем лисапет изобретать, да ещё с прямоугольными колёсами???
И когда, по-вашему, должен закрыться этот вот цикл
?
Исправил:
if(R==0)
{
while(true)
{
Sleep(30000);
Alert("Ошибка!");
DeleteBuy=OrderDelete(OrderTicketBuy);
DeleteSell=OrderDelete(OrderTicketSell);
return(1);
}
}
Расчет прибыли тоже.
Вставил в цикл while (true) сообщение и обработку ошибок. Цикл работает,сообщение пишется, ошибок нет. Но не проходит по условию, данные будто не обновляются.
Вставил в цикл while (true) сообщение и обработку ошибок. Цикл работает,сообщение пишется, ошибок нет. Но не проходит по условию, данные будто не обновляются.
Дам ещё подсказок.
Вот этот цикл рассматривает не все ордера, кроме того, если ордеров одного типа больше, чем один (например, выставлено три ордера байстоп), то что тогда будет?
Вот тут сначала рассматривается тип ордера, а уже потом этот ордер выбран, вобще-то должно быть наоборот, сначала выбрать ордер, а уже если ордер выбран - смотреть его тип и по-всякому над ним глумиться:
И в "свитче-который-типа-тралит-стоплосс", почему именно continue везде??? И когда будет исполнена вот эта строчка, в одном и во втором свитче?