Transaq

СБО "Transaq" => TRANSAQ Connector => Topic started by: Dfg on Ноября 07, 2019, 03:18:44 pm

Title: Переполнение integer для <tick><quantity>
Post by: Dfg on Ноября 07, 2019, 03:18:44 pm
Здравствуйте!
 
Время от времени в поле <quantity> структуры <tick> приходят отрицательные значения.
Думаю, не хватает размерности знакового int. Так-как, например: (uint) -1294967296 = 3000000000, но с: (uint) -41099370 = 4253867926 такой фокус уже не пройдет.
 
Возможно, надо обратить внимание брокера или даже биржи на размер лота VTBR на площадках RPMA, RPMO, RPEU и они увеличат размер лота. Но может быть надо перейти на int64 в Transaq-connector.
Проблема старая и сама по себе не решается. Прошу внимания к этой проблеме.
 
Примеры приходящих от коннектора строк:
 
<tick><secid>3190</secid><board>RPMA</board><seccode>VTBR</seccode>
<tradeno>2782296006</tradeno><tradetime>03.01.2018 17:43:07.513</tradetime><price>0.00234</price>
<quantity>-41099370</quantity><period>N</period><buysell>B</buysell></tick>
 
<tick><secid>3107</secid><board>RPMA</board><seccode>VTBR</seccode>
<tradeno>2783072920</tradeno><tradetime>05.01.2018 18:03:06.855</tradetime><price>0.00234</price>
<quantity>-41099370</quantity><period>N</period><buysell>B</buysell></tick>
 
<tick><secid>2427</secid><board>RPMA</board><seccode>VTBR</seccode>
<tradeno>2877992735</tradeno><tradetime>25.09.2018 10:51:11.568</tradetime><price>0.002102</price>
<quantity>-480808592</quantity><period>N</period><buysell>S</buysell></tick>
 
<tick><secid>2241</secid><board>RPMO</board><seccode>VTBR</seccode>
<tradeno>3019363918</tradeno><tradetime>01.10.2019 16:13:53.139</tradetime><price>0.034764</price>
<quantity>-1294967296</quantity><period>N</period><buysell>B</buysell></tick>
 
<tick>
<secid>2353</secid>
<board>RPEU</board>
<seccode>VTBR</seccode>
<tradeno>3028748697</tradeno>
<tradetime>23.10.2019 11:48:57.208</tradetime>
<price>0.000582</price>
<quantity>-294967296</quantity>
<period>N</period>
<buysell>B</buysell>
</tick>
 
<tick><secid>2353</secid><board>RPEU</board><seccode>VTBR</seccode>
<tradeno>3029540427</tradeno><tradetime>24.10.2019 11:36:16.440</tradetime><price>0.000573</price>
<quantity>-294967296</quantity><period>N</period><buysell>B</buysell></tick>
 
<tick><secid>2329</secid><board>RPEU</board><seccode>VTBR</seccode>
<tradeno>3030443207</tradeno><tradetime>25.10.2019 11:40:25.757</tradetime><price>0.00057</price>
<quantity>-294967296</quantity><period>N</period><buysell>B</buysell></tick>
 
Title: Re: Переполнение integer для <tick><quantity>
Post by: klimov on Ноября 13, 2019, 02:28:21 pm
Да, это переполнение в тиках-сделках РЕПО в тех инструментах, где цена меньше копейки и размер лота - одна акция.
Не очень понятно, зачем Биржа сделала такой размер лота, но изменять они это не будут, конечно.