В данном видео мы разберем работу с контрольной панелью.

Содержание видеоролика (с привязкой по времени)

00:00

Приветствую всех! В данном видео мы разберем работу с контрольной панелью. Находится она в служебных элементах.  Это обычный кубик. При дабл-клике у нас открывается редактор данной панели. Непосредственно контрольная панель предназначена для того, чтобы мы могли что-то вывести на график для оперативно вмешательства в работу агента. То есть мы можем комбинировать ручную торговлю и алготрейдинг. Или же если нам необходимо, быстро что-то подкрутить в нашем роботе. Так, давайте сделаем несколько примеров. Для начала самый примитивный для того, чтобы мы увидели как это выглядит. Мы добавляем кубик «закрытие». И обратите внимание, это очень важно, у нас есть только один выход у кубика «закрытие», мы с ним соединили «Контрольную панель» и в «Контрольной панели» у нас появился кубик.

01:00

Изначально сразу он будет неопределенным. Нажимаем. Вот у нас появляется такая рамочка, это означает, что у нас выделен данный элемент.  И мы можем задать тип управления данного элемента.  Если его не задать, то он не будет отображаться на графике. Если задать, то соответственно он появится. Также мы можем задать имя, дополнительно, допустим это будет «Цена текущая».  Так, все. В данном случае у нас на графике будет выводиться текущая цена, просто в числовом формате. То есть не будет никаких дополнительных опций, это визуально для того, чтобы мы могли четко сразу видеть текущую цену. Нажимаем «Ок», выполняем сохраняем скрипты. Вот мы видим появилась такая панель.

02:00

Правильное имя, как мы задали. И вот мы можем пронаблюдать, цена «1711» и тут, и тут.  Так, в свойствах поставим галочку «Обновлять в реальном времени».  «Ок». Сейчас будут подкачиваться бары и мы можем сразу наблюдать как это происходит. На графике сейчас цена сильно ушла. А здесь она осталась. Происходит это потому, что у нас пересчет идет побарно, то есть «16999» это значение закрытия предыдущего бара. Можем пронаблюдать. То есть как закроется этот бар, у нас обновится текущая цена. Так, ну более менее понятно, давайте дальше, что можно сделать интересного с этими кубиками еще. Так, нам понадобится...

03:00

Для понимания давайте возьмем индикатор один, ну, допустим это «Минимум за период» пусть будет индикатор. Находится в индикаторах. Так, «Минимум за период». Соединяем его с  «Закрытием». И обратите внимание, у данного кубика есть параметр, соответственно, если  у кубика есть параметр, то появляется у него дополнительный выход для контрольной панели. Именно этот контрольный выход необходимо соединять с контрольной панелью, если нам необходим элемент не только для визуального  анализа, то есть видеть цифру конкретную, но и для изменения данного параметра. И самое главное, если мы соединили контрольный выход с контрольной панелью, то чекбокс здесь ставить нельзя. Если мы его поставим, то элемент автоматически превратится в обычный визуальный объект. То есть его нельзя уже будет отредактировать в контрольной панели. Так открываем опять панель, смотрим. Вот, у нас появился «Минимум за период».

04:00

Ну допустим назовем его «Поддержкой». Так дальше, собственно, что у нас уже появилось дополнительно. Все эти элементы остались как были, только дополнительно появился тип элемента, это уже может быть «Числовое значение», «Слайдер», «Слайдер с индикацией», «Числовое значение с управлением». Разновидности Вы можете посмотреть сами. То есть вот допустим «Число с управлением», я могу нажимать на эти стрелочки и они будут меняться. Естественно на графике, а не в редакторе. Дальше собственно слайдер со значением, я вот так буду двигать. Попытался сделать не там... буду его вот так двигать и у меня будет меняться это значение. Просто слайдер и просто числовое значение не сильно отличаются друг от друга.

05:00

Давайте посмотрим слайдер с индикацией. Мы можем задать ему шаг... монитор маленький, придется расширить экран. Мы можем задать ему минимальное значение, максимальное значение и шаг, с которым будет он меняется. Как и в оптимизации. Пусть будет такой, как есть. Давайте поставим значение «1». Максимум «1000», минимум – «1».  Применить – «Ок». Компилируем и конкретно на графике видим получившийся элемент управления. «Двадцать» идет у нас по дефолту, далее мы можем его изменить. Вот таким образом у меня будет меняться этот индикатор. Для того, чтобы увидеть эти изменения, мне необходимо сделать следующее.  Во-первых, добавить на график «Минимум за период».

06:00

Следующее – данный элемент не пересчитывается. И чтобы мы видели в реальном времени изменения, нам необходимо поставить чекбокс «Пересчитывать», в таком случае при изменении в данном контроле, у нас будет пересчитываться весь скрипт, и соответственно сразу у нас будут применяться изменения. Давайте еще поставим ему значение «число с управлением». Тип элемента. Остальное оставляем как есть, но хотя давайте шаг поставим «15». Так, «Ок», выполняем, смотрим. У нас поменялось, теперь это выглядит вот таким образом. Я собственно нажимаю, и у меня изменилось. Вот эта незаметная линия, минимум за период, с шагом «15». Как мы видим, он меняется. Я буду нажимать, вот Вы видите, график дергается. Каждый раз происходит пересчет.

07:00

Это же можно посмотреть по логам, идет постоянный пересчет. Так, разобрались с числовыми элементами. Теперь добавим следующий элемент, это логический уже будет. Логические у нас могут быть – «Разделитель логический» или «Логическая константа». Так, «Логическая константа». Разница только  лишь в том, что логическая константа имеет некий постоянный продолжительный сигнал, а логический разделитель имеет только на одном последнем баре сигнал. Также соединяем конкретно с контрольным выходом данный кубик.

08:00

То же самое здесь. Опять double-click. Так смотрим, значит, «Логическая константа». Называем ее «Условие входа».  Допустим, так мы назовем. Сделаем его в виде фиксирующей кнопки. Здесь есть уже разные – «Чекбокс», «Фиксирующая кнопка», просто «Кнопка» и «Торговая кнопка». «Фиксирующая кнопка», каким образом работает. Мы нажали ее, зафиксировали данное условие, и пока она зажата, условие является true. Если мы выбрали, допустим, «Чекбокс», то это будет такого вида. Мы поставили галочку, работает условие. Не поставили галочку – не работает условие.

09:00

«Кнопка» и «Торговая кнопка» они выглядят приблизительно одинаково, единственное, что цветная торговая кнопка, можно задать ей конкретно цвет. И можно поменять цвет шрифта. Здесь давайте цвет сделаем желтым, для примера, чтобы понимали, как это будет выглядеть. То есть принцип работы одинаковый, разница в том как мы представляем материал. Так, логический разделитель, это уже будет аналог для того, чтобы мы нажали на кнопочку и у нас сразу открылась позиция. То есть это условие , которое выполняется только на одном баре. Естественно, на последнем. Называем его «Покупка».

10:00

И делаем ему «Цветную торговую кнопку». Давайте для условия входа мы поменяем... сделаем вид «Чекбокс». Для разнообразия на графике. Компилируем.  Так получаем, вот  у нас покупка, условие входа . И в целом мы видим , что это мелко и некрасиво . давайте сделаем вот таким вот образом кнопочку. Расширим. Тоже самое можно и здесь увеличить. Также можно здесь и здесь. Здесь я бы наоборот уменьшил. Так, ок.У нас получилась такая красивая панель, в которой у нас есть несколько разных элементов управления и условий

11:00

Теперь давайте посмотрим как это будет выглядеть в торговле. Позиция... пусть будет «Открытие если меньше». Так, «открытие если меньше», соединяем его с источником, задаем ему цену от «минимума за период» и задаем ему условие, допустим «логическая константа». Так, «Закрыть по рынку»тогда возьмем для закрытия данной позиции. Так, «закрыть по рынку». Условием у нас будет «Логический разделитель».

12:00

Компилируем. Смотрим, у нас сделка открылась в самом начале. Очевидно, потому что у нас стоит условие для входа. Если  я уберу чекбокс, у меня это условие исчезнет. Но для того чтобы мы увидели оперативно изменения, мне необходимо на данный чекбокс поставить пересчет. Тоже самое на данную кнопочку. Но торговый разделитель … он работает конечно в агенте правильно, в управлении скриптами последний бар быстро меняется и мы можем не видеть его реальную работу. То есть как это выглядит. Так вот смотрите, я убрал условие входа. У меня алгоритм пересчитался и непосредственно сделки уже нет на графике. Ставлю, и вот опять у меня эта сделка вернулась. Так, теперь возвращаемся на корай и нажимаем «Покупка».

13:00

В данном конечно контексте это означает закрытие позиции, но все равно. Нажимаем «Покупка» и вот мы видим у меня нарисовалась... вот идет пунктирная линия, здесь сделка должна закрыться, на факт закрытия мы увидим только после пересчета. А так как после пересчета последний бар не является текущим, то и данного условия в скрипте мы не увидим. Но мы можем посмотреть это естественно в агенте. Мы нажмем кнопочку и вместе с этой пунктирной линией добавится маркер, который реально совершился и после пересчета он останется. В скрипте естественно этого не увидеть, невозможно . На этом все, всем спасибо за внимание.



  • Нет меток