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

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

Страницы: Пред. 1 2 3 След.
QLUA, вопросы начинающих.
 
Suntor, у Вас талант прояснять и разжевывать.

Цитата
Suntor написал:
А внутренняя таблица «all_trades» будет содержать сделки для обоих этих инструментов вперемешку.
У меня в коде нет фильтра по инструменту, но есть в "Заказ данных/ Поток котировок", и код выдает индекс аккурат на 1 меньше номера последней строки в QUIK. Т.е. если ничего не делать с полученной через "Создать окно" таблицей, связь всё-таки есть...
QLUA, вопросы начинающих.
 
Цитата
Игорь Б написал:
Да.
Спасибо за подтверждение.
Цитата
Игорь Б написал:
Открыта ли сама таблица? Что пишет?
Да нет там ошибки, искала её из-за несовпадения message с последним номером в открытой таблице в QUIK.
QLUA, вопросы начинающих.
 
Порядковый номер строки, который мы видим в таблице Рабочего месте QUIK, не совпадает с индексом этой строки, да?
(Замучилась искать ошибку в
Код
for n=getNumberOf("all_trades")-1,0,-1 do
   local trade = getItem("all_trades", n)
   if trade then
      last = last or n
   end
end
message("№ последней сделки: "..last)
)
bit.band vs bit.test
 
В большинстве выложенных на форуме примеров для проверки флага используется bit.band, а не bit.test. Причем не для проверки нескольких флагов одной формулой (тогда предпочтение bit.band было бы понятно), а по одному. С чем это связано?
SearchItems
 
Цитата
Sergey Gorokhov написал:
Нет нельзя.
Используйте предложенный вариант. Суть та же самая.
Хорошо. :sad:
Сортировка и фильтрация таблиц QUIK средствами Lua
 
Suntor, гран мерси за четкие и исчерпывающие объяснения!!!  
SearchItems
 
Цитата
Sergey Gorokhov написал:
если последний параметр в функции SearchItems не задан
так он задан. Вопрос в способе присвоения ему значений.
Так
Код
t1 = SearchItems ("all_trades",0,getNumberOf ("all_trades")-1, {["qty"] =103, ["class_code"]="SPBFUT", ["sec_code"]= "RIM3"})
можно? Понятно, что нет. Что-нить похожее можно изобразить?
Сортировка и фильтрация таблиц QUIK средствами Lua
 
Думается мне, что наличие первой строки объясняется какими-то особенностями сравнения с nil?  
SearchItems
 
Sergey Gorokhov, прикольно! Не думала, что в Lua так можно. Подозреваю, времени обработки "функция в функции" не убавит. А букв меньше не стало.
Цитата
Sergey Gorokhov написал:
Если правильно понимаем, Вы не хотите создавать отдельную функцию?
Да, правильно поняли, спасибо за пример. Но хотелось бы записи в виде таблицы с параметрами что ли, как в функции sendTransaction.
Лимитная заявка с отменой
 
Zoya Skvorcova, спасибо за подтверждение. Хоть искать не буду...
Сортировка и фильтрация таблиц QUIK средствами Lua
 
Цитата
Игорь Б написал:
Если в скобках ложь. "and"  вернет ложь.   "or" будет сравнивать ложь и  stop_order вернет stop_order .
Если в скобках истина . "and"  вернет min_stop_order .   "or" будет сравнивать min_stop_order  и  stop_order. Вернет min_stop_order (т.к.min_stop_order - истина).
Да, да, всё верно излагаете. Я так и читала, только с личным глюком. Респект за терпение!  
Сортировка и фильтрация таблиц QUIK средствами Lua
 
Ну и глюк у меня случился!!! Конечно, знак не перепутан, это у меня глаза min_stop_order.condition_price и stop_order.condition_price местами перепутали! Мозг-то на больничном.
Извините!
Игорь Б, спасибо за попытки объяснить!
Сортировка и фильтрация таблиц QUIK средствами Lua
 
Цитата
Игорь Б написал:
Нет. т.к. в скобках может быть как истина так и ложь.
речь только об истине (когда наткнулись на нужное значение).
Сортировка и фильтрация таблиц QUIK средствами Lua
 
Игорь Б, не заметила сразу, что это
Цитата
Игорь Б написал:
Т.е. первую строку нельзя сравнивать с куском второй.
Вы на другой мой чайниковский вопрос отвечали... Но всё равно непонятно. Не надо первую строку ни с чем сравнивать. Её надо убрать. Само сравнение есть во второй.
Сортировка и фильтрация таблиц QUIK средствами Lua
 
Цитата
Игорь Б написал:
Т.е. первую строку нельзя сравнивать с куском второй.
вот это вообще непонятно, Вы о чем?
Сортировка и фильтрация таблиц QUIK средствами Lua
 
т.е. "and" всегда будет возвращать предыдущий min_stop_order, а "or" его подхватывать.
Сортировка и фильтрация таблиц QUIK средствами Lua
 
Я то же самое написала выше.
Цитата
Игорь Б написал:
Во второй сначала вычисляется "and"
И таким образом, при сравнении истин, новое минимальное значение никогда не будет присвоено.
Сортировка и фильтрация таблиц QUIK средствами Lua
 
Игорь Б, При первом проходе присваивается значение stop_order (т.к. min_stop_order = nil). При втором, если в stop_order нужное нам меньшее значение, оставляется первое min_stop_order.condition_price (неравенство в скобках - истина, min_stop_order - истина, соответственно, "and" берет min_stop_order, а "or" на нем же и останавливается). Где я ошибаюсь?
Сортировка и фильтрация таблиц QUIK средствами Lua
 
И ещё вопросик по:
Цитата
Suntor написал:        
Код
min_stop_order = min_stop_order or stop_order
min_stop_order = (min_stop_order.condition_price <= stop_order.condition_price) and min_stop_order or stop_order
Логическая операция первой строки полностью присутствует во второй. Зачем она, первая строка?
SearchItems
 
Sergey Gorokhov, документацию видела. Выше шла речь о неудобстве постоянного прописывания дополнительной функции fn:
Цитата
Sergey Gorokhov написал:

ЦитатаАндрей 77 написал:
Хотелось бы иметь универсальную fn, а набор контролируемых параметров и их значения  задавать при вызове SearchItems.

Никто не мешает задавать набор  контролируемых параметров в функции SearchItems
Значения контролируемых параметров или условия "фильтрации" этих значений в самой функции SearchItems как задать?
Сортировка и фильтрация таблиц QUIK средствами Lua
 
Цитата
Suntor написал:
Да и вообще, то что вы описали можно сделать без всяких сортировок в одном цикле прохода по таблице стоп-заявок. Ну типа такого:
Здорово! Для моих целей - за глаза! Спасибо большое!

Вот тут
Код
min_stop_order = min_stop_order or stop_order
min_stop_order = (min_stop_order.condition_price <= stop_order.condition_price) and min_stop_order or stop_order
зациклился мой мозг минут на 15 на первой итерации, а на второй ушел на больничный... Если знак не перепутан (ищем мы минимум), поясните, пожалуйста.

Таблицу min_stop_order Вы не объявляете фигурными скобками, потому как она автоматом перенимает тип stop_order или это с nil связано?

Из спортивного интереса, SearchItems тут сэкономит миллисекунду? Вроде того:
Код
function fn(par)
    if par==4 then
        return true
    else
        return false
    end
end
local i = SearchItems("stop_orders", 0, getNumberOf("stop_orders")-1, fn, "condition")

local min_stop_order = nil
for i=0, #i-1 do
    local stop_order = getItem("stop_orders", i)
    min_stop_order = min_stop_order or stop_order
    min_stop_order = (min_stop_order.condition_price <= stop_order.condition_price) and min_stop_order or stop_order
end
Сортировка и фильтрация таблиц QUIK средствами Lua
 
Suntor, с фильтрацией согласна. Но тянуть каждый getItem-ом... Сколько времени уйдет на сотню заявок?
table.sort сама б не нашла, спасибо.
Сортировка и фильтрация таблиц QUIK средствами Lua
 
Задача: выудить из таблицы стоп-заявок активную стоп-заявку определенной направленности и вида с минимальной стоп-ценой.
Вопрос: Можно ли командами из скрипта отфильтровать таблицу, чтобы исключить заявки с посторонними флагами, видами и др. параметрами, и отсортировать, чтобы интересующая заявка получила заведомо известный индекс 0 или getNumberOf-1 ?
SearchItems
 
Цитата
Sergey Gorokhov написал:
Никто не мешает задавать набор  контролируемых параметров в функции SearchItems
Непонятно. Приведите пример.
Лимитная заявка с отменой
 
Zoya Skvorcova, а если исполнится, но до этого цена сходит на 59000, я получу убыток (в связи с алгоритмом моей торговли в целом).
Вопрос был
Цитата
Ирина написал:
как из доступных заявок, включая алго-заявки слепить лимитную заявку с условием её отмены при достижении определенной цены?
Лимитная заявка с отменой
 
Цитата
Ирина написал:
лимитка на покупку по цене 60000
описка. на продажу
Лимитная заявка с отменой
 
Zoya Skvorcova, пример: выставляется лимитка на покупку по цене 60000, если цена прежде дойдет до 59000, надо чтоб заявка снялась.
Для чего нужна функция SetUpdateCallback?, Работа с данными.
 
В общем, если бреда много, прошу простить, с Луа на этапе знакомства.
Для чего нужна функция SetUpdateCallback?, Работа с данными.
 
Случайно отправила недоделанное сообщение. Как тут редактировать?
Для чего нужна функция SetUpdateCallback?, Работа с данными.
 
Suntor, спасибо за объяснения, помогаете сориентироваться.

Код только начинаю писать, поэтому показать нечего. Пришла к следующему алгоритму:
При первом запуске скрипта,он перебирает последние тики/цены сделок до нахождения значений "текущая цена"+ х пунктов и "текущая цена"- х пунктов. Проверяет какое из значений было последним и присваивает соответственно 0 и 1 переменным "тренд вверх" и "тренд вниз", перебирает тики после значения "текущая цена" +/- х пунктов, находит и присваивает переменным "минимум", "максимум" значение или nil. Это только при запуске. Дальнейшее определение "тренда" и экстремума получается сравнением цены с его предыдущим значением.
С учетом упорядоченности цен в таблице и растущей индексации от старого к новому тику,
получается, что при получении каждого изменения, перебирать вообще не нужно. Или рациональнее для загрузки получать новые данные порциями и перебирать, зато реже обращаться к терминалу?
При наступлении события "текущая цена" -/+ х пунктов >/< мин./макс. меняется тренд и скрипт перетряхивает заявки, стоп-заявки. Они находятся на удалении от текущей цены, сильные движения редки (и вообще скрипт пишу в помощь рукам), поэтому опоздать с сигналом нестрашно. Но опять же вопрос, а нужна ли эта жертва или
получение каждого тика/сделки не больше грузит терминал, процесс?
Ещё скрипт снимает лимитки по ходу движения, ориентируясь на цену. В остальном, т.е. при работе с заявками оперирует таблицами заявок и стоп-заявок. Вот. И с
Цитата
Suntor написал:
с чем изначально вы работаете.
?
С чем ему работать? Откуда тут лучше брать цену, со свечь, тиков, тлиц обезличеннх селок?  
Для чего нужна функция SetUpdateCallback?, Работа с данными.
 
Suntor, спасибо большое за хитрое решение - наверняка пригодится.
Но мне да, нужны последние экстремумы, причем период переборки неопределенный (типа трала). Думала, просто запоминать последний максимум/минимум и сравнивать с текущей ценой. А тут вон засада с пропущенными значениями. Придется перебирать. Теперь думаю что "легче" по загрузке, таблица обезличенных сделок что ли? Или всё-таки прибегнуть к колбэкам для меньшего кол-ва итераций. Боюсь я их - повесят квик.
Для чего нужна функция SetUpdateCallback?, Работа с данными.
 
Борис Гудылин, добрый день.
Цитата
Борис Гудылин написал:
Много вариантов есть: можно "монтекарлить" по срезам таблицы текущих торгов (OnParam - last) с риском пропустить экстремум, можно привязаться к графику по идентификатору, можно пропускать через себя все сделки (OnAllTrade), про варианты с CreateDataSource Вы уже знаете. У них у всех есть свои достоинства и недостатки, иногда даже опасности, свои временные характеристики.
Что посоветуете для отслеживания экстремума с минимальной загрузкой скрипта и терминала (скорость не нужна - заявки выставляются ранее, а вот само значение минимума/максимума принципиально для расчетов)? Думала пользоваться именно таблицей текущих торгов, и тут ваше сообщение... Все тики перелопачивать не хотелось бы, а большая свеча может захватить оба экстремума... Эх. Мозг заболел.
Лимитная заявка с отменой
 
Подскажите, пожалуйста, как из доступных заявок, включая алго-заявки слепить лимитную заявку с условием её отмены при достижении определенной цены?
Скрипт заявки тейк-профит на Lua
 
Существует ли такой и если есть, где можно его увидеть?
(Хочу дополнить его открытием нескольких разнонаправленных заявок и зациклить - получу вполне себе робота, сеточно-тралового).
Тейк-профит и "отступ от max"
 
Цитата
Ирина написал:
Выше предложение зарегистрировано, одобрено 2 года назад!!! Где исполнение?!
???
Тейк-профит и "отступ от max"
 
(Кстати, что такое "максимум или минимум цены последней сделки"? У сделки одна цена.)

Ну т.е. от абсолютной цены инструмента устанавливается, ага? Объясните, пожалуйста, практический смысл этого, например для si.

Треш какой-то!!! Выше предложение зарегистрировано, одобрено 2 года назад!!! Где исполнение?!
Тут в какую ветку не сунься, "зарегистрировано и признано целесообразным", а в квике по сей день только лимитку выставить можно. Слов нет! На госбюджете вы сидите что ли? Откуда такое нежелание развивать продукт?! Что ваще меняется в квике в этих бесконечных обновлениях, оформление что ли? Просто треш, треш, треш (а уместнее тут мат)...
Тейк-профит и "отступ от max"
 
Поясните, пожалуйста, от чего в итоге отсчитывается % тейк-профита? И добавьте информацию в Справку.
Трейлинг-стоп
 
Здравствуйте, Зоя.
Цитата
Zoya Skvorcova написал:
Ирина,добрый день.
То что пожелание было зарегистрировано, не значит что оно в будет реализовано в следующей версии. На текущий момент пожелание находится на рассмотрении.  В связи с этим возникли вопросы: какую проблему либо задачу Вы планируете решить добавлением знака в тейк профит.
Обычно сообщают о ходе рассмотрения, а тут тишина, вот я и напомнила.

Поясняю, зачем нужен выбор знака.
Тейк профит с противоположным знаком - это по сути стоп лосс с трейлингом, т.е. использоваться может для гибкой фиксации убытка с минимальными потерями и от определенного уровня, а не сразу от уровня сделки, как это происходит, если использовать тейк профит.
Конкретно в моем случае такая заявка нужна для поэтапной фиксации прибыли. Я выставляю 10 тейк профитов на покупку через каждые 50 пунктов. Допустим, цена резко полетела вниз, собрала все мои заявки и исполнились они по одной цене. Тут я выставляю тейк профит на продажу всех фьючей по цене на 50 пунктов выше закупки. И вот в момент, когда тейк профит на продажу зазеленеет (начнет отсчет максимума), нужно, чтобы выставился тейк профит на покупку 4 фьючей, но никак не раньше, чтобы не произошло дополнительной покупки без продажи уже имеющихся фьючей. При этом стоп лимит использовать не хочу, т.к. если цена развернется, зачем покупать дороже. Вот.

