Советник в разных терминалах ?

 
Кто нить может объяснить, почему на терминале одного брокера выставляются хеджевые ордера а на других нет ?
А может где ошибка в коде, буду благодарен за помощь. P.S. И еще не всегда закрывается второй ордер.

int start()
{
int total, count, OrderID = 1121;
double TotalProfit, TotalCommission;

//----
total = OrdersTotal();
if (total == 0)
{
OrderSend("USDCAD",OP_BUY,0.1,Ask,3,0,0,NULL,OrderID,0,CLR_NONE);
OrderSend("QMN8",OP_SELL,0.1,Bid,3,0,0,NULL,OrderID,0,CLR_NONE);
}
else
{
for (count=0;count<total;count++)
{
if (OrderSelect(count, SELECT_BY_POS, MODE_TRADES) == true)
{
TotalProfit += OrderProfit();
TotalCommission += OrderCommission();
}
}
Print("Total Profit - "+TotalProfit + "Total Commission - "+TotalCommission);
if ((TotalProfit-TotalCommission)>10)
{
for (count=0; count<total;count++)
{
if (OrderSelect(count, SELECT_BY_POS)== true && OrderMagicNumber() == OrderID)
{
if (OrderType()== OP_BUY)
{
OrderClose(OrderTicket(),OrderLots(),Bid,0,CLR_NONE);
}
if (OrderType()== OP_SELL)
{
OrderClose(OrderTicket(),OrderLots(),Ask,0,CLR_NONE);
}
}
}
}
TotalProfit = 0;
TotalCommission = 0;
//----
}
return(0);
}
 
Alex99:
Кто нить может объяснить, почему на терминале одного брокера выставляются хеджевые ордера а на других нет ?
А может где ошибка в коде, буду благодарен за помощь. P.S. И еще не всегда закрывается второй ордер.

i

Слишком примитивный код!

код работающий с ордерам и не может быть так примитивен


где обработки ошибок?

где после этого повторы на попытку закрыть - отрыть ?

где взведенные флаги на необходимость закрытия или открытия?

где попытки рекконекта в случае постоянной ошибки после нескольких нескольких ошибках ?

где блокировка потока ? при мультивалютке ни как не обойтись


этот код никогда не будет работать как надо



я выдал практически все вопросы которые вам надо решить!

 
YuraZ:
Alex99:
Кто нить может объяснить, почему на терминале одного брокера выставляются хеджевые ордера а на других нет ?
А может где ошибка в коде, буду благодарен за помощь. P.S. И еще не всегда закрывается второй ордер.

i

Слишком примитивный код!

код работающий с ордерам и не может быть так примитивен


где обработки ошибок?

где после этого повторы на попытку закрыть - отрыть ?

где взведенные флаги на необходимость закрытия или открытия?

где попытки рекконекта в случае постоянной ошибки после нескольких нескольких ошибках ?

где блокировка потока ? при мультивалютке ни как не обойтись


этот код никогда не будет работать как надо



я выдал практически все вопросы которые вам надо решить!

Спасибо за советы, я пока новичок в этом деле, но будем стараться.

 
Alex99:

Спасибо за советы, я пока новичок в этом деле, но будем стараться.

первое что решите обработку ошибки торговый поток занят

в статьях на сайте есть великолепный готовый пример Андрея - Komposter

потом ошибки возможные ошибки при реквотах

хедж с малым профитом как у вас! может закрываться с минусом ибо запаздывание по ошибке или просто

запаздывание могут прикрыть один ордер а второй просто опаздать

потому правильный хедж эксперт должен висеть не только на одной паре а сразу на нескольких

по возможности самых тиковых типа GBPJPY при этом торговаться на других парах

вероятность попасть на пик профита по хеджу сразу возрастает в несколько раз

и при тиках с нескольких пар более высокая вероятность успеть закрыть хедж даже с небольшим профитом

но то на демо

на реале будут реквоты задержки вплоть до нескольких минут

и хедж с малым профитом будет вам в убыток

 
Подскажите пожалуйста в чем проблема,у одного брокера советник нормально работает а у другого не торгует,если поставить ручное подтверждение сигналы дает,если не ставить выдает ошибку 130,но со стопами все впорядке,у брокера ограничений на автом.торговлю тоже нет!!
 
2405765:
Подскажите пожалуйста в чем проблема,у одного брокера советник нормально работает а у другого не торгует,если поставить ручное подтверждение сигналы дает,если не ставить выдает ошибку 130,но со стопами все впорядке,у брокера ограничений на автом.торговлю тоже нет!!


вероятно


MODE_STOPLEVEL 14 Минимально допустимый уровень стоп-лосса/тейк-профита в пунктах


он тоже дает 130

посмотрите свои стопы и тейки

посмотрите MODE_STOPLEVEL на том брокере

 

YuraZ ответь пожалуйста еще на один вопрос, почему у одного брокера (даже в таком примитивном коде) выставляются два ордера у другого нет ?
Вчера у троих тестировал только у одного открывались два, причем советник был только на одном графике. У остальных на каком графике был советник на том и открывалась позиция. В чем может быть причина ?

 
Alex99:

YuraZ ответь пожалуйста еще на один вопрос, почему у одного брокера (даже в таком примитивном коде) выставляются два ордера у другого нет ?
Вчера у троих тестировал только у одного открывались два, причем советник был только на одном графике. У остальных на каком графике был советник на том и открывалась позиция. В чем может быть причина ?

точно сказать сложно код ошибки посмотрите после посылки ордера


вероятно торговый поток успел освободиться

на других брокерах не успел например у них слишком медленное исполнение а вы за первой коммандой сразу вторую без обработки блокировок

 

YuraZ огромное спасибо, ошибок куча. Есть над чем работать.

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