← 返回

Как в CandleChart привязать серию к определенной шкале?

Как в CandleChart привязать индикатор к шкале ценового графика?

评论 (28)

登录创建账户, 登录或注册以发表评论

Sergey Masyura
Sergey Masyura

Сергей Гаврилов: Как в CandleChart привязать индикатор к шкале ценового графика?

Задается через имя ChartArea у серии.


_chartAreaCandles = new ChartArea("ChartAreaCandles")
{
    ...
}

chart.ChartAreas.Add(_chartAreaCandles);

        	_seriesCandles = new Series("SeriesCandles")
        	{
			ChartArea = "ChartAreaCandles",
        		ChartType = SeriesChartType.Candlestick,
			XValueType = ChartValueType.DateTime,
			IsXValueIndexed = true,
			ToolTip = "#VALX{yyyy-MM-dd HH:mm:ss}\n\nHigh: #VALY2\nLow: #VALY\nOpen: #VALY3\nClose: #VALY4"
        	};

        	_seriesPeak = new Series("SeriesPeak")
        	{
        		ChartArea = "ChartAreaCandles",
        		ChartType = SeriesChartType.Line,
        		XValueType = ChartValueType.DateTime,
        		IsXValueIndexed = true,
        		BorderWidth = 2,
			Color = Color.DarkBlue,
			ToolTip = "#VALX{yyyy-MM-dd HH:mm:ss}\n\nPeak: #VALY"
        	};

        	chart.Series.Add(_seriesCandles);
		chart.Series.Add(_seriesPeak);

Сергей Гаврилов
Сергей Гаврилов 作者

Наверно не точно выразился.. Меня интересут AmCharts (Stock Chart), который используется в примерах StockSharp.. Ваш код очевидно относится к MSChart?

Mikhail Sukhov
Mikhail Sukhov

Сергей Гаврилов: Наверно не точно выразился.. Меня интересут AmCharts (Stock Chart), который используется в примерах StockSharp.. Ваш код очевидно относится к MSChart?

Мы отказались от AmCharts.

Сергей Гаврилов
Сергей Гаврилов 作者

Mikhail Sukhov:

Сергей Гаврилов: Наверно не точно выразился.. Меня интересут AmCharts (Stock Chart), который используется в примерах StockSharp.. Ваш код очевидно относится к MSChart?

Мы отказались от AmCharts. А что теперь пользуете?

Mikhail Sukhov
Mikhail Sukhov

Сергей Гаврилов:

Mikhail Sukhov:

Сергей Гаврилов: Наверно не точно выразился.. Меня интересут AmCharts (Stock Chart), который используется в примерах StockSharp.. Ваш код очевидно относится к MSChart?

Мы отказались от AmCharts. А что теперь пользуете?

О чем выше писали.

Daenur
Daenur

А по каким причинам отказались? Чем MSChart показался лучше?

Mikhail Sukhov
Mikhail Sukhov

Daenur: А по каким причинам отказались? Чем MSChart показался лучше?

Гибче. Меньше багов. Бесплатен.

Supervisor
Supervisor

Mikhail Sukhov:

Daenur: А по каким причинам отказались? Чем MSChart показался лучше?

Гибче. Меньше багов. Бесплатен. А удавалось запускать под WPF?

Dmitriy Klimov
Dmitriy Klimov

Mikhail Sukhov:

Daenur: А по каким причинам отказались? Чем MSChart показался лучше?

Гибче. Меньше багов. Бесплатен.

Здравствуйте, Михаил. Планируете ли заменить в примерах AmCharts на MSChart? Если да, то когда?

Alexander
Alexander

Dmitriy Klimov:

Mikhail Sukhov:

Daenur: А по каким причинам отказались? Чем MSChart показался лучше?

Гибче. Меньше багов. Бесплатен.

Здравствуйте, Михаил. Планируете ли заменить в примерах AmCharts на MSChart? Если да, то когда?

Дмитрий, примеры все открыты. Если есть желание и время - можно их самому заменить и выложить на codeplex. Могу добавить к проекту на codeplex.

У нас пока ни планов ни времени на это нет.

esper
esper

Да, в проекте с индикаторами есть пример.

Supervisor
Сергей Гаврилов
Сергей Гаврилов 作者

А нет ли в планах сделать на базе MSChart контрол полностью заточенный под биржевые дела? Что-то типа StоckChartX... А то хоть MSChart и гибче, но уж слишком навороченный (это не мои слова, а слова создателя ZedGraph)

