Все данные, использующиеся для построения графиков, загружаются с сервера брокера и сохраняются в Вашем компьютере в кеше. Кеш используется для построения разных графиков с целью уменьшения объема загружаемых данных и ускорения процесса построения графика. Если отсутствует подключение к серверу, то для построения графика будет использована имеющаяся информация из кеша. Сохранение данных на компьютере, кеширование, происходит с интервалами 1, 5, 15, 30 и 60 минут. В случае использования другого размера интервала, используется кеширование с интервалом в одну минуту.
Внимание! Если график строится с учетом отображения информации в реальном времени, то последняя правая свеча (Ghost Bar) показывает информацию по текущему временному периоду и изменяется с учетом изменения цены на рынке.
Все нестандартные таймфреймы считаются от 0 часов 0 года.
Внимание! Не рекомендуется использовать тиковый график для разработки и тестирования торговых систем. Делайте это, если Вы понимаете, как работают механизмы биржи и программы, какая работа со временем в тиках ведется. В других случаях не рекомендуется. Рекомендуемый минимальный период для работы с графиками 1 секунда.
Сервер брокера хранит ограниченный объем информации. Если сервер не поддерживает секунды, то секунды программой строятся из тиков (как правило одна сессия).
Как правило стандартные таймфреймы (интервалы), есть на сервере брокера: 1тик, 5сек, 15сек, 30сек, 1мин, 5мин, 15мин, 30мин, 1час, 1день. Эти интервалы TSLab не достраивает в оффлайне (не сжимает). Например, если у Вас есть история с интервалом 1 минута и вы не подключены к брокеру, то построить средствами свойств скрипта интервал 15 минут вы не сможете. При этом построить 14 минут можно (график, которого нет на сервере брокера).
Если появляются разрывы в данных, то докачка секунд и тиков как правило работает только в пределах текущей сессии. (Открыть Вид - График - Свойства - Выбрать инструмент - Таймфрейм - Выбрать дату перезагрузки) Правой кнопкой на графике - в контекстном меню Перезагрузить данные.
Таков механизм работы с поставщиком. Если у Вас есть накопленный кеш тиковых данных, но нет минуток, то 60 секундных данных в офлайн режиме будет больше, чем минутных, потому что минутные это стандарт на сервере, а секундные - нет. В программе доступен поставщик "Кешированные данные". Он находится доступен в поставщиках Исторические данные. Этот поставщик данных умеет читать тиковые кеши. Через него сделайте собственный инструмент. В настройках поставщика Начинать с +, далее название, далее папка, далее выбор инструмента. У данного инструмента из тиковых данных можно будет построить любой таймфрейм.
Внимание! Не рекомендуется использовать тиковый график для разработки и тестирования торговых систем. Делайте это, если Вы понимаете, как работают механизмы биржи и программы, какая работа со временем в тиках ведется.
При работе на криптовалютных биржах, МИНИМАЛЬНЫЙ период для разработки алгоритмов, опирающихся на график инструмента 1 секунда. При условии, что машина с программой стоит в одной стойке с биржей или рядом с биржей. При этом подразумевается работа только с лимитными заявками. И подбирать, исходя из ликвидности инструмента. Если у Вас нет возможности поставить свой сервер в одной серверной с биржей, то рассматривать алгоритмы, менее чем 1 минута не рекомендуется. При работе на Московской бирже, старайтесь устанавливать машину с программой рядом с биржей. Здесь нет рекомендаций по минимальным таймфреймам. Работать можно довольно быстро, но здесь следует знать, что быстрая работа наилучшим образом реализуется с коннектором Plaza II и машиной в колокации биржи (работа может вестись от 5мс). При подключении через брокера (не Plaza), таймфрейм менее секунды не рекомендуется. Так как ответы брокера по своим заявкам могут задерживаться до 600-800мс. При работе через Российских брокеров на иностранных площадках лучше изначально разрабатывать алгоритмы от 1 минуты.
Прочитайте дополнительно предыдущую главу Особенности исторических данных на серверах брокеров
Для получения ранее не вызываемого инструмента на график, программа должна быть подключена к серверу или должен быть создан поставщик офлайн данных. При вызове инструмента на график (Вид-График) или в лаборатории скрипта (Лаб-Скрипты), скачиваются доступные на сервере брокера (биржи) готовые свечи за указанный период в свойствах графика или в свойствах лаборатории скрипта.
Если инструмент уже ранее вызывался, и стояло ограничение ДатаОт, а Вам нужны более глубокие данные, то исторические данные необходимо запросить с сервера по кнопке "Перезагрузить данные" с графика, перед этим сняв ограничение ДатаОт и выбрав Дату перезагрузки. Дата перезагрузки - Дата от которой необходимо перезагрузить данные с сервера.
Данные с барами, при отключении от поставщика данных, сохраняются на жесткий диск в bin.gz файлы в папку НазваниеПоставщикаДанныхCache. Папка находится на одном уровне с папкой логов. Инструменты - Папка с кешами (не касается офлайн поставщика).
Когда программа подключена к серверу и идут торги, в программу поступают сделки с рынка.
Данные поступают в одном из следующих случаев:
Запущен агент с данным инструментом.
Открыта лаборатория скрипта с данным инструментом и включена опция в свойствах скрипта "Обновлять в режиме реального времени"
Инструменты выведены в таблицу Вид - Котировки.
Сделки запрошены в таблице Вид - Сделки по инструментам.
В режиме агента на основе этих сделок рассчитывается агент, из этих сделок строятся бары. При отключении от поставщика данных из оперативной памяти эти данные записываются в bin.gz файлы в папку НазваниеПоставщикаCacheTrade.
Если программу выключить из диспетчера задач Windows, то данные могут не записаться на жесткий диск. Или записаться с ошибкой, в этом случае при следующем подключении к брокеру, график может перестать обновляться. В этом случае следует удалить bin.gz файл за последний день, при выключенной программе. (очень редкая ситуация, даже в тех случаях, когда выключался свет и компьютер переставал работать резко) В сделках намного больше данных, чем в скаченных барах. Например, только имея сделки можно использовать кластерный анализ и горизонтальные объемы.
Если лаборатория не обновляется в режиме реального времени или агент не обновляется, а приходят только бары в готовом виде, по окончанию таймфрейма, значит сделки не приходят или не включен флаг "Обновл.в режиме реалтайм" в свойствах скрипта, так же в лаборатории может стоять ограничивающая опция ДатаК.
Если не приходят сделки при активном подключении и идут торги на рынке, это повод обратиться в службу поддержки брокера или в нашу службу поддержки.
При старте подключения перезапрашиваются текущие сделки по инструментам за текущий торговый день. На бирже MOEX день начинается в 19:00 и заканчивается в 19:00 Именно за такой период сделки доступны на бирже. У Графика в контекстном меню (по правой кнопке) есть функция "Перезагрузить данные" и в свойствах настройка "Дата перезагрузки" (не касается офлайн поставщиков данных):
Поставьте "Исп.Дату перезагрузки", если в этом есть необходимость.
Правой клавишей на графике - Перезагрузить данные.
При выключенном флаге "Исп.Дату перезагрузки" будет стерт весь кеш, накопленный при работе и закачаны данные, которые есть на сервере. "Исп.Дату перезагрузки" устанавливает дату для кнопки "Перезагрузить данные" в контекстном меню графика. При запросе, весь накопленный кеш, начиная от указанной даты в "Исп. Дату перезагрузки" и по текущую дату будет стерт с жесткого диска, и будет запрошена история с сервера. Таким образом, чтобы была скачана пропущенная дата, необходимо, чтобы это дата попала в диапазон установленной даты "Дата перезагрузки".
Поэтому, если Вы не уверены в том, что делаете или не знаете, какая история баров есть на сервере, то лучше скопировать данные из папки cache и папки cachetrade, и при необходимости вернуть файлы программе в эти папки, после экспериментов. Собственно, если где-то взять такие файлы (у друга), то положив их в папку, при условии, что в списке инструментов поставщика такой инструмент есть, программа эти файлы увидит (после перезагрузки программы).
(На графике правой кнопкой - Перезагрузить данные). Поведение может отличаться, в зависимости от сервера с которым работаете:
Однозначно "ничего не будет работать" с таким поставщиком как QuikLua, так как истории там не много и не по всем инструментам. На таком поставщике загрузка данных из таблицы Обезличенные сделки (в программе TSLab таблица "Сделки по инструментам") может занимать большое количество времени.
На криптобиржах Huobi, Deribit и в Binance сделали историю, прочитайте особенности.
Не будет работать с PLazaII , так как там совсем истории никакой, но с подключением Plaza на интернете и местом физического положения компьютера не экономят. Т.е при этих подключениях будет доступна только та история, которая есть в сделках по инструментам, которые выдает брокер/биржа.
Настройка "Исп.Дату перезагрузки" позволяет четко определить, сколько именно за последние дни нужно загрузить. Работает от указанной даты, до текущей даты. Таким образом, при Перезагрузке данных, не стирается кеш, накопленный за прошлые даты.
Для некоторых поставщиков данных, имеющих хорошие сервера истории, настройкой можно пренебрегать, использовать, как ускоритель закачки данных.
Для этих серверов можно пренебрегать настройкой:
Netinvestor(при подключениях QuikDDE)
IQFeed
Deribit только для фьючерсов perpetual
Пренебрегать осторожно(чего-то может не быть):
Transaq
Alor
С остальными всеми очень осторожно.
В свойствах скрипта тоже есть эта настройка. При восстановлении интернет-связи, перезагрузка всего скрипта будет идти с установленной даты, а не с самого первого тика в кешевых данных инструмента.
График 5 тиков. В видео видно, как на верхнем графике появляется бар и через некоторое время изменяется.
Что произошло.
Все тиковые графики, кроме 1 тик, невозможно выравнивать по времени. Бары могут приходить внутрь уже закрытых по второму инструменту.
После закрытия бара ликвидного инструмента, может прийти тик менее неликвидного в прошлое, что и видно в фильме выше. Это не касается полноценных баров, например 1 секунда.
График это один из основных способов визуального представления числовых данных и проведения технического анализа. Особенностью программы TSLab является мощная и гибкая система настройки отображения графиков. Вы можете использовать предустановленные настройки отображения графика или настроить отображение графика под свои потребности.
Окно «График» может быть открыто из Главное меню | Вид | График или из контекстного меню окна "Котировки", открытого над интересующей Вас ценной бумагой.
Откройте простой график.
В открывшемся окне нажмите правой кнопкой мыши на рабочем пространстве графика. В контекстном меню выберите пункт Свойства.
В окне Свойства:График выберите вкладку Источники. В строке Инструменты выберите интересующую вас бумагу
Откройте вкладку График. Отключите опцию Исп. дату от. Данная опция позволяет ограничить количество загружаемых с сервера торговых данных. Она по умолчанию включена. Подтвердите выбранные настройки, нажав на кнопку ОК.
Обратите внимание! Если вы используете исторические данные, график будет загружен сразу. Если же вы хотите получить данные с реального поставщика данных, то предварительно нужно выполнить подключение к этому поставщику.
У графика есть свой собственный редактор, для вывода с помощью него индикаторов.
В редакторе графика отключены некоторые блоки, которые не могу быть использованы в графике, например, вход в позицию и выход из позиции.
При установленном "флаге" линия выводится на график, при снятии флага, не выводится.
Нажатие кнопок “L” и “R” на "Легенде" графика отключает автомасштабирование по левой/правой осям соответственно.
У меню легенда есть функция привязки к своей панели. Наведите курсор мыши на легенду, нажмите:
При изменении размеров панелей графика, легенда остается на прежнем месте.
Меню Легенда можно перемещать по графику. Наведите курсор мыши на Легенду, зажмите левую кнопку мыши, переместите курсор в нужное место графика, отпустите кнопку мыши.
Доступ к контекстному меню осуществляется нажатием правой клавиши мыши в рабочем пространстве графика.
Перезагрузить данные
Удаляет существующие и загружает новые данные для ценной бумаги и интервала, используемых в графике.
При большом объеме данных может занять длительное время. Параметр функции Исп.Дату перезагрузки в свойствах скрипта, - дата от которой будут перезагружены данные.
Показать редактор
Открывает окно редактора.
Свойства
Открывает окно свойств графика.
Показать на
Перемещает окно "График" на один из существующих листов рабочей области.
Клонировать окно
Создает копию окна "График".
Показать редактор
Открывает вкладку редактора.
Показать график
Открывает вкладку график.
Перезагрузить данные
Осуществляет перезагрузку данных.
Двигать
Позволяет переместить графический примитив на графике в новое положение.
Добавить точку
Рисует точку.
Добавить отрезок
Рисует отрезок. Для охвата области несуществующих свечей задайте нужную величину области с помощью свойства графика "Отступ баров".
Добавить бесконечную линию
Рисует бесконечную линию. Для охвата области несуществующих свечей задайте нужную величину области с помощью свойства графика "Отступ баров".
Добавить луч
Рисует луч. Для охвата области несуществующих свечей задайте нужную величину области с помощью свойства графика "Отступ баров".
Добавить горизонтальную линию
Рисует горизонтальную линию. Для охвата области несуществующих свечей задайте нужную величину области с помощью свойства графика "Отступ баров".
Добавить вертикальную линию
Рисует вертикальную линию. Для охвата области несуществующих свечей задайте нужную величину области с помощью свойства графика "Отступ баров".
Добавить Фибоначчи
Рисует уровни Фибоначчи.
Добавить текст
Добавляет текст.
Удалить для выбранной шкалы и панели
Удаляет все графические примитивы ассоциированные со шкалой и панелью.
Шкала
Выбирает шкалу графика.
Цвет
Выбирает цвет.
Временной интервал
Интервал кеширования данных.
Свойства окна "График" можно открыть с помощью контекстного меню или с помощью кнопки "Свойства" (Главном меню - Правка). Свойства расположены на вкладке "График".
Для каждого графика должен быть определен хотя бы один источник данных, это ценная бумага, показатели которой будут отображены на графике.
В зависимости от шаблона графика, при наличии в нем нескольких источников данных, график может содержать информацию по нескольким ценным бумагам.
Выбор ценной бумаги происходит в окне выбора ценной бумаги. В этом окне Вы можете выбрать поставщика (брокера, предоставляющего информацию), тип ценных бумаг, а также использовать фильтр ценных бумаг.
Поставщик
Выбор поставщика данных.
Тип инструмента
Выбор типа/типов инструмента.
Рынок
Выбор рынка.
Список инструментов
Список доступных для выбора бумаг. Вы можете выполнить поиск необходимой бумаге в Строке поиска. Рядом со строкой поиска есть выпадающее меню, позволяющее выбрать Точное или Неточное соответствие вводимого запроса названию искомой бумаги.
Дополнительные параметры
Не показывать страйки
Исключает страйки из списка инструментов.
Не показывать истекшие
Исключает истекшие из списка инструментов.
Экспирация
Выбор типа экспирации:
после;
до;
точно.
Выбор даты экспирации
Осуществление выбора даты экспирации
Для удобства при работе с фьючерсами возможно отображение на графике разных ценных бумаг для разных периодов времени. Таким образом, программа предоставляет Вам возможность комбинировать данные различных финансовых инструментов.
Выбранные инструменты размещаются в поле "Источник" окна "Свойства: График". Нажмите на "+ Добавить инструмент" чтобы раскрыть инструмент добавления начальной и конечной дат, которые будут использоваться для построения графика. В качестве первого инструмента должен быть выбран самый новый инструмент.
Установленный инструмент может быть удален путем нажатия на кнопку "Удалить".
Свойства окна "График" можно открыть с помощью контекстного меню или с помощью кнопки "Свойства" (Главном меню - Правка). Свойства расположены на вкладке "График".
Подробнее о режиме обновления данных в TSLab читайте в статье Интервал пересчета скрипта
Интервал пересчета
Управление режимом пересчета агента и созданием команд в режиме реальной торговли:
интервал;
интервал + первая сделка;
интервал (для событий)
сделка;
пок/прод;
пок/прод (без объема).
Обновлять в реальном времени
Включает обновление и пересчет в реальном времени в режиме лаборатории. Данный режим используется для имитации работы агента с реальными данными.
Пересчет по каждому источнику
Если стратегия использует несколько источников данных, при включении данной опции пересчет будет происходить при открытии новой свечи для каждого источника. Данная опция не влияет на режимы "Сделка" и "Пок/прод".
Интервальный период
Величина интервала обновления графика:
Дни (временной интервал между соседними свечами составляет один день);
Минуты (временной интервал между соседними свечами составляет одну минуту);
Секунды (временной интервал между соседними свечами составляет одну секунду);
Тики (периодом обновления графика являются колебания цены ценной бумаги).
Объем;
Шаг цены.
Внимание! Секунды и Тики строятся на основе информации о сделках.
Интервал
Интервал обновление графика.
Дата от
Начальная дата графика.
Исп. дату от
Включает использование начальной даты. Если не включено, используется максимально доступное количество данных, определяемое источником.
Дата к
Конечная дата графика.
Исп. дату к
Включает использование конечной даты. Если не включено, используется максимально доступное количество данных, определяемое источником.
Дата перезагрузки
Дата, начиная с которой необходимо перезагрузить данные графика.
Исп. дату перезагрузки
Активирует применение выбранной даты, начиная с которой необходимо перезагрузить данные графика.
Макс. дней
Позволяет ограничить объем запрашиваемых исторических данных (от "Дата к"). Значение "0" - количество без ограничения.
Начало сессии
Устанавливает временные интервалы для сессии.
Конец сессии
Устанавливает временные интервалы для сессии.
Макс. баров
Максимальное количество баров, используемое для расчета. Данная настройка позволяет ограничить количество баров при работе агента в реальном времени для исключения избыточных расчетов.
Метод декомпрессии
Метод декомпрессии сжатых данных в режиме расчета/оптимизации на исторических данных. Данный параметр определяет временной сдвиг данных, рассчитанных для компрессированных временных интервалов при декомпрессии к оригинальному (базовому) временному интервалу. Пример: Базовый интервал расчета 1 минута. Для расчета индикаторов использована компрессия в интервал 1 час. 12-ти часовой бар = 12.00 - 12.59 минуты. При разжатии индикаторов:
1-й метод: значение 12.00 начинает действовать (станет доступно для расчетов внутри скрипта) с минутного бара 12.59.
2-й метод: значение 12.00 начинает действовать (станет доступно для расчетов внутри скрипта) с минутного бара 12.00.
3-й метод: значение 12.00 начинает действовать (станет доступно для расчетов внутри скрипта) с минутного бара 13.00.
Внимание!
Для оптимизации торговых стратегий наиболее оптимален метод 1.
2-й метод не рекомендуется применять для тестирования стратегий вследствие возможного "заглядывания в будущее", т.к. значение компрессированного индикатора доступно до окончания часа! 2-й метод применим исключительно для визуального и графического анализа.
3-й метод обладает небольшим запаздыванием, равным одному базовому интервалу, и может применяться для тестирования стратегий опирающихся на короткие (секундные) интервалы для имитации возможных задержек исполнения, таких как медленные каналы связи и т.п.
Показывать соединители - опция позволяет включить / отключить отрисовку линий соединителей в окне редактора скриптов
Размер бара
Параметр задает ширину бара в пикселях на графике.
Отступ
Отступ правого края графика от оси в пикселях.
Скрывать шкалы
Скрывает шкалы, расположенные снизу и по бокам графика.
Прозрачность легенды, %
Прозрачность легенды в процентах.
Временная шкала
Выбор типа временной шаклы:
простая временная шкала. Каждая ячейка сетки заполняется равным количеством свечей, на временной шкале отображается время, соотвествующее последней свече ячейки;
адаптивная временная шкала. Размер ячейки сетки подстраивается под фактическое количество свечей выбранной единицы измерения времени. Использование адаптивной временной шкалы возможно, если в качестве Интервального периода используются Дни, Минуты или Секунды. в случае использования Объема или Шага цены применяется простая временная шкала.
Группировать сделки
Группирует сделки на графике при помощи вспомогательных линий
Цвет шрифта легенды
Цвет шрифта легенды.
Цвет фона
Цвет фона.
Цвет шрифта
Цвет шрифта.
Цвет сетки
Цвет сетки.
Фон линеек
Фон линеек.
Цвет шрифта на линейках.
Цвет шрифта линеек.
Внимание! Выбранные Вами настройки свойств "Цвет фона", "Настройки шрифта", "Цвет сетки", "Цвет шрифта", "Фон линеек" могут быть возвращены к дефолтным с помощью кнопки "Выбрать настройки по умолчанию", находящейся справа от выпадающего меню данного свойства. Применение пользовательских настроек отображается с помощью красного индикатора на кнопке "Выбрать настройки по умолчанию".
Виден ли скролл
Отображать/Скрывать полосу прокрутки.
Формат заголовка
Задает формат заголовка, отображаемого в закладке для графика.
Настройки шрифта
Тип и размер шрифта графика.
Заголовок окна
Отображать/Скрывать заголовок окна.
Если зажать и потянуть график в левую или правую сторону, то будет выполнен сдвиг графика по оси времени. При этом будет выполнено автомасштабирование по вертикальной оси.
Если покрутить колесо мышки над графиком, то он будет масштабируется относительно курсора мыши.
Нажатие кнопок “L” и “R” на "Легенде" графика отключает автомасштабирование по левой/правой осям соответственно, что дает две дополнительных возможности:
при горизонтальной прокрутке и изменении масштаба не будет автоматического изменения масштаба по вертикальной оси
при вращении колеса мыши над вертикальной осью изменение вертикального масштаба не ограничивается максимальной и минимальной ценой видимой зоны графика.
Возможности, указанные в п.2 распространяются только на 2 оси, на дополнительные оси данные возможности не распространяются (на графике можно выставить до шести осей, выставляется в поле “количество шкал” блока “панель графика”)
Снизу графика появились дополнительные кнопки перехода на начало и конец загруженного графика инструмента. Переход можно осуществить тремя способами:
путем нажатия сочетания клавиш CTRL+лево/право (кнопки клавиатуры)
Опция позволяет сместить линию графика на N баров влево от правой границы рабочей области.
Данная опция включается в меню Свойства графика - Отступ баров
нажатием соответствующих стрелок на полосе горизонтальной прокрутки