Alexander
|
Date: 7/26/2011
vader _priceOfOrder - ввожу вручную, сталю такой, чтобы скорее испольнилось условие. Как пример. Если лучшая продажа 198645, то ставлю 198630.
Security.BestAsk.Price не использую сейчас. Я выводил это ,чтобы убедится, что стратегия получает данные. Вроде нашёл багу. Вообще надо передавать не цену, а сдвиг цены - в % или в пунктах. Поправлю документацию и код.
|
|
Thanks:
|
|
|
|
|
vader
|
Date: 7/26/2011
Alexander, прошу вас , дайте пожалуйста работоспособный пример событийной стратегии, в котором поковырятся можно, потому что тяжело разобраться, из-за чего программа не работает так как надо.
|
|
Thanks:
|
|
|
|
|
Alexander
|
Date: 7/26/2011
vader Alexander, прошу вас , дайте пожалуйста работоспособный пример событийной стратегии, в котором поковырятся можно, потому что тяжело разобраться, из-за чего программа не работает так как надо. напишите, к примеру, When(Security.SecurityNewTrades()).Do(blabla) То что выше - я уже написал - была ошибка, исправляю.
|
|
Thanks:
|
|
|
|
|
vader
|
Date: 7/26/2011
попробовал вот так - не работает Code
StrategyRule strR = this
.When(StrategyRuleConditionHelper.BestAskPriceLess(this.Security, new Unit(5)))
.Do(SimpleRegOrd);
base.OnRunning();
И ещё. Мне удалось вызвать метод, в котором должна происходить регистрация заявки ,но заявка в квике не появилась. Code
private void SimpleRegOrd()
{
MessageBox.Show("SimpleRegOrd");
this.RegisterOrder(_order);
}
И так тоже не работает Code
StrategyRule strR = this
.When(Security.SecurityNewTrades())
.Do(SimpleRegOrd);
base.OnRunning();
|
|
Thanks:
|
|
|
|
|
Alexander
|
Date: 7/26/2011
vader попробовал вот так - не работает Code
StrategyRule strR = this
.When(StrategyRuleConditionHelper.BestAskPriceLess(this.Security, new Unit(5)))
.Do(SimpleRegOrd);
base.OnRunning();
И ещё. Мне удалось вызвать метод, в котором должна происходить регистрация заявки ,но заявка в квике не появилась. Code
private void SimpleRegOrd()
{
MessageBox.Show("SimpleRegOrd");
this.RegisterOrder(_order);
}
И так тоже не работает Code
StrategyRule strR = this
.When(Security.SecurityNewTrades())
.Do(SimpleRegOrd);
base.OnRunning();
Первое не работает я уже написал почему - бага найдена, исправил, будет в 3.2.6 Второе - выведите все поля заявки перед регистрацией чтоб было понятно где проблема. Заявки у остальных регистрируется нормально. Третье - что значит тоже не работает? SimpleRegOrd вызывается? Новые сделки по инструменту приходят? ProcessDataError что-нибудь выдаёт?
|
|
|
|
|
vader
|
Date: 7/28/2011
спасибо за советы. Проблема была в том, что я не инициалезировал Trader, ни у стратегии ни у заявки. ProcessDataError ничего не выдавал.
Заметил такую проблему, что часто если при работе стратегии произошла проограмная ошибка, то простостртегия останавливается и никак не сигналезирует об ошибке. Что очень не удобно. Можно ли как-то сделать ,чтобы визуально были видны ошибки?
|
|
Thanks:
|
|
|
|
|
Alexander
|
Date: 7/28/2011
vader спасибо за советы. Проблема была в том, что я не инициалезировал Trader, ни у стратегии ни у заявки. ProcessDataError ничего не выдавал.
Заметил такую проблему, что часто если при работе стратегии произошла проограмная ошибка, то простостртегия останавливается и никак не сигналезирует об ошибке. Что очень не удобно. Можно ли как-то сделать ,чтобы визуально были видны ошибки? Перехватывайте ProcessDataError и исключения.
|
|
Thanks:
|
|
|
|
|
vader
|
Date: 7/28/2011
ProcessDataError молчит. В каких местах перехватывать исключения?
|
|
Thanks:
|
|
|
|
|
Alexander
|
Date: 7/28/2011
vader ProcessDataError молчит. В каких местах перехватывать исключения? При вызове методов Stock#
|
|
Thanks:
|
|
|
|
|
vader
|
Date: 7/28/2011
При тестировании на учебном счете Quik-Junior, на площадке ММВБ, не выполняется условие на появление новых сделок (StrategyNewMyTrades), когда происходит сделка. При этом если работать на игровой секции FORTS, все условия выполняются. ProcessDataError ничего не выдает. Как это можно поправить? S# 3.2.5
|
|
Thanks:
|
|
|
|