Графика

Пример рисования различных фигур на графике.

using TSLab.Script; using TSLab.Script.GraphPane; using TSLab.Script.Handlers; namespace examples_of_a_graph { public class Examples_of_graph : IExternalScript { public void Execute(IContext ctx, ISecurity sec) { if (ctx.BarsCount < 20) return; // мало баров для рисования. var i = ctx.BarsCount - 1; var point_1 = new MarketPoint(sec.Bars[i - 1].Date, sec.Bars[i - 1].High); var point_4 = new MarketPoint(sec.Bars[i - 4].Date, sec.Bars[i - 4].Low); var point_10 = new MarketPoint(sec.Bars[i - 10].Date, sec.Bars[i - 10].High); var point_15 = new MarketPoint(sec.Bars[i - 15].Date, sec.Bars[i - 15].Low); /* Очистка интерактивных объектов*/ ctx.First.ClearInteractiveObjects(); /* Точка на максимуме бара, который раньше предпоследнего бара на 10 баров*/ ctx.First.AddInteractivePoint("Point", PaneSides.RIGHT, false, ScriptColors.Yellow, point_10); /* Линия, где начальная точка минимум бара. Конечная точка максимум предпоследнего бара. */ ctx.First.AddInteractiveLine("Interactive Line", PaneSides.RIGHT, false, ScriptColors.Red, InteractiveLineMode.Finite, point_4, point_1); ctx.First.AddInteractiveLine("Interactive Line1", PaneSides.RIGHT, false, ScriptColors.Red, InteractiveLineMode.Finite, point_10, point_4); /* Интерактивная простая линия по максимуму предпоследнего бара. (Вертикальная) */ ctx.First.AddInteractiveSimpleLine("interactive simple line", PaneSides.RIGHT, false, ScriptColors.Orange, InteractiveSimpleLineMode.Vertical, point_1); /* Добавление текста на график, над максимумом предпоследнего бара */ ctx.First.AddInteractiveText("Hello world", PaneSides.RIGHT, false, ScriptColors.Yellow, point_4).Text = "Hello world"; /* Добавление интерактивного Фибоначчи */ ctx.First.AddInteractiveFibonachi("interactive Fibonacci", PaneSides.RIGHT, false, ScriptColors.Red, point_15, point_1); } } }