[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 2. - страница 496

 

if(trendUP==true)

{

OrderSend(Symbol(),OP_BUY,Lot,Ask,3,Bid-200*Point,Bid+35*Point);

TP=OrderOpenPrice()+35*Point-Close[0];

}

if(trendDOWN==true)

{

OrderSend(Symbol(),OP_SELL,Lot,Bid,3,Ask+200*Point,Ask-35*Point);

TP=Close[0]-OrderOpenPrice()+35*Point;

}

OrderSelect(OrdersTotal()-1,SELECT_BY_POS);


if ((OrderType()==OP_BUY)&&(TP<3*Point))

{
OrderModify(OrderTicket(),0,Bid-4*Point,Bid+4*Point,0,Blue);
if (TP<Bid+4*Point)
{
TP=Bid+4*Point;
}
}

if ((OrderType()==OP_SELL)&&(TP<3*Point))
{
OrderModify(OrderTicket(),0,Ask+4*Point,Ask-4*Point,0,Blue);
if (TP>Ask-4*Point)
{
TP=Ask-4*Point;
}
}


помогите пожалуйста с кодом, смысл такой - когда close подбирается к TP ближе чем на 3 пункта, то образуется "рамка" из TP и SL в 4 пункта, нужно чтобы рамка только поднималась иначе в ней не будет смысла, но по какой-то причине когда цена падает рамка следует за ценой, без рамки советник не делает ни одной убыточной сделки, с рамкой советник уходит в ноль

 
LazarevDenis:


помогите пожалуйста с кодом, смысл такой - когда close подбирается к TP ближе чем на 3 пункта, то образуется "рамка" из TP и SL в 4 пункта, нужно чтобы рамка только поднималась иначе в ней не будет смысла, но по какой-то причине когда цена падает рамка следует за ценой, без рамки советник не делает ни одной убыточной сделки, с рамкой советник уходит в ноль

if ((OrderType()==OP_SELL)&&(TP<3*Point))

добавьте еще проверку, что при новый SL buy-ордера выше, а sell-ордера ниже текущего значения

 
LazarevDenis:

вроде в mql4 такого нет, но есть в mql5

не путайте MQL4 и MT4
 

Добрый день.

Вот такая беда выскакивает время от времени во вкладке Эксперты. Галочка "Разрешить импорт DLL... " стоит.

15:30:02 DVD 100-50 cent EURUSD,M1: expert function calls are not allowed; 'stdlib'-'ErrorDescription'
15:30:02 DVD 100-50 cent EURUSD,M1: expert stopped

Примерно переводится как - вызываемая советником функция не разрешена.

 
kerakz:

Добрый день.

Вот такая беда выскакивает время от времени во вкладке Эксперты. Галочка "Разрешить импорт DLL... " стоит.

15:30:02 DVD 100-50 cent EURUSD,M1: expert function calls are not allowed; 'stdlib'-'ErrorDescription'
15:30:02 DVD 100-50 cent EURUSD,M1: expert stopped

Примерно переводится как - вызываемая советником функция не разрешена.


а галочка разрешить импорт внешних экспертов?
 
LazarevDenis:

а галочка разрешить импорт внешних экспертов?

она стояла, когда первый раз эта ошибка высветилась. я её убрал, и с тех пор в течение 3 мес. 6-7 раз повторялась.
 

Всем привет!

Стратегия предусматривает наличие двух сигналов: главного и второстепенного. Сделка открывается при появлении второго сигнала не позднее чем через 12 часов. Вопрос: как научить советник не реагировать на сигнал, если он появляется позднее чем через 12 часов??

 
demlin:

Всем привет!

Стратегия предусматривает наличие двух сигналов: главного и второстепенного. Сделка открывается при появлении второго сигнала не позднее чем через 12 часов. Вопрос: как научить советник не реагировать на сигнал, если он появляется позднее чем через 12 часов??


Сохранять время появления первого сигнала и проверять разницу времени при наступлении второго. Больше заданного, обнуление переменных и ничего не делаем
 
Vinin:

Сохранять время появления первого сигнала и проверять разницу времени при наступлении второго. Больше заданного, обнуление переменных и ничего не делаем
Алгоритм я понял, проблема в том, какими командами его осуществить. Я пока не работал с временем вообще.
 
demlin:
Алгоритм я понял, проблема в том, какими командами его осуществить. Я пока не работал с временем вообще.

Есть разные способы. Двумя словами не отделаешься
Причина обращения: