Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 667

 
nogard37:

Не знаю поможет ли?

Но, попробуйте расчитывать "LOW-delta;" отдельной строкой с получением результата в отдельную переменную и потом его передавать в "OrderSend"

Примерно так:

extern double delta = 350;
int start()
{
   double stop;
   double LOW = iLow(NULL,0,1);  
if(Close[1]<Open[1])
   { 
    stop=LOW-delta;
    send=OrderSend(Symbol(), OP_BUY, Lot,Ask,10,NormalizeDouble(stop*Point,Digits),0,NULL,Magic,0,Green);
   }
 
Forexman77:

Не знаю поможет ли?

Но, попробуйте расчитывать "LOW-delta;" отдельной строкой с получением результата в отдельную переменную и потом его передавать в "OrderSend"

Примерно так:

 


Ты так здорово придумал...

extern double delta = 350;
int start()
{
   double stop;
   double LOW = iLow(NULL,0,1);  

LOW в этом случае получается (для EURUSD, примерно) 1.3525

if(Close[1]<Open[1])
   { 
    stop=LOW-delta;
    send=OrderSend(Symbol(), OP_BUY, Lot,Ask,10,NormalizeDouble(stop*Point,Digits),0,NULL,Magic,0,Green);
   }

и потом из 1.3525 вычитаешь 350... как ты думаешь сколько получится и можно-ли такое значение поставить стопом??? Даже если нормализовать то что получилось.

Хотя, я не проверял. Может и не даст ошибку, просто поставит стоп ниже нуля???

At At At
 
AlexeyVik:

Ты так здорово придумал...

LOW в этом случае получается (для EURUSD, примерно) 1.3525

и потом из 1.3525 вычитаешь 350... как ты думаешь сколько получится и можно-ли такое значение поставить стопом??? Даже если нормализовать то что получилось.

Хотя, я не проверял. Может и не даст ошибку, просто поставит стоп ниже нуля???

Вот так надо:

if(Close[1]<Open[1])
   { 
    stop=LOW-delta*Point;
    send=OrderSend(Symbol(), OP_BUY, Lot,Ask,10,NormalizeDouble(stop*Point,Digits),0,NULL,Magic,0,Green);
   }

 Вернее у меня в советнике так и есть. Не правильно скопировал)

 

 
Forexman77:

Вот так надо:

 Вернее у меня в советнике так и есть. Не правильно скопировал)


И опять с ошибкой...
 
AlexeyVik:

И опять с ошибкой...
В чем ошибка? Советник закрылся как надо.
 
Forexman77:
В чем ошибка? Советник закрылся как надо.


if(Close[1]<Open[1])
   { 
    stop=LOW-delta*Point;
    send=OrderSend(Symbol(), OP_BUY, Lot,Ask,10,NormalizeDouble(stop*Point,Digits),0,NULL,Magic,0,Green);
   }
 
AlexeyVik:

if(Close[1]<Open[1])
   { 
    stop=LOW-delta*Point;
    send=OrderSend(Symbol(), OP_BUY, Lot,Ask,10,stop,0,NULL,Magic,0,Green);
   }
 
Forexman77:
if(Close[1]<Open[1])
   { 
    stop=LOW-delta*Point;
    send=OrderSend(Symbol(), OP_BUY, Lot,Ask,10,stop,0,NULL,Magic,0,Green);
   }


и снова здрасьте ))) нормализацию где-то потеряли на этот раз. куда спешим-то?
 
Здравствуйте, подскажите пожалуйста как получить и обновлять _tst автономный график? У меня только фунт и евро и те устаревшие. А нужны ещё AUDUSD, USDCAD, USDCHF, NZDUSD. Графики нужны для советника-тестера ручный стратегий Simple Forex Tester. Заранее спасибо
 
Может кто делал такое: есть несколько открытых ордеров (пусть 4) из них пусть 2 с положительным профитом и 2 с отрицательным профитом. Необходимо составить матрицу сочетаний сумм профитов (наприменр, 1 положительный и 1 отрицательный, 1 положительный и 2 отрицательных, 2 положительных и 1 отрицательный и т.д.). Затем выявить те сочетания, которые в сумме дают заданный профит (конечно же положительный) и закрыть эти ордера.
Причина обращения: