У вас не стоит Flash Player
Настройки
#24097 - Thu Mar 24 2011 01:17 PM Явные ошибки вычислений простых мат. дейст!!!
525240 Offline
newbie

Registered: Thu Mar 24 2011
Записи: 33
Приветствую!
Сделал на формулах скрип показывающий раэдвижку между RTS и RTSS, аск минус бид, бид минус аск, проще некуда. Понаблюдал, или я в формуле что то не так составил, хотя там всего три мат. действия или тслаб считать не умеет.))

(ASKRTSS*10)-(BIDRTS*0.02*S_RTS) если подставить данные из стакана в тот момент получится (11917,0*10)-(194765*0,02*28,2706)=9047,5 а тслаб считает 9063
(BIDRTSS*10)-(ASKRTS*0.02*S_RTS) если подставить данные из стакана в тот момент получится (11903,0*10)-(194790*0.02*28,2706)=8893,3 а тслаб считает 9043

Для проверки я взял расчёты на тиках, ограничил расчёт 600 тиками, чтобы не было тормозов, но на секундах та же ерунда, расхождения порой в сто и более рублей. Не пойму причину!
Скрипт и скрин в моменте расчёта во вложении.


Attachments
ТС_Лаб_неточность_расчётов.JPG (316 downloads)
ARB_RTSS-RTS (Formula_2).rar (83 downloads)


Наверх
#24099 - Thu Mar 24 2011 01:31 PM Re: Явные ошибки вычислений простых мат. дейст!!! [Re: 525240]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8137
У Вас в скрипте расчет ведется по закрытию секундной свечи. Поставьте пересчет скрипта более пригодный для таких вещей. Как минимум нужно ставить сделка. Есть еще по обновлению в стакане.


Отредактировано ViL (Thu Mar 24 2011 01:32 PM)

Наверх
#24100 - Thu Mar 24 2011 01:39 PM Re: Явные ошибки вычислений простых мат. дейст!!! [Re: ViL]
525240 Offline
newbie

Registered: Thu Mar 24 2011
Записи: 33
Этот тест я на тиках делал, затем уже перед сохранением скрипт на секунды переключил. Разве на тиках период расчёта "интервал" не подойдёт для корректного расчёта?
С уважением.

Наверх
#24101 - Thu Mar 24 2011 01:41 PM Re: Явные ошибки вычислений простых мат. дейст!!! [Re: 525240]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8137
Для тиков подойдет интервал. Но нужно учитывать - тик это сделка. Что происходит с бидом и аском между сделками - целая история. Лучше все таки делать пересчет по изменению стакана, оно будет верней.


Отредактировано ViL (Thu Mar 24 2011 01:44 PM)

Наверх
#24103 - Thu Mar 24 2011 02:13 PM Re: Явные ошибки вычислений простых мат. дейст!!! [Re: ViL]
525240 Offline
newbie

Registered: Thu Mar 24 2011
Записи: 33
Да, поменял на покупкп/продажа и стала корректно считать, спасибо за пояснения.
С уважением, Роман.

Наверх
#24108 - Thu Mar 24 2011 04:29 PM Re: Явные ошибки вычислений простых мат. дейст!!! [Re: 525240]
525240 Offline
newbie

Registered: Thu Mar 24 2011
Записи: 33
Поработал этот скрипт около часа и посыпались вот такие ошибки, а потом программа рухнула. В чём может быть проблема?

16:09:35.85 120 System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
at System.Collections.Generic.List`1.set_Capacity(Int32 value)
at System.Collections.Generic.List`1.EnsureCapacity(Int32 min)
at System.Collections.Generic.List`1.Add(T item)
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
at TSLab.Script.Handlers.SecurityBase.Execute(ISecurity source)
at TSLab.User.Script.<>c__DisplayClass5.<Execute>b__2()
at TSLab.DataSource.ObjectsCacheBase`3.Get(TKey name, CacheObjectMaker`1 maker)
at TSLab.ScriptEngine.BaseTemplateContext.GetData(String handlerName, String[] parameters, CacheObjectMaker`1 maker)
at TSLab.User.Script.Execute(IContext context, ISecurity RTS, ISecurity RTSS)


16:07:40.57 120 System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
at System.Collections.Generic.List`1.set_Capacity(Int32 value)
at System.Collections.Generic.List`1.EnsureCapacity(Int32 min)
at System.Collections.Generic.List`1.Add(T item)
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
at TSLab.Script.Handlers.SecurityBase.Execute(ISecurity source)
at TSLab.User.Script.<>c__DisplayClass5.<Execute>b__0()
at TSLab.DataSource.ObjectsCacheBase`3.Get(TKey name, CacheObjectMaker`1 maker)
at TSLab.ScriptEngine.BaseTemplateContext.GetData(String handlerName, String[] parameters, CacheObjectMaker`1 maker)
at TSLab.User.Script.Execute(IContext context, ISecurity RTS, ISecurity RTSS)

Наверх
#24109 - Thu Mar 24 2011 04:32 PM Re: Явные ошибки вычислений простых мат. дейст!!! [Re: 525240]
Nektodron Offline

Carpal Tunnel

Registered: Thu Oct 23 2008
Записи: 5492
Поставьте ограничение свечей, несколько тысяч или даже сотен.

Наверх


Moderator:  ViL, sar