Спасибо за рассмотрение.
Трейлинг-стоп
 
Цитата
Zoya Skvorcova написал:
dilettante  , Здравствуйте!

Ваше пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
Прошел год и 4 месяца...
Цитата
Zoya Skvorcova написал:
Здравствуйте!

Ваше пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
Прошло 1,5 месяца...

???
Трейлинг-стоп
 
Zoya Skvorcova, добрый день. Стоп цена по другой бумаге не то же самое, что обычный стоп-лимит в данном случае получится? Нужно, чтобы min/max рассчитывались, как в тейк-профите.
Если такого нет, предлагаю добавить в тейк-профит выбор знака >=/<=, как в стопе по другой бумаге.
Трейлинг-стоп
 
Ну что там с трейлинг стопом?
Мне вот понадобилась заявка на покупку по цене выше текущей, но с трейлинг стопом, т.е. тейк-профит, но активизирующийся не сразу, а как стоп-лимит. Подскажите, может можно такую соорудить через комбинацию заявок. Никак не соображу как...
Депозит на демо, Нужно обновить
 
Цитата
Zoya Skvorcova написал:
Ирина,Добрый день.
Доступ продлили до 16 декабря.
Спасибо.
Депозит на демо, Нужно обновить
 
Здравствуйте.
Продлите, пожалуйста, U0116336.
Депозит на демо, Нужно обновить
 
Если доступ к логину U0114628 невозможно восстановить, сделайте, пожалуйста, так:

Цитата
Alexey Ivannikov написал:
Или, как вариант, если аккаунт уже есть, нужно будет просто раз в два месяца заново регистрироваться и сообщать нам о своём желании оставить за собой ранее присвоенный торговый счёт и код клиента, мы также, конечно, пойдём Вам навстречу.
Новый логин: U0116336. А нужен U0114628 со счетом SPBFUT00524.
Заранее спасибо.
Депозит на демо, Нужно обновить
 
Цитата
Zoya Skvorcova написал:
Ирина  ,Добрый день.
Нет, до конца года не получиться продлить. Права продлили на месяц, до 13.11.2017,но это уже второе продление и может случиться так, что в ближайшее время логин станет недоступен. В таком случае Вам придёт пройти регистрацию ещё раз
Ну вот появилась ошибка "Crypto error: Соединение установить не удалось. Возможно, Вы используете ключи, которые не зарегистрированы на сервере. Сообщение об ошибке: "Connection was closed by peer: Can't get message size from net"". Это из-за продления? Можно реабилитировать счет?
Депозит на демо, Нужно обновить
 
Zoya Skvorcova, здравствуйте.
Тоже нужно повторное продление. U0114628. Заранее спасибо.

А нельзя ли сразу продлить до конца этого года (до 22 декабря)?
Депозит на демо, Нужно обновить
 
Добрый день.
Продлите, пожалуйста, доступ для U0114628.
Депозит на демо, Нужно обновить
 
Egor Zaytsev, добавился. Спасибо!
Депозит на демо, Нужно обновить
 
Цитата
Egor Zaytsev написал:
Цитата
Ирина   написал:
з.ы. мой счет SPBFUT00524
Добрый день.

Вы можете зарегистрироваться еще раз, вам придет письмо со вторым торговый счетом, потом нам сообщите ваш логин и оба торговый счета.
Мы сделаем настройки.
Благодарю!
Вот счета: SPBFUT00524 с логином U0114628 и SPBFUT00577 с U0114688.
Депозит на демо, Нужно обновить
 
з.ы. мой счет SPBFUT00524
Страницы: Пред. 1 2 3 След.
Наверх