Page 1 of 1

Отрисовка "стрелок" в индикаторах.

Posted: 13 Dec 2012
by ZAKST
Здравствуйте.

Пытаюсь сделать в индикаторах вывод различных информационных значков. Написал пересечение двух скользящих и отображение стрелок через IArrowObject. На истории стрелки рисуются. В реальном времени нет.

Вот фрагмент кода, рисующий стрелки:

Code: Select all

if (cross.CrossUp(fast_ema, slow_ema)) buy = true;
else
if (cross.CrossDown(fast_ema, slow_ema)) sell = true;

#region ShowMarker
if (ShowMarker == SelectorMarker.Yes)
{
if (buy)
{
buy = false;
aOb = DrwArrow.Create(new ChartPoint(Bars.TimeValue, Bars.HighValue), false);
aOb.Style = EArrowForms.ArrowForm3;
aOb.Size = 5;
aOb.Color = Color.Green;
}
else
{
if (sell)
{
sell = false;
aOb = DrwArrow.Create(new ChartPoint(Bars.TimeValue, Bars.LowValue), true);
aOb.Style = EArrowForms.ArrowForm3;
aOb.Size = 5;
aOb.Color = Color.Yellow;
}
}
}
#endregion
В приложении написанный мною индикатор.

Не могли бы Вы привести небольшой пример как это сделать?

Спасибо.

Re: Отрисовка "стрелок" в индикаторах.  [SOLVED]

Posted: 13 Dec 2012
by Henry MultiСharts
Здравствуйте, ZAKST.

Пожалуйста, добавьте строку [RecoverDrawings(false)] в Ваш код:

Code: Select all

[SameAsSymbol(true)] // Vivodom v okne instrumenta
[RecoverDrawings(false)]
public class zMADouble_v2 : IndicatorObject

Re: Отрисовка "стрелок" в индикаторах.

Posted: 13 Dec 2012
by ZAKST
Спасибо, заработало :)

Только теперь похоже, что нужно стрелки выводить только один раз. Иначе каша получается.