Спасибо за подсказку. Так и думал, что сообщение как не очень выглядит. Буду знать. Поправляю сообщение.
Есть внизу-справа под вашими сообщениями волшебные опции "удалить" и "правка", незачем новым сообщением то же самое писать, достаточно было исправить там ;)
evillive: Для кода есть кнопка сверху в панели редактирования сообщения или комбинация Ctrl+Alt+M, код становится красивым и читаемым. А про потери, ф-ция SetIndexStyle() имеет параметр цвета, используйте его, не стесняйтесь.
Если не трудно подскажите подробней. Мне нужно просто, чтобы в настройках цвета и ширины было так:
№ цвет ширина стиль
0. Black 0 0
1. black 0 0
2. Red 2 0
3. Green 2 0
всегда пропадает ширина, т.е. как будто всегда к стандартным настройкам возвращается.
Не судите строго, просто мне видимо не дано, то что дано вам. Еще при компиляции 2 таких сообщения: not all control paths return a valueSimpleBars.mq41151.
Если не трудно подскажите подробней. Мне нужно просто, чтобы в настройках цвета и ширины было так:
№ цвет ширина стиль
0. Black 0 0
..
всегда пропадает ширина, т.е. как будто всегда к стандартным настройкам возвращается.
Не судите строго, просто мне видимо не дано, то что дано вам. Еще при компиляции 2 таких сообщения: not all control paths return a valueSimpleBars.mq41151.
void SetIndexStyle(
int index, // номер линииint type, // типint style=EMPTY, // стиль линииint width=EMPTY, // ширина линииcolor clr=clrNONE// цвет
);
Если настройки не сохраняются, то, как вариант, у вас недостаточно прав на запись в каталог данных терминала. Это бывает при установке его на системный раздел и работе в обычном режиме. Попробуйте запустить терминал в режиме /portable (ключ прописывается в ярлык на запуск терминала).
И я всегда всем пользователям рекомендовал и буду рекомендовать все программы, какие только можно, устанавливать на несистемный раздел.
Если настройки не сохраняются, то, как вариант, у вас недостаточно прав на запись в каталог данных терминала. Это бывает при установке его на системный раздел и работе в обычном режиме. Попробуйте запустить терминал в режиме /portable (ключ прописывается в ярлык на запуск терминала).
И я всегда всем пользователям рекомендовал и буду рекомендовать все программы, какие только можно, устанавливать на несистемный раздел.
Вы кудесник )) Заменил на EMPTY и все ок по двум индикаторам. Спасибо большое. По поводу "/portable": когда прописываю в настройках строки объекта пишет не правильный путь.
Roman_Bryansk: Вы кудесник )) Заменил на EMPTY и все ок по двум индикаторам. Спасибо большое. По поводу "/portable": когда прописываю в настройках строки объекта пишет не правильный путь.
Выставляем BuyLimit или SellLimit и предполагаемый TakeProfit.
Задача эксперта выставлять всем ордерам StopLoss таким образом, чтоб предполагаемый убыток был в 10 раз меньше предполагаемого прибытка.
Все работает, эксперт постоянно мониторит ордера и, в случае появления нового ордера, или если я изменял в каком-то ордере цену открытия/тейкпрофит, он сразу подгоняет стоплосс под заданные параметры.
Странности начались, когда я решил, что эксперт не должен корректировать стоплоссы тех ордеров, в которых эти стоплоссы выставлены в положение "безубыток".
Я добавил перед модификацией ордера простое условие (ниже в коде оно закомментировано) - эксперт перестал работать. Он вообще перестал модифицировать любые ордера.
Поэкспериментировав, я так и не понял, где моя ошибка, может кто подскажет?
Еще одна странность:
Если "else" заменить на прямое условие "if (OrderType()==OP_SELL)" - то эксперт также перестает работать.
Причину этого я тоже не смог найти.
int i=0;
void start()
{
i=OrdersTotal();
while (i>0)
{
i=i-1;
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if (MathAbs(OrderTakeProfit()-OrderOpenPrice())!=MathAbs(OrderOpenPrice()-OrderStopLoss())*10)
{
if (OrderType()==OP_BUY)
{
//if (OrderOpenPrice()>OrderStopLoss())
OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()-(OrderTakeProfit()-OrderOpenPrice())/10,OrderTakeProfit(),0);
}
else//if (OrderType()==OP_SELL)
{
//if (OrderOpenPrice()<OrderStopLoss())
OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()+(OrderOpenPrice()-OrderTakeProfit())/10,OrderTakeProfit(),0);
}
}
}
}
Спасибо за подсказку. Так и думал, что сообщение как не очень выглядит. Буду знать. Поправляю сообщение.
Для кода есть кнопка сверху в панели редактирования сообщения или комбинация Ctrl+Alt+M, код становится красивым и читаемым. А про потери, ф-ция SetIndexStyle() имеет параметр цвета, используйте его, не стесняйтесь.
Если не трудно подскажите подробней. Мне нужно просто, чтобы в настройках цвета и ширины было так:
№ цвет ширина стиль
0. Black 0 0
1. black 0 0
2. Red 2 0
3. Green 2 0
всегда пропадает ширина, т.е. как будто всегда к стандартным настройкам возвращается.
Не судите строго, просто мне видимо не дано, то что дано вам. Еще при компиляции 2 таких сообщения: not all control paths return a value SimpleBars.mq4 115 1.
Если не трудно подскажите подробней. Мне нужно просто, чтобы в настройках цвета и ширины было так:
№ цвет ширина стиль
0. Black 0 0
..всегда пропадает ширина, т.е. как будто всегда к стандартным настройкам возвращается.
Не судите строго, просто мне видимо не дано, то что дано вам. Еще при компиляции 2 таких сообщения: not all control paths return a value SimpleBars.mq4 115 1.
То есть для первого буфера в вашем случае:
Если настройки не сохраняются, то, как вариант, у вас недостаточно прав на запись в каталог данных терминала. Это бывает при установке его на системный раздел и работе в обычном режиме. Попробуйте запустить терминал в режиме /portable (ключ прописывается в ярлык на запуск терминала).
И я всегда всем пользователям рекомендовал и буду рекомендовать все программы, какие только можно, устанавливать на несистемный раздел.
То есть для первого буфера в вашем случае:
Если настройки не сохраняются, то, как вариант, у вас недостаточно прав на запись в каталог данных терминала. Это бывает при установке его на системный раздел и работе в обычном режиме. Попробуйте запустить терминал в режиме /portable (ключ прописывается в ярлык на запуск терминала).
И я всегда всем пользователям рекомендовал и буду рекомендовать все программы, какие только можно, устанавливать на несистемный раздел.
Вы кудесник )) Заменил на EMPTY и все ок по двум индикаторам. Спасибо большое. По поводу "/portable": когда прописываю в настройках строки объекта пишет не правильный путь.
После компиляции терминал зависает. Не могли бы Вы на примере показать куда необходимо вписать.
Вот
MQL4
Задумка проста:
Выставляем BuyLimit или SellLimit и предполагаемый TakeProfit.
Задача эксперта выставлять всем ордерам StopLoss таким образом, чтоб предполагаемый убыток был в 10 раз меньше предполагаемого прибытка.
Все работает, эксперт постоянно мониторит ордера и, в случае появления нового ордера, или если я изменял в каком-то ордере цену открытия/тейкпрофит, он сразу подгоняет стоплосс под заданные параметры.
Странности начались, когда я решил, что эксперт не должен корректировать стоплоссы тех ордеров, в которых эти стоплоссы выставлены в положение "безубыток".
Я добавил перед модификацией ордера простое условие (ниже в коде оно закомментировано) - эксперт перестал работать. Он вообще перестал модифицировать любые ордера.
Поэкспериментировав, я так и не понял, где моя ошибка, может кто подскажет?
Еще одна странность:
Если "else" заменить на прямое условие "if (OrderType()==OP_SELL)" - то эксперт также перестает работать.
Причину этого я тоже не смог найти.
парни как можно уменьшить дату на один день с этим же временем
например
2015,01,22, 01:00
а нужно следующий получить
2015,01,23 01:00 не могу сообразить как .Спасибо .