Sergey Gorokhov (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: Пред. 1 ... 21 22 23 24 25 26 27 28 29 30 31 ... 78 След.
Где ошибка при подписки на тиковые данные ?
 
Андрей,
Проверьте в интерфейсе терминала строится ли тиковый график по RIM8?
если нет, то и в Lua Вы его не получите, с причиной следует разбираться с брокером.

Если график строится, попробуйте поменять местами while и ds:SetEmptyCallback
Доступ к свечам открытого интереса фьючерсов
 
Цитата
Виктор Столетов написал:
1. Что такое класс PSFUT?
это режим переговорных сделок по фьючерсам.

Цитата
Виктор Столетов написал:
2. Есть ли еще другие классы у фьючерсов кроме SPBFUT и PSFUT?
есть еще "Cпреды между фьючерсами" но там другие инструменты.

Цитата
Виктор Столетов написал:
3. Где можно посмотреть какие бывают классы у фьючерсов?

спросить у брокера, у нас, или на бирже.
Доступ к свечам открытого интереса фьючерсов
 
Цитата
Виктор Столетов написал:
Как такое может быть?

Вопрос к бирже.
Она транслирует открытый интерес по инструменту без привязки к какому-либо классу.
А объем в разрезе конкретного класса.
Т.е. если инструмент в классе SPBFUT и PSFUT Вы увидите суммарный открытый интерес по обоим классам а объем только по инструменту из SPBFUT.
И еще раз делаем акцент на том что так транслирует биржа
GetItem запаздывает в индикаторе?
 
Здравствуйте,
Так и есть, на интервальных графиках, тик срабатывает раньше чем появляется запись в таблице обезличенных сделок.
Горячие клавиши
 
Здравствуйте!

Ваше пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
функция обратного вызова для SetUpdateCallback(), как понять, по какому инструменту она сработала?
 
Алексей Дуванов,
В обычном
QLUA, вопросы начинающих.
 
Цитата
Aidar написал:
Ld_0= H( li+ 1) - L(li + 1),

хотя, смущает запятая в конце строки, ее не должно быть
QLUA, вопросы начинающих.
 
Цитата
Aidar написал:
Имелось ввиду что на языке lua корректно следующее выражение или нет

Все равно не понятно.
В выражении нет ничего что может вызывать такой вопрос.
Просто складываются два числа которые возвращают функции H и L

Давайте договоримся что Вы запустите код через "Сервисы" - "Lua скрипты" и если он вдруг не заработает тогда Вы вернетесь и сообщите текст ошибки.
Если ошибки нет, значит согласно синтаксису всё правильно.
QLUA, вопросы начинающих.
 
Цитата
Aidar написал:
как лучше в qlua записать

куда записать?
Количество заявок на покупку и продажу и другие параметры на графике
 
Цитата
Александр М написал:
Как получить эти значения в самописном индикаторе?

Постройте нужный график и получайте с него значения.
По смыслу это тоже самое.

Из индикатора, получить данные с другого графика (не с того к которому прикреплен индикатор) можно функцией getCandlesByIndex.
Функция фракталы
 
Aidar,

Если треугольник рисуется на цене 100, что мешает прибавить 5 и тогда он нарисуется на 105, таким образом получите нужный эффект.
Т.е. банально прибавить/отнять (в зависимости от стрелки) цифру к цене на которой рисуется фрактал.
Код
   
SetValue(Out1, 2, ConvertValue(Settings,H(Out1)+100))
SetValue(Out2, 3, ConvertValue(Settings,L(Out2)-100))


если не нравится цифра 100 напишите другую
Функция фракталы
 
Цитата
Aidar написал:
Здесь у вас производится непосредственно расчет фрактала, т.е. на основании значения переменной S квик поймет на какой свече выводить фрактал, или я не правильно понимаю?

Вы все правильно понимаете.
Функция фракталы
 
Цитата
Aidar написал:
Я так понимаю что Out 1,2 это индекс свечи на которой будет отображено TYPE_TRIANGLE_UP или   TYPE_TRIANGLE_DOWN из Settings.line ?
Да верно Out1 и Out2 это номера свечек.

Цитата
Aidar написал:
Мне не совсем понятно про  ConvertValue(Settings,H(Out1))

ConvertValue преобразует данные согласно настройкам в Settings.
Например там есть параметр Multiply в которой можно указать коэффициент на который умножаются значения индикатора.
Или Round в котором можно указать округление.

Цитата
Aidar написал:
и  return tonumber(Settings.Horizontal_line),nil,nil
Индикатор FRACTALS ставит значения на прошлых свечках а не на текущих.
в связи с чем, что-либо возвращать в return нельзя.
Первый параметр, просто рисует горизонтальную линию. За это отвечает Horizontal_line.
Функция фракталы
 
Цитата
Aidar написал:
Squeeze - что это ?

это функция которая есть в том же примере ниже
Код
function Squeeze(I,P)
   return math.fmod(I-1,P+1)
end


Конкретно в приведенной части кода она нужна для того чтобы сжать массив it.
нет смысла хранить в массиве все свечки, если для расчета индикатора нужны только свечки за указанный период (переменная P).
Функция фракталы
 
Aidar,

функция возвращает функцию. В lua это нормальное явление.
Некорректный ответ Trans2Quik.dll при включенном терминале (TRANS2QUIK_DLL_NOT_CONNECTED)
 
Цитата
Сергей написал:
Я почему-то ожидал что вы знаете, какие подводные камни могут "выплыть" при переходе с x86 на x64.
Но никак не ожидал предложения "сравнить свою версию на Delphi  с нашими C++ и C#". И найти отличия...

Использовать версию 1.3 не обязательно, тем более что Ваше приложение остается 32х разрядным.
В связи с чем, предлагаем разобраться с версией 1.2.

Заранее отмечаем что ни у нас ни у кого-либо еще не возникало проблем с работой версии 1.2. именно из-за х64 битной ОС.
А значит причину надо искать не в подводных камнях а в настройках проекта.

Для начала, проверьте банальные вещи:
А именно, включен ли импорт транзакций в терминале QUIK (меню Сервисы - Экспорт/Импорт данных - Внешние транзакции)?
Корректно ли указан путь к папке с терминалом QUIK в параметрах подключения? (особенно следует обратить внимание что в х64 битной системе две папки "Program Files")
И наконец, проверьте наш пример если он работает, значит причина в некорректном коде Вашего приложения..
Функция фракталы
 
Цитата
Aidar написал:
local H_tmp={}  -- объявление массива под значения High
   local L_tmp={}  -- объявление массива под значения Low
Да верно.

Цитата
Aidar написал:
local it = {[1]=0, l=0} -- объявление массива it где 1-му элементу массива присваиваем значение 0, элементу с индексом l присваиваем значение 0
Вы говорите очевидные вещи.
Другой вопрос зачем нужен этот массив.
Как можно заметить по коду в него попадают номера свечек, из которых потом ищется нужная свечка где и рисуется фрактал.
Все индикаторы на Lua
 
Цитата
петя написал:
а как настроить правильно и установить
В архиве есть reamde файл с инструкцией.
Все индикаторы на Lua
 
Alexandr,
Для того чтобы не было вопросов, как написать индикатор в lua.
Зачем люди их пишут в Lua? Уже не к нам вопрос.
Пришел OnTransReply с пустым brokerref
 
Suntor,

По данному обращению мы диагностируем проявление исправленной в версии сервера 5.18 ошибки, связанной с трансляцией некоторых полей в таблицу транзакций через серверы доступа.
Проблема исчезнет после обновления серверного ПО у Вашего брокера, до этой версии.
OnChangeSettings
 
Цитата
s_mike@rambler.ru написал:
Я уже писал - регистрируйте.

Да прошу прощения, не заметил.
Пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
OnChangeSettings
 
s_mike@rambler.ru,
Михаил, не понятно какого ответа Вы ожидаете.
Позиция уже была озвучена
Цитата
Sergey Gorokhov написал:
это пожелание на доработку, которое мы можем предложить зарегистрировать.
OnChangeSettings
 
s_mike@rambler.ru,
Отловить первый расчет индикатора на графике с определенный таймфреймом.
Например случай когда на графике всего одна свеча которая меняется.
В таком случае if index==1 не дает нужного результата, а OnChangeSettings как раз дает.
OnChangeSettings
 
s_mike@rambler.ru,
Михаил,
То что функция не срабатывает при изменении таймфрейма не значит что ее нельзя использовать.
Да она не решает конкретно одну описанную задачу, но она и не должна ее решать согласно документации.
А значит, это пожелание на доработку, которое мы можем предложить зарегистрировать.
OnChangeSettings
 
s_mike@rambler.ru,
Михаил, в документации ничего не сказано что он должен вызываться при смене таймфрейма.
Цитата

Функция вызывается при редактировании свойств индикатора после нажатия кнопок «Применить» или «OK».
Функция вызывается также при перезагрузке Рабочего места QUIK и при загрузке wnd-файла либо tab-файла, в которых сохранен график с индикатором.
Как начать читать файл не с первой строки, а со 2й?, исторические данные
 
Андрей,
А что мешает в цикле который указан по ссылке пройти по всем строкам до нужной? А не нужные, просто игнорировать.
К слову разработчики Lua именно так и советуют
Как подать заявку по рыночной цене?, с минимумом данных
 
Андрей,

Примеры полей транзакций Вы можете найти в документации на терминал QUIK (вызывается клавишей F1)
-Раздел 6. Совместная работа с другими приложениями
--Импорт транзакций
---Формат .tri-файла с параметрами транзакций
----Примеры строк, которые могут содержаться в файле

Цитата
Андрей написал:
     ['TRANS_ID'] = trans_id, (как задать этот параметр? откуда его получить, транзакция же еще не прошла, так как даже не подана заявка)
Этот параметр своего рода метка, которой Вы помечаете транзакцию.
Его не нужно получать, его нужно придумать самостоятельно и указать.
По этому номеру в дальнейшем, Вы сможете найти нужную заявку которая получилась в результате транзакции отправленной через Lua.
Если не понятно, просто укажите 12345 и посмотрите что отобразится в таблице заявок в поле "ID транзакции"

Цитата
Андрей написал:
     ['ACCOUNT'] ="№ счета трейдера" , (где взять номер счета тредера, если это демо счет? Где его в Квике можно посмотреть?

Откройте форму ввода заявки в терминале и Вы его увидите нужный счет в поле "Торговый счет"

Цитата
Андрей написал:
Как картинки выкладывать не подскажете?

инструкция по ссылке
Таблица обезличенных сделок
 
Цитата
Let_it_go написал:
На графике с помощью вашего метода их ведь нельзя получить.
CreateDataSource не работает в Lua индикаторах, только в обычных скриптах.
В обычных скриптах, вызываете CreateDataSource с параметром INTERVAL_TICK
там в OnAllTrade или через getItem получаете данные по обезличенным сделкам
Открытый интерес в параметре open_interest
Купля/продажа в параметре flags
Как начать читать файл не с первой строки, а со 2й?, исторические данные
 
Андрей,
Здравствуйте,
Для чтения строк можно использовать io.lines
пример по ссылке
понять демо или реальный qlua
 
s_mike@rambler.ru,
Михаил, нет никакого признака который бы отличал демо торги от не демо.
Только если сам брокер введет какое-то обозначение.
понять демо или реальный qlua
 
s_mike@rambler.ru,
Михаил, но IP адрес у нашего демо только один.
Даже если речь не про наш демо, а про брокерский, можно проверить ip и на всякий случай еще порт IPPORT
понять демо или реальный qlua
 
Андрей,
Здравствуйте,
Самый надежный способ по IP адресу. Для этого используйте функцию getInfoParam с параметром IPADDRESS
Подробнее в документации QLUA.chm
глава "Сервисные функции", раздел "getInfoParam"
CreateDataSource Params
 
Цитата
Борис Гудылин написал:
Насколько корректно и из каких источников идет коррекция H и L на текущий момент?
У Вас в коде не указан параметр, значит данные берутся на основе OnAllTrade.
Значит полученные свечки формируются на основе полного набора данных, без срезов.

Цитата
Борис Гудылин написал:
Можно ли при этом доверять полностью значениям H(index) и L(index) или они, пусть и крайне редко, но могут незначительно отличаться от действительных (для полностью сформированных свечек)?
То же самое, у Вас в коде не указан параметр, значит данные берутся на основе OnAllTrade.
Значит отличий от видимого графика не будет.
Другой вопрос, что Вы можете получить свежие данные раньше чем они визуально отобразятся на графике.
работа с таблицекй всех сделок
 
Igor Golovin,
таково решение.
работа с таблицекй всех сделок
 
Igor Golovin,
Вы заказали данные, они попали в хранилище.
Вы открыли 100 таблиц и в каждой что то заказали, QPILE увидите все заказанные данные, так как будто открыта одна таблица.
QPILE работает с хранилищем, а не с таблицами.
работа с таблицекй всех сделок
 
Здравствуйте,
QPILE не работает с таблицами, а работает с хранилищем данных таблиц.
Это значит что даже если Вы откроете несколько таблиц с разными фильтрами, то в QPILE Вы увидите все данные, так как будто у Вас открыта одна таблица, а не несколько.
Если Вам нужно фильтровать данные, что это следует делать в коде самого скрипта, а не в интерфейсе.

Кроме того обращаем внимание, что QPILE признан устаревшим и мы его уже давно не развиваем.
Рекомендуем перейти на использование QLUA.
order_num или ordernum?
 
ivan,
Номера сделок не уникальны, и дело совсем не в сроках, а в принципе.
Разные биржи ничего не знают о номерах сделок друг друга.
На срочном рынке есть вечерняя сессия которая повторно транслируется на утро следующего дня.
Еще существуют так называемые кросс сделки, когда торгуешь сам с собой, а значит будет две сделки отличающиеся только направлением.
На некоторых внебиржевых или зарубежных рынках, вообще нет нумерации и каждый день сделки начинают нумерацию с 1.
Поэтому, мы считаем что уникальность сделки определяется не по номеру, а совокупно по четырем параметрам:
Номер сделки
Направленность сделки (покупка или продажа)
Код класса инструментов
Дата торговой сессии (не путать с датой сделки)

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

Что касается именно "фифо", то все зависит от конкретного рынка.
Если мы говорим про наш фондовый и срочный рынок МБ, то там нумерация не сбрасывается уже десятки лет и врядли в ближайшие 10 сбросится, а значит нет необходимости об этом беспокоиться.
QLUA, вопросы начинающих.
 
Aidar,

Приведенный код не является рабочим примером, он показывает только часть по заданному вопросу.
Если нужен полный рабочий код то выглядит примерно так:
Код
Settings = {
  Name = "имя индикатора" , 
  MY_LOVE_PARAMETER = 300, 
  line = {
    {
      Name = "!!test",
      Color = RGB(0, 255, 0),
      Type = TYPE_LINE,
      Width = 2
    }
  }
}

function Init()
  return #Settings.line
end

function OnCalculate(indx) 
   if indx < Size () - Settings.MY_LOVE_PARAMETER then return end 
end

Пароль инвестора
 
Здравствуйте,
Такую возможность может предоставить только Ваш брокер.
Т.е. Вы можете попросить его создать еще одну просмотровую учетную запись для Ваших счетов.
Таблица обезличенных сделок
 
Let_it_go,
Здравствуйте,
Лучше использовать CreateDataSource с параметром INTERVAL_TICK
Функция CreateDataSource
 
Евгений,
Здравствуйте,
Данная тема не забыта.
Но, к сожалению мы не можем назвать сроки реализации пожелания.
Странное поведение io.popen
 
kbrobot.ru,
Все равно не воспроизводится:

Странное поведение io.popen
 
kbrobot.ru,

io.popen("E:\\1\\1.txt")

и

io.popen("E:\\2\\1.txt")
Странное поведение io.popen
 
kbrobot.ru,
К сожалению затруднимся прокомментировать
у нас проблема не воспроизводится.
все прекрасно работает именно с "\\"
Странное поведение io.popen
 
kbrobot.ru,
Вот так попробуйте:
io.popen("G:\\2\\1.exe")
Ограниченное количество загружаемых скриптов LUA
 
Здравствуйте,
В QUIK нет ограничения на количество Lua скриптов, причина в чем то другом.
Странное поведение io.popen
 
Здравствуйте,

В пути к файлу нужно указывать двойной слеш.
QLUA, вопросы начинающих.
 
Цитата
Aidar написал:
"Тиковый объем (англ. tick volume) – это количество тиков за некоторый период времени, соответствующее частоте изменений цены маркет-мейкером рынка и не связанное с объемом сделок."
Судя по определению, объем который Вы видите на графике, это не то что Вам нужно.

Цитата
Aidar написал:
Извиняюсь за глупые вопросы,я пока что учусь QLUA
QLUA тут вообще не причем. Т.к. происходит непонимание на уровне того что Вам нужно, а не на уровне кода.
Давайте вообще забудем про QLUA и посмотрим обычный терминал QUIK.
В обычном терминале QUIK Вы где-нибудь видите нужное Вам значение?
QLUA, вопросы начинающих.
 
Aidar,

Может мы говорим про разные вещи?
Что именно Вы понимаете под термином "тиковый" объем?
QLUA, вопросы начинающих.
 
Цитата
Aidar написал:
Цитата
Sergey Gorokhov   написал:
Aidar  ,
Да такая возможность есть.
например с тикового графика.
не совсем понятно как прописать.А если я хочу применять индикатор на разных таймфреймах?

Если Вам нужно получать свежие тики, то они и так попадают в OnCalculate, т.к. он срабатывает при каждом изменении.
Если нужно получать тики за прошлые периоды, то это можно получить только через GetItem
Страницы: Пред. 1 ... 21 22 23 24 25 26 27 28 29 30 31 ... 78 След.
Наверх