Color in CloseOrder

 
Color in CloseOrder
Не отображаются символы-пиктограммы по инструкции закрытия позиции CloseOrder в советнике:
CloseOrder(Ord(Cnt,VAL_TICKET),Ord(Cnt,VAL_LOTS),Ask,FactorOfSymbol*Slippage,YELLOW);
Цвета варьировал - не помогает.
При этом System tester при тестировании на истории значки исправно рисует.
MetaTrader 3.66 #4849. Подобное наблюдал и на более ранних версиях.
ОС - Windows XP SP1 rus, Windows NT4 Server SP6.
Это только у меня так?
 
Забыл добавить - при этом ордера превосходно закрываются.
 
а галочка Arrows on the chart стоит?
 
Re: а галочка Arrows on the chart стоит?
Как я понимаю, галочка "Arrows on the chart" имеет отношение только к System tester. Естественно, при тестировании при вкл. галочке - символы рисуются, при выкл. - не рисуются.
При работе эксперта на демо-счете независимо от выставленного "Arrows on the chart" символы рисуются только при открытии ордера:
SetOrder(OP_SELL,Lots,Bid,FactorOfSymbol*Slippage,0,0,BLUE);
при закрытии ордера:
CloseOrder(Ord(Cnt,VAL_TICKET),Ord(Cnt,VAL_LOTS),Ask,FactorOfSymbol*Slippage,YELLOW);
никаких символов не появляется.
 
Привожу исходник простейшего эксперта, рисующего символы на графике только при открытии ордера, а при закрытии - нет
Эксперт открывает ордер buy и через минуту закрывает.


/*[[
Name :=
Author :=
Notes :=
Update on every tick := Yes
Link :=
Lots := 0.1
Stop Loss := 0
Take Profit := 0
Trailing Stop := 0
]]*/

Vars: Cnt(0),Slippage(100);
Defines: AdvisorOpenTrades(0);

If FreeMargin<100 Then Exit;

AdvisorOpenTrades=0;
For Cnt=1 To TotalTrades
{If Ord(Cnt,VAL_SYMBOL)=Symbol Then
{AdvisorOpenTrades=1;
};
};

If AdvisorOpenTrades<1 Then
{SetOrder(OP_BUY,Lots,Ask,Slippage,0,0,RED);
Exit;
};

For Cnt=1 To TotalTrades
{If Ord(Cnt,VAL_SYMBOL)=Symbol Then
{If (CurTime-Ord(Cnt,VAL_OPENTIME))/60>=1 Then
{CloseOrder(Ord(Cnt,VAL_TICKET),Ord(Cnt,VAL_LOTS),Bid,Slippage,YELLOW);
Exit;
};
};
};



Красные символы (RED) рисуются исправно, а желтых (YELLOW) вообще не видно. В чем моя ошибка?

 
Возможная причина ошибки!!!
Просьба обратить внимание разработчиков.

Смотрим в MetaQuotes Language Dictionary Syntax функции:
CloseOrder(order,lots,price,slippage,color); - 5 параметров

А теперь смотрим в MetaQuotes Language Dictionary Example функции:

if iRSI(14,0) > 75 then
begin
CloseOrder(OrderValue(1,VAL_ORDER),Ask,3,Red); - 4 параметра
exit;
end;



Компилятор MQL выдает ошибку при 4 параметрах.

Вопросы разработчикам:
- сколько изначально было параметров у CloseOrder?
- если этих параметров вначале было 4, возможно, остались баги в компиляторе?

 
ошибка в Dictionary, исправим
Причина обращения: