Построение интерфейса

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

Стилизация элементов интерфейса

У всех элементов интерфейса есть настройки внешнего вида. Чтобы открыть настройки элемента интерфейса нужно дважды кликнуть левой кнопки мыши по редактируемому элементу:

Назначение действий на кнопки

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

Допустим мы хотим совершать покупку при нажатии на кнопку "Купить" и совершать продажу при нажатии на кнопку "Продать".

Создадим 2 константы:

  1. symbol - код торгуемого символа

  2. lot - количество лотов, которым будет торговать наш простой робот

Создадим простой интерфейс, состоящий из двух кнопок и прямоугольника в качестве фона:

На схему логики робота поместим 2 блока "Рыночный ордер" со следующими параметрами:

Теперь нам осталось лишь привязать блоки "рыночный ордер" к соответствующим кнопкам.

Для этого нужно скопировать ID каждого блока "рыночный ордер" и в параметре "ID связанного блока" указать ID соответсвующего блока.

Чтобы скопировать ID блока, нужно:

  1. Нажать "Ctrl"

  2. Не отпуская "Ctrl" дважды кликнуть левой кнопкой мыши по нужному блоку

В результате появится сообщение об успешной записи ID блока в буфер обмена.

Копируем ID блока "рыночный ордер" с направлением покупки и вставляем скопированный ID в параметр "ID связанного блока" кнопки "Купить":

Делаем то же самое для кнопки "Продать". Запускаем робота в терминале и проверяем его работоспособность:

При нажатии кнопки "Купить" робот совершает покупку, при нажатии кнопки "Продать" робот совершает продажу.

Привязка полей ввода к переменным

Иногда нужна возможность изменять значения переменных через интерфейс торгового робота. Для этих целей есть блок элемента интерфейса "поле ввода".

У поля ввода есть параметр "Связанная переменная". Если у поля ввода есть связанная переменная, то каждый раз, когда будет изменено поле ввода, переменная будет изменена в соответствии с новым значением поля ввода.

Сделаем улучшенную версию предыдущего примера. В этот раз "symbol" и "lot" будут не константами, а переменными. Для этих переменных сделаем поля ввода, при помощи которых мы прямо на ходу сможем менять значения этих переменных.

Итак, создадим переменные "symbol" и "lot":

Построим интерфейс нашего робота:

Первое поле ввода привязано к переменной "symbol", второе поле ввода привязано к переменной "lot".

На схему логики робота перетащим 2 блока "рыночный ордер", зададим их параметры и привяжем эти блоки к соответствующим кнопкам интерфейса:

Обратите внимание, в этот раз в качестве параметров "Символ" и "Лот" используются переменные, а не константы.

Запускаем робота и проверяем его работоспособность:

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

Модификации элементов интерфейса

При помощи блока "Модифицировать элемент интерфейса" можно менять свойства элементов интерфейса.

При помощи блока "Информация об элементе интерфейса" можно получить значение определенного свойства элемента интерфейса, например, его координату X или Y.

Last updated