Dmitriy Klimov
Dmitriy Klimov

esper: Да, в проекте с индикаторами есть пример. Добрый день. Пробовал открыть этот пример (IndicatorsXaml), но в References не хватает библиотеки Indicators. Можете выложить рабочий пример с MSChart?

Alexander
Alexander

Dmitriy Klimov:

esper: Да, в проекте с индикаторами есть пример. Добрый день. Пробовал открыть этот пример (IndicatorsXaml), но в References не хватает библиотеки Indicators. Можете выложить рабочий пример с MSChart?

проект Indicators есть на codeplex

Dmitriy Klimov
Dmitriy Klimov

Alexander Mukhanchikov: проект Indicators есть на codeplex

Да, там я и нашел пример IndicatorsXaml, но он у меня открывается с ошибками и не компилится. Вот скрин: http://screencast.com/t/g7QK98me4t

Alexander
Alexander

Dmitriy Klimov:

Alexander Mukhanchikov: проект Indicators есть на codeplex

Да, там я и нашел пример IndicatorsXaml, но он у меня открывается с ошибками и не компилится. Вот скрин: http://screencast.com/t/g7QK98me4t

Откройте через солюшен Indicators.sln и там уже работайте Союшена IndicatorsXaml нет, проект отдельно не открывайте.

Dmitriy Klimov
Dmitriy Klimov

Alexander Mukhanchikov: Откройте через солюшен Indicators.sln и там уже работайте Союшена IndicatorsXaml нет, проект отдельно не открывайте.

Спасибо! Понял свою ошибку. Теперь при открытии проекта осталось две ошибки: http://screencast.com/t/KzYCUUBu Я так понимаю, среда не видит компонент CandleChart. Что может быть не так?

Dmitriy Klimov
Dmitriy Klimov

Пример с MSChart теперь компилится, но при запуске выскакивает следующее исключение: http://screencast.com/t/EmQTzpHn

Что-то не то с приведением типов. Только не понял, в каком месте...

esper
esper

С тех пор как писался этот пример прошло много времени, проект с индикаторами существенно поменялся, а пример с MSChart не переписывался, попробуйте убрать отрисовку пика и дна, оставив только свечки, должно заработать.

P.s. поправил проект, должно работать

Dmitriy Klimov
Dmitriy Klimov

esper: С тех пор как писался этот пример прошло много времени, проект с индикаторами существенно поменялся, а пример с MSChart не переписывался, попробуйте убрать отрисовку пика и дна, оставив только свечки, должно заработать.

P.s. поправил проект, должно работать

Спасибо, теперь работает. Жалко, что у MSChart нет таких интерактивных возможностей, как масштабирование, скролинг и т.д., как было у amCharts. Придется дописывать...

esper
esper

Dmitriy Klimov: Спасибо, теперь работает. Жалко, что у MSChart нет таких интерактивных возможностей, как масштабирование, скролинг и т.д., как было у amCharts. Придется дописывать... Все должно быть, просто в этом примере не используется.

Supervisor
Supervisor

Dmitriy Klimov: Спасибо, теперь работает. Жалко, что у MSChart нет таких интерактивных возможностей, как масштабирование, скролинг и т.д., как было у amCharts. Придется дописывать... Все есть, нужно только включить и настроить. Очень полезный проект со множеством примеров по которому можно все изучить: http://archive.msdn.microsoft.com/mschart

Pantov
Pantov

Добрый день! Когда открываю проект Indicators на панели элементов появляется компонент CandleChart(IndicatorXaml) закрываю исчезает. Как этот элемент туда поместить для дальнейшего использования в других проектах, спасибо?

freelancer
freelancer

Вы не поверите, но надо просто взять и перенести. Посмотрите его на codeplex http://stocksharp.codeplex.com/SourceControl/changeset/view/12879#79866

Pantov
Pantov

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

freelancer
freelancer

Да зачем он вам там ? Сделайте как в примерах всё

Pantov
Pantov

Всеже, если не трудно, скажите как это сделать?

freelancer
freelancer

Берете те 2 файла: IndicatorsChart.xaml и IndicatorsChart.xaml.cs. Копируете к себе в проект. Получается пользовательский элемент управления. В вашем окне (куда вы хотите его прилепить) пишете: xmlns:IndicatorsXaml="clr-namespace:IndicatorsXaml" и <IndicatorsXaml:CandleChart x:Name="_candleChart" />

Pantov MaximMM