Посмотрите кто нить оператор

 

Не могу понять...вот что то тут не срабатывает...

Вроде все логично...

OrderSend(Symbol(),OP_BUY,Lot,Ask,3,Ask-25*Point,Ask+50*Point,"",0,0,CLR_NONE);

OrderSend(Symbol(),OP_SELL,Lot,Bid,3,Bid-25*Point,Bid+50*Point,"",0,0,CLR_NONE);

Посмотрите кто нить пожалуйста

 
AYuBelov писал(а) >>

OrderSend(Symbol(),OP_SELL,Lot,Bid,3,Bid-25*Point,Bid+50*Point,"",0,0,CLR_NONE);

Как Вы себе предствляете выставить при открытии селл тейкпрофит выше цены открытия? А вообще что конкретно не работает, где не работает, какие ошибки?

 
AYuBelov писал(а) >>

Не могу понять...вот что то тут не срабатывает...

OrderSend(Symbol(),OP_SELL,Lot,Bid,3,Bid-25*Point,Bid+50*Point,"",0,0,CLR_NONE);

Посмотрите кто нить пожалуйста

Не только тейкпрофит! Стоплосс тож неправильно поставлен.

Поробуйте так:

OrderSend(Symbol(),OP_SELL,Lot,Bid,3,Bid+25*Point,
                             Bid-50*Point,"",0,0,CLR_NONE);
 
Figar0 писал(а) >>

Как Вы себе предствляете выставить при открытии селл тейкпрофит выше цены открытия? А вообще что конкретно не работает, где не работает, какие ошибки?

А вообще все просто. Тестирую возможность установки тейк профита=стоплосс*2 при пробитии максимума/минимума предыдущего бара

Strat()

if (Ask==High[1] || Ask>High[1])
OpenLong();
if (Bid== Low[1] || Bid<Low[1] )
OpenShort();

//----
return(0);
}
//+------------------------------------------------------------------+
int OpenLong() // Функция открытия длинной позиции
{
OrderSend(Symbol(),OP_BUY,Lot,Ask,3,Ask-25*Point,Ask+50*Point,"",0,0,CLR_NONE);
}
return;

//+------------------------------------------------------------------+
int OpenShort() // Функция открытия короткой позиции
{
OrderSend(Symbol(),OP_SELL,Lot,Bid,3,Bid+25*Point,Bid-50*Point,"",0,0,CLR_NONE);
}
return;

 

Ну кто нибудь посмотрите пж код...не могу догнать :(

 

проверять что возвращает OrderSend, GetLastError.. и в соответствии с этим строить дальнейшую логику в зависимости от типа ошибки и т.д.

кроме того переменная Lot определена ?

 
keekkenen писал(а) >>

проверять что возвращает OrderSend, GetLastError.. и в соответствии с этим строить дальнейшую логику в зависимости от типа ошибки и т.д.

кроме того переменная Lot определена ?

Да...глобальная

Компиллятор пропускает...

 
int start()
{

double lot=0.1;

if (Ask<=High[1])
if (OrderSelect(0,SELECT_BY_POS,MODE_TRADES)==false)
OrderSend(Symbol(),OP_BUY,lot,Ask,3,Ask-25*Point,Ask+50*Point);

if (Bid<=Low[1])
if (OrderSelect(0,SELECT_BY_POS,MODE_TRADES)==false)
OrderSend(Symbol(),OP_SELL,lot,Bid,3,Bid+25*Point,Bid-50*Point);

return(0);
}
 
MOLET писал(а) >>

только начал писать код, и тут:

if (Ask==High[1] || Ask>High[1])
OpenLong();
if (Bid== Low[1] || Bid<Low[1] )
OpenShort();

что за хрень ?

как может и == и > быть одновремено?

if (Ask==High[0] || Ask>High[1])
OpenLong();
if (Bid== Low[0] || Bid<Low[1] )
OpenShort();

может так?

Ну я как бы планировал примерно так:

Если Ask равно максимуму предыдущего бара ( [1] ) ИЛИ Ask становится больше максимуму предыдущего бара ( [1] ).....

 
AYuBelov писал(а) >>

Да...глобальная

Компиллятор пропускает...

Уже исправил сморю :) Спасибо

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