Скрипт выводит в таблицу QLua баланс покупок/продаж последних 5-ти 1-минутных свечей

Автор записи: Дмитрий (Admin)
1 звезда2 звезды3 звезды4 звезды5 звезд (Голосов 6, среднее: 5,00 из 5)
Загрузка...

Скрипт-баланс-покупок-продаж

Код скрипта QLua
Скачать скрипт
Если у Вас появились какие-то вопросы, задайте их в комментариях под статьей !!!

Добавить комментарий

Скрипт выводит в таблицу QLua баланс покупок/продаж последних 5-ти 1-минутных свечей: 147 комментариев

  1. Здравствуйте. В скрипте данные в таблице меняются функцией SetCell. Существует ли возможность связать таблицу с двумерным массивом, чтобы изменения в массиве автоматически отображались в таблице. Спасибо.

  2. Здравствуйте. А можно ли создавать таблицу из скрипта в произвольной закладке квика? Сейчас у меня они открывается в той же закладке, где и окно "Lua скрипты" для запуска скриптов открыто. Иногда неведомым образом они оказываются на другой закладке.

      1. Спасибо за ответы. У меня луа боты автозапускаются при перезагрузке квика. И почему-то их интерфейс-таблицы появляются сразу на всех вкладках квика. Если бот включать отключать вручную через Окно "Доступные скрипты", то их таблицы создаются на одной вкладке, где само окно "Доступные скрипты". Это мой код неверный или это нормальное поведение? Может есть решения такого вопроса. Очень неудобно и приходится во все заходить и нажимать, показывать в таком то окне.

        1. Не знаю даже, не сталкивался с такой проблемой, но программно нет возможности регулировать вкладки. Обратитесь в компанию Arqa с этой проблемой, скорее всего это их недочет и они смогут исправить такое поведение таблиц.

  3. Уважаемый Дмитрий ресурс замечательный, много интересных важных мелочей здесь увидел. Спасибо. Несколько дней бьюсь над скриптом БАЛАНС ПОКУПОК/ПРОДАЖ ПОСЛЕДНИХ 5-ТИ 1-МИНУТНЫХ СВЕЧЕЙ менял настройки и инструменты всё равно или только зелёные ячейки или при смене знаков только красные.
    Подскажите коллеги в чём проблема? У всех он работает?

  4. Спасибо, сделал. Получилось, что он отрабатывает 15 минутки с момента своего запуска. А это не совсем то , что нужно. Надо, чтобы скрипт обрабатывал 15 TF , как на графике в квике - сменилась свечка, начался новый счет. Для часовика я сам сделал, а для 15 минутки наверно ума не хватает)))

      1. Именно с момента запуска, а хотелось бы чтобы после запуска скрипт отрабатывал до начала новой квиковой 15-минутки и начинал отсчет по новой. Если это нельзя сделать, что ж, буду использовать на часовых свечках, там все работает так как надо. Просто параметр LastBarSeconds я заменил на LastBarMinutes

  5. Не нашел в руководстве и на сайте. Подскажите, а возможно вставлять строки не в конец таблицы, а в начало?
    Как нибудь так:

    1
    2
    
     rows,col = GetTableSize(t_id)
    InsertRow(t_id, (rows*-1)-1)

    или так

    1
    
     InsertRow(t_id, 1)
    1. В руководстве как раз есть:
      3.15.7 InsertRow
      Функция добавляет строку с ключом «key» в таблицу с идентификатором «t_id».
      Формат вызова:
      NUMBER InsertRow(NUMBER t_id, NUMBER key)
      При добавлении данных в новую таблицу в первую очередь выполните
      данную функцию с параметром «key» равным «-1». При этом строка
      добавится в конец таблицы.
      Функция возвращает номер добавленной строки при успешном выполнении, иначе – «-1».
      При вызове функции с параметром «key» большим, чем текущее количество строк, строка
      добавляется в конец таблицы.
      Так что ответ - Да, возможно.

        1. Если key=1, то это и будет в начало, исключение, когда в таблице пусто и надо присваивать key=-1
          Иначе зачем этот key вообще нужен. В руководстве достаточно однозначно написано.

  6. Добрый день, уважаемая команда!
    Спасибо за отличный код, особенно с функцией выбора TF.
    Разрешите выразить пожелание по развитию данного скрипта: с точки зрения визуализации удобно было бы, чтобы по завершении бара установленного TF скрипт выводил на график метку со значением дельты, рассчитанной для данного завершенного бара.
    Данную функцию можно сделать опциональной: выводить или нет определяет пользователь в настройках в начале скрипта.
    Первой строкой можно сделать сделать время окончания "отчетного" бара - чтобы глазами было легче искать (можно также опционально если кому надо/не надо).

    Спасибо огромное за скрипт и если найдется возможность реализовать данные пожелания!!!!

    1. Здравствуйте!
      Он везде работает, возможно у Вас просто таблица не перерисовывается из-за частого вызова OnQuote, попробуйте по ней мышкой понажимать, подвигать ее, появятся изменения? Если нет, то возможно ошибка в логике кода.

          1. is_run=true
             
            p_classcode="QJSIM" --Код класса
             
            p_seccode="SBER" --Код инструмента
             
            function main()
             
            CreateTable();
             
               while is_run do
             
                   sleep(2000)
             
            end
            end
             
            function CreateTable()
             
            local T=0; 
            t_id = AllocTable();	
            AddColumn(t_id, T, "Оповещение", true, QTABLE_INT_TYPE, 15); T=T+1; 
             t = CreateWindow(t_id); 
            SetWindowCaption(t_id, "Таблица оповещения"); 
             
            for i=0, 10, 1 do 
            InsertRow(t_id, -1); 
             
            end; 
            end
             
            function OnQuote(class_code, sec_code)
                    if class_code==p_classcode and sec_code==p_seccode then
             
            SetCell(t_id, 1, 0, "Проверка работы Setcell");
             
            end
            end
             
            function OnStop() 
            DestroyTable(t_id); 
            Is_Run = false; 
            end;
                1. Все я нашел проблему ))))))
                  Смешно, вчера когда я запускал этот код, в созданную таблицу в указанную строку должен был добавить текст. Таблица создавалась, но текст не добавлялся, а не добавлялся он потому что, стакан не обновлялся 🙂 Я ждал секунд 10 ничего не появлялось и я думал, что ничего не работает, а сегодня с утра стакан активно обновляется и все работает 🙂

      1. в приведенном примере ma.lua - там где одна линия. есть ошибка синтаксис. И невозможно запустить индикатор. Они специально делают ошибки, чтобы примеры нельзя было проверить и применить и использовать знания? Часто такое встречаю во многих учебниках. Преднамеренно - делают.

        1. Здравствуйте. Да, квик не славится подробностью описания функционала касающегося QLua. Ошибку синтаксиса можно найти запустив индикатор, как скрипт, из окна "Доступные скрипты" и найдете строку с ошибкой.

  7. Попробовал скрипт -всё работает отлично, но у меня всегда появляется перед колонкой со знаком "1" ещё одна, типа счётчика строк. У вас на скрине её нет, я каждый раз убираю вручную. Как спрятать эту колонку? И ещё, у меня не распознаёт русский шрифт. в Чём может быть проблема?