JackSparrow
|
Дата: 20.12.2011
|
|
|
|
|
Alexander Mukhanchikov:
JackSparrow:
Alexander Mukhanchikov:
JackSparrow:
Почему бы не сделать директорией по умолчанию ту что задается в гидре? Помоему упростит воприятие и изучение.
Какая именно директория задаётся в гидре?
А если гидра не была ни разу запущена?
В Гидре мы задаем директорию для дампа и для данных, то есть временную и постоянную. Имя диретории пишем в базу.
В примере мы берем данные из постоянной директории но указываем ее руками причем данные берем в том виде в котором их складывает Гидра, а если Гидра не запускалась то один способ это взять данные из архива идущего с сорцами, но он тоже в формате сток-шарпа или Гидры.
Еще по поводу того что Гидра не запускалась. Весь проект заточен под свой формат данных, данные поставляет Гидра, полюбому с ней дружить, ну а если она не запускадлась то значение по умолчанию в примере будет "пустое".
Идея понятна, но примеры и так сильно устарели - их давно надо все переписать на событийную модель.
Есть желание всем этим заняться и самому обновить на codeplex?
Александр я могу взять на себя только ограниченные обязательства, то есть без твердых гарантий по срокам и качеству.
И я только начал вникать в продукт, поэтому мне нужна будет помощь в некоторых вопросах, по крайней мере на первых порах.
|
|
|
|
Спасибо:
|
|
|
|
|
|
Alexander
|
Дата: 20.12.2011
|
|
|
|
|
JackSparrow:
Alexander Mukhanchikov:
JackSparrow:
Alexander Mukhanchikov:
JackSparrow:
Почему бы не сделать директорией по умолчанию ту что задается в гидре? Помоему упростит воприятие и изучение.
Какая именно директория задаётся в гидре?
А если гидра не была ни разу запущена?
В Гидре мы задаем директорию для дампа и для данных, то есть временную и постоянную. Имя диретории пишем в базу.
В примере мы берем данные из постоянной директории но указываем ее руками причем данные берем в том виде в котором их складывает Гидра, а если Гидра не запускалась то один способ это взять данные из архива идущего с сорцами, но он тоже в формате сток-шарпа или Гидры.
Еще по поводу того что Гидра не запускалась. Весь проект заточен под свой формат данных, данные поставляет Гидра, полюбому с ней дружить, ну а если она не запускадлась то значение по умолчанию в примере будет "пустое".
Идея понятна, но примеры и так сильно устарели - их давно надо все переписать на событийную модель.
Есть желание всем этим заняться и самому обновить на codeplex?
Александр я могу взять на себя только ограниченные обязательства, то есть без твердых гарантий по срокам и качеству.
И я только начал вникать в продукт, поэтому мне нужна будет помощь в некоторых вопросах, по крайней мере на первых порах.
На codeplex зарегистрированы? необходимо зарегистрироваться и сообщить ник. мы добавим к проекту.
|
|
|
|
Спасибо:
|
|
|
|
|
|
JackSparrow
|
Дата: 20.12.2011
Alexander Mukhanchikov:
На codeplex зарегистрированы? необходимо зарегистрироваться и сообщить ник. мы добавим к проекту.
Я добавлен уже
|
|
|
|
Спасибо:
|
|
|
|
|
|
Dmitriy Klimov
|
Дата: 02.01.2012
Снова наблюдаю проблемы в SampleHistoryTesting:
- Свечи генерируются (либо стратегия вызывается) во время, не кратное заданному таймфрейму.
- При котировании сделка совершается с задержкой 5 и даже 10 минут!
Сделал скрины из Excel-отчета: http://screencast.com/t/CcyByGmudfM
Дайте знать, если я ошибся в выводах...
|
|
|
|
Спасибо:
|
|
|
|
|
|
Mikhail Sukhov
|
Дата: 02.01.2012
Dmitriy Klimov:
Дайте знать, если я ошибся в выводах...
Дайте знать, если у нас что-то неправильно работает.
|
|
|
|
Спасибо:
|
|
|
|
|
|
Dmitriy Klimov
|
Дата: 03.01.2012
Mikhail Sukhov:
Дайте знать, если у нас что-то неправильно работает.
В примере SampleRealTimeTesting тоже не все гладко. Я настроил его на подключение к Quik, задал период 1 минута и в качестве инструмента выбрал RIH2. Для проверки вывел скользящие в Quik, чтобы проверять время появления заявок. После запуска стратегия сразу же вошла в короткую позицию и спустя некоторое время вышла из нее, хотя для этого не было необходимых условий - пересечения скользящих. При этом выход из позиции занял продолжительное время и было сделано более ста! заявок. Прилагаю скриншот: http://screencast.com/t/Q38aF0NbknD
|
|
|
|
Спасибо:
|
|
|
|
|
|
Garic
|
Дата: 03.01.2012
Котирование - это выставление заявок в стакан и двигание (снятие заявки и выставление новой)по мере исполнения условий выбранного котировщика. Что и видно на скриншоте - заявка отменялась пока не исполнилась.
Заявок может быть сколько угодно, хоть тыща пока не пройдёт сделка (это может быть и через минуту и через час) или не остановите котировщик.
Если не надо - не используйте котирование.
|
|
|
|
Спасибо:
|
|
|
|
|
|
Mikhail Sukhov
|
Дата: 03.01.2012
Dmitriy Klimov:
Mikhail Sukhov:
Дайте знать, если у нас что-то неправильно работает.
В примере SampleRealTimeTesting тоже не все гладко.
Я так и не понял, у нас ошибка или так и должно быть? Приведите строчку с логами, где видна ошибочная ситуация.
|
|
|
|
Спасибо:
|
|
|
|
|
|
fau
|
Дата: 04.01.2012
|
|
|
|
|
|
|
Mikhail Sukhov
|
Дата: 04.01.2012
fau:
переписал пример под событийную модель (пользовался примерами с форума)
http://stocksharp.codeplex.com/SourceControl/changeset/changes/13409
просьба проверить :)
Ай, маладца!
Пару замечаний-бесплатных советов[smile]:
this
.When(_candleManager.Tokens.ElementAt(0).CandlesStarted())
.Do(action);
Лучше в стратегию конкретный токен передавать. По идее, теперь в стратегии _candleManager вообще не должен быть.
private·void·action()
Не по стилю C#. И лучше использовать сигнатуру сразу со свечками:
private·void ProcessCandles(IEnumerable<Candle> candles)
Чтобы потом не нужно было искать, что же там пришло:
var·candle = _candleManager.GetLastTimeFrameCandle(Security, _timeFrame);
И последнее. Не CandlesStarted, а CandlesFinished.
|
|
|
|
|
|