Приветствую всех!
Хочу рассказать о новых инструментах, созданных нашей IT командой.
С декабря 2022 года началась разработка индикатора для определения Волн Вульфа. В результате напряженной работы всех вовлеченных специалистов индикатор создан!!!
Индикатор находит паттерны согласно требованиям, предъявляемым к Волнам Вульфа на временных интервалах от 15 минут и выше.
Индикатор способен определять Волны Вульфа продолжения тренда и разворота.
Участники группы Ettil -торговые сигналы Вульфа Chat t.me/+y3Bnm1E9PlY3ZTA6 смогли лично ознакомиться и протестировать его возможности.
Пример работы индикатора отработанной волны на BTC.
А это пример формирующейся Волны Вульфа в РАО на двух часовом графике.
Скачать открытый код можно здесь disk.yandex.ru/d/UfZSXVXo9d3FnQ
Выглядит так
Подробнее здесь
В прошлый раз был создан советник, который по минимальной торговой логике давал нам некие сигналы на лонг/шорт. Но было что улучшать и, может, далеко не все пункты кто-то захочет включить в алгоритм собственного советника, но в учебных целях мы поэтапно рассмотрим каждый, чтобы было понимание как это можно реализовать.
Сегодня дополним скрипт теми пунктами, которые были связанные с обработкой времени:
Прежде всего начала сделаем правильное отображение цифровых данных.
В прошлых примерах все данные в скрипте выводились в формате строки.
При внимательном рассмотрении можно было заметить, что число выравнивалось по левому (как текст), а не правому краю (как число) ячейки.
Типы всегда можно посмотреть по функции AddColumn в файле QLUA (говорили об этом ранее) по запросу «Функции для работы с таблицами Рабочего места QUIK»:
Тип данных в колонке:
QTABLE_INT_TYPE – целое число,
Продолжаем изучение qlua, cегодня:
Интегрируем таблицы в структуру скрипта qlua.
Удаляем таблицы через DestroyTable.
Останавливаем скрипт через IsWindowClosed.
Обработка события закрытия таблицы через коллбэк.
Работа с цветом SetColor, Highlight, SetSelectedRow.
Пишем простого советника.
В прошлый раз мы рассмотрели как с помощью qlua создать таблицу в торговом терминале и заполнить её информацией из таблицы текущих торгов. Но это была статичная табличка, чтобы её «оживить» нужно разместить операции с нашей таблицей внутри структуры скрипта в функции main.
Саму таблицу мы можем создать до цикла while и внести неизменяемые данные (в нашем случае тикер и наименование бумаги), а уже заполнить цифрами и обновлять внутри цикла. Пока будет работать скрипт таблица будет обновляться.
function OnInit() tikers = {"GAZP", "SBER", "VKCO"} progname = "mytable :" timeout = 5000 end function OnStop() do_it = false message(progname.." Финиш.") end function main() message(progname.
ВРЕМЯ ДЕЙСТВИЯ: ДО ЗАКРЫТИЯ ТОРГОВ
УСЛОВИЕ: ЦЕНА >= 311
СТОП-ЛОСС: ЦЕНА ВАШЕЙ ПОКУПКИ — 4.9
ТЭЙК-ПРОФИТ: ЦЕНА ВАШЕЙ ПОКУПКИ + 4.9
ВРЕМЯ ДЕЙСТВИЯ: ДО ЗАКРЫТИЯ ТОРГОВ
УСЛОВИЕ: ЦЕНА >= 1950
СТОП-ЛОСС: ЦЕНА ВАШЕЙ ПОКУПКИ — 57
ТЭЙК-ПРОФИТ: ЦЕНА ВАШЕЙ ПОКУПКИ + 57
СТАТИСТИКА С 22.09.1997 ПО 29.12.2018: 710/396
(ЧИСЛО ПРИБЫЛЬНЫХ СДЕЛОК/ЧИСЛО УБЫТОЧНЫХ)