Доброго дня Иван. Несколько маленьких вопросов по разным темам.
- Если в стратегию значения индикатора передаются вот так
_strategy = new SquatCandleStrategy(series, (BollingerBands)_chartBollingerElement.Indicator)
при этом вывод на график и запуск стратегии в разных обработчиках, стратегия не будет генерировать сигналы от индикатора, пока не запустится вывод на график?
- Я в стратегии получаю значения индикатора вот так, и стратегия работает ```csharp var currentValueBbLow = _bollinger.LowBand.GetCurrentValue(); var currentValueBbUp = _bollinger.UpBand.GetCurrentValue();
а когда вывожу в debug, то получаю нули. Почему
```csharp
series.ProcessCandle += candle =>
{
if (candle.State != CandleStates.Finished)
return;
var currentValueBbLow = _bollinger.LowBand.GetCurrentValue();
var currentValueBbUp = _bollinger.UpBand.GetCurrentValue();
Debug.WriteLine("{0}, {1}, {2}", candle.ToString(), currentValueBbUp, currentValueBbLow);
};
У меня не выводится график и не приходят свечи по фьючерсам с демосервера, а по акциям в норме. При этом, инструмент торгуется, в стакане котировки идут, в ручную продать/купить могу. Но в таблице всех сделок нет сделок по фьючерсам. В этой таблице фьючерсы включены. Это проблема Квика или моего проекта?
Вернусь к первым вопросам. Если стратегия в таком случае зависит от графика, то чтобы запустить одинаковую стратегию несколько раз, но по разным таймфреймам, как лучше поступить? Получается стратегии запускаются со своими таймфреймами, а график генерирует значения индикатора, которые передаются в стратегии по одному таймфрейму...?
Дайте направление для поиска. Возможно ли информационные логи фильтровать и выводить в какой-то экран или таблицу отдельно. Т.е. стратегия генерирует сигналы, я эти сигналы сейчас отслеживаю на корректность по логам, это не удобно, потому что много других сообщений поступает от стратегии и читабельность сложная. Что посоветуете? В документации вскользь сказано про создание своих Listeners, но информации мало, да и в том ли я направлении мыслю... Или может быть можно изменить StatisticParametrsPanel, как то сигналы стратегии сделать параметрами стратегии и выводить в такую панель название и значение...Что подскажете?
Комментарии (3)
Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий
_strategy = new SquatCandleStrategy(series, (BollingerBands)_chartBollingerElement.Indicator)
series.ProcessCandle += candle => { if (candle.State != CandleStates.Finished) return; var currentValueBbLow = _bollinger.LowBand.GetCurrentValue(); var currentValueBbUp = _bollinger.UpBand.GetCurrentValue(); Debug.WriteLine("{0}, {1}, {2}", candle.ToString(), currentValueBbUp, currentValueBbLow); };
Такое свойство я нашел не у лог-менеджера, а у слушателя. Может я не там ищу? ```csharp var signalStrategy = new GuiLogListener(SignalStrategy); signalStrategy.Filters.Add(msg => msg.Level == LogLevels.Info); _logManager.Listeners.Add(signalStrategy)); _logManager.Sources.Add(_breakdownBbStrategy);
У параметра msg есть свойство msg.Message, может как то надо его конкретизировать?
signalStrategy.Filters.Add(msg => msg.Message == Message.???);
По сути, Ваши записи, отправленные в лог, ничем не отличаются от тех, которые записывает система, разве что текстом сообщения. Вот, поэтому, если Вам надо найти исключительно свои сообщения, то нужно, правильно Вы написали, использовать фильтрацию по сообщению, но: