У вас не стоит Flash Player
Настройки
#80285 - Thu Nov 10 2016 11:53 AM Подключение к transaq без совершения сделок
Atomic Offline
newbie

Registered: Mon Oct 10 2016
Записи: 27
Здравствуйте!

Мне нужно подключиться к основному серверу финама (transaq) для отладки багов TSLab.

Для этой отладки, мне нужно видеть инструмент в режиме real-time, а не в историческом.

Демосервер я уже подключал + он не соответствует ожиданиям.

Вопрос:
как мне увидеть реальный инструмент БЕЗ оплаты ключа TSLab?
Разумеется, агент и его функции мне для отладки не нужны.
Аккаунт уже есть.

Сейчас, TSLab выдает ошибку в окне подключения: "не введен ключ".

Наверх
#80286 - Thu Nov 10 2016 12:12 PM Re: Подключение к transaq без совершения сделок [Re: Atomic]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8134
До Вас всё отлажено.
Оплачиваете ключ - подключаетесь.
Не оплачиваете - не подключаетесь.
Другой вариант: демо. Отловить баги вашего скрипта.
Всё.

Наверх
#80288 - Thu Nov 10 2016 02:02 PM Re: Подключение к transaq без совершения сделок [Re: ViL]
Atomic Offline
newbie

Registered: Mon Oct 10 2016
Записи: 27
Отлажено?

1. В эту тему гляньте:
http://forum.tslab.ru/ubb/ubbthreads.php?ubb=showflat&Number=79977#Post79977

Вы ЭТО называете отлаженным кодом?
Причем, я нашел ошибку. ВАШУ ошибку в вашем коде. Не мою. И, собственно, исправил.

2. Скорость скрипта падает с накоплением данных, потому что Вы (не я) спроектировали терминал так, чтобы данные пересчитывались с нуля при каждом приходе нового бара. То, что программа пересчитывает одни и те же данные, вместо того, чтобы просто сохранять массив и его дополнять новыми значениями - опять же, не моя ошибка. Но это - ошибка, причем фундаментальная.

Если терминал хранит миллион баров, пересчет становится слишком долгим. Нужно посчитать одно число, TSLab пересчитывает миллион. Решение не оптимально.

3. На ограниченном интервале (с установленным значением МаксБаров, установка которого прямо вытекает из п.2) эта ошибка порождает следующую (побарный сдвиг стартовой точки из-за отсутствия кэширования).

Причем, об этой ошибке можно узнать, только купив ключ и запустив алгоритм на реальном сервере, что я, по дурости своей, и сделал изначально.

Демо сервер дают на неделю, и количество сделок на нем оказалось слишком мало для выявления этой ошибки.

Даже в том же Metatrader есть опция "имитация реальных торгов", когда мы подсовываем исторические данные, а потом запускаем скрипт в real-time по истории. У вас такой опции нет.

Metatrader бесплатен. Ваш же терминал стоит 48 тысяч в год.

______________

Я, как потребитель, готов платить за готовый продукт. Я даже согласился производить оплату НЕ готового продукта, дописав кэширование и создав новые, некосячные ноды.

Все, о чем я спросил - как мне проверить корректность моего исправления Ваших ошибок.

Вы же мне предлагаете заплатить из своего кармана за мою же отладку вашего кода, необходимость в которой возникла из-за ваших же ошибок.

Клиентоориентированность 10/10.

Наверх
#80289 - Thu Nov 10 2016 02:33 PM Re: Подключение к transaq без совершения сделок [Re: Atomic]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8134
1. По версии 2.0 действительно могут быть проблемы. Исправляем. По данной версии пока лучше писать в ветке форума для этого предназначенной.
2. Здесь не всё так просто, как может показаться.
Вам нужно не просто узнать значения текущего бара, а например пересчитать прямую линию, нарисованную от минимума первого бара в истории, до текущего минимума бара. В условии, когда от брокера могут приходить пропущенные бары в истории. Соответственно вся линия будет перерисована с каждым баром. Собственно из этого и исходите. Это не ошибка, а парадигма программы, как и следующий пункт.
3. Если нет в истории бара, то естественно для расчета будет браться последний известный(загруженный) бар.

Что касается подключений, у нас нет бесплатного варианта к сожалению, кроме как демо.

Наверх
#80291 - Thu Nov 10 2016 04:27 PM Re: Подключение к transaq без совершения сделок [Re: ViL]
Atomic Offline
newbie

Registered: Mon Oct 10 2016
Записи: 27
Vil,

по п.2 я приведу такой пример:
строим скользяшку (SMA, period = 1000).

У нас 10 000 баров, т.е. нужно рассчитать 9 000 значений SMA.

Вариант 1: по приходу бара 10 001, пересчитываем 9000 значений и еще одно, новое.

Вариант 2: кэшируем 9000 значений с привязкой к бару, по приходу нового бара читаем это значение, считаем одно новое, кэшируем 9001.

Опция расчета:
А. можно взять SMA[10001] как среднее для интервала price[9001] - price[10001].
То есть, суммируем 1000 значений (цикл 1000 итераций), потом
делим на 1000.

Итого 1003 операции (с учетом вытаскивания price[i]).

Б. для расчета SMA[10001], берем значение SMA[10000] из кэша (1 операция). Вычитаем число price[9000]/1000 (2,3,4 операция) и прибавляем число price[10001]/1000 (5,6,7 операция).

Итого 7 операций.

Опция Б считается за 7 операций независимо от периода SMA, в то время, как опция А тем медленнее, чем больше период и чем больше баров.

При кэшировании, у нас 7 операций + запись/чтение кэша.
Без кэширования, у нас (период * длина_массива_SMA) операций.

На миллионе баров, расчет при кэшировании займет микросекунды, без кэширования - десятки секунд.
____________________

По вашему примеру, не припомню ни одного "тянущегося" индикатора. У большинства встроенных индикаторов есть статичный период и прочие константы, не меняющиеся от длины массива инструмента.

Т.е. ваш пример - частность. Сдвиг (когда сервер присылает пачку баров) лично я переписал, он опять же побарный - так тупо быстрее.

____________________

Печально, что вариантов теста нет frown

Настройка терминала типа "эмуляция живых торгов на истории" - очень нужная штукенция, т.к. Ваши же покупатели тестят продукт на истории, а на живом сервере вылазят ошибки.

В целом ошибки как-бы и нет, но негативный осадочек остается.

Спасибо за ответ.

Наверх
#80293 - Thu Nov 10 2016 05:12 PM Re: Подключение к transaq без совершения сделок [Re: Atomic]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8134
Ваши идеи в целом верные. Мы будем развиваться в этом направлении, но осторожно и с сохранением совместимости.
Единственное, нужно понимать, что разработка таких индикаторов усложнит API и будет отнимать много времени у того, кто их будет делать.

Наверх
#80309 - Fri Nov 11 2016 02:02 PM Re: Подключение к transaq без совершения сделок [Re: ViL]
Atomic Offline
newbie

Registered: Mon Oct 10 2016
Записи: 27
да я все понимаю, это "неприоритетное направление".
Вы делаете то, что нужно большинству, и то, что я не в этом большинстве - моя личная проблема.

Наверх


Moderator:  ViL, sar