Инструкция по работе с терминалом TSLab версии 1.2
2.5.2. Панель управления редактора

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

Свойства и настройки лаборатории

Вкладка «Очередь заявок»
Информационная вкладка «Очередь заявок» показывает очередь заявок на покупку или продажу выбранного инструмента.
Вкладка «Очередь заявок». Контекстное меню

Свойства/Настройки Описание
Скрипт Источники Выбор источника данных.
Параметры Перечень параметров блоков, примененных в скрипте.
Исполнение агента Отключить генерацию позиций Отключает создание позиций по сделкам, т.е. входы и выходы.
Имитация портфеля Начальный депозит Размер начального депозита для модельных расчетов показателей торговой стратегии.
Вид имитации Способ расчетов финансовых результатов при моделировании:

По умолчанию — используется настройка, определяемая в блоках открытия позиции. Количество лотов/контрактов будет равно параметру «Количество» в блоках открытия позиции.

Рассчитывать из суммы — объемы позиций рассчитываются из депозита и цены за один контракт/лот инструмента и и не умножается на параметр «Количество» в блоках открытия позиции. Реинвестирование прибыли не применяется.

Рассчитывать изменения — то же что и модель два, но с реинвестированием прибыли и пересчетом размера депозита после закрытия каждой сделки.

Режим торгов При моделировании определяется возможность совершения только длинных, только коротких или и длинных и коротких сделок.
Режимы обновления Интервал пересчета Управление режимом пересчета скрипта и генерации команд в режиме реальной торговли. Доступны четыре режима пересчета: интервал, интервал + первая сделка, сделка, пок/прод, .

Интервал — пересчет происходит только по закрытию бара. Этот режим расчета максимально приближен к расчетам в лаборатории. Вход в позицию и выход из нее на одном баре невозможен. Условные заявки (Стоп приказ) будут выставлены только после закрытия свечи на которой была открыта позиция.

Сделка — пересчет происходит после каждого тика (любой рыночной сделки по инструменту). В расчетах учитываются незакрытые бары. Вход в позицию и выход из нее возможен на одном баре, что может давать результаты существенно отличающиеся от моделирования в лаборатории. Применение данного режима рекомендуется только для создания арбитражных алгоритмов.

Пок/прод — пересчет происходит после каждого изменения — лучшей покупки либо лучшей продажи. В расчетах учитываются незакрытые бары. Вход в позицию и выход из нее возможен на одном баре, что может давать результаты существенно отличающиеся от моделирования в лаборатории. Применение данного режима рекомендуется для создания арбитражных алгоритмов.

Пок/прод без объема — аналогичен предыдущему, но не учитывает изменения объема.

Интервал + первая сделка. Пересчет скрипта вызывается по приходу информации о первой сделке интервала. Информация о первой сделке доступна при расчетах.

Обновлять в реал. времени Включение обновления и пересчета в реальном времени в режиме лаборатории. Данный режим используется для имитации работы скрипта с реальными данными.
Пересчет по каждому источнику Если стратегия использует несколько источников данных, при включении данной опции пересчет будет происходит при открытии новой свечи для каждого источника. Данная опция не влияет на режимы Сделка и Пок/прод.
Исторические данные Дата от Дата начала временного интервала истории котировок используемого в расчетах.
Исп. Дату от Флаг использования начальной даты. Если не включено, используется максимально доступное количество данных, определяемое источником.
Дата к Дата окончания временного интервала истории котировок используемого в расчетах.
Исп. Дату к Флаг использования конечной даты. Если не включено, используется максимально доступное количество данных, определяемое источником.
Макс. дней Позволяет ограничить количество дней запрашиваемых исторических данных (от «Дата от»). Значение «0» — количество без ограничения.
Если флаг использования конечной даты не выбран, то последним днем выборки будут считаться текущие сутки до 0 часов следующего дня.
Начало сессии Устанавливает временные интервалы для сессии.
Конец сессии Устанавливает временные интервалы для сессии.
Макс. баров Максимально количество баров используемое для расчета. Данная настройка позволяет ограничить количество баров при работе скрипта в реальном времени для исключения избыточных расчетов.
Интервальный период Дни, минуты, секунды, тики (для тикового периода параметр Интервал игнорируется)
Интервал Значение базового интервала (количество интервальных периодов)
Параметры вычислений Метод декомпрессии Метод декомпрессии сжатых данных в режиме расчета/оптимизации на исторических данных.

Данный параметр определяет временной сдвиг данных рассчитанных для компрессированных временных интервалов при декомпрессии к оригинальному (базовому) временному интервалу.
Допустим, базовый интервал расчета 1 минута. Для расчета индикаторов использована компрессия в интервал 1 час.
бар 12.00 часовой = 12.00 — 12.59 минуты
при расжатии индикаторов:
1-й метод: значение 12.00 начинает действовать (станет доступно для расчетов внутри скрипта) с минутного бара 12.59
2-й метод :значение 12.00 начинает действовать (станет доступно для расчетов внутри скрипта) с минутного бара 12.00
3-й метод :значение 12.00 начинает действовать (станет доступно для расчетов внутри скрипта) с минутного бара 13.00

Внимание! 2-й метод не рекомендуется применять для тестирования стратегий из-за возможного «заглядывания в будущее», т.к. значение компрессированного индикатора доступно до окончания часа!

2-й метод применим исключительно для визуального и графического анализа .
Для оптимизации торговых стратегий наиболее оптимален 1-й метод.
3-й метод обладает небольшим запаздыванием равным одному базовому интервалу и может применяться для тестирования стратегий опирающихся на короткие (секундные) интервалы для имитации возможных задержек исполнения, медленных каналов связи и т.п.

Торговать с (бар) Параметр управляющий пропуском определенного числа баров, до генерации первого торгового сигнала, необходимого для стабилизации индикаторов.
Параметры графика Размер бара Размер отображения бара в пикселях.
Отступ Отступ правого края графика от шкалы в пикселях.
Скрывать шкалы Включает или отключает отображение шкал на графике.
Внешний вид Цвет фона Цвет фона окна.
Цвет шрифта Цвет шрифта окна.
Тип шрифта Наименование шрифта окна.
Размер шрифта Размер шрифта окна.
Прозрачность Прозрачность Степень прозрачности окна.
Прозрачность при фокусе Степень прозрачности активного окна.
Заголовок окна Скрывает/Показывает заголовок плавающего окна.
Сохранение компоновки вкладок Сохранение расстановки вкладок в лаборатории.
Режим агента Выставление заявок «Плохие» заявки по рынку Условные заявки с ценой хуже рынка выставлять как рыночные.
В случае появления сообщения:
«Условная заявка по сигналу ‘{0}’ может не сработать, т.к. текущая цена на рынке {1} (Цена условия {2})!»
заявка уходит как рыночная, а не как условная.
По рынку с фикс. ценой Заявка по рынку создается не по текущей цене, а по цене открытия бара (как при расчетах) +- проскальзывание.

Блок «Цена входа (расчетная)» и опция блока «Трейлстоп» и «ТрейлстопАбс» «Использовать расчетную цену» не совместим с «По рынку с фикс.ценой».

Take-profit без проскальзывания Заявка тейк-профит создается не условной, а лимитной (но без проскальзывания).
Открытие лимитными заявками В случае когда данный флаг установлен, для открытия позиции программа генерирует лимитные заявки без проскальзывания.
Проскальзывание в % Размер проскальзывания в процентах, которое будет передаваться в заявку генерируемую агентом.
Внимание! Проскальзывание необходимо учитывать при оптимизации (в лабораторном режиме). Достаточно применить блок «Абсолютная комиссия» или «Относительная комиссия» и в нем поставить величину проскальзывания.
Проскальзывание в шагах Размер проскальзывания в шагах цены инструмента, которое будет передаваться в заявку генерируемую агентом. Заявка типа «По рынку» не учитывает настройки проскальзывания и выполняется по первой предложенной цене. Настройки полей проскальзывания суммируются!
Внимание! Проскальзывание необходимо учитывать при оптимизации (в лабораторном режиме). Достаточно применить блок «Абсолютная комиссия» или «Относительная комиссия» и в нем поставить величину проскальзывания.
Исполнение агента Виртуальная позиция макс. свечей В течение скольких свечей будет сохраняться виртуальная позиция.
Действие автозакрытия (баров) Количество баров, в течение которого пропущенный выход будет закрыт автоматически по рынку, если выбран «Исполнять выходы сразу». Если установленного количества баров не хватило, будет выдано сообщение о пропущенном выходе и необходимости ручного вмешательства.
Действие автооткрытия (баров) Количество баров, в течение которого пропущенный вход будет выполнен автоматически по рынку, если выбран «Исполнять входы сразу». Если установленного количества баров не хватило, будет выдано сообщение о пропущенном входе и необходимости ручного вмешательства.
Внимание! Вход может быть выполнен автоматически по рынку только если первоначальная заявка не была исполнена совсем. Если первоначальная заявка была исполнена частично, новая не будет выставлена.
Ждать исполнения выхода Количество свечей, в течение которых программа будет ждать исполнения лимитной заявки выхода из позиции. Затем заявка будет отменена.
Ждать исполнения входа Количество свечей, в течение которых программа будет ждать исполнения лимитной заявки входа в позицию. Затем заявка будет отменена.
Игнорировать позиции вне истории Не включает в пересчет позиции, не входящие в выбранную Пользователем историю.
Имит. очередность позиций Имитирует очередность появления исполненных позиций в расчете агента. Иначе агент видит только последние активные позиции на любом баре.
Исполнять входы сразу Определяет возможность автоматического входа в позицию без ручного подтверждения. Команда входа будет выполнена только если сигнал входа был сформирован на последнем закрытом баре.
Исполнять выходы сразу Определяет возможность автоматического выхода из позицию без ручного подтверждения. Команда выхода будет выполнена двумя способами в зависимости от настройки автозакрытия. В случае если параметр автозакрытия равен нулю, команда будет выполнена с формированием цены по последнему закрытому бару, в противном случае программа будет выполняться по рынку в соответствии с настройками автозакрытия.
Не открывать, если есть пропуск выхода Не открывает позицию, если был зафиксирован пропуск выхода.
Не уведом. пересчет Исключает создание сообщений о пересчете скрипта в режиме агента.
Увед. о проп. входах Сообщает о пропущенных входах.

Вкладки окна редактора скриптов
График

В данной вкладке отображается график работы скрипта.

Редактор
Редактор скриптов и редактор графиков — один и тот же инструмент, с тем отличием что часть функций, обязательных для создания скриптов, не требуется в создании графиков.
Основные команды, доступные во время работы с редактором, содержатся в контекстном меню редактора.

Команда Описание
Копировать Копирует выделенный объект в буфер обмена.
Вырезать Копирование выделенного объекта в буфер обмена и удаление.
Вставить Вставка объекта из буфера обмена.
Отменить Отменяет последнее действие.
Восстановить Восстановление отмененного действия.
Удалить Удаление выделенного объекта.
Показать график Открывает график скрипта.
Свойства Открывает свойства лаборатории.
Развернуть выделенные блоки Полностью отображает параметры выделенных блоков.
Свернуть выделенные блоки Минимизирует отображение выделенных блоков за счет количества выводимых в блоке параметров.
Показать лабораторию на Перемещает окно лаборатории на один из существующих листов рабочей области.

Кнопки управления редактора расположены на панели инструментов под главным меню. В раздел Панель инструментов.
Панель инструментов редактора содержит перечень категорий блоков визуального конструирования. Нажатие левой кнопкой мыши на категории раскрывает перечень блоков, отноcящихся к данной категории. Выберите блок, чтобы увидеть панель базовых свойств блока.

Свойство Описание
Имя сборки Имя сборки.
Версия Номер версии.
Платформа Указывает, с какой версией программы совместим данный блок:
— нейтрально. Блок работает с любой версией программы;
— работает с 32-битной версией программы;
— работает с 64-битной версией программы.

Панель свойств блока содержит сведения, характеризующие выбранный блок:

Свойство Описание
Главное Имя блока Наименование блока. В случае использования одного и того же блока более одного раза, к наименованию блока добавляется порядковый номер. Наименование блока может быть изменено Пользователем непосредственно в строке, содержащей наименование блока.
Обработка данных Указывает на способ обработки данных.
— Потоковый способ. Применяется потоковая (единовременная) обработка данных.
— Последовательный способ. Применяется последовательная (пошаговая) обработка данных.
Обработчик Наименование используемого обработчика. Пользователь можеть выбрать другой обработчик, сохранив наименование, заданное в строке «Имя блока».
Параметры Индивидуальные характеристики блока.

Переход в раздел Справочник блоков визуального конструирования
Результаты
Данная вкладка отображает результаты тестирования на исторических данных.

Параметр Описание
Чистый П/У Чистая прибыль.
Чистый П/У% Чистая прибыль в процентах.
Общий MFE Максимально возможный доход по всем позициям.
Доходность в год Средне-геометрический годовой темп прироста.
Расчет доходности в год производится согласно формуле, указанной по данной ссылке — {+}http://www.investopedia.com/terms/c/cagr.asp+.
Доходность в месяц Средне-геометрический темп прироста за месяц.
Расчет доходности в год производится согласно формуле, указанной по данной ссылке — {+}http://www.investopedia.com/terms/c/cagr.asp+, но степень равна количеству месяцев.
Доход за бар Прибыль на бар.
Количество сделок Число сделок.
Средний П/У Средняя прибыль / убыток.
Средний П/У % Средняя прибыль / убыток в процентах.
Баров на сделку (в среднем) Среднее число баров удержания позиции.
Выиграно сделок Число прибыльных сделок.
Выиграно % Процент прибыльных сделок.
Общая прибыль Общая прибыль, сгенерированная прибыльными сделками, минус комиссия.
Средняя прибыль Средняя прибыль.
Средняя прибыль % Средняя прибыль в процентах.
Баров на сделку (в среднем) Среднее количество баров в прибыльной сделке.
Максимум подряд Максимальное количество последовательных прибыльных сделок.
Убыточных сделок Число убыточных сделок.
Убыточно % Процент убыточных сделок.
Общий убыток Общий убыток, сгенерированный убыточными сделками, плюс комиссия.
Средний убыток Средний убыток.
Средний убыток % Средний убыток в процентах.
Баров на сделку (в среднем) Среднее количество баров в убыточной сделке.
Максимум подряд Максимальное количество последовательных убыточных сделок.
Макс. просадка Наибольшее (пиковое) проседание линии капитала в абсолютных величинах.
День макс. просадки Дата, когда была зафиксирована максимальная просадка в абсолютных величинах.
Макс. просадка % Наибольшее (пиковое) проседание линии капитала в процентах, относительно цен закрытия.
День макс. просадки% Дата, когда была зафиксирована максимальная просадка в процентах.
Профит фактор Показатель прибыльности. Рассчитывается по формуле «Профит Фактор (Profit Factor) = Вся прибыль / Весь убыток».
Фактор восстановления Показатель восстановления. Рассчитывается по формуле «Фактор восстановления (Recovery Factor) = П/У / Макс. убыток».
Коэф. выигрыша Коэффицент выигрыша. Рассчитывается по формуле «Коэф. выигрыша (Payoff Ratio) = Средняя прибыль / средний убыток».

Доход
Вкладка, демонстрирующая доходы и расходы для выбранных исторических данных.

Сделки
Вкладка показывает таблицу совершенных сделок.

Колонка Описание
Позиция Позиция.
Символ Наименование ценной бумаги.
Лоты Количество в сделке.
Вход Число и цена входа.
Выход Число и цена выхода.
% изменения Процент изменения прибыли/убытка за сделку.
П/У Прибыль/убыток за сделку.
Продолж.(баров) Количество баров между входом и выходом.
Доход/бар Прибыль/убыток за один бар.
Общий П/У Текущая прибыль/убыток по позиции.
MAE Максимальный возможный убыток по сделке.
MFE Максимальный возможный доход по сделке.
Статус Сигнализирует о наличии или отсутствии ошибок в работе агента:
— зеленая галочка — позиция не содержит ошибок;
— желтые песочные часы — позиция содержит неисполненные торговые сигналы;
— красные песочные часы — позиция выполнена с торговыми ошибками

Оптимизация
Вкладка запуска и настройки оптимизации скрипта.

Колонка Описание
Полное имя Имя переменной.
Значение Текущее значение переменной.
Mин. Минимальное значение переменной.
Maкс. Максимальное значение переменной.
Шаг Размер шага изменения переменной.
Использовать Использовать/Не использовать.

В средней части вкладки расположен механизм управления параметрами оптимизации — таблица сохраненных параметров и кнопки для управления ими. В таблице отображаются комментарии к сохраненным параметрам и дата сохранения. Кнопки служат для следующих действий:
— Сохранение параметров — сохранение текущих параметров оптимизации для последующего использования. При сохранении возможно указать свой комментарий.
— Удаление параметров — удаление выделенного блока параметров.
— Восстановление параметров — замена текущих параметров оптимизации на сохраненные в выделенном блоке.

В нижней части вкладки находится подсказка, содержащая расчетное максимальное количество проходов скрипта, поле для ввода собственного значения количества проходов, кнопка запуска оптимизации и индикатор процесса оптимизации. Максимальное число проходов рассчитывается как произведение количества проходов по каждой из выбранных для оптимизации переменных. Количество проходов для одной переменной определяется шагом оптимизации и выбранным диапазоном значений. Так для примера из 4х параметров в диапазонах 1 — 10 с шагом 1, максимальное число проходов, гарантированно покрывающее все возможные значения, будет 10*10*10*10 = 10 000 проходов.

Лог
Вкладка, показывающая журнал событий скрипта.

Результаты оптимизации
Данная вкладка позволяет Пользователю увидеть результаты оптимизации скрипта.

Колонка Описание
Чистый П/У Чистая прибыль.
Чистый П/У % Чистая прибыль %.
Общий MFE Суммарный максимально возможный доход по сделке.
CAGR Compound Annual Growth Rate/Совокупный среднегодовой темп роста
Макс. просадка Наибольшее (пиковое) проседание линии капитала в процентах относительно цен закрытия.
Количество сделок Количество сделок.
Выиграно сделок % Процент прибыльных сделок.
Выиграно сделок Число прибыльных сделок.
Профит фактор Показатель прибыльности.
Фактор восстановления Показатель восстановления.
Коэффициент выигрыша Показатель Payoff Ratio вычисляется как абсолютное значение отношения средней прибыли на сделку (Avg Profit (%)) к среднему убытку на сделку (Avg Loss (%)).

Двойное нажатие на строке устанавливает в скрипт параметры оптимизации из этой строки.