Скачать MetaTrader 5

Помогите разобраться

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
KLMNC
194
KLMNC 2011.01.16 17:23 

Всем добрый вечер!

Если не сложно, помогите разобраться. У меня советник при поступлении одного сигнала открывает сделку, и пока эту сделку не закроет - новую не открывает.

А мне нужно, чтоб он после открытия сделки, мог открывать еще сделки, если поступает соответствующий сигнал.

Заранее спасибо.

o_o
Модератор
23881
o_o 2011.01.16 17:28  
KLMNC:

какой совет вам нужен?

кусок кода вставить или в учебник послать?

o_o
Модератор
23881
o_o 2011.01.16 17:30  

if(CalculateCurrentOrders(Symbol())==0)

вот здесь думайте.

KLMNC
194
KLMNC 2011.01.16 17:31  
sergeev:

какой совет вам нужен?

кусок кода вставить или в учебник послать?



Кусок кода вставить :)
KLMNC
194
KLMNC 2011.01.16 17:32  
sergeev:

if(CalculateCurrentOrders(Symbol())==0)

вот здесь думайте.



Думаю, но что-то не очень получается...
Yuri
634
Yuri 2011.01.16 17:42  
Или жмите на F1 в МетаЭдиторе, поставив курсор на название функции.
KLMNC
194
KLMNC 2011.01.16 17:46  
yuripk:
Английсого не знаете, чтобы перевести название функции, то Гугл или аналогичные сайты в помощь, или в словарь смотрите.


Перевод я знаю.

Но, к сожалению, Вы, наверное, невнимательно ознакомились с моим вопросом. Поэтому, я так понимаю, и не смогли дать вразумительный ответ.

BBC
1627
BBC 2011.01.16 18:08  
KLMNC:

Всем добрый вечер!

Если не сложно, помогите разобраться. У меня советник при поступлении одного сигнала открывает сделку, и пока эту сделку не закроет - новую не открывает.

А мне нужно, чтоб он после открытия сделки, мог открывать еще сделки, если поступает соответствующий сигнал.

Заранее спасибо.


Вряд ли Вам нужен какой-то дополнительный кусок кода.

Разберитесь в простом вопросе, почему не открывает, если есть сигнал.

Найдите то место в своем коде, которое запрещает открытие новой позиции.

KLMNC
194
KLMNC 2011.01.16 18:17  
DhP:


Вряд ли Вам нужен какой-то дополнительный кусок кода.

Разберитесь в простом вопросе, почему не открывает, если есть сигнал.

Найдите то место в своем коде, которое запрещает открытие новой позиции.

Вот эта часть кода, я так понимаю. Но незнаю как ее верно изменить... Если несложно, подскажите что и как нужно изменить.

int CalculateCurrentOrders(string symbol)
{
int buys=0,sells=0;

for(int i=0;i<OrdersTotal();i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;
if(OrderSymbol()==Symbol() && OrderMagicNumber()==MAGICMA)
{
if(OrderType()==OP_BUY) buys++;
if(OrderType()==OP_SELL) sells++;
}
}

if(buys>0) return(buys);
else return(-sells);
}
BBC
1627
BBC 2011.01.16 18:23  
KLMNC:
Вот эта часть кода, я так понимаю. Но незнаю как ее верно изменить... Если несложно, подскажите что и как нужно изменить.

int CalculateCurrentOrders(string symbol)
{
int buys=0,sells=0;

for(int i=0;i<OrdersTotal();i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;
if(OrderSymbol()==Symbol() && OrderMagicNumber()==MAGICMA)
{
if(OrderType()==OP_BUY) buys++;
if(OrderType()==OP_SELL) sells++;
}
}

if(buys>0) return(buys);
else return(-sells);
}
Если не знаете, зачем Вам эта функция, - удалите....)
KLMNC
194
KLMNC 2011.01.16 18:26  
DhP:
Если не знаете, зачем Вам эта функция, - удалите....)


Если удалить:), то тогда он открывает сделки пачками.
123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий