Добрый день
Предложения по доработке.
1) Shell. Bug-репорт. Плодятся показатели при бэктестинге. (Сообщение пользователя Replikant)
Решение.
В файле Strategies/CommonXAML/StatisticAndPnlLayoutGroup.xaml.cs
дополнить метод public void BindStraetegy(Strategy strategy) следующей строкой
StatisticParameterGrid.Parameters.Clear();
public void BindStraetegy(Strategy strategy)
{
if (_strategy != null) _strategy.PnLChanged -= Strategy_PnLChanged;
EquityCurveChart.Clear();
_pnl = EquityCurveChart.CreateCurve("PNL", Colors.Green, ChartIndicatorDrawStyles.Area);
_unrealizedPnL = EquityCurveChart.CreateCurve("unrealizedPnL", Colors.Black, ChartIndicatorDrawStyles.Line);
_commissionCurve = EquityCurveChart.CreateCurve("commissionCurve", Colors.Red, ChartIndicatorDrawStyles.Line);
_strategy = strategy;
StatisticParameterGrid.Parameters.Clear();
StatisticParameterGrid.Parameters.AddRange(_strategy.StatisticManager.Parameters);
_strategy.PnLChanged += Strategy_PnLChanged;
}
2) В каждой стратегии нет связи контрола dxe:CheckEdit x:Name="CheckEditUseMarketDepth" со свойством UseDepths,
аналогично и для контрола dxe:CheckEdit x:Name="CheckEditGenerateMarketDepth" - свойство GenerateDepths.
Решение для SmaStrategy (для других стратегий - аналогично).
В конструкторе public SmaTestingControl() подписываемся на следующие события
CheckEditUseMarketDepth.EditValueChanged += CheckEditUseMarketDepth_EditValueChanged;
CheckEditGenerateMarketDepth.EditValueChanged += CheckEditGenerateMarketDepth_EditValueChanged;
private void CheckEditGenerateMarketDepth_EditValueChanged(object sender, DevExpress.Xpf.Editors.EditValueChangedEventArgs e)
{
_generateDepths = Convert.ToBoolean(e.NewValue);
}
private void CheckEditUseMarketDepth_EditValueChanged(object sender, DevExpress.Xpf.Editors.EditValueChangedEventArgs e)
{
_useDepths = Convert.ToBoolean(e.NewValue);
}