Не выводятся сделки на график
Atom Ответить
06.11.2013


Никак не получается вывести сделки на график.
События срабатывают, свечи строятся, а вот сделки почему то не отображаются.
У меня версия API 4.1.19 Enterprise.
Может ли быть проблема в версии?
Спасибо.

Теги:


Спасибо:




8 Ответов
IvanB

Фотография
Дата: 07.11.2013
Ответить


kadet Перейти
Никак не получается вывести сделки на график.
События срабатывают, свечи строятся, а вот сделки почему то не отображаются.
У меня версия API 4.1.19 Enterprise.
Может ли быть проблема в версии?
Спасибо.


Сделки приходят в код, в вашу программу?
Спасибо:

kadet

Фотография
Курсы
Дата: 07.11.2013
Ответить


Да, проходят. Но на графике не отображаются.

Напишите пожалуйста стандартный способ вывода сделок на график. Возможно я что то упустил.
Спасибо.
Автор топика
Спасибо:

IvanB

Фотография
Дата: 08.11.2013
Ответить


kadet Перейти
Да, проходят. Но на графике не отображаются.

Напишите пожалуйста стандартный способ вывода сделок на график. Возможно я что то упустил.
Спасибо.


Работа с графиками продемонстрирована в 4-м уроке: 4 lesson (Candles, Charts, Historical data)
Основная суть:
Мы должны получать сделки, например от стратегии, например через использование правила: WhenNewMyTrades
В обработчике этого правила надо выводить на график все полученные сделки, через поток GUI.
В общем все это будет выглядеть примерно так:
Код

            _strategy.WhenNewMyTrades()
                        .Do(mytrades => this.GuiAsync(() =>
                            {
                                mytrades.ForEach(t =>
                                    Chart.ProcessValues(t.Trade.Time, new Dictionary<IChartElement, object>()
                                        {
                                            {_chartTradeElement, t}
                                        }));
                            }))
                        .Apply();

У нас должен быть контрол Chart в окне, должен быть элемент _chartTradeElement:
Код

private ChartTradeElement _chartTradeElement;

который инициализируется:
Код

            _chartTradeElement = new ChartTradeElement();
            _chartArea1.Elements.Add(_chartTradeElement);

где chartArea1:
Код

private ChartArea _chartArea1;

который должен быть инициализирован примерно так:
Код

            _chartArea1 = new ChartArea();
            Chart.Areas.Add(_chartArea1);

Спасибо: kadet

kadet

Фотография
Курсы
Дата: 08.11.2013
Ответить


Спасибо, очень помогли.
Я вместо {_chartTradeElement, t} передавал t.Trade
Автор топика
Спасибо:

kadet

Фотография
Курсы
Дата: 08.11.2013
Ответить


У меня вопрос, почему RealTimeEmulationTrader не выводит сделки на график?
Подписан я на сделки стратегии, но при эмуляции они не выводятся.
В чем может быть проблема?
Спасибо.
Автор топика
Спасибо:

IvanB

Фотография
Дата: 08.11.2013
Ответить


kadet Перейти
У меня вопрос, почему RealTimeEmulationTrader не выводит сделки на график?
Подписан я на сделки стратегии, но при эмуляции они не выводятся.
В чем может быть проблема?
Спасибо.


Если сделки в других случаях выводятся, то надо смотреть чтоб сделки вообще приходили.
Спасибо:

kadet

Фотография
Курсы
Дата: 12.11.2013
Ответить


Да сделки приходят, как и при торговле через квик, но не отображаются на графике.
Автор топика
Спасибо:

IvanB

Фотография
Дата: 13.11.2013
Ответить


kadet Перейти
Да сделки приходят, как и при торговле через квик, но не отображаются на графике.


Запустил проект CandlesChartProject, тот что на сервере, ничего не менял (таймфрейм уменьшил), испытывал на акциях лукойла, вот результат, метки сделок отображаются:
http://gyazo.com/63c10eac3803a2205ade3b8c77085520
Попробуйте получить последнюю версию проекта с сервера и еще раз запустить.
Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy