TimeFrameStrategy стратегия не видит своих своих сделок
~/topic/3087/timeframestrategy-strategiya-ne-vidit-svoih-svoih-sdelok/
Copyright @ StockSharp Platform LLC 2010 - 2024
2024-03-28T21:17:47Z
https://stocksharp.ru/images/logo.png
https://stocksharp.ru/posts/m/21836/
В теме S# 4.1.5: перестало срабатывать правило WhenNewMyTrades() тоже был не эмулятор (с эмулятором ...
2012-10-17T07:48:15Z
2016-08-16T00:10:02Z
Ant.On.
https://stocksharp.ru/users/6276/
info@stocksharp.ru
В теме <a href="http://stocksharp.com/forum/3086/S--4-1-5--pieriestalo-srabatyvat--pravilo-WhenNewMyTrades/" title="http://stocksharp.com/forum/3086/S--4-1-5--pieriestalo-srabatyvat--pravilo-WhenNewMyTrades/">S# 4.1.5: перестало срабатывать правило WhenNewMyTrades()</a> тоже был не эмулятор (с эмулятором отдельная проблема). Видимо там та же ошибка.
Copyright @ StockSharp Platform LLC 2010 - 2024
https://stocksharp.ru/posts/m/21824/
После перехода на 4.1.5 стратегия TimeFrameStrategy перестала видеть свои сделки. Итерации идут, в O...
2012-10-16T17:17:04Z
2016-08-16T00:10:01Z
Maniac
https://stocksharp.ru/users/613/
info@stocksharp.ru
После перехода на 4.1.5 стратегия TimeFrameStrategy перестала видеть свои сделки.<br />Итерации идут, в OnProcess заходит. Там регистрируются заявки RegisterOrder, и по ним проходят сделки. <br />В логах эти сделки идут только от Trader, от Strategy их нет, соответственно, стратегия эти сделки не видит, и позиция не менятся. (в 4.1.4 все работало корректно).<br />Возможно, что <a href="http://www.stocksharp.com/forum/3086/S--4-1-5--pieriestalo-srabatyvat--pravilo-WhenNewMyTrades/" title="http://www.stocksharp.com/forum/3086/S--4-1-5--pieriestalo-srabatyvat--pravilo-WhenNewMyTrades/">S# 4.1.5: перестало срабатывать правило WhenNewMyTrades()</a> по той же самой причине: стратегия не видит своих сделок.
Copyright @ StockSharp Platform LLC 2010 - 2024
https://stocksharp.ru/posts/m/21848/
Да, сделки пошли. Спасибо!
2012-10-17T12:23:17Z
2012-10-17T12:23:17Z
Maniac
https://stocksharp.ru/users/613/
info@stocksharp.ru
Да, сделки пошли. Спасибо!
Copyright @ StockSharp Platform LLC 2010 - 2024
https://stocksharp.ru/posts/m/21844/
Да, это бага. Спасибо за логи. Залили на КП. Просьба проверить как можно быстрее, исправлена ли ошиб...
2012-10-17T10:53:47Z
2012-10-17T10:53:47Z
Mikhail Sukhov
https://stocksharp.ru/users/201/
info@stocksharp.ru
<div class="quote"><span class="quotetitle">esper <a href="https://stocksharp.ru/posts/m/21834/"><img src="https://stocksharp.ru/images/icon_latest_reply.gif" title="Перейти" alt="Перейти" /></a></span><div class="innerquote">Да, это бага. Спасибо за логи.</div></div><br /><br />Залили на КП. Просьба проверить как можно быстрее, исправлена ли ошибка.
Copyright @ StockSharp Platform LLC 2010 - 2024
https://stocksharp.ru/posts/m/21834/
Да, это бага. Спасибо за логи.
2012-10-17T06:39:26Z
2012-10-17T06:39:26Z
esper
https://stocksharp.ru/users/5990/
info@stocksharp.ru
Да, это бага. Спасибо за логи.
Copyright @ StockSharp Platform LLC 2010 - 2024
https://stocksharp.ru/posts/m/21832/
В OnStarted подписался на события OrderRegistering, OrderRegistered, OrderRegisterFailed base.OrderR...
2012-10-17T06:07:45Z
2012-10-17T06:07:45Z
Maniac
https://stocksharp.ru/users/613/
info@stocksharp.ru
В OnStarted подписался на события OrderRegistering, OrderRegistered, OrderRegisterFailed<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
base.OrderRegistering += o => this.AddInfoLog("OrderRegistering {3}: Id={0}, Securuty={1}, State={2}", o.Id, o.Security.Code, o.State, o.Type);
base.OrderRegistered += o => this.AddInfoLog("OrderRegistered {3}: Id={0}, Securuty={1}, State={2}", o.Id, o.Security.Code, o.State, o.Type);
base.OrderRegisterFailed += o => this.AddInfoLog("OrderRegisterFailed {3} {4}: Id={0}, Securuty={1}, State={2}", o.Order.Id, o.Order.Security.Code, o.Order.State, o.Order.Type, o.Error.Message);
</pre>
</div></div><br />В логах есть только OrderRegistering, к-рый, видимо так и не выполняется, т.к. при остановке стратегии возникает предупреждение: Стратегия в состоянии Stopping. Регистрация заявки невозможна.<br /><br /><div class='spoilertitle'><input type='button' value='Показать спойлер' class='btn btn-primary' onclick="toggleSpoiler(this, 'spolier_5d1f0968d14c4f9799d3d1c8debc5f2c');" title='Показать спойлер' /></div><div class='spoilerbox' id='spolier_5d1f0968d14c4f9799d3d1c8debc5f2c' style='display:none'>2012.10.17 09:58:27.117| |Chaos |Стратегия запущена. [0,-1]. Позиция при старте 0.<br />2012.10.17 09:58:56.960| |Chaos |OrderRegistering Limit: Id=0, Securuty=LKOH, State=None<br />2012.10.17 09:58:56.975| |QuikTrader|RegisterOrder: 35873126/0 Покупка Цена=1934,8 Объем=1 Сост=None Бал=1 <br />2012.10.17 09:58:57.007| |Chaos |Очередная итерация. Позиция: 0<br />2012.10.17 09:58:57.599| |QuikTrader|New order: 35873127/1922401126 Покупка Цена=1934,8 Объем=1 Сост=Done Бал=0 <br />2012.10.17 09:58:57.615| |QuikTrader|Order changed: 35873127/1922401126 Покупка Цена=1934,8 Объем=1 Сост=Done Бал=0 <br />2012.10.17 09:58:57.631| |QuikTrader|QuikTrader Trade : Id=1184599265, Price=1933,8, Security=LKOH, Volume=1, Date=17.10.2012 9:58:56<br />2012.10.17 09:59:26.974| |Chaos |OrderRegistering Limit: Id=0, Securuty=LKOH, State=None<br />2012.10.17 09:59:26.974| |QuikTrader|RegisterOrder: 35873128/0 Продажа Цена=1932,8 Объем=1 Сост=None Бал=1 <br />2012.10.17 09:59:26.974| |Chaos |Очередная итерация. Позиция: 0<br />2012.10.17 09:59:27.551| |QuikTrader|New order: 35873129/1922401509 Продажа Цена=1932,8 Объем=1 Сост=Done Бал=0 <br />2012.10.17 09:59:27.551| |QuikTrader|Order changed: 35873129/1922401509 Продажа Цена=1932,8 Объем=1 Сост=Done Бал=0 <br />2012.10.17 09:59:27.551| |QuikTrader|QuikTrader Trade : Id=1184599480, Price=1933,2, Security=LKOH, Volume=1, Date=17.10.2012 9:59:26<br />2012.10.17 09:59:56.989| |Chaos |OrderRegistering Limit: Id=0, Securuty=LKOH, State=None<br />2012.10.17 09:59:56.989| |QuikTrader|RegisterOrder: 35873130/0 Покупка Цена=1934,8 Объем=1 Сост=None Бал=1 <br />2012.10.17 09:59:56.989| |Chaos |Очередная итерация. Позиция: 0<br />2012.10.17 09:59:57.566| |QuikTrader|New order: 35873131/1922401858 Покупка Цена=1934,8 Объем=1 Сост=Done Бал=0 <br />2012.10.17 09:59:57.566| |QuikTrader|QuikTrader Trade : Id=1184599648, Price=1933,8, Security=LKOH, Volume=1, Date=17.10.2012 9:59:56<br />2012.10.17 09:59:57.566| |QuikTrader|Order changed: 35873131/1922401858 Покупка Цена=1934,8 Объем=1 Сост=Done Бал=0 <br />2012.10.17 09:59:59.001| |Logger |Останавливаем работу ...<br />2012.10.17 10:00:00.764| |Chaos |Стратегия останавливается. [0,-1]. Позиция при старте 0.<br />2012.10.17 10:00:00.764|Warning|Chaos |Стратегия в состоянии Stopping. Регистрация заявки невозможна.<br />2012.10.17 10:00:00.764| |Chaos |Очередная итерация. Позиция: 0<br /></div>
Copyright @ StockSharp Platform LLC 2010 - 2024
https://stocksharp.ru/posts/m/21829/
Создание стратегии и OnProcess _strategy = new ChaosStrategy(_timeFrame) { Volume = 1, Security = _s...
2012-10-16T18:38:54Z
2012-10-16T18:38:54Z
Maniac
https://stocksharp.ru/users/613/
info@stocksharp.ru
Создание стратегии и OnProcess<br /><br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
_strategy = new ChaosStrategy(_timeFrame)
{
Volume = 1,
Security = _sec,
Portfolio = _portfolio,
Trader = _trader,
CancelOrdersWhenStopping = false,
Name = "Chaos",
WaitAllTrades = true
};
_logManager.Sources.Add(_strategy); // добавление логирования
public ChaosStrategy(TimeSpan timeFrame)
: base(timeFrame)
{
}
protected override void OnStarted()
{
base.StopOrderRegistered += o => this.AddInfoLog("New StopOrder {3}: Id={0}, Securuty={1}, State={2}", o.Id, o.Security.Code, o.State, o.Type);
base.StopOrderChanged += o => this.AddInfoLog("Стоп заявка {0}, объём {2}, баланс {3}, TransactionId={4}, Price={5} изменилась на {1} в {7}, Latency={6}",
o.Id, o.State, o.Volume, o.Balance, o.TransactionId, o.Price, o.LatencyCancellation, o.Time);
base.NewMyTrades += trades =>
{
foreach (var myTrade in trades)
{
var trade = myTrade.Trade;
this.AddInfoLog("ChaosStrategy Trade: Id={0}, {5}, Price={1}, Security={2}, Volume={3}, Date={4}",
trade.Id, trade.Price, trade.Security.Code, trade.Volume, trade.Time, trade.OrderDirection);
}
Thread.Sleep(500);
if (base.PositionManager.Position != 0)
{
// protect current position with stop order
CreateTakeProfitAndStopLimit();
}
};
base.OnStarted();
}
protected override ProcessResults OnProcess()
{
if (PositionManager.Position == 0)
{
MakeTrade(_direction);
_direction = _direction.Invert();
}
this.AddInfoLog("Очередная итерация. Позиция: {0}", this.Position.ToString());
return ProcessResults.Continue;
}
public void MakeTrade(OrderDirections _direction)
{
// создаем заявку
decimal _price = _direction == OrderDirections.Buy ?
Security.BestAsk.Price + Security.MinStepSize * 10 : Security.BestAsk.Price - Security.MinStepSize * 10;
var order = this.CreateOrder(_direction, _price, Volume);
// регистрируем заявку (обычным способом - лимитированной заявкой)
RegisterOrder(order);
}</pre>
</div></div><br /><br />Логи<br /><br /><div class='spoilertitle'><input type='button' value='Показать спойлер' class='btn btn-primary' onclick="toggleSpoiler(this, 'spolier_fee0d8e13b9c4c65a4093f53f1ed6041');" title='Показать спойлер' /></div><div class='spoilerbox' id='spolier_fee0d8e13b9c4c65a4093f53f1ed6041' style='display:none'><br />2012.10.16 22:24:27.406| |Chaos |Стратегия запущена. [0,-1]. Позиция при старте 0.<br />2012.10.16 22:24:57.390| |QuikTrader|RegisterOrder: 80642079/0 Покупка Цена=1926,0 Объем=1 Сост=None Бал=1 <br />2012.10.16 22:24:57.406| |Chaos |Очередная итерация. Позиция: 0<br />2012.10.16 22:24:58.328| |QuikTrader|New order: 80642080/1921961359 Покупка Цена=1926 Объем=1 Сост=Done Бал=0 <br />2012.10.16 22:24:58.328| |QuikTrader|Order changed: 80642080/1921961359 Покупка Цена=1926 Объем=1 Сост=Done Бал=0 <br />2012.10.16 22:24:58.343| |QuikTrader|QuikTrader Trade : Id=1184336309, Price=1924,5, Security=LKOH, Volume=1, Date=16.10.2012 22:24:40<br />2012.10.16 22:25:27.375| |QuikTrader|RegisterOrder: 80642081/0 Продажа Цена=1921,7 Объем=1 Сост=None Бал=1 <br />2012.10.16 22:25:27.375| |Chaos |Очередная итерация. Позиция: 0<br />2012.10.16 22:25:28.328| |QuikTrader|New order: 80642082/1921961957 Продажа Цена=1921,7 Объем=1 Сост=Done Бал=0 <br />2012.10.16 22:25:28.328| |QuikTrader|QuikTrader Trade : Id=1184336657, Price=1921,8, Security=LKOH, Volume=1, Date=16.10.2012 22:25:10<br />2012.10.16 22:25:28.328| |QuikTrader|Order changed: 80642082/1921961957 Продажа Цена=1921,7 Объем=1 Сост=Done Бал=0 <br />2012.10.16 22:25:57.375| |QuikTrader|RegisterOrder: 80642083/0 Покупка Цена=1924,4 Объем=1 Сост=None Бал=1 <br />2012.10.16 22:25:57.375| |Chaos |Очередная итерация. Позиция: 0<br />2012.10.16 22:25:58.484| |QuikTrader|New order: 80642084/1921962719 Покупка Цена=1924,4 Объем=1 Сост=Done Бал=0 <br />2012.10.16 22:25:58.484| |QuikTrader|QuikTrader Trade : Id=1184337097, Price=1923,4, Security=LKOH, Volume=1, Date=16.10.2012 22:25:40<br />2012.10.16 22:25:58.484| |QuikTrader|Order changed: 80642084/1921962719 Покупка Цена=1924,4 Объем=1 Сост=Done Бал=0 <br />2012.10.16 22:26:27.375| |QuikTrader|RegisterOrder: 80642085/0 Продажа Цена=1922,1 Объем=1 Сост=None Бал=1 <br />2012.10.16 22:26:27.375| |Chaos |Очередная итерация. Позиция: 0<br />2012.10.16 22:26:27.859| |QuikTrader|New order: 80642086/1921962972 Продажа Цена=1922,1 Объем=1 Сост=Active Бал=1 <br />2012.10.16 22:26:27.875| |QuikTrader|Order changed: 80642086/1921962972 Продажа Цена=1922,1 Объем=1 Сост=Active Бал=1 <br />2012.10.16 22:26:34.656| |QuikTrader|QuikTrader Trade : Id=1184337296, Price=1922,1, Security=LKOH, Volume=1, Date=16.10.2012 22:26:16<br />2012.10.16 22:26:34.656| |QuikTrader|Order changed: 80642086/1921962972 Продажа Цена=1922,1 Объем=1 Сост=Done Бал=0 <br />2012.10.16 22:26:57.375| |QuikTrader|RegisterOrder: 80642087/0 Покупка Цена=1923,1 Объем=1 Сост=None Бал=1 <br />2012.10.16 22:26:57.375| |Chaos |Очередная итерация. Позиция: 0<br />2012.10.16 22:26:57.859| |QuikTrader|New order: 80642088/1921963374 Покупка Цена=1923,1 Объем=1 Сост=Done Бал=0 <br />2012.10.16 22:26:57.859| |QuikTrader|QuikTrader Trade : Id=1184337528, Price=1922,1, Security=LKOH, Volume=1, Date=16.10.2012 22:26:40<br />2012.10.16 22:26:57.859| |QuikTrader|Order changed: 80642088/1921963374 Покупка Цена=1923,1 Объем=1 Сост=Done Бал=0 <br />2012.10.16 22:27:03.156| |Logger |Останавливаем работу ...<br />2012.10.16 22:27:04.625| |Chaos |Стратегия останавливается. [0,-1]. Позиция при старте 0.<br /></div>
Copyright @ StockSharp Platform LLC 2010 - 2024
https://stocksharp.ru/posts/m/21827/
Нет, не эмулятор, терминал - Quik. Там событие не вызывается потому что в эмуляторе ошибка. А почему...
2012-10-16T18:13:36Z
2012-10-16T18:13:36Z
Mikhail Sukhov
https://stocksharp.ru/users/201/
info@stocksharp.ru
<div class="quote"><span class="quotetitle">Maniac <a href="https://stocksharp.ru/posts/m/21826/"><img src="https://stocksharp.ru/images/icon_latest_reply.gif" title="Перейти" alt="Перейти" /></a></span><div class="innerquote">Нет, не эмулятор, терминал - Quik.</div></div><br /><br />Там событие не вызывается потому что в эмуляторе ошибка. А почему у вас - не понятно. Надо больше логов.
Copyright @ StockSharp Platform LLC 2010 - 2024
https://stocksharp.ru/posts/m/21826/
Нет, не эмулятор, терминал - Quik.
2012-10-16T17:49:47Z
2012-10-16T17:49:47Z
Maniac
https://stocksharp.ru/users/613/
info@stocksharp.ru
Нет, не эмулятор, терминал - Quik.
Copyright @ StockSharp Platform LLC 2010 - 2024
https://stocksharp.ru/posts/m/21825/
Тоже эмулятор?
2012-10-16T17:46:58Z
2012-10-16T17:46:58Z
Mikhail Sukhov
https://stocksharp.ru/users/201/
info@stocksharp.ru
Тоже эмулятор?
Copyright @ StockSharp Platform LLC 2010 - 